Gentoo Archives: gentoo-commits

From: Nick Sarnie <sarnex@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/shaderc/
Date: Fri, 02 Sep 2022 01:15:35
Message-Id: 1662081314.5ecbbfbec8a02ea4740a8bf0f364e6b9fa0e9c9d.sarnex@gentoo
1 commit: 5ecbbfbec8a02ea4740a8bf0f364e6b9fa0e9c9d
2 Author: Nick Sarnie <sarnex <AT> gentoo <DOT> org>
3 AuthorDate: Fri Sep 2 01:06:12 2022 +0000
4 Commit: Nick Sarnie <sarnex <AT> gentoo <DOT> org>
5 CommitDate: Fri Sep 2 01:15:14 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ecbbfbe
7
8 media-libs/shaderc: add 2022.2
9
10 Signed-off-by: Nick Sarnie <sarnex <AT> gentoo.org>
11
12 media-libs/shaderc/Manifest | 1 +
13 media-libs/shaderc/shaderc-2022.2.ebuild | 88 ++++++++++++++++++++++++++++++++
14 2 files changed, 89 insertions(+)
15
16 diff --git a/media-libs/shaderc/Manifest b/media-libs/shaderc/Manifest
17 index 83836c899286..bc02a39a9b6d 100644
18 --- a/media-libs/shaderc/Manifest
19 +++ b/media-libs/shaderc/Manifest
20 @@ -1 +1,2 @@
21 DIST shaderc-2022.1.tar.gz 222009 BLAKE2B c6707699a49c130b2669620e11f52862790999954a84b05f9f54d238fb0ae68e2523cc4b86104b3d4bce4528db31be89e441b278a97a375b90d7e0f458075f51 SHA512 21c2462cb434d94da87c71ba660f6cd5b161450d7faeff8789b41db25e64f2baa7c560e78aa856d128c5a73699215d6b1085b5ca19a4640237adf194793ad44b
22 +DIST shaderc-2022.2.tar.gz 223386 BLAKE2B feb18bef51bea72574d784d4992e5b8514b0d1d70fbd9194ad842a361740ed3d66c6c3d2cf6114a0ef77279845ab686d01ad5fcd91cbddcc289cee4e521aec6a SHA512 85962f17d07496ba4cef3ad62dc7fd1967ff628449ceb1fec77336211fddbd2554ea94e5558cfaf2cfe4dcfdf6f56744d905714be7dbb776ba2bcd67e4665039
23
24 diff --git a/media-libs/shaderc/shaderc-2022.2.ebuild b/media-libs/shaderc/shaderc-2022.2.ebuild
25 new file mode 100644
26 index 000000000000..792146ea3a6c
27 --- /dev/null
28 +++ b/media-libs/shaderc/shaderc-2022.2.ebuild
29 @@ -0,0 +1,88 @@
30 +# Copyright 1999-2022 Gentoo Authors
31 +# Distributed under the terms of the GNU General Public License v2
32 +
33 +EAPI=8
34 +
35 +PYTHON_COMPAT=( python3_{8..10} )
36 +inherit cmake-multilib python-any-r1
37 +
38 +DESCRIPTION="Collection of tools, libraries and tests for shader compilation"
39 +HOMEPAGE="https://github.com/google/shaderc"
40 +EGIT_COMMIT="${PV}"
41 +SRC_URI="https://github.com/google/${PN}/archive/v${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
42 +S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
43 +
44 +LICENSE="Apache-2.0"
45 +SLOT="0"
46 +KEYWORDS="~amd64 ~ppc64 ~x86"
47 +IUSE="doc test"
48 +
49 +RDEPEND="
50 + >=dev-util/glslang-1.3.224[${MULTILIB_USEDEP}]
51 + >=dev-util/spirv-tools-1.3.224[${MULTILIB_USEDEP}]
52 +"
53 +DEPEND="${RDEPEND}
54 + ${PYTHON_DEPS}
55 + >=dev-util/spirv-headers-1.3.224
56 + test? ( dev-cpp/gtest )
57 +"
58 +BDEPEND="doc? ( dev-ruby/asciidoctor )
59 + test? ( $(python_gen_any_dep 'dev-python/nose[${PYTHON_USEDEP}]') )
60 +"
61 +
62 +PATCHES=(
63 + "${FILESDIR}"/${PN}-2020.4-fix-build.patch
64 +)
65 +
66 +# https://github.com/google/shaderc/issues/470
67 +RESTRICT=test
68 +
69 +python_check_deps() {
70 + if use test; then
71 + python_has_version "dev-python/nose[${PYTHON_USEDEP}]"
72 + fi
73 +}
74 +
75 +src_prepare() {
76 + cmake_comment_add_subdirectory examples
77 +
78 + # Unbundle glslang, spirv-headers, spirv-tools
79 + cmake_comment_add_subdirectory third_party
80 + sed -i \
81 + -e "s|\$<TARGET_FILE:spirv-dis>|${EPREFIX}/usr/bin/spirv-dis|" \
82 + glslc/test/CMakeLists.txt || die
83 +
84 + # Disable git versioning
85 + sed -i -e '/build-version/d' glslc/CMakeLists.txt || die
86 +
87 + # Manually create build-version.inc as we disabled git versioning
88 + cat <<- EOF > glslc/src/build-version.inc || die
89 + "${P}\n"
90 + "$(best_version dev-util/spirv-tools)\n"
91 + "$(best_version dev-util/glslang)\n"
92 + EOF
93 +
94 + cmake_src_prepare
95 +}
96 +
97 +multilib_src_configure() {
98 + local mycmakeargs=(
99 + -DSHADERC_SKIP_TESTS="$(usex !test)"
100 + -DSHADERC_ENABLE_WERROR_COMPILE="false"
101 + )
102 + cmake_src_configure
103 +}
104 +
105 +multilib_src_compile() {
106 + if multilib_is_native_abi && use doc; then
107 + cmake_src_compile glslc_doc_README
108 + fi
109 + cmake_src_compile
110 +}
111 +
112 +multilib_src_install() {
113 + if multilib_is_native_abi; then
114 + use doc && local HTML_DOCS=( "${BUILD_DIR}/glslc/README.html" )
115 + fi
116 + cmake_src_install
117 +}