diff --git a/common/shlibs b/common/shlibs index 5cb3a4509007a5..ce8e67cc0792c5 100644 --- a/common/shlibs +++ b/common/shlibs @@ -3576,6 +3576,7 @@ libglslang.so.16 glslang-16.2.0_1 libglslang-default-resource-limits.so.16 glslang-16.2.0_1 libSPIRV.so.16 glslang-16.2.0_1 libSPIRV-Tools-shared.so SPIRV-Tools-2022.3_1 +libspirv-cross-c-shared.so.0 SPIRV-Cross-1.4.350.1_1 libmaxminddb.so.0 libmaxminddb-1.3.2_1 libmysqlpp.so.3 mysql++-3.2.5_1 liblqr-1.so.0 liblqr-0.4.2_1 diff --git a/srcpkgs/SPIRV-Cross-devel b/srcpkgs/SPIRV-Cross-devel new file mode 120000 index 00000000000000..bc023f789c8958 --- /dev/null +++ b/srcpkgs/SPIRV-Cross-devel @@ -0,0 +1 @@ +SPIRV-Cross \ No newline at end of file diff --git a/srcpkgs/SPIRV-Cross/template b/srcpkgs/SPIRV-Cross/template new file mode 100644 index 00000000000000..7ed5cde64c1979 --- /dev/null +++ b/srcpkgs/SPIRV-Cross/template @@ -0,0 +1,28 @@ +# Template file for 'SPIRV-Cross' +pkgname=SPIRV-Cross +version=1.4.350.1 +revision=1 +build_style=cmake +configure_args="-DSPIRV_CROSS_SHARED=ON -DSPIRV_CROSS_ENABLE_TESTS=OFF -DSPIRV_CROSS_FORCE_PIC=ON" +short_desc="Tool and library for converting SPIR-V to high level shader languages" +maintainer="Rutpiv " +license="Apache-2.0 OR MIT" +homepage="https://github.com/KhronosGroup/SPIRV-Cross" +distfiles="https://github.com/KhronosGroup/SPIRV-Cross/archive/vulkan-sdk-${version}.tar.gz" +checksum=21057934ede32fe90a63dc304fdce0f2a6cb4f0ca685a72ed36a73aac6f72ad5 + +post_install() { + vlicense LICENSES/MIT.txt MIT +} + +SPIRV-Cross-devel_package() { + depends="${sourcepkg}>=${version}_${revision}" + short_desc+=" - development files" + pkg_install() { + vmove usr/include + vmove usr/lib/pkgconfig + vmove "usr/lib/*.a" + vmove "usr/lib/*.so" + vmove "usr/share/spirv_cross_*" + } +} diff --git a/srcpkgs/SPIRV-Cross/update b/srcpkgs/SPIRV-Cross/update new file mode 100644 index 00000000000000..1706191870c01f --- /dev/null +++ b/srcpkgs/SPIRV-Cross/update @@ -0,0 +1 @@ +pattern="refs/tags/vulkan-sdk-\K[0-9.]+($|(?=^))" diff --git a/srcpkgs/SPIRV-Reflect-devel b/srcpkgs/SPIRV-Reflect-devel new file mode 120000 index 00000000000000..e175c29fed4275 --- /dev/null +++ b/srcpkgs/SPIRV-Reflect-devel @@ -0,0 +1 @@ +SPIRV-Reflect \ No newline at end of file diff --git a/srcpkgs/SPIRV-Reflect/patches/use-system-spirv-headers.patch b/srcpkgs/SPIRV-Reflect/patches/use-system-spirv-headers.patch new file mode 100644 index 00000000000000..442bdfbccf6ff6 --- /dev/null +++ b/srcpkgs/SPIRV-Reflect/patches/use-system-spirv-headers.patch @@ -0,0 +1,22 @@ +The installed spirv_reflect.h defaults to a source-relative include of the +vendored SPIRV-Headers copy, which does not exist after installation. Upstream +provides SPIRV_REFLECT_USE_SYSTEM_SPIRV_H for this, but the define would have to +be repeated by every consumer, so use the system header unconditionally. This +also keeps the static library and its consumers on a single spirv.h. + +diff --git a/spirv_reflect.h b/spirv_reflect.h +index 0d800e3..ee87da5 100644 +--- a/spirv_reflect.h ++++ b/spirv_reflect.h +@@ -31,11 +31,7 @@ VERSION HISTORY + #ifndef SPIRV_REFLECT_H + #define SPIRV_REFLECT_H + +-#if defined(SPIRV_REFLECT_USE_SYSTEM_SPIRV_H) + #include +-#else +-#include "./include/spirv/unified1/spirv.h" +-#endif + + + #include diff --git a/srcpkgs/SPIRV-Reflect/template b/srcpkgs/SPIRV-Reflect/template new file mode 100644 index 00000000000000..c54a92c9fa2277 --- /dev/null +++ b/srcpkgs/SPIRV-Reflect/template @@ -0,0 +1,22 @@ +# Template file for 'SPIRV-Reflect' +pkgname=SPIRV-Reflect +version=1.4.350.1 +revision=1 +build_style=cmake +configure_args="-DSPIRV_REFLECT_STATIC_LIB=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON" +makedepends="SPIRV-Headers" +short_desc="Reflection API and command line tool for SPIR-V shader bytecode" +maintainer="Rutpiv " +license="Apache-2.0" +homepage="https://github.com/KhronosGroup/SPIRV-Reflect" +distfiles="https://github.com/KhronosGroup/SPIRV-Reflect/archive/vulkan-sdk-${version}.tar.gz" +checksum=e045cdd7598211cdbaf39791151bc526a9844401d615579e4959966d2317bdd7 + +SPIRV-Reflect-devel_package() { + depends="${sourcepkg}>=${version}_${revision} SPIRV-Headers" + short_desc+=" - development files" + pkg_install() { + vmove usr/include + vmove "usr/lib/*.a" + } +} diff --git a/srcpkgs/SPIRV-Reflect/update b/srcpkgs/SPIRV-Reflect/update new file mode 100644 index 00000000000000..1706191870c01f --- /dev/null +++ b/srcpkgs/SPIRV-Reflect/update @@ -0,0 +1 @@ +pattern="refs/tags/vulkan-sdk-\K[0-9.]+($|(?=^))"