diff --git a/dev-util/shader-slang/Manifest b/dev-util/shader-slang/Manifest index 0ba6da5b56fce..dc130803514a1 100644 --- a/dev-util/shader-slang/Manifest +++ b/dev-util/shader-slang/Manifest @@ -1 +1,2 @@ DIST shader-slang-2026.14.1.tar.xz 22310728 BLAKE2B ee9e47f34145041bc28a5b3508546be06f246f8575e3ca3885db156ec55ca73ecf5ff8cd8cca3cbde86e3b0ec5716c4ba17764419afc7772099aff77c1d84a6c SHA512 5ff4d6acc6deaa1fd34266700ef39a1550a05a969ec756d1fdcda7fa3d3a358c25eadde946ef88cca1c445e3abe223e2b3bfe56241245f6a9352eede6437a798 +DIST shader-slang-2026.16.tar.xz 23454972 BLAKE2B c9b5bceec3799485d054902c691e6d6b4ff3403c998eff2d87aa303631b8bfd7c919cb16e41f564760fc399816bbd434d1e95924626269919d385708ccc39f8d SHA512 5d88c58a5a00c00e714e32d30481ef362b9a0e85c7d06414e8a22e85f502986707599a04d817d3c2806fe55ad01f58b156bcc8f7ea160a2d4abbcf7bdc70b420 diff --git a/dev-util/shader-slang/shader-slang-2026.16.ebuild b/dev-util/shader-slang/shader-slang-2026.16.ebuild new file mode 100644 index 0000000000000..cca514793a954 --- /dev/null +++ b/dev-util/shader-slang/shader-slang-2026.16.ebuild @@ -0,0 +1,95 @@ +# Copyright 2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic + +DESCRIPTION="Making it easier to work with shaders" +HOMEPAGE="https://shader-slang.org/" +# tarball is same as upstream except for including git submodules +SRC_URI="https://distfiles.gentoo.org/pub/dev/ionen@gentoo.org/${P}.tar.xz" + +LICENSE=" + Apache-2.0-with-LLVM-exceptions + Apache-2.0 Boost-1.0 CC-BY-4.0 MIT Unlicense UoI-NCSA +" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm64 ~x86" + +# needs an annoying submodule that fetches many things, tests seem to +# do runtime compilation that fail due to missing headers, and they +# also need special care and be fed a list of expected failures +# (currently only needed to build x11-terms/kitty, do it as a test) +RESTRICT="test" + +RDEPEND=" + app-arch/lz4:= + dev-libs/miniz:= + dev-util/glslang:= + dev-util/spirv-tools +" +DEPEND=" + ${RDEPEND} + >=dev-util/spirv-headers-1.4.350 + dev-util/vulkan-headers +" + +PATCHES=( + "${FILESDIR}"/${PN}-2026.14.1-includedir.patch + "${FILESDIR}"/${PN}-2026.14.1-libdir.patch + "${FILESDIR}"/${PN}-2026.14.1-lz4.patch + "${FILESDIR}"/${PN}-2026.14.1-system-glslang.patch +) + +# triggers on examples and other unused subdirs +CMAKE_QA_COMPAT_SKIP=1 + +# these are modules and do not need a soname +QA_SONAME=" + usr/lib.*/libslang-glsl-module-.*.so + usr/lib.*/libslang-glslang-.*.so +" + +src_configure() { + # https://github.com/shader-slang/slang/issues/6330 + use elibc_musl && append-lfs-flags + + local mycmakeargs=( + -DSLANG_ENABLE_PCH=no + -DSLANG_ENABLE_SLANG_GLSLANG=yes + -DSLANG_ENABLE_SPLIT_DEBUG_INFO=no + -DSLANG_USE_SYSTEM_GLSLANG=yes + -DSLANG_USE_SYSTEM_LZ4=yes + -DSLANG_USE_SYSTEM_MINIZ=yes + -DSLANG_USE_SYSTEM_SPIRV_HEADERS=yes + -DSLANG_USE_SYSTEM_SPIRV_TOOLS=yes + -DSLANG_USE_SYSTEM_VULKAN_HEADERS=yes + -DSLANG_VERSION_{FULL,NUMERIC}=${PV} + + # avoid collisions with sys-libs/slang + -DCMAKE_INSTALL_INCLUDEDIR=include/${PN} + -DSLANG_ENABLE_SLANG_PROXY=no + + # options disabled for simplicity, will revisit only if needed + # (some have issues ranging from build failure to live fetching) + -DSLANG_ENABLE_AFTERMATH=no + -DSLANG_ENABLE_CUDA=no + -DSLANG_ENABLE_DXIL=no + -DSLANG_ENABLE_EXAMPLES=no + -DSLANG_ENABLE_GFX=no + -DSLANG_ENABLE_OPTIX=no + -DSLANG_ENABLE_SLANG_RHI=no + -DSLANG_ENABLE_TESTS=no + -DSLANG_SLANG_LLVM_FLAVOR=DISABLE + ) + + cmake_src_configure +} + +src_install() { + local DOCS=() + cmake_src_install + + mv -- "${ED}"/usr/share/doc/{slang,${PF}} || die +}