summaryrefslogtreecommitdiff
path: root/media-libs/shaderc
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/shaderc')
-rw-r--r--media-libs/shaderc/Manifest2
-rw-r--r--media-libs/shaderc/shaderc-2024.0.ebuild79
2 files changed, 81 insertions, 0 deletions
diff --git a/media-libs/shaderc/Manifest b/media-libs/shaderc/Manifest
index d8c28ce59e76..c256053fed28 100644
--- a/media-libs/shaderc/Manifest
+++ b/media-libs/shaderc/Manifest
@@ -1,4 +1,6 @@
AUX shaderc-2020.4-fix-build.patch 424 BLAKE2B 6d8760ef64bf9f4d6e291d7b3b37735573b1cf43f510870a43f8169a6ea1909d72c1b3d7c0fb295733c07f6e626d4b148ca2deb384d7aae4554c8da01482b930 SHA512 95cbd65997146c3ba018c81d49f90a7713f99f5bc86b6c30d6c83ca9bb139309df763d325b75c9b1d02ca60ed3bddd003eb08e64e3856867bc15d58c620341ed
DIST shaderc-2023.8.tar.gz 227238 BLAKE2B 334bda3bdff510ac97f97fa710e18ca9a2c807d1e71973aaf4493112dca3adb69c7a83c0590c65db3e6dffab82f500058162d3190e5822a01ea2d611db771857 SHA512 2a5e59a2bb6c4b5462758d824747fee0edaf177dc64f30fe698fd2d2cc21cddab1a19ec2b2d63bd3d2e209330a13519f399395398379370b15daa39e6ee6b2bf
+DIST shaderc-2024.0.tar.gz 227125 BLAKE2B f11f2acad796f41015d4738b964526f119e944b1cfa2103ab3452adcf5790a04adbd10f9d55423b3ce567e87f64eb241067c786c4a7b76bb884aa70c100d0eb8 SHA512 ca80b22a80bf1a222e6deecbe63f99c6eed980c6c31b4f7981b6c8dc5637b7271c861543566e01aaf945df40da095b63a69f2e22f061a41faad2ecca5dc187ae
EBUILD shaderc-2023.8.ebuild 1903 BLAKE2B dd37e5098ccdcfb8d7335e4e44cfc810a651891694dadcb4f42cd236643512d8b895def9bd2d2ce2072317830213d05bf67986ca3bd76feb8c21b518a89137e3 SHA512 0775b542b9dabdf8ffbf7e5136234c7f5cde58b4a2d8a4412ed13ef3cb8635d61e46e3da5fa5b75210e81195825aa3faee29881883e774ce89689eda62c0d13b
+EBUILD shaderc-2024.0.ebuild 1902 BLAKE2B 53e48d9847403ee87b4af2b1f98c4e0e8d8e53589788ad892d18aeb3d40a439697ba6066645ec1f575095fa9e965882875b2c08bc9d99a0e56445047b61ec5c6 SHA512 2330e529b12745110ce0ea42355336eda5209cc4e8b22d94137d16dca5a254c8fe3ace821fe97f29467c44f067c8808c8b87079f52d4806711d41738e9398894
MISC metadata.xml 336 BLAKE2B 5dbc5d2e5dc2e389582376ea40375fed6b20e766cd59415f8f23fd81af9abac9c07379f341dff21901fc5934920c6534c525452c67aa606783350b84f071c88e SHA512 b72710b6ca796b364037d6c8646b0760688ee06a3854ae74dfff15d902dd7a2d94ba9872c42110e9e8e005ef8cc443b89108553fc11b79c1b5872daeff7b0f70
diff --git a/media-libs/shaderc/shaderc-2024.0.ebuild b/media-libs/shaderc/shaderc-2024.0.ebuild
new file mode 100644
index 000000000000..bd38b2831f82
--- /dev/null
+++ b/media-libs/shaderc/shaderc-2024.0.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit cmake-multilib python-any-r1
+
+DESCRIPTION="Collection of tools, libraries and tests for shader compilation"
+HOMEPAGE="https://github.com/google/shaderc"
+EGIT_COMMIT="${PV}"
+SRC_URI="https://github.com/google/${PN}/archive/v${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="doc"
+
+RDEPEND="
+ ~dev-util/glslang-1.3.280.0:=[${MULTILIB_USEDEP}]
+ ~dev-util/spirv-tools-1.3.280.0[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ ~dev-util/spirv-headers-1.3.280.0"
+
+BDEPEND="doc? ( dev-ruby/asciidoctor )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2020.4-fix-build.patch
+)
+
+# https://github.com/google/shaderc/issues/470
+RESTRICT=test
+
+src_prepare() {
+ cmake_comment_add_subdirectory examples
+
+ # Unbundle glslang, spirv-headers, spirv-tools
+ cmake_comment_add_subdirectory third_party
+ sed -i \
+ -e "s|\$<TARGET_FILE:spirv-dis>|${EPREFIX}/usr/bin/spirv-dis|" \
+ glslc/test/CMakeLists.txt || die
+
+ # Disable git versioning
+ sed -i -e '/build-version/d' glslc/CMakeLists.txt || die
+
+ # Manually create build-version.inc as we disabled git versioning
+ cat <<- EOF > glslc/src/build-version.inc || die
+ "${P}\n"
+ "$(best_version dev-util/spirv-tools)\n"
+ "$(best_version dev-util/glslang)\n"
+ EOF
+
+ cmake_src_prepare
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DSHADERC_SKIP_TESTS="true"
+ -DSHADERC_ENABLE_WERROR_COMPILE="false"
+ )
+ cmake_src_configure
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi && use doc; then
+ cmake_src_compile glslc_doc_README
+ fi
+ cmake_src_compile
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ use doc && local HTML_DOCS=( "${BUILD_DIR}/glslc/README.html" )
+ fi
+ cmake_src_install
+}