Gentoo Archives: gentoo-commits

From: Georgy Yakovlev <gyakovlev@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/shaderc/
Date: Wed, 19 Dec 2018 02:58:00
Message-Id: 1545188130.370c3d3030220a76274794702d943d1f431c6df3.gyakovlev@gentoo
1 commit: 370c3d3030220a76274794702d943d1f431c6df3
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Wed Dec 19 02:55:30 2018 +0000
4 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
5 CommitDate: Wed Dec 19 02:55:30 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=370c3d30
7
8 media-libs/shaderc: revbump 2017.2, require older glslang
9
10 Bug: https://bugs.gentoo.org/672652
11 Package-Manager: Portage-2.3.52, Repoman-2.3.12
12 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
13
14 media-libs/shaderc/shaderc-2017.2-r1.ebuild | 89 +++++++++++++++++++++++++++++
15 1 file changed, 89 insertions(+)
16
17 diff --git a/media-libs/shaderc/shaderc-2017.2-r1.ebuild b/media-libs/shaderc/shaderc-2017.2-r1.ebuild
18 new file mode 100644
19 index 00000000000..e664c51b776
20 --- /dev/null
21 +++ b/media-libs/shaderc/shaderc-2017.2-r1.ebuild
22 @@ -0,0 +1,89 @@
23 +# Copyright 1999-2018 Gentoo Authors
24 +# Distributed under the terms of the GNU General Public License v2
25 +
26 +EAPI=6
27 +
28 +EGIT_COMMIT="7a23a01742b88329fb2260eda007172135ba25d4"
29 +MY_P="${PN}-${EGIT_COMMIT}"
30 +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
31 +
32 +inherit cmake-multilib python-any-r1
33 +
34 +DESCRIPTION="Collection of tools, libraries and tests for shader compilation"
35 +HOMEPAGE="https://github.com/google/shaderc"
36 +SRC_URI="https://github.com/google/shaderc/archive/${EGIT_COMMIT}.tar.gz -> ${MY_P}.tar.gz"
37 +
38 +LICENSE="Apache-2.0"
39 +SLOT="0"
40 +KEYWORDS="~amd64 ~x86"
41 +IUSE="doc test"
42 +
43 +RDEPEND="
44 + <dev-util/glslang-7.10[${MULTILIB_USEDEP}]
45 + dev-util/spirv-tools[${MULTILIB_USEDEP}]
46 +"
47 +DEPEND="${RDEPEND}
48 + ${PYTHON_DEPS}
49 + dev-util/spirv-headers
50 + doc? ( dev-ruby/asciidoctor )
51 + test? (
52 + dev-cpp/gtest
53 + $(python_gen_any_dep 'dev-python/nose[${PYTHON_USEDEP}]')
54 + )
55 +"
56 +
57 +# https://github.com/google/shaderc/issues/470
58 +RESTRICT=test
59 +
60 +PATCHES=( "${FILESDIR}/${P}-fix-glslang-link-order.patch" )
61 +
62 +S="${WORKDIR}/${MY_P}"
63 +
64 +python_check_deps() {
65 + if use test; then
66 + has_version --host-root "dev-python/nose[${PYTHON_USEDEP}]"
67 + fi
68 +}
69 +
70 +src_prepare() {
71 + cmake_comment_add_subdirectory examples
72 +
73 + # Unbundle glslang, spirv-headers, spirv-tools
74 + cmake_comment_add_subdirectory third_party
75 + sed -i \
76 + -e "s|\$<TARGET_FILE:spirv-dis>|${EPREFIX}/usr/bin/spirv-dis|" \
77 + glslc/test/CMakeLists.txt || die
78 +
79 + # Disable git versioning
80 + sed -i -e '/build-version/d' glslc/CMakeLists.txt || die
81 +
82 + # Manually create build-version.inc as we disabled git versioning
83 + cat <<- EOF > glslc/src/build-version.inc || die
84 + "${P}\n"
85 + "$(best_version dev-util/spirv-tools)\n"
86 + "$(best_version dev-util/glslang)\n"
87 + EOF
88 +
89 + cmake-utils_src_prepare
90 +}
91 +
92 +multilib_src_configure() {
93 + local mycmakeargs=(
94 + -DSHADERC_SKIP_TESTS="$(usex !test)"
95 + )
96 + cmake-utils_src_configure
97 +}
98 +
99 +multilib_src_compile() {
100 + if multilib_is_native_abi && use doc; then
101 + cmake-utils_src_make glslc_doc_README
102 + fi
103 + cmake-utils_src_compile
104 +}
105 +
106 +multilib_src_install() {
107 + if multilib_is_native_abi; then
108 + use doc && local HTML_DOCS=( "${BUILD_DIR}/glslc/README.html" )
109 + fi
110 + cmake-utils_src_install
111 +}