From nobody Mon Jun 20 02:58:58 2022 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 64C008668E9; Mon, 20 Jun 2022 02:58:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4LRDr227qTz3lrw; Mon, 20 Jun 2022 02:58:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1655693938; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3rmAooypYkjSy17bZYviJs7syI3/A9lduNHYNXC5+lU=; b=cikvTPXIPwWfs1Cllv9Lb35JN8YrRq5foZUA8gRSikTMbFbRWQjQuC6JYQZobhHyL/iWmb xhQYBNJXSDpATm3Rz3ASGh9zllBP8B4yOoqQiokkEk3E9IevUEhCLH3+Nuh0lhXuSkXpUF gKy71e2ZQBDnoIctQn8WtFhm90ZdoJH/UkHw2IuZygQgQXe7+Nf9RauJFmdoh5A4WgIJqn wEMYLXkGPVapVjkeqXHZ++7omk+ifYqJ0CHnxlprtfgG0Mm0pRSE9fLySsgAYm6B41y8hA VOGKhwBr/vnfNTJOpbQu1+I/4a/bUtYPTykt4smVLXF+zw3Jnqd1xbXi2J9c4g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 256B4150C0; Mon, 20 Jun 2022 02:58:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 25K2wwLe002228; Mon, 20 Jun 2022 02:58:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 25K2wwiZ002227; Mon, 20 Jun 2022 02:58:58 GMT (envelope-from git) Date: Mon, 20 Jun 2022 02:58:58 GMT Message-Id: <202206200258.25K2wwiZ002227@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Yuri Victorovich Subject: git: 11de76215b12 - main - graphics/msl: New port: Shader language based off GLSL List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: yuri X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 11de76215b12111e638531a260d274a9780552da Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1655693938; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3rmAooypYkjSy17bZYviJs7syI3/A9lduNHYNXC5+lU=; b=f1c+8WP6AOktMNZ6SKTRyct2KT25jVkS1cNStbcKSVcUNLi+tXNHT+Qp+iGJbMkf3vauxM rAqG9Qe2UIPA2hJZ81LSna9Xr5xVMdrh+3tE2EvmJG0dfsp+AJVCbKWGPTh7Q7deSL4tt1 +7EWjezsrLzlctLm+HRysbyA+aC+m7hIZpJ6BrvZRQCU4ic2rw7hUBWbvVKnZYVlTtrl4C J+QJjMHjs0ynTIlaZ+/9m4Ody61QHNkTWjbRuTGT53m1j5H6Ya4VZXZuViXzCzw+LIsMPQ DLETLPj0b3kbrKe2azyppN0vfKXuM9fWYRANX7rOa8Xd2Xhxdg/t/vUbUIeMBw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1655693938; a=rsa-sha256; cv=none; b=kmYty4beVMJXM6RVhg75ATkiOPDMObbS6EFHqb5Hu6uJDTwX+0QjG2RcahaRgDeyVIbAal UQzLq9Fgt/VCEuNkgGeq2gGeYqHnWoZa9qTC5ZwEE/nMZkGDoGl2xO90AtYgyfmFvOtZrU nZdtVEvVCj8i53m1+BpUJKupkUElVtBtEOyOB9iUmjjFpyPGNNYIKZEN/9sfqshJYJMHVI o2CQiy3BKHfvxcxeEZ72B1taVdfkkva8TJ7ooMJ3PXTnSyTfLgh5toHNMGh5YG6uPdFNHF VzSL7PmXGXXEtnyma+ZvOHgDCBw+T3WDoGvsjkmb2EBlfwluNcHcolTaYBE7fw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=11de76215b12111e638531a260d274a9780552da commit 11de76215b12111e638531a260d274a9780552da Author: Yuri Victorovich AuthorDate: 2022-06-20 02:58:15 +0000 Commit: Yuri Victorovich CommitDate: 2022-06-20 02:58:15 +0000 graphics/msl: New port: Shader language based off GLSL --- graphics/Makefile | 1 + graphics/msl/Makefile | 30 ++++++++++++++++++++++++++++++ graphics/msl/distinfo | 11 +++++++++++ graphics/msl/pkg-descr | 24 ++++++++++++++++++++++++ graphics/msl/pkg-plist | 43 +++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 109 insertions(+) diff --git a/graphics/Makefile b/graphics/Makefile index 6bd3a85b3f17..7bd30c6f96d7 100644 --- a/graphics/Makefile +++ b/graphics/Makefile @@ -560,6 +560,7 @@ SUBDIR += movit SUBDIR += mozjpeg SUBDIR += mscgen + SUBDIR += msl SUBDIR += mtpaint SUBDIR += multican SUBDIR += mupdf diff --git a/graphics/msl/Makefile b/graphics/msl/Makefile new file mode 100644 index 000000000000..cbe05049a86f --- /dev/null +++ b/graphics/msl/Makefile @@ -0,0 +1,30 @@ +PORTNAME= msl +DISTVERSIONPREFIX= v +DISTVERSION= 1.5.1 +CATEGORIES= graphics + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Shader language based off GLSL + +LICENSE= APACHE20 + +BUILD_DEPENDS= flatc:devel/flatbuffers \ + boost-libs>0:devel/boost-libs + +USES= cmake:testing compiler:c++11-lang python:3.6+,build + +#CMAKE_ON= BUILD_SHARED_LIBS MSL_SHARED # shared libraries are broken, see https://github.com/akb825/ModularShaderLanguage/issues/6 +#CMAKE_OFF= SPIRV_TOOLS_BUILD_STATIC +CMAKE_OFF= MSL_BUILD_TESTS MSL_BUILD_DOCS +CMAKE_TESTING_ON= MSL_BUILD_TESTS + +USE_GITHUB= yes +GH_ACCOUNT= akb825 +GH_PROJECT= ModularShaderLanguage + +GH_TUPLE= akb825:glslang:04a12be6bb031aff18b456bfe108f4bffdbf413d:akb825_glslang/Compile/glslang \ + KhronosGroup:SPIRV-Cross:99b59b35288c95fa7352158930cc068705d3c2e3:KhronosGroup_SPIRV_Cross/Compile/SPIRV-Cross \ + akb825:SPIRV-Tools:c80f8b752f50de446cc2408ffbb8572f6008e52b:akb825_SPIRV_Tools/Compile/SPIRV-Tools \ + KhronosGroup:SPIRV-Headers:4995a2f2723c401eb0ea3e10c81298906bf1422b:KhronosGroup_SPIRV_Headers/Compile/SPIRV-Tools/external/SPIRV-Headers \ + +.include diff --git a/graphics/msl/distinfo b/graphics/msl/distinfo new file mode 100644 index 000000000000..eceae95f4c9f --- /dev/null +++ b/graphics/msl/distinfo @@ -0,0 +1,11 @@ +TIMESTAMP = 1655693073 +SHA256 (akb825-ModularShaderLanguage-v1.5.1_GH0.tar.gz) = 4a8decc718b8599dd5fe2ed298fd32af158b0e336b136266b6ca60b550c64a9f +SIZE (akb825-ModularShaderLanguage-v1.5.1_GH0.tar.gz) = 255871 +SHA256 (akb825-glslang-04a12be6bb031aff18b456bfe108f4bffdbf413d_GH0.tar.gz) = 801a43402f31b110ae66e035d473a88cadbdb7eb20d9b0760aa631a36b4a47be +SIZE (akb825-glslang-04a12be6bb031aff18b456bfe108f4bffdbf413d_GH0.tar.gz) = 3543239 +SHA256 (KhronosGroup-SPIRV-Cross-99b59b35288c95fa7352158930cc068705d3c2e3_GH0.tar.gz) = 1775bcbb4affa9b0700b50a44d24a24ad24034d0e60fd763ce5e2780b1b5871e +SIZE (KhronosGroup-SPIRV-Cross-99b59b35288c95fa7352158930cc068705d3c2e3_GH0.tar.gz) = 1607010 +SHA256 (akb825-SPIRV-Tools-c80f8b752f50de446cc2408ffbb8572f6008e52b_GH0.tar.gz) = b5684be2a391bc7eab58c2712a07c6a2baf4fff42edc453531aad3af21bc32e4 +SIZE (akb825-SPIRV-Tools-c80f8b752f50de446cc2408ffbb8572f6008e52b_GH0.tar.gz) = 2999741 +SHA256 (KhronosGroup-SPIRV-Headers-4995a2f2723c401eb0ea3e10c81298906bf1422b_GH0.tar.gz) = 2c9fe1bbd74a74fdabe40a7ffb322527dfc008c79e1d19d3cf41a5f006d9ab60 +SIZE (KhronosGroup-SPIRV-Headers-4995a2f2723c401eb0ea3e10c81298906bf1422b_GH0.tar.gz) = 420432 diff --git a/graphics/msl/pkg-descr b/graphics/msl/pkg-descr new file mode 100644 index 000000000000..76e5154e05cb --- /dev/null +++ b/graphics/msl/pkg-descr @@ -0,0 +1,24 @@ +The Modular Shader Language (MSL) is a pre-compiled shader language +with multiple targets. It is effectively a wrapper around GLSL and +relies on external tools to handle the main work of the compilation. + +The primary goals are: +* Provide an environment more similar to other compiled languages, + such as access to a preprocessor and compile-time errors that point + to the file. +* Allow targeting multiple platforms with different capabilities with + the same source. +* Relies on official and external tools as much as possible. This + makes the language easier to extend and maintain and allows other + third party tools, such as optimizers, to be used. +* Allows all stages of the pipeline to be specified in the same + source. This gives more flexibility in how you organize your source. +* Allows for render states and sampler states to be declared in the + shader. This gives more flexibility in client applications by + allowing these to be set in the shader without hard-coding them in + the application. +* Pipeline is linked when compiling the shader modules, allowing for + earlier checks and easier loading of shaders in the final + application. + +WWW: https://github.com/akb825/ModularShaderLanguage diff --git a/graphics/msl/pkg-plist b/graphics/msl/pkg-plist new file mode 100644 index 000000000000..df66ad42755e --- /dev/null +++ b/graphics/msl/pkg-plist @@ -0,0 +1,43 @@ +bin/mslb-extract +bin/mslc +include/MSL/Client/Export.h +include/MSL/Client/ModuleC.h +include/MSL/Client/ModuleCpp.h +include/MSL/Client/TypesC.h +include/MSL/Client/TypesCpp.h +include/MSL/Compile/CompiledResult.h +include/MSL/Compile/Export.h +include/MSL/Compile/Output.h +include/MSL/Compile/Target.h +include/MSL/Compile/TargetGlsl.h +include/MSL/Compile/TargetMetal.h +include/MSL/Compile/TargetSpirV.h +include/MSL/Compile/Types.h +include/MSL/Config.h +include/spirv-tools/instrument.hpp +include/spirv-tools/libspirv.h +include/spirv-tools/libspirv.hpp +include/spirv-tools/linker.hpp +include/spirv-tools/optimizer.hpp +lib/cmake/MSL/MSLConfig.cmake +lib/cmake/MSL/MSLConfigVersion.cmake +lib/cmake/MSLClient/MSLClientConfig.cmake +lib/cmake/MSLClient/MSLClientConfigVersion.cmake +lib/cmake/MSLClient/MSLClientTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/MSLClient/MSLClientTargets.cmake +lib/cmake/MSLCompile/MSLCompileConfig.cmake +lib/cmake/MSLCompile/MSLCompileConfigVersion.cmake +lib/cmake/MSLCompile/MSLCompileTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/MSLCompile/MSLCompileTargets.cmake +lib/cmake/SPIRV-Tools-opt/SPIRV-Tools-optConfig.cmake +lib/cmake/SPIRV-Tools-opt/SPIRV-Tools-optTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/SPIRV-Tools-opt/SPIRV-Tools-optTargets.cmake +lib/cmake/SPIRV-Tools/SPIRV-ToolsConfig.cmake +lib/cmake/SPIRV-Tools/SPIRV-ToolsTarget-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/SPIRV-Tools/SPIRV-ToolsTarget.cmake +lib/libSPIRV-Tools-opt.a +lib/libSPIRV-Tools.a +lib/libmsl_client.a +lib/libmsl_compile.a +libdata/pkgconfig/SPIRV-Tools-shared.pc +libdata/pkgconfig/SPIRV-Tools.pc