1 |
commit: fd7b9099b103ed4b880d41491a5559ab9f709ecb |
2 |
Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
3 |
AuthorDate: Fri Nov 5 08:29:16 2021 +0000 |
4 |
Commit: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
5 |
CommitDate: Fri Nov 5 08:29:59 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=fd7b9099 |
7 |
|
8 |
media-libs/libjxl: add 0.6.1 |
9 |
|
10 |
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com> |
11 |
|
12 |
media-libs/libjxl/Manifest | 1 + |
13 |
media-libs/libjxl/libjxl-0.6.1.ebuild | 156 ++++++++++++++++++++++++++++++++++ |
14 |
2 files changed, 157 insertions(+) |
15 |
|
16 |
diff --git a/media-libs/libjxl/Manifest b/media-libs/libjxl/Manifest |
17 |
index 63de49120..fc7f70713 100644 |
18 |
--- a/media-libs/libjxl/Manifest |
19 |
+++ b/media-libs/libjxl/Manifest |
20 |
@@ -1 +1,2 @@ |
21 |
+DIST libjxl-0.6.1.tar.gz 16953185 BLAKE2B d1e906480e80458635a65bd89ce79f13d463e8cf4fb0dfccf6c473e7649fdc5593669effdf85afbb176920c89e61c65c4907834225f7c9e6da4c611996b201e3 SHA512 302935d722160b0b288ac63301f9e95caf82eccf6ad76c4f4da6316a0314ee3562115932b1ceacb0d02708de0a07788992d3478cae73af0b90193f5769f9fb52 |
22 |
DIST libjxl-0.6.tar.gz 16953410 BLAKE2B 8941987f6d31096a7286f9d98cdcc16e5fe338e6b3d966343f97fc5b5b932ec92c994fab5781448aa7d96324e5c9ce5c83754b01cf6e752d0702ce9fc0a2087f SHA512 934c86d079c7a1f5382fad158efac225b9d1b27e551ea85ea7ec43e7ffd5cba85ddbfa35658b242a9f9c9589decf245568349abfa8a4fe12898af78d51608852 |
23 |
|
24 |
diff --git a/media-libs/libjxl/libjxl-0.6.1.ebuild b/media-libs/libjxl/libjxl-0.6.1.ebuild |
25 |
new file mode 100644 |
26 |
index 000000000..2ac499ef3 |
27 |
--- /dev/null |
28 |
+++ b/media-libs/libjxl/libjxl-0.6.1.ebuild |
29 |
@@ -0,0 +1,156 @@ |
30 |
+# Copyright 2021 Gentoo Authors |
31 |
+# Distributed under the terms of the GNU General Public License v2 |
32 |
+ |
33 |
+EAPI=7 |
34 |
+ |
35 |
+inherit xdg cmake java-pkg-opt-2 |
36 |
+ |
37 |
+DESCRIPTION="JPEG XL image format reference implementation" |
38 |
+HOMEPAGE="https://github.com/libjxl/libjxl" |
39 |
+SRC_URI="https://github.com/libjxl/libjxl/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" |
40 |
+ |
41 |
+KEYWORDS="~amd64" |
42 |
+LICENSE="Apache-2.0" |
43 |
+SLOT="0" |
44 |
+IUSE="abi_x86_64 cpu_flags_arm_neon benchmark devtools examples java man +openexr plugins profile +sjpeg +skcms tcmalloc tools viewers" #emscripten fuzzers |
45 |
+ |
46 |
+CDEPEND=" |
47 |
+ app-arch/brotli |
48 |
+ dev-cpp/highway:= |
49 |
+ media-libs/libpng |
50 |
+ media-libs/lodepng:= |
51 |
+ media-libs/giflib |
52 |
+ sys-libs/zlib |
53 |
+ |
54 |
+ benchmark? ( |
55 |
+ media-libs/libavif |
56 |
+ media-libs/libwebp |
57 |
+ virtual/jpeg |
58 |
+ ) |
59 |
+ openexr? ( media-libs/openexr:= ) |
60 |
+ plugins? ( |
61 |
+ dev-libs/glib:2 |
62 |
+ media-gfx/gimp |
63 |
+ media-libs/babl |
64 |
+ media-libs/gegl |
65 |
+ media-libs/skcms:= |
66 |
+ x11-libs/gdk-pixbuf |
67 |
+ x11-misc/shared-mime-info |
68 |
+ ) |
69 |
+ sjpeg? ( media-libs/sjpeg:= ) |
70 |
+ !skcms? ( media-libs/lcms ) |
71 |
+ skcms? ( media-libs/skcms:= ) |
72 |
+ tcmalloc? ( dev-util/google-perftools ) |
73 |
+ viewers? ( |
74 |
+ dev-qt/qtconcurrent |
75 |
+ dev-qt/qtwidgets |
76 |
+ dev-qt/qtx11extras |
77 |
+ media-libs/lcms |
78 |
+ x11-libs/libxcb |
79 |
+ ) |
80 |
+" |
81 |
+RDEPEND=" |
82 |
+ ${CDEPEND} |
83 |
+ java? ( virtual/jre:1.8 ) |
84 |
+" |
85 |
+DEPEND=" |
86 |
+ ${CDEPEND} |
87 |
+ dev-cpp/gtest |
88 |
+ kde-frameworks/extra-cmake-modules |
89 |
+ java? ( virtual/jdk:1.8 ) |
90 |
+ plugins? ( x11-misc/xdg-utils ) |
91 |
+" |
92 |
+BDEPEND=" |
93 |
+ virtual/pkgconfig |
94 |
+ man? ( app-text/asciidoc ) |
95 |
+" |
96 |
+ |
97 |
+PATCHES=( "${FILESDIR}/${PN}-0.6-system-libs.patch" ) |
98 |
+REQUIRED_USE="tcmalloc? ( abi_x86_64 )" |
99 |
+DOCS=( AUTHORS README.md SECURITY.md PATENTS CONTRIBUTORS CHANGELOG.md ) |
100 |
+ |
101 |
+CMAKE_IN_SOURCE_BUILD=1 |
102 |
+ |
103 |
+src_prepare() { |
104 |
+ # remove bundled libs cmake |
105 |
+ rm third_party/*.cmake || die |
106 |
+ cmake_src_prepare |
107 |
+} |
108 |
+ |
109 |
+src_configure() { |
110 |
+ local mycmakeargs=( |
111 |
+ -DJPEGXL_ENABLE_BENCHMARK=$(usex benchmark) |
112 |
+ -DJPEGXL_ENABLE_DEVTOOLS=$(usex devtools) |
113 |
+ -DJPEGXL_ENABLE_EXAMPLES=$(usex examples) |
114 |
+ -DJPEGXL_ENABLE_JNI=$(usex java) |
115 |
+ -DJPEGXL_ENABLE_MANPAGES=$(usex man) |
116 |
+ -DJPEGXL_ENABLE_OPENEXR=$(usex openexr) |
117 |
+ -DJPEGXL_ENABLE_PLUGINS=$(usex plugins) |
118 |
+ -DJPEGXL_ENABLE_PROFILER=$(usex profile) |
119 |
+ -DJPEGXL_ENABLE_SJPEG=$(usex sjpeg) |
120 |
+ -DJPEGXL_ENABLE_SKCMS=$(usex skcms) |
121 |
+ -DJPEGXL_ENABLE_TCMALLOC=$(usex tcmalloc) |
122 |
+ -DJPEGXL_ENABLE_TOOLS=$(usex tools) |
123 |
+ -DJPEGXL_ENABLE_VIEWERS=$(usex viewers) |
124 |
+ -DJPEGXL_FORCE_NEON=$(usex cpu_flags_arm_neon) |
125 |
+ |
126 |
+ -DBUILD_SHARED_LIBS=ON |
127 |
+ -DJPEGXL_BUNDLE_SKCMS=OFF |
128 |
+ -DJPEGXL_ENABLE_COVERAGE=OFF |
129 |
+ -DJPEGXL_ENABLE_FUZZERS=OFF |
130 |
+ -DJPEGXL_ENABLE_TRANSCODE_JPEG=ON |
131 |
+ -DJPEGXL_FORCE_SYSTEM_BROTLI=ON |
132 |
+ -DJPEGXL_FORCE_SYSTEM_GTEST=ON |
133 |
+ -DJPEGXL_FORCE_SYSTEM_HWY=ON |
134 |
+ -DJPEGXL_STATIC=OFF |
135 |
+ -DJPEGXL_WARNINGS_AS_ERRORS=OFF |
136 |
+ ) |
137 |
+ |
138 |
+ cmake_src_configure |
139 |
+} |
140 |
+ |
141 |
+src_install() { |
142 |
+ cmake_src_install |
143 |
+ einstalldocs |
144 |
+ #TODO: install documentation |
145 |
+ exeinto "/usr/libexec/${PN}" |
146 |
+ if use examples; then |
147 |
+ doexe {en,de}code_oneshot |
148 |
+ dobin jxlinfo |
149 |
+ fi |
150 |
+ pushd "${BUILD_DIR}/tools" || die |
151 |
+ insinto "/usr/share/${PN}" |
152 |
+ doins progressive_saliency.conf example_tree.txt |
153 |
+ if use java; then |
154 |
+ dolib.so libjxl_jni.so |
155 |
+ rm libjxl_jni.so || die |
156 |
+ doins *.jar |
157 |
+ fi |
158 |
+ if use benchmark; then |
159 |
+ docinto "/usr/share/doc/${PF}/benchmark/hm" |
160 |
+ dodoc benchmark/hm/README.md |
161 |
+ else |
162 |
+ rm -r benchmark || die |
163 |
+ fi |
164 |
+ # remove non executable or non .m files |
165 |
+ find . -type f \! -name '*.m' \! -executable -delete || die |
166 |
+ # delete empty dirs |
167 |
+ find . -type d -empty -print -delete || die |
168 |
+ mkdir -p "${ED}/usr/libexec/${PN}/tools/" || die |
169 |
+ # install tools |
170 |
+ cp -r . "${ED}/usr/libexec/${PN}/tools/" || die |
171 |
+ |
172 |
+ # keep in /usr/bin only the executables with jxl in the name |
173 |
+ rm -f "${ED}"/usr/libexec/${PN}/tools/*jxl* || die |
174 |
+ rm -f "${ED}"/usr/bin/{fuzzer_corpus,*_main,decode_and_encode,*_hlg,tone_map,xyb_range} || die |
175 |
+ |
176 |
+ find "${D}" -name '*.a' -delete || die |
177 |
+} |
178 |
+ |
179 |
+pkg_postinst() { |
180 |
+ xdg_mimeinfo_database_update |
181 |
+} |
182 |
+ |
183 |
+pkg_postrm() { |
184 |
+ xdg_mimeinfo_database_update |
185 |
+} |