3 %bcond_with tests # build tests
5 Summary: JPEG XL reference implementation
6 Summary(pl.UTF-8): Referencyjna implementacja JPEG XL
12 #Source0Download: https://github.com/libjxl/libjxl/releases
13 Source0: https://github.com/libjxl/libjxl/archive/v%{version}/%{name}-%{version}.tar.gz
14 # Source0-md5: 5dae0f40ad6180c1b168bbf7edaf8e7d
15 Patch0: %{name}-system-libs.patch
16 Patch1: %{name}-hwy.patch
17 Patch2: %{name}-pc.patch
18 URL: https://github.com/libjxl/libjxl
19 BuildRequires: OpenEXR-devel
20 BuildRequires: asciidoc
21 BuildRequires: cmake >= 3.10
22 BuildRequires: doxygen
23 BuildRequires: gdk-pixbuf2-devel >= 2.38
24 BuildRequires: giflib-devel >= 5
25 BuildRequires: gimp-devel >= 1:2.10
27 BuildRequires: gmock-devel
28 BuildRequires: google-benchmark-devel
29 BuildRequires: gtest-devel
31 BuildRequires: highway-devel >= 0.15.0
32 BuildRequires: lcms2-devel >= 2.10
33 BuildRequires: libavif-devel
34 BuildRequires: libbrotli-devel
35 BuildRequires: libjpeg-devel
36 BuildRequires: libpng-devel
37 BuildRequires: libwebp-devel
38 BuildRequires: libstdc++-devel >= 6:7
39 BuildRequires: lodepng-devel
40 BuildRequires: pkgconfig
41 BuildRequires: python3-devel >= 1:3
42 BuildRequires: rpmbuild(macros) >= 1.742
43 # for gdk-pixbuf loader only (the rest uses lcms2 by default)
44 BuildRequires: skcms-devel
45 BuildRequires: zlib-devel
46 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48 %if "%{_lib}" != "lib"
49 %define libext %(lib="%{_lib}"; echo ${lib#lib})
50 %define pqext -%{libext}
56 JPEG XL reference implementation.
58 %description -l pl.UTF-8
59 Referencyjna implementacja JPEG XL.
62 Summary: Tools to encode and decode JPEG XL files
63 Summary(pl.UTF-8): Narzędzia do kodowania i dekodowania plików JPEG XL
64 Group: Applications/Graphics
65 Requires: %{name} = %{version}-%{release}
68 Tools to encode and decode JPEG XL files.
70 %description tools -l pl.UTF-8
71 Narzędzia do kodowania i dekodowania plików JPEG XL.
74 Summary: Header files for JXL libraries
75 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek JXL
76 Group: Development/Libraries
77 Requires: %{name} = %{version}-%{release}
78 Requires: highway-devel >= 0.15.0
79 Requires: lcms2-devel >= 2.10
80 Requires: libbrotli-devel
81 Requires: libstdc++-devel >= 6:7
84 Header files for JXL libraries.
86 %description devel -l pl.UTF-8
87 Pliki nagłówkowe bibliotek JXL.
90 Summary: Static JXL libraries
91 Summary(pl.UTF-8): Statyczne biblioteki JXL
92 Group: Development/Libraries
93 Requires: %{name}-devel = %{version}-%{release}
98 %description static -l pl.UTF-8
99 Statyczne biblioteki JXL.
101 %package -n gdk-pixbuf2-loader-jxl
102 Summary: JPEG XL loader module for gdk-pixbuf2 library
103 Summary(pl.UTF-8): Moduł biblioteki gdk-pixbuf2 wczytujący pliki JPEG XL
105 Requires: %{name} = %{version}-%{release}
106 Requires: gdk-pixbuf2 >= 2.38
107 Requires: shared-mime-info
109 %description -n gdk-pixbuf2-loader-jxl
110 JPEG XL loader module for gdk-pixbuf2 library.
112 %description -n gdk-pixbuf2-loader-jxl -l pl.UTF-8
113 Moduł biblioteki gdk-pixbuf2 wczytujący pliki JPEG XL.
115 %package -n gimp-plugin-jxl
116 Summary: JPEG XL load/save plugin for GIMP
117 Summary(pl.UTF-8): Wtyczka wczytująca/zapisująca pliki JPEG XL dla GIMP-a
118 Group: Applications/Graphics
119 Requires: %{name} = %{version}-%{release}
120 Requires: gimp >= 1:2.10
122 %description -n gimp-plugin-jxl
123 JPEG XL load/save plugin for GIMP.
125 %description -n gimp-plugin-jxl -l pl.UTF-8
126 Wtyczka wczytująca/zapisująca pliki JPEG XL dla GIMP-a.
138 %{cmake_on_off tests BUILD_TESTING} \
139 -DJPEGXL_ENABLE_PLUGINS=ON \
140 -DJPEGXL_ENABLE_SJPEG=OFF \
141 -DJPEGXL_ENABLE_SKCMS=OFF \
142 -DJPEGXL_ENABLE_TCMALLOC=OFF \
143 -DJPEGXL_FORCE_SYSTEM_BROTLI=ON \
144 -DJPEGXL_FORCE_SYSTEM_GTEST=ON \
145 -DJPEGXL_FORCE_SYSTEM_HWY=ON
150 rm -rf $RPM_BUILD_ROOT
152 %{__make} -C build install \
153 DESTDIR=$RPM_BUILD_ROOT
156 rm -rf $RPM_BUILD_ROOT
158 %post -p /sbin/ldconfig
159 %postun -p /sbin/ldconfig
161 %post -n gdk-pixbuf2-loader-jxl
163 %{_bindir}/gdk-pixbuf-query-loaders%{pqext} --update-cache || :
164 %update_mime_database
166 %postun -n gdk-pixbuf2-loader-jxl
167 %update_mime_database
168 if [ "$1" != "0" ]; then
170 [ ! -x %{_bindir}/gdk-pixbuf-query-loaders%{pqext} ] || \
171 %{_bindir}/gdk-pixbuf-query-loaders%{pqext} --update-cache || :
175 %defattr(644,root,root,755)
176 %doc AUTHORS CHANGELOG.md CONTRIBUTORS LICENSE PATENTS README.md SECURITY.md doc/xl_overview.md
177 %attr(755,root,root) %{_libdir}/libjxl.so.*.*.*
178 %attr(755,root,root) %ghost %{_libdir}/libjxl.so.0.6
179 %attr(755,root,root) %{_libdir}/libjxl_threads.so.*.*.*
180 %attr(755,root,root) %ghost %{_libdir}/libjxl_threads.so.0.6
183 %defattr(644,root,root,755)
184 %attr(755,root,root) %{_bindir}/benchmark_xl
185 %attr(755,root,root) %{_bindir}/cjxl
186 %attr(755,root,root) %{_bindir}/djxl
187 %{_mandir}/man1/cjxl.1*
188 %{_mandir}/man1/djxl.1*
191 %defattr(644,root,root,755)
192 %attr(755,root,root) %{_libdir}/libjxl.so
193 %attr(755,root,root) %{_libdir}/libjxl_threads.so
194 %{_libdir}/libjxl_dec.a
196 %{_pkgconfigdir}/libjxl.pc
197 %{_pkgconfigdir}/libjxl_threads.pc
200 %defattr(644,root,root,755)
202 %{_libdir}/libjxl_threads.a
204 %files -n gdk-pixbuf2-loader-jxl
205 %defattr(644,root,root,755)
206 %attr(755,root,root) %{_libdir}/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-jxl.so
207 %{_datadir}/mime/packages/image-jxl.xml
208 %{_datadir}/thumbnailers/jxl.thumbnailer
210 %files -n gimp-plugin-jxl
211 %defattr(644,root,root,755)
212 %dir %{_libdir}/gimp/2.0/plug-ins/file-jxl
213 %attr(755,root,root) %{_libdir}/gimp/2.0/plug-ins/file-jxl/file-jxl