libjpeg-turbo/libjpeg-turbo.spec

164 lines
4.8 KiB
RPMSpec
Raw Normal View History

#
# spec file for package libjpeg-turbo
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
- Update to version 1.5.2 + Fixed several memory leaks in the TurboJPEG API library that could occur if the library was built with certain compilers and optimization levels. + The libjpeg-turbo memory manager will now honor the max_memory_to_use structure member in jpeg_memory_mgr, which can be set to the maximum amount of memory (in bytes) that libjpeg-turbo should use during decompression or multi-pass (including progressive) compression. This limit can also be set using the JPEGMEM environment variable or using the -maxmemory switch in cjpeg/djpeg/jpegtran. + TJBench will now run each benchmark for 1 second prior to starting the timer, in order to improve the consistency of the results. Furthermore, the -warmup option is now used to specify the amount of warmup time rather than the number of warmup iterations. + Fixed an error (short jump is out of range) that occurred when assembling the 32-bit x86 SIMD extensions with NASM versions prior to 2.04. + Fixed a regression introduced by 1.5 beta1[11] that prevented the Java version of TJBench from outputting any reference images (the -nowrite switch was accidentally enabled by default.) libjpeg-turbo should now build and run with full AltiVec SIMD acceleration on PowerPC-based AmigaOS 4 and OpenBSD systems. - Update to version 1.5.2 + Fixed several memory leaks in the TurboJPEG API library that could occur if the library was built with certain compilers and optimization levels. + The libjpeg-turbo memory manager will now honor the OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=69
2017-10-12 12:36:08 +02:00
%define srcver 1.5.2
%define major 8
- Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to read from uninitialized memory. + Added libjpeg-turbo version and build information to the global string table of the libjpeg and TurboJPEG API libraries. + Fixed a couple of issues in the PPM reader that would cause buffer overruns in cjpeg if one of the values in a binary PPM/PGM input file exceeded the maximum value defined in the file's header. libjpeg-turbo 1.4.2 already included a similar fix for ASCII PPM/PGM files. Note that these issues were not security bugs, since they were confined to the cjpeg program and did not affect any of the libjpeg-turbo libraries. + Fixed an issue whereby attempting to decompress a JPEG file with a corrupt header using the tjDecompressToYUV2() function would cause the function to abort without returning an error and, under certain circumstances, corrupt the stack. This only occurred if tjDecompressToYUV2() was called prior to calling tjDecompressHeader3(), or if the return value from tjDecompressHeader3() was ignored (both cases represent incorrect usage of the TurboJPEG API.) + The jpeg_stdio_src(), jpeg_mem_src(), jpeg_stdio_dest(), and jpeg_mem_dest() functions in the libjpeg API will now throw an error if a source/destination manager has already been assigned to the compress or decompress object by a different function or by the calling program. - Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=59
2016-06-08 10:11:04 +02:00
%define minor 1
%define micro 2
%define libver %{major}.%{minor}.%{micro}
%define tmajor 0
%define tminor 1
%define tmicro 0
%define tlibver %{tmajor}.%{tminor}.%{tmicro}
Name: libjpeg-turbo
Version: %{srcver}
Release: 0
Summary: A MMX/SSE2 accelerated library for manipulating JPEG image files
License: BSD-3-Clause
Group: Productivity/Graphics/Convertors
Url: http://sourceforge.net/projects/libjpeg-turbo
Source0: http://downloads.sf.net/libjpeg-turbo/libjpeg-turbo-%{version}.tar.gz
Source1: baselibs.conf
Patch1: libjpeg-turbo-1.3.0-tiff-ojpeg.patch
Patch2: libjpeg-1.4.0-ocloexec.patch
BuildRequires: gcc-c++
BuildRequires: libtool
- Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to read from uninitialized memory. + Added libjpeg-turbo version and build information to the global string table of the libjpeg and TurboJPEG API libraries. + Fixed a couple of issues in the PPM reader that would cause buffer overruns in cjpeg if one of the values in a binary PPM/PGM input file exceeded the maximum value defined in the file's header. libjpeg-turbo 1.4.2 already included a similar fix for ASCII PPM/PGM files. Note that these issues were not security bugs, since they were confined to the cjpeg program and did not affect any of the libjpeg-turbo libraries. + Fixed an issue whereby attempting to decompress a JPEG file with a corrupt header using the tjDecompressToYUV2() function would cause the function to abort without returning an error and, under certain circumstances, corrupt the stack. This only occurred if tjDecompressToYUV2() was called prior to calling tjDecompressHeader3(), or if the return value from tjDecompressHeader3() was ignored (both cases represent incorrect usage of the TurboJPEG API.) + The jpeg_stdio_src(), jpeg_mem_src(), jpeg_stdio_dest(), and jpeg_mem_dest() functions in the libjpeg API will now throw an error if a source/destination manager has already been assigned to the compress or decompress object by a different function or by the calling program. - Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=59
2016-06-08 10:11:04 +02:00
BuildRequires: pkgconfig
BuildRequires: yasm
Obsoletes: jpeg = 6b
Obsoletes: jpeg = 8.0.1
Obsoletes: jpeg = 8.0.2
Provides: jpeg = %{version}
Obsoletes: jpeg < %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Conflicts: jpeg%{major}
%description
The libjpeg-turbo package contains a library of functions for manipulating
JPEG images. It also includes the following command line utilities:
djpeg - decompress a JPEG file to an image file
jpegtran - lossless transformation of JPEG files
rdjpgcom - display text comments from a JPEG file
wrjpgcom - insert text comments into a JPEG file
tjbench - a JPEG decompression/compression benchmark
%package -n libjpeg%{major}
Version: %{libver}
Release: 0
Summary: The MMX/SSE accelerated JPEG compression/decompression library
# bug437293
Group: System/Libraries
%ifarch ppc64
Obsoletes: libjpeg-64bit < %{version}
%endif
#
%description -n libjpeg%{major}
This library contains MMX/SSE accelerated functions for manipulating
JPEG images.
%package -n libturbojpeg%{tmajor}
Version: %{version}
Release: 0
Summary: The MMX/SSE accelerated JPEG compression/decompression library
Group: System/Libraries
%description -n libturbojpeg%{tmajor}
This library contains MMX/SSE accelerated functions for manipulating
JPEG images.
%package -n libjpeg%{major}-devel
Version: %{libver}
Release: 0
Summary: Development Tools for applications which will use the Libjpeg Library
Group: Development/Libraries/C and C++
Requires: libjpeg%{major} = %{version}
Requires: libturbojpeg%{tmajor} = %{version}
Provides: libjpeg-devel = %{version}
Obsoletes: libjpeg-devel < %{version}
Conflicts: otherproviders(libjpeg-devel)
# bug437293
%ifarch ppc64
Obsoletes: libjpeg-devel-64bit < %{version}
%endif
#
%description -n libjpeg%{major}-devel
The libjpeg-devel package includes the header files and libraries
necessary for compiling and linking programs which will manipulate JPEG
files using the libjpeg library.
%prep
%setup -q
%patch1
%patch2
%build
export LDFLAGS="-Wl,-z,relro,-z,now"
%configure --disable-static \
--with-build-date=$(date --utc --date="@${SOURCE_DATE_EPOCH:-$(date +%s)}" +%Y%m%d) \
--with-jpeg8
make %{?_smp_mflags}
%check
make test libdir=%{_libdir}
%install
%make_install
# Remove unwanted files
rm -f %{buildroot}%{_libdir}/lib{,turbo}jpeg.la
# Remove docs, we'll select docs manually
rm -rf %{buildroot}%{_datadir}/doc/
%post -n libjpeg%{major} -p /sbin/ldconfig
%postun -n libjpeg%{major} -p /sbin/ldconfig
%post -n libturbojpeg%{tmajor} -p /sbin/ldconfig
%postun -n libturbojpeg%{tmajor} -p /sbin/ldconfig
%files
%defattr(-,root,root)
- Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to read from uninitialized memory. + Added libjpeg-turbo version and build information to the global string table of the libjpeg and TurboJPEG API libraries. + Fixed a couple of issues in the PPM reader that would cause buffer overruns in cjpeg if one of the values in a binary PPM/PGM input file exceeded the maximum value defined in the file's header. libjpeg-turbo 1.4.2 already included a similar fix for ASCII PPM/PGM files. Note that these issues were not security bugs, since they were confined to the cjpeg program and did not affect any of the libjpeg-turbo libraries. + Fixed an issue whereby attempting to decompress a JPEG file with a corrupt header using the tjDecompressToYUV2() function would cause the function to abort without returning an error and, under certain circumstances, corrupt the stack. This only occurred if tjDecompressToYUV2() was called prior to calling tjDecompressHeader3(), or if the return value from tjDecompressHeader3() was ignored (both cases represent incorrect usage of the TurboJPEG API.) + The jpeg_stdio_src(), jpeg_mem_src(), jpeg_stdio_dest(), and jpeg_mem_dest() functions in the libjpeg API will now throw an error if a source/destination manager has already been assigned to the compress or decompress object by a different function or by the calling program. - Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=59
2016-06-08 10:11:04 +02:00
%doc README.md change.log ChangeLog.md
%doc usage.txt wizard.txt
%{_bindir}/*
%doc %{_mandir}/man1/*
%files -n libjpeg%{major}
%defattr(-,root,root)
%{_libdir}/libjpeg.so.%{libver}
%{_libdir}/libjpeg.so.%{major}
%files -n libturbojpeg%{tmajor}
%defattr(-,root,root)
%{_libdir}/libturbojpeg.so.%{tmajor}
%{_libdir}/libturbojpeg.so.%{tlibver}
%files -n libjpeg%{major}-devel
%defattr(-,root,root)
%{_includedir}/*.h
%{_libdir}/libjpeg.so
%{_libdir}/libturbojpeg.so
- Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to read from uninitialized memory. + Added libjpeg-turbo version and build information to the global string table of the libjpeg and TurboJPEG API libraries. + Fixed a couple of issues in the PPM reader that would cause buffer overruns in cjpeg if one of the values in a binary PPM/PGM input file exceeded the maximum value defined in the file's header. libjpeg-turbo 1.4.2 already included a similar fix for ASCII PPM/PGM files. Note that these issues were not security bugs, since they were confined to the cjpeg program and did not affect any of the libjpeg-turbo libraries. + Fixed an issue whereby attempting to decompress a JPEG file with a corrupt header using the tjDecompressToYUV2() function would cause the function to abort without returning an error and, under certain circumstances, corrupt the stack. This only occurred if tjDecompressToYUV2() was called prior to calling tjDecompressHeader3(), or if the return value from tjDecompressHeader3() was ignored (both cases represent incorrect usage of the TurboJPEG API.) + The jpeg_stdio_src(), jpeg_mem_src(), jpeg_stdio_dest(), and jpeg_mem_dest() functions in the libjpeg API will now throw an error if a source/destination manager has already been assigned to the compress or decompress object by a different function or by the calling program. - Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=59
2016-06-08 10:11:04 +02:00
%{_libdir}/pkgconfig/libjpeg.pc
%{_libdir}/pkgconfig/libturbojpeg.pc
%doc coderules.txt jconfig.txt libjpeg.txt structure.txt example.c
%changelog