1 |
commit: f4d5c2477709118c9d59c90ccc49d540a7dd69cd |
2 |
Author: Daniel Novomesky <dnovomesky <AT> gmail <DOT> com> |
3 |
AuthorDate: Wed May 11 16:02:57 2022 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat May 14 01:02:23 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f4d5c247 |
7 |
|
8 |
media-libs/libjxl: version bump to 20220511 snapshot |
9 |
|
10 |
- Drop old 0.7.0_pre20220311 |
11 |
- Depend on media-libs/libjpeg-turbo instead virtual/jpeg |
12 |
- -DCMAKE_SKIP_RPATH=ON is no longer needed |
13 |
|
14 |
Closes: https://bugs.gentoo.org/843629 |
15 |
Package-Manager: Portage-3.0.30, Repoman-3.0.3 |
16 |
Signed-off-by: Daniel Novomesky <dnovomesky <AT> gmail.com> |
17 |
Closes: https://github.com/gentoo/gentoo/pull/25447 |
18 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
19 |
|
20 |
media-libs/libjxl/Manifest | 2 +- |
21 |
media-libs/libjxl/files/libjxl-0.7.0-atomic.patch | 136 --------------------- |
22 |
...0311.ebuild => libjxl-0.7.0_pre20220511.ebuild} | 31 ++--- |
23 |
media-libs/libjxl/libjxl-9999.ebuild | 3 +- |
24 |
4 files changed, 10 insertions(+), 162 deletions(-) |
25 |
|
26 |
diff --git a/media-libs/libjxl/Manifest b/media-libs/libjxl/Manifest |
27 |
index 2614d99687a0..a6ca3a295453 100644 |
28 |
--- a/media-libs/libjxl/Manifest |
29 |
+++ b/media-libs/libjxl/Manifest |
30 |
@@ -1,2 +1,2 @@ |
31 |
-DIST libjxl-0.7.0_pre20220311.tar.gz 17322724 BLAKE2B a3cf970ea3db67e0890e94a5c74ea66610d4fed608fa3d079e6934a1d5f2bdc3ef4264c1df85e4b4efcd22c060087c712009f6c4a6b69a41f6e96ff3674c6de5 SHA512 f3e46ddea462b31de6df3c615c3cd628adc58c7ff41588e2ec4cc8929590c9272603a66ed4620b9ba550d85b3d1a6da3f51b1c4f8650ef8901347fea8af5d474 |
32 |
DIST libjxl-0.7.0_pre20220329.tar.gz 21282311 BLAKE2B 8ced9811adba47e5ccac4d55cb7133a863bedceebeb51e649fa79ecb17b785e747532f1f36fd39e3627d0a29406f5f403dee8fa42a9958c713c1296c2f83260a SHA512 deb17dd2eb3e2c39d624d97c6959940aee5beafcb009f6cb2ac14dd83c73d2601df8c81f6cec5d8032d9e66d1fdabfe620dcbf9bfa5e90eb9978265896816242 |
33 |
+DIST libjxl-0.7.0_pre20220511.tar.gz 1488860 BLAKE2B 63cc0d8161eb83efbae9c4ef238ec7300a8354ee7e030fafb96efca9c50216edfaf45bf276403df41a1bf4add533cb7031074c62faafc2f8d2e499290525f332 SHA512 605299cd4294c524b703bd163c083cb04c1f247aab5a6756d2e68482dab98c8d9585f248c03290e67c6cadf8692ead0c00abce7162d8dd7bf26b2cd4bfd1f736 |
34 |
|
35 |
diff --git a/media-libs/libjxl/files/libjxl-0.7.0-atomic.patch b/media-libs/libjxl/files/libjxl-0.7.0-atomic.patch |
36 |
deleted file mode 100644 |
37 |
index 44d76fcfb10f..000000000000 |
38 |
--- a/media-libs/libjxl/files/libjxl-0.7.0-atomic.patch |
39 |
+++ /dev/null |
40 |
@@ -1,136 +0,0 @@ |
41 |
-include following patches : |
42 |
- |
43 |
-fde214c5f4dc5ffd0360401a68df33182edf9226 Refactor c11/atomic patch for riscv64 |
44 |
-326711f86719e6ce7b0422a7970ce8f8b1598f25 Make sure to list Threads::Threads in JPEGXL_DEC_INTERNAL_LIBS |
45 |
-b12bb7a5f37d6bcaf134cfab7828ae08c4a0e60d Remove duplicate reference to hwy library |
46 |
-87fe7c16e1fb2e21b6a1dca26782950ae1559d99 libjxl implementation rely on c11 atomics |
47 |
- |
48 |
-diff --git a/CMakeLists.txt b/CMakeLists.txt |
49 |
-index fc1bbac..cce9748 100644 |
50 |
---- a/CMakeLists.txt |
51 |
-+++ b/CMakeLists.txt |
52 |
-@@ -191,6 +191,15 @@ endif() # JPEGXL_STATIC |
53 |
- set(THREADS_PREFER_PTHREAD_FLAG YES) |
54 |
- find_package(Threads REQUIRED) |
55 |
- |
56 |
-+# These settings are important to drive check_cxx_source_compiles |
57 |
-+# See CMP0067 (min cmake version is 3.10 anyway) |
58 |
-+set(CMAKE_CXX_STANDARD 11) |
59 |
-+set(CMAKE_CXX_EXTENSIONS OFF) |
60 |
-+set(CMAKE_CXX_STANDARD_REQUIRED YES) |
61 |
-+ |
62 |
-+# Atomics |
63 |
-+find_package(Atomics REQUIRED) |
64 |
-+ |
65 |
- if(JPEGXL_STATIC) |
66 |
- if (MINGW) |
67 |
- # In MINGW libstdc++ uses pthreads directly. When building statically a |
68 |
-@@ -298,10 +307,6 @@ endif () # !MSVC |
69 |
- |
70 |
- include(GNUInstallDirs) |
71 |
- |
72 |
--set(CMAKE_CXX_STANDARD 11) |
73 |
--set(CMAKE_CXX_EXTENSIONS OFF) |
74 |
--set(CMAKE_CXX_STANDARD_REQUIRED YES) |
75 |
-- |
76 |
- add_subdirectory(third_party) |
77 |
- |
78 |
- # Copy the JXL license file to the output build directory. |
79 |
-diff --git a/cmake/FindAtomics.cmake b/cmake/FindAtomics.cmake |
80 |
-new file mode 100644 |
81 |
-index 0000000..9a6cdc3 |
82 |
---- /dev/null |
83 |
-+++ b/cmake/FindAtomics.cmake |
84 |
-@@ -0,0 +1,53 @@ |
85 |
-+# Original issue: |
86 |
-+# * https://gitlab.kitware.com/cmake/cmake/-/issues/23021#note_1098733 |
87 |
-+# |
88 |
-+# For reference: |
89 |
-+# * https://gcc.gnu.org/wiki/Atomic/GCCMM |
90 |
-+# |
91 |
-+# riscv64 specific: |
92 |
-+# * https://lists.debian.org/debian-riscv/2022/01/msg00009.html |
93 |
-+# |
94 |
-+# ATOMICS_FOUND - system has c++ atomics |
95 |
-+# ATOMICS_LIBRARIES - libraries needed to use c++ atomics |
96 |
-+ |
97 |
-+include(CheckCXXSourceCompiles) |
98 |
-+ |
99 |
-+# RISC-V only has 32-bit and 64-bit atomic instructions. GCC is supposed |
100 |
-+# to convert smaller atomics to those larger ones via masking and |
101 |
-+# shifting like LLVM, but it’s a known bug that it does not. This means |
102 |
-+# anything that wants to use atomics on 1-byte or 2-byte types needs |
103 |
-+# -latomic, but not 4-byte or 8-byte (though it does no harm). |
104 |
-+set(atomic_code |
105 |
-+ " |
106 |
-+ #include <atomic> |
107 |
-+ #include <cstdint> |
108 |
-+ std::atomic<uint8_t> n8 (0); // riscv64 |
109 |
-+ std::atomic<uint64_t> n64 (0); // armel, mipsel, powerpc |
110 |
-+ int main() { |
111 |
-+ ++n8; |
112 |
-+ ++n64; |
113 |
-+ return 0; |
114 |
-+ }") |
115 |
-+ |
116 |
-+check_cxx_source_compiles("${atomic_code}" ATOMICS_LOCK_FREE_INSTRUCTIONS) |
117 |
-+ |
118 |
-+if(ATOMICS_LOCK_FREE_INSTRUCTIONS) |
119 |
-+ set(ATOMICS_FOUND TRUE) |
120 |
-+ set(ATOMICS_LIBRARIES) |
121 |
-+else() |
122 |
-+ set(CMAKE_REQUIRED_LIBRARIES "-latomic") |
123 |
-+ check_cxx_source_compiles("${atomic_code}" ATOMICS_IN_LIBRARY) |
124 |
-+ set(CMAKE_REQUIRED_LIBRARIES) |
125 |
-+ if(ATOMICS_IN_LIBRARY) |
126 |
-+ set(ATOMICS_LIBRARY atomic) |
127 |
-+ include(FindPackageHandleStandardArgs) |
128 |
-+ find_package_handle_standard_args(Atomics DEFAULT_MSG ATOMICS_LIBRARY) |
129 |
-+ set(ATOMICS_LIBRARIES ${ATOMICS_LIBRARY}) |
130 |
-+ unset(ATOMICS_LIBRARY) |
131 |
-+ else() |
132 |
-+ if(Atomics_FIND_REQUIRED) |
133 |
-+ message(FATAL_ERROR "Neither lock free instructions nor -latomic found.") |
134 |
-+ endif() |
135 |
-+ endif() |
136 |
-+endif() |
137 |
-+unset(atomic_code) |
138 |
-diff --git a/lib/jxl.cmake b/lib/jxl.cmake |
139 |
-index 97dfd73..8f69894 100644 |
140 |
---- a/lib/jxl.cmake |
141 |
-+++ b/lib/jxl.cmake |
142 |
-@@ -346,6 +346,8 @@ set(JPEGXL_DEC_INTERNAL_LIBS |
143 |
- brotlidec-static |
144 |
- brotlicommon-static |
145 |
- hwy |
146 |
-+ Threads::Threads |
147 |
-+ ${ATOMICS_LIBRARIES} |
148 |
- ) |
149 |
- |
150 |
- if(JPEGXL_ENABLE_PROFILER) |
151 |
-@@ -355,7 +357,6 @@ endif() |
152 |
- set(JPEGXL_INTERNAL_LIBS |
153 |
- ${JPEGXL_DEC_INTERNAL_LIBS} |
154 |
- brotlienc-static |
155 |
-- Threads::Threads |
156 |
- ) |
157 |
- |
158 |
- # strips the -static suffix from all the elements in LIST |
159 |
-@@ -467,7 +468,7 @@ add_library(jxl_dec-static STATIC |
160 |
- $<TARGET_OBJECTS:jxl_dec-obj> |
161 |
- ) |
162 |
- target_link_libraries(jxl_dec-static |
163 |
-- PUBLIC ${JPEGXL_COVERAGE_FLAGS} ${JPEGXL_DEC_INTERNAL_LIBS} hwy) |
164 |
-+ PUBLIC ${JPEGXL_COVERAGE_FLAGS} ${JPEGXL_DEC_INTERNAL_LIBS}) |
165 |
- target_include_directories(jxl_dec-static PUBLIC |
166 |
- "${PROJECT_SOURCE_DIR}" |
167 |
- "${CMAKE_CURRENT_SOURCE_DIR}/include" |
168 |
-@@ -488,7 +489,7 @@ endif() |
169 |
- # to do, remove $<TARGET_OBJECTS:jxl_dec-obj> here and depend on jxl_dec-static |
170 |
- add_library(jxl-static STATIC ${JPEGXL_INTERNAL_OBJECTS}) |
171 |
- target_link_libraries(jxl-static |
172 |
-- PUBLIC ${JPEGXL_COVERAGE_FLAGS} ${JPEGXL_INTERNAL_LIBS} hwy) |
173 |
-+ PUBLIC ${JPEGXL_COVERAGE_FLAGS} ${JPEGXL_INTERNAL_LIBS}) |
174 |
- target_include_directories(jxl-static PUBLIC |
175 |
- "${PROJECT_SOURCE_DIR}" |
176 |
- "${CMAKE_CURRENT_SOURCE_DIR}/include" |
177 |
|
178 |
diff --git a/media-libs/libjxl/libjxl-0.7.0_pre20220311.ebuild b/media-libs/libjxl/libjxl-0.7.0_pre20220511.ebuild |
179 |
similarity index 69% |
180 |
rename from media-libs/libjxl/libjxl-0.7.0_pre20220311.ebuild |
181 |
rename to media-libs/libjxl/libjxl-0.7.0_pre20220511.ebuild |
182 |
index 9c909deddbe6..5ab1265c2bf0 100644 |
183 |
--- a/media-libs/libjxl/libjxl-0.7.0_pre20220311.ebuild |
184 |
+++ b/media-libs/libjxl/libjxl-0.7.0_pre20220511.ebuild |
185 |
@@ -3,40 +3,35 @@ |
186 |
|
187 |
EAPI=8 |
188 |
|
189 |
-CMAKE_ECLASS=cmake |
190 |
-inherit cmake-multilib xdg |
191 |
+inherit cmake-multilib |
192 |
|
193 |
DESCRIPTION="JPEG XL image format reference implementation" |
194 |
HOMEPAGE="https://github.com/libjxl/libjxl" |
195 |
|
196 |
-SRC_URI="https://api.github.com/repos/libjxl/libjxl/tarball/3f8e77fcfabe8ca8ddee6be4e662de525667c570 -> ${P}.tar.gz" |
197 |
+SRC_URI="https://api.github.com/repos/libjxl/libjxl/tarball/105bf1a20be35c2d0d7dd302c008f3669c2f998c -> ${P}.tar.gz" |
198 |
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" |
199 |
|
200 |
LICENSE="BSD" |
201 |
SLOT="0" |
202 |
-IUSE="examples openexr" |
203 |
+IUSE="openexr" |
204 |
|
205 |
DEPEND="app-arch/brotli:=[${MULTILIB_USEDEP}] |
206 |
dev-cpp/gflags:=[${MULTILIB_USEDEP}] |
207 |
>=dev-cpp/highway-0.16.0[${MULTILIB_USEDEP}] |
208 |
media-libs/giflib:=[${MULTILIB_USEDEP}] |
209 |
- media-libs/lcms:=[${MULTILIB_USEDEP}] |
210 |
+ >=media-libs/lcms-2.13:=[${MULTILIB_USEDEP}] |
211 |
media-libs/libpng:=[${MULTILIB_USEDEP}] |
212 |
sys-libs/zlib[${MULTILIB_USEDEP}] |
213 |
- virtual/jpeg[${MULTILIB_USEDEP}] |
214 |
- x11-misc/shared-mime-info |
215 |
+ media-libs/libjpeg-turbo[${MULTILIB_USEDEP}] |
216 |
+ >=x11-misc/shared-mime-info-2.2 |
217 |
openexr? ( media-libs/openexr:= ) |
218 |
" |
219 |
- |
220 |
RDEPEND="${DEPEND}" |
221 |
|
222 |
-PATCHES=( "${FILESDIR}/${PN}-0.7.0-atomic.patch" ) |
223 |
- |
224 |
-S="${WORKDIR}/libjxl-libjxl-3f8e77f" |
225 |
+S="${WORKDIR}/libjxl-libjxl-105bf1a" |
226 |
|
227 |
multilib_src_configure() { |
228 |
local mycmakeargs=( |
229 |
- -DCMAKE_SKIP_RPATH=ON |
230 |
-DBUILD_TESTING=OFF |
231 |
-DJPEGXL_ENABLE_BENCHMARK=OFF |
232 |
-DJPEGXL_ENABLE_COVERAGE=OFF |
233 |
@@ -54,18 +49,17 @@ multilib_src_configure() { |
234 |
-DJPEGXL_ENABLE_MANPAGES=OFF |
235 |
-DJPEGXL_ENABLE_JNI=OFF |
236 |
-DJPEGXL_ENABLE_TCMALLOC=OFF |
237 |
+ -DJPEGXL_ENABLE_EXAMPLES=OFF |
238 |
) |
239 |
|
240 |
if multilib_is_native_abi; then |
241 |
mycmakeargs+=( |
242 |
-DJPEGXL_ENABLE_TOOLS=ON |
243 |
- -DJPEGXL_ENABLE_EXAMPLES=$(usex examples) |
244 |
-DJPEGXL_ENABLE_OPENEXR=$(usex openexr) |
245 |
) |
246 |
else |
247 |
mycmakeargs+=( |
248 |
-DJPEGXL_ENABLE_TOOLS=OFF |
249 |
- -DJPEGXL_ENABLE_EXAMPLES=OFF |
250 |
-DJPEGXL_ENABLE_OPENEXR=OFF |
251 |
) |
252 |
fi |
253 |
@@ -76,14 +70,5 @@ multilib_src_configure() { |
254 |
multilib_src_install() { |
255 |
cmake_src_install |
256 |
|
257 |
- if multilib_is_native_abi; then |
258 |
- if use examples; then |
259 |
- dobin "${BUILD_DIR}/jxlinfo" |
260 |
- fi |
261 |
- |
262 |
- insinto /usr/share/mime/packages |
263 |
- doins -r "${S}"/plugins/mime/image-jxl.xml |
264 |
- fi |
265 |
- |
266 |
find "${D}" -name '*.a' -delete || die |
267 |
} |
268 |
|
269 |
diff --git a/media-libs/libjxl/libjxl-9999.ebuild b/media-libs/libjxl/libjxl-9999.ebuild |
270 |
index 87e4061707c8..88ff53d84586 100644 |
271 |
--- a/media-libs/libjxl/libjxl-9999.ebuild |
272 |
+++ b/media-libs/libjxl/libjxl-9999.ebuild |
273 |
@@ -21,7 +21,7 @@ DEPEND="app-arch/brotli:=[${MULTILIB_USEDEP}] |
274 |
media-libs/giflib:=[${MULTILIB_USEDEP}] |
275 |
media-libs/libpng:=[${MULTILIB_USEDEP}] |
276 |
sys-libs/zlib[${MULTILIB_USEDEP}] |
277 |
- virtual/jpeg[${MULTILIB_USEDEP}] |
278 |
+ media-libs/libjpeg-turbo[${MULTILIB_USEDEP}] |
279 |
>=x11-misc/shared-mime-info-2.2 |
280 |
gdk-pixbuf? ( |
281 |
dev-libs/glib:2 |
282 |
@@ -34,7 +34,6 @@ RDEPEND="${DEPEND}" |
283 |
|
284 |
multilib_src_configure() { |
285 |
local mycmakeargs=( |
286 |
- -DCMAKE_SKIP_RPATH=ON |
287 |
-DBUILD_TESTING=OFF |
288 |
-DJPEGXL_ENABLE_BENCHMARK=OFF |
289 |
-DJPEGXL_ENABLE_COVERAGE=OFF |