]> git.pld-linux.org Git - packages/libjxl.git/blob - libjxl.spec
- updated to 0.8.1 (new sonames, added jni interface)
[packages/libjxl.git] / libjxl.spec
1 #
2 # Conditional build:
3 %bcond_with     tests   # build tests
4 %bcond_without  java    # JNI interface
5
6 Summary:        JPEG XL reference implementation
7 Summary(pl.UTF-8):      Referencyjna implementacja JPEG XL
8 Name:           libjxl
9 Version:        0.8.1
10 Release:        1
11 License:        BSD
12 Group:          Libraries
13 #Source0Download: https://github.com/libjxl/libjxl/releases
14 Source0:        https://github.com/libjxl/libjxl/archive/v%{version}/%{name}-%{version}.tar.gz
15 # Source0-md5:  04a73be60211224e039d791a902a46de
16 Patch0:         %{name}-system-libs.patch
17 URL:            https://github.com/libjxl/libjxl
18 BuildRequires:  OpenEXR-devel
19 BuildRequires:  asciidoc
20 BuildRequires:  cmake >= 3.10
21 BuildRequires:  doxygen
22 BuildRequires:  gdk-pixbuf2-devel >= 2.38
23 BuildRequires:  giflib-devel >= 5
24 BuildRequires:  gimp-devel >= 1:2.10
25 %if %{with tests}
26 BuildRequires:  gmock-devel
27 BuildRequires:  google-benchmark-devel
28 BuildRequires:  gtest-devel
29 %endif
30 BuildRequires:  highway-devel >= 0.15.0
31 %{?with_java:BuildRequires:     jdk}
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)
47
48 %if "%{_lib}" != "lib"
49 %define         libext          %(lib="%{_lib}"; echo ${lib#lib})
50 %define         pqext           -%{libext}
51 %else
52 %define         pqext           %{nil}
53 %endif
54
55 %description
56 JPEG XL reference implementation.
57
58 %description -l pl.UTF-8
59 Referencyjna implementacja JPEG XL.
60
61 %package tools
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}
66
67 %description tools
68 Tools to encode and decode JPEG XL files.
69
70 %description tools -l pl.UTF-8
71 Narzędzia do kodowania i dekodowania plików JPEG XL.
72
73 %package devel
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
82
83 %description devel
84 Header files for JXL libraries.
85
86 %description devel -l pl.UTF-8
87 Pliki nagłówkowe bibliotek JXL.
88
89 %package static
90 Summary:        Static JXL libraries
91 Summary(pl.UTF-8):      Statyczne biblioteki JXL
92 Group:          Development/Libraries
93 Requires:       %{name}-devel = %{version}-%{release}
94
95 %description static
96 Static JXL libraries.
97
98 %description static -l pl.UTF-8
99 Statyczne biblioteki JXL.
100
101 %package -n java-libjxl
102 Summary:        JNI interface for JXL library
103 Summary(pl.UTF-8):      Interfejs JNI do biblioteki JXL
104 Group:          Libraries/Java
105 Requires:       %{name} = %{version}-%{release}
106
107 %description -n java-libjxl
108 JNI interface for JXL library.
109
110 %description -n java-libjxl -l pl.UTF-8
111 Interfejs JNI do biblioteki JXL.
112
113 %package -n gdk-pixbuf2-loader-jxl
114 Summary:        JPEG XL loader module for gdk-pixbuf2 library
115 Summary(pl.UTF-8):      Moduł biblioteki gdk-pixbuf2 wczytujący pliki JPEG XL
116 Group:          Libraries
117 Requires:       %{name} = %{version}-%{release}
118 Requires:       gdk-pixbuf2 >= 2.38
119 Requires:       shared-mime-info
120
121 %description -n gdk-pixbuf2-loader-jxl
122 JPEG XL loader module for gdk-pixbuf2 library.
123
124 %description -n gdk-pixbuf2-loader-jxl -l pl.UTF-8
125 Moduł biblioteki gdk-pixbuf2 wczytujący pliki JPEG XL.
126
127 %package -n gimp-plugin-jxl
128 Summary:        JPEG XL load/save plugin for GIMP
129 Summary(pl.UTF-8):      Wtyczka wczytująca/zapisująca pliki JPEG XL dla GIMP-a
130 Group:          Applications/Graphics
131 Requires:       %{name} = %{version}-%{release}
132 Requires:       gimp >= 1:2.10
133
134 %description -n gimp-plugin-jxl
135 JPEG XL load/save plugin for GIMP.
136
137 %description -n gimp-plugin-jxl -l pl.UTF-8
138 Wtyczka wczytująca/zapisująca pliki JPEG XL dla GIMP-a.
139
140 %prep
141 %setup -q
142 %patch0 -p1
143
144 %build
145 install -d build
146 cd build
147 %cmake .. \
148         %{cmake_on_off tests BUILD_TESTING} \
149         %{!?with_java:-DJPEGXL_ENABLE_JNI=OFF} \
150         -DJPEGXL_ENABLE_PLUGINS=ON \
151         -DJPEGXL_ENABLE_SJPEG=OFF \
152         -DJPEGXL_ENABLE_SKCMS=OFF \
153         -DJPEGXL_ENABLE_TCMALLOC=OFF \
154         -DJPEGXL_FORCE_SYSTEM_BROTLI=ON \
155         -DJPEGXL_FORCE_SYSTEM_GTEST=ON \
156         -DJPEGXL_FORCE_SYSTEM_HWY=ON \
157         -DJPEGXL_INSTALL_JARDIR=%{_javadir}
158
159 %{__make}
160
161 %install
162 rm -rf $RPM_BUILD_ROOT
163
164 %{__make} -C build install \
165         DESTDIR=$RPM_BUILD_ROOT
166
167 %clean
168 rm -rf $RPM_BUILD_ROOT
169
170 %post   -p /sbin/ldconfig
171 %postun -p /sbin/ldconfig
172
173 %post   -n gdk-pixbuf2-loader-jxl
174 umask 022
175 %{_bindir}/gdk-pixbuf-query-loaders%{pqext} --update-cache || :
176 %update_mime_database
177
178 %postun -n gdk-pixbuf2-loader-jxl
179 %update_mime_database
180 if [ "$1" != "0" ]; then
181         umask 022
182         [ ! -x %{_bindir}/gdk-pixbuf-query-loaders%{pqext} ] || \
183         %{_bindir}/gdk-pixbuf-query-loaders%{pqext} --update-cache || :
184 fi
185
186 %files
187 %defattr(644,root,root,755)
188 %doc AUTHORS CHANGELOG.md CONTRIBUTORS LICENSE PATENTS README.md SECURITY.md doc/xl_overview.md
189 %attr(755,root,root) %{_libdir}/libjxl.so.*.*.*
190 %attr(755,root,root) %ghost %{_libdir}/libjxl.so.0.8
191 %attr(755,root,root) %{_libdir}/libjxl_threads.so.*.*.*
192 %attr(755,root,root) %ghost %{_libdir}/libjxl_threads.so.0.8
193
194 %files tools
195 %defattr(644,root,root,755)
196 %attr(755,root,root) %{_bindir}/benchmark_xl
197 %attr(755,root,root) %{_bindir}/cjxl
198 %attr(755,root,root) %{_bindir}/cjpeg_hdr
199 %attr(755,root,root) %{_bindir}/djxl
200 %attr(755,root,root) %{_bindir}/jxlinfo
201 %{_mandir}/man1/cjxl.1*
202 %{_mandir}/man1/djxl.1*
203
204 %files devel
205 %defattr(644,root,root,755)
206 %attr(755,root,root) %{_libdir}/libjxl.so
207 %attr(755,root,root) %{_libdir}/libjxl_threads.so
208 %{_libdir}/libjxl_dec.a
209 %{_includedir}/jxl
210 %{_pkgconfigdir}/libjxl.pc
211 %{_pkgconfigdir}/libjxl_threads.pc
212
213 %files static
214 %defattr(644,root,root,755)
215 %{_libdir}/libjxl.a
216 %{_libdir}/libjxl_threads.a
217
218 %if %{with java}
219 %files -n java-libjxl
220 %defattr(644,root,root,755)
221 %attr(755,root,root) %{_libdir}/libjxl_jni.so
222 %{_javadir}/org.jpeg.jpegxl.jar
223 %endif
224
225 %files -n gdk-pixbuf2-loader-jxl
226 %defattr(644,root,root,755)
227 %attr(755,root,root) %{_libdir}/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-jxl.so
228 %{_datadir}/mime/packages/image-jxl.xml
229 %{_datadir}/thumbnailers/jxl.thumbnailer
230
231 %files -n gimp-plugin-jxl
232 %defattr(644,root,root,755)
233 %dir %{_libdir}/gimp/2.0/plug-ins/file-jxl
234 %attr(755,root,root) %{_libdir}/gimp/2.0/plug-ins/file-jxl/file-jxl
This page took 0.07435 seconds and 3 git commands to generate.