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 |
+} |