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/files/, media-libs/shaderc/
Date: Wed, 19 Dec 2018 02:57:45
Message-Id: 1545188065.d7b891fb1485664188eebc4efb01b1865d664cbd.gyakovlev@gentoo
1 commit: d7b891fb1485664188eebc4efb01b1865d664cbd
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Wed Dec 19 02:54:25 2018 +0000
4 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
5 CommitDate: Wed Dec 19 02:54:25 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d7b891fb
7
8 media-libs/shaderc: bump to 2018.0
9
10 Bug: https://bugs.gentoo.org/672652
11 Closes: https://bugs.gentoo.org/672684
12 Package-Manager: Portage-2.3.52, Repoman-2.3.12
13 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
14
15 media-libs/shaderc/Manifest | 1 +
16 .../shaderc-2018.0-fix-glslang-link-order.patch | 26 +++++++
17 media-libs/shaderc/shaderc-2018.0.ebuild | 85 ++++++++++++++++++++++
18 3 files changed, 112 insertions(+)
19
20 diff --git a/media-libs/shaderc/Manifest b/media-libs/shaderc/Manifest
21 index 6e1fa802596..5be0f13941b 100644
22 --- a/media-libs/shaderc/Manifest
23 +++ b/media-libs/shaderc/Manifest
24 @@ -1 +1,2 @@
25 +DIST shaderc-2018.0.tar.gz 206013 BLAKE2B b45fb6e959f621566817f8e31b1947e479b6ea392eb64f334dca9ad24cc4e8b736dd236e634de3f96342f48d8138722a2b769efb9db65025def5ed59bf5b911b SHA512 7a420fde73c9f2aae3f13558d538a1f4ae43bba19e2b4d2da8fbbd017e9e4f328ece5f330f1bbcb9fe84c91b7eb84b9158dc2e3d144c82939090a0fa6f5b4ef0
26 DIST shaderc-7a23a01742b88329fb2260eda007172135ba25d4.tar.gz 186291 BLAKE2B e91f57ba5c9339fed17d409b82df284a7897ed8bcabb203a0b8aab439df1d460ff5efdaa49e9140801b1430e831bbdca6920181fd1ddd07d8d35eb17b519246b SHA512 558447bc29b0c7610fda0f6c2a6b66f3c8fc7f2f5e336ad190ae959caa8c7aa1e09d3c2efe0e197cb2cbe1fa97e0c68623ce423c658b29fcbd1f1e1ea4c85f18
27
28 diff --git a/media-libs/shaderc/files/shaderc-2018.0-fix-glslang-link-order.patch b/media-libs/shaderc/files/shaderc-2018.0-fix-glslang-link-order.patch
29 new file mode 100644
30 index 00000000000..837303d84e1
31 --- /dev/null
32 +++ b/media-libs/shaderc/files/shaderc-2018.0-fix-glslang-link-order.patch
33 @@ -0,0 +1,26 @@
34 +diff --git a/glslc/CMakeLists.txt b/glslc/CMakeLists.txt
35 +index acf6fb0..0f5d888 100644
36 +--- a/glslc/CMakeLists.txt
37 ++++ b/glslc/CMakeLists.txt
38 +@@ -18,7 +18,7 @@ add_library(glslc STATIC
39 + shaderc_default_compile_options(glslc)
40 + target_include_directories(glslc PUBLIC ${glslang_SOURCE_DIR})
41 + target_link_libraries(glslc PRIVATE glslang OSDependent OGLCompiler
42 +- HLSL glslang SPIRV ${CMAKE_THREAD_LIBS_INIT})
43 ++ glslang SPIRV HLSL ${CMAKE_THREAD_LIBS_INIT})
44 + target_link_libraries(glslc PRIVATE shaderc_util shaderc)
45 +
46 + add_executable(glslc_exe src/main.cc)
47 +diff --git a/libshaderc_util/CMakeLists.txt b/libshaderc_util/CMakeLists.txt
48 +index 873540a..b189430 100644
49 +--- a/libshaderc_util/CMakeLists.txt
50 ++++ b/libshaderc_util/CMakeLists.txt
51 +@@ -35,7 +35,7 @@ endif(SHADERC_ENABLE_INSTALL)
52 + find_package(Threads)
53 + target_link_libraries(shaderc_util PRIVATE
54 + glslang OSDependent OGLCompiler HLSL glslang SPIRV
55 +- SPIRV-Tools-opt ${CMAKE_THREAD_LIBS_INIT})
56 ++ SPIRV-Tools-opt SPIRV-Tools ${CMAKE_THREAD_LIBS_INIT})
57 +
58 + shaderc_add_tests(
59 + TEST_PREFIX shaderc_util
60
61 diff --git a/media-libs/shaderc/shaderc-2018.0.ebuild b/media-libs/shaderc/shaderc-2018.0.ebuild
62 new file mode 100644
63 index 00000000000..e0b0e435fad
64 --- /dev/null
65 +++ b/media-libs/shaderc/shaderc-2018.0.ebuild
66 @@ -0,0 +1,85 @@
67 +# Copyright 1999-2018 Gentoo Authors
68 +# Distributed under the terms of the GNU General Public License v2
69 +
70 +EAPI=6
71 +
72 +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
73 +
74 +inherit cmake-multilib python-any-r1
75 +
76 +DESCRIPTION="Collection of tools, libraries and tests for shader compilation"
77 +HOMEPAGE="https://github.com/google/shaderc"
78 +SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
79 +
80 +LICENSE="Apache-2.0"
81 +SLOT="0"
82 +KEYWORDS="~amd64 ~x86"
83 +IUSE="doc test"
84 +
85 +RDEPEND="
86 + >=dev-util/glslang-7.10[${MULTILIB_USEDEP}]
87 + dev-util/spirv-tools[${MULTILIB_USEDEP}]
88 +"
89 +DEPEND="${RDEPEND}
90 + ${PYTHON_DEPS}
91 + dev-util/spirv-headers
92 + doc? ( dev-ruby/asciidoctor )
93 + test? (
94 + dev-cpp/gtest
95 + $(python_gen_any_dep 'dev-python/nose[${PYTHON_USEDEP}]')
96 + )
97 +"
98 +
99 +# https://github.com/google/shaderc/issues/470
100 +RESTRICT=test
101 +
102 +PATCHES=( "${FILESDIR}/${P}-fix-glslang-link-order.patch" )
103 +
104 +python_check_deps() {
105 + if use test; then
106 + has_version --host-root "dev-python/nose[${PYTHON_USEDEP}]"
107 + fi
108 +}
109 +
110 +src_prepare() {
111 + cmake_comment_add_subdirectory examples
112 +
113 + # Unbundle glslang, spirv-headers, spirv-tools
114 + cmake_comment_add_subdirectory third_party
115 + sed -i \
116 + -e "s|\$<TARGET_FILE:spirv-dis>|${EPREFIX}/usr/bin/spirv-dis|" \
117 + glslc/test/CMakeLists.txt || die
118 +
119 + # Disable git versioning
120 + sed -i -e '/build-version/d' glslc/CMakeLists.txt || die
121 +
122 + # Manually create build-version.inc as we disabled git versioning
123 + cat <<- EOF > glslc/src/build-version.inc || die
124 + "${P}\n"
125 + "$(best_version dev-util/spirv-tools)\n"
126 + "$(best_version dev-util/glslang)\n"
127 + EOF
128 +
129 + cmake-utils_src_prepare
130 +}
131 +
132 +multilib_src_configure() {
133 + local mycmakeargs=(
134 + -DSHADERC_SKIP_TESTS="$(usex !test)"
135 + )
136 + cmake-utils_src_configure
137 +}
138 +
139 +multilib_src_compile() {
140 + if multilib_is_native_abi && use doc; then
141 + cmake-utils_src_make glslc_doc_README
142 + fi
143 + cmake-utils_src_compile
144 +}
145 +
146 +multilib_src_install() {
147 + if multilib_is_native_abi; then
148 + use doc && local HTML_DOCS=( "${BUILD_DIR}/glslc/README.html" )
149 + fi
150 + cmake-utils_src_install
151 +}