ab70468
%define _version 3170
a6e4558
%define major 3
a6e4558
a6e4558
Name:           freeimage
ab70468
Version:        3.17.0
87cdefb
Release:        14%{?dist}
a6e4558
Summary:        Multi-format image decoder library
ab70468
ab70468
# freeimage is tripple-licensed, see
a6e4558
# http://freeimage.sourceforge.net/license.html
ab70468
# https://lists.fedoraproject.org/pipermail/legal/2013-October/002271.html
ab70468
License:        GPLv2 or GPLv3 or MPLv1.0
a6e4558
URL:            http://freeimage.sourceforge.net/
a6e4558
Source0:        http://downloads.sourceforge.net/%{name}/FreeImage%{_version}.zip
ab70468
# Unbundle bundled libraries
ab70468
Patch0:         FreeImage-3.17.0_unbundle.patch
ab70468
# Fix incorrect paths in doxyfile
ab70468
Patch1:         FreeImage-3.17.0_doxygen.patch
ab70468
# Fix CVE-2015-0852 (#1257859)
ab70468
Patch2:         FreeImage-3.17.0_CVE-2015-0852.patch
11c1e1f
# Fix CVE-2016-5684 (#1381517)
11c1e1f
Patch3:         FreeImage-3.17.0_CVE-2016-5684.patch
ab70468
ab70468
BuildRequires:  doxygen
87cdefb
BuildRequires:  gcc-c++
87cdefb
BuildRequires:  make
ab70468
BuildRequires:  jxrlib-devel
ab70468
BuildRequires:  libjpeg-devel
ab70468
BuildRequires:  libmng-devel
ab70468
BuildRequires:  libpng-devel
ab70468
BuildRequires:  libtiff-devel
ab70468
BuildRequires:  libwebp-devel
ab70468
BuildRequires:  LibRaw-devel
ab70468
BuildRequires:  OpenEXR-devel
ab70468
BuildRequires:  openjpeg2-devel
a6e4558
a6e4558
%description
a6e4558
FreeImage is a library for developers who would like to support popular
a6e4558
graphics image formats like PNG, BMP, JPEG, TIFF and others as needed by
87cdefb
today's multimedia applications.
a6e4558
a6e4558
a6e4558
%package        devel
a6e4558
Summary:        Development files for %{name}
Rex Dieter fc5ef5e
Requires:       %{name}%{?_isa} = %{version}-%{release}
a6e4558
a6e4558
%description    devel
a6e4558
The %{name}-devel package contains libraries and header files for
a6e4558
developing applications that use %{name}.
a6e4558
a6e4558
ab70468
%package        plus
ab70468
Summary:        C++ wrapper for FreeImage
ab70468
ab70468
%description    plus
ab70468
The %{name}-plus package contains the C++ wrapper library for %{name}.
ab70468
ab70468
ab70468
%package        plus-devel
ab70468
Summary:        Development files for %{name}-devel
ab70468
Requires:       %{name}-plus%{?_isa} = %{version}-%{release}
ab70468
Requires:       %{name}-devel%{?_isa} = %{version}-%{release}
ab70468
ab70468
%description    plus-devel
ab70468
The %{name}-devel package contains libraries and header files for
ab70468
developing applications that use %{name}-plus.
ab70468
ab70468
a6e4558
%prep
a6e4558
%setup -q -n FreeImage
ab70468
%patch0 -p1
a6e4558
%patch1 -p1
ab70468
%patch2 -p1
11c1e1f
%patch3 -p1
a6e4558
a6e4558
# remove all included libs to make sure these don't get used during compile
a6e4558
rm -r Source/Lib* Source/ZLib Source/OpenEXR
a6e4558
ab70468
# clear files which cannot be built due to dependencies on private headers
ab70468
# (see also unbundle patch)
ab70468
> Source/FreeImage/PluginG3.cpp
ab70468
> Source/FreeImageToolkit/JPEGTransform.cpp
ab70468
ab70468
# sanitize encodings / line endings
ab70468
for file in `find . -type f -name '*.c' -or -name '*.cpp' -or -name '*.h' -or -name '*.txt' -or -name Makefile`; do
ab70468
  iconv --from=ISO-8859-15 --to=UTF-8 $file > $file.new && \
ab70468
  sed -i 's|\r||g' $file.new && \
ab70468
  touch -r $file $file.new && mv $file.new $file
ab70468
done
a6e4558
a6e4558
a6e4558
%build
a6e4558
sh ./gensrclist.sh
ab70468
sh ./genfipsrclist.sh
91896c5
%ifarch %{power64} %{mips32}
11c1e1f
%make_build -f Makefile.gnu CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" LDFLAGS="%{__global_ldflags}"
11c1e1f
%make_build -f Makefile.fip CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" LDFLAGS="%{__global_ldflags}"
7322eb5
%else
11c1e1f
%make_build -f Makefile.gnu CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" LDFLAGS="%{__global_ldflags}"
11c1e1f
%make_build -f Makefile.fip CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" LDFLAGS="%{__global_ldflags}"
7322eb5
%endif
a6e4558
a6e4558
pushd Wrapper/FreeImagePlus/doc
a6e4558
doxygen FreeImagePlus.dox
a6e4558
popd
a6e4558
a6e4558
a6e4558
%install
ab70468
install -Dpm 755 Dist/lib%{name}-%{version}.so %{buildroot}%{_libdir}/lib%{name}-%{version}.so
ab70468
ln -s lib%{name}-%{version}.so %{buildroot}%{_libdir}/lib%{name}.so
a6e4558
ab70468
install -Dpm 755 Dist/lib%{name}plus-%{version}.so %{buildroot}%{_libdir}/lib%{name}plus-%{version}.so
ab70468
ln -s lib%{name}plus-%{version}.so %{buildroot}%{_libdir}/lib%{name}plus.so
a6e4558
ab70468
install -Dpm 644 Source/FreeImage.h %{buildroot}%{_includedir}/FreeImage.h
ab70468
install -Dpm 644 Wrapper/FreeImagePlus/FreeImagePlus.h %{buildroot}%{_includedir}/FreeImagePlus.h
a6e4558
ab70468
# install missing symlink (was giving no-ldconfig-symlink rpmlint errors)
ab70468
ldconfig -n %{buildroot}%{_libdir}
a6e4558
a6e4558
a6e4558
%post -p /sbin/ldconfig
a6e4558
a6e4558
%postun -p /sbin/ldconfig
a6e4558
ab70468
%post plus -p /sbin/ldconfig
ab70468
ab70468
%postun plus -p /sbin/ldconfig
ab70468
a6e4558
a6e4558
%files
ab70468
%license license-*.txt
ab70468
%doc Whatsnew.txt
ab70468
%{_libdir}/lib%{name}-%{version}.so
ab70468
%{_libdir}/lib%{name}.so.%major
a6e4558
a6e4558
%files devel
ab70468
%doc Examples
ab70468
%{_includedir}/FreeImage.h
a6e4558
%{_libdir}/lib%{name}.so
ab70468
ab70468
%files plus
ab70468
%doc Wrapper/FreeImagePlus/WhatsNew_FIP.txt
ab70468
%{_libdir}/lib%{name}plus-%{version}.so
ab70468
%{_libdir}/lib%{name}plus.so.%major
ab70468
ab70468
%files plus-devel
ab70468
%doc Wrapper/FreeImagePlus/doc/html
ab70468
%{_includedir}/FreeImagePlus.h
a6e4558
%{_libdir}/lib%{name}plus.so
a6e4558
a6e4558
a6e4558
%changelog
87cdefb
* Sun Feb 18 2018 Sandro Mani <manisandro@gmail.coM> - 3.17.0-14
87cdefb
- Add missing BR: gcc-c++, make
87cdefb
4274ff2
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.17.0-13
4274ff2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
4274ff2
19f4527
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.17.0-12
19f4527
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
19f4527
66edb38
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.17.0-11
66edb38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
66edb38
f72a4dd
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.17.0-10
f72a4dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
f72a4dd
9250323
* Wed Feb 01 2017 Sandro Mani <manisandro@gmail.com> - 3.17.0-9
9250323
- Rebuild (libwebp)
9250323
581525f
* Tue Dec 27 2016 Jon Ciesla <limburgher@gmail.com> - 3.17.0-8
581525f
- Rebuild for new LibRaw.
581525f
11c1e1f
* Tue Oct 04 2016 Sandro Mani <manisandro@gmail.com> - 3.17.0-7
11c1e1f
- Fix CVE-2016-5684 (rhbz#1381517)
11c1e1f
91896c5
* Fri Aug 12 2016 Michal Toman <mtoman@fedoraproject.org> - 3.17.0-6
91896c5
- -fPIC on 32-bit MIPS
91896c5
90921b0
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.17.0-5
90921b0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
90921b0
246677a
* Mon Dec 28 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.17.0-4
246677a
- Rebuilt for libwebp soname bump
246677a
7322eb5
* Thu Oct 15 2015 Karsten Hopp <karsten@redhat.com> 3.17.0-3
7322eb5
- ppc64 and ppc64le need -fPIC (rhbz#1272048)
7322eb5
381ce41
* Wed Sep 30 2015 Sandro Mani <manisandro@gmail.com> - 3.17.0-2
381ce41
- Fix under-linked library
381ce41
ab70468
* Thu Sep 17 2015 Sandro Mani <manisandro@gmail.com> - 3.17.0-1
ab70468
- Update to 3.17.0
ab70468
- Add fix for CVE-2015-0852 (#1257859)
ab70468
- Put freeimage-plus in separate package
ab70468
6aac817
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-25
6aac817
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
6aac817
5e1a2f4
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 3.10.0-24
5e1a2f4
- Rebuilt for GCC 5 C++11 ABI change
5e1a2f4
Rex Dieter 516a7af
* Thu Feb 19 2015 Rex Dieter <rdieter@fedoraproject.org> 3.10.0-23
Rex Dieter 516a7af
- rebuild (gcc5)
Rex Dieter 516a7af
Rex Dieter fc5ef5e
* Wed Nov 26 2014 Rex Dieter <rdieter@fedoraproject.org> 3.10.0-22
Rex Dieter fc5ef5e
- rebuild (openexr), tighten subpkg deps via %%{?_isa}
Rex Dieter fc5ef5e
931bdfd
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-21
931bdfd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
931bdfd
8bbc419
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-20
8bbc419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
8bbc419
Rex Dieter 1359abd
* Wed Nov 27 2013 Rex Dieter <rdieter@fedoraproject.org> - 3.10.0-19
Rex Dieter 1359abd
- rebuild (openexr)
Rex Dieter 1359abd
96323e7
* Mon Sep 09 2013 Bruno Wolff III <bruno@wolff.to> 3.10.0-18
96323e7
- Rebuild for ilmbase related soname bumps
96323e7
aafc03f
* Mon Aug 26 2013 Jon Ciesla <limburgher@gmail.com> - 3.10.0-17
aafc03f
- libmng rebuild.
aafc03f
3c96f2f
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-16
3c96f2f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
3c96f2f
Rex Dieter 39c4947
* Sun Mar 10 2013 Rex Dieter <rdieter@fedoraproject.org> - 3.10.0-15
Rex Dieter 39c4947
- rebuild (OpenEXR)
Rex Dieter 39c4947
a11f398
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-14
a11f398
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
a11f398
Adam Tkac d173ebd
* Fri Jan 18 2013 Adam Tkac <atkac redhat com> - 3.10.0-13
Adam Tkac d173ebd
- rebuild due to "jpeg8-ABI" feature drop
Adam Tkac d173ebd
c941231
* Fri Dec 21 2012 Adam Tkac <atkac redhat com> - 3.10.0-12
c941231
- rebuild against new libjpeg
c941231
Tom Lane 980a525
* Fri Aug  3 2012 Tom Lane <tgl@redhat.com> 3.10.0-11
Tom Lane 980a525
- Add patch for libtiff 4.0 API changes
Tom Lane 980a525
Resolves: #845407
Tom Lane 980a525
42b5fea
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-10
42b5fea
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
42b5fea
5822c50
* Mon Feb 13 2012 Bruno Wolff III <bruno@wolff.to> 3.10.0-9
5822c50
- Update for libpng 1.5 API
5822c50
298a2b8
* Thu Feb 09 2012 Rex Dieter <rdieter@fedoraproject.org> 3.10.0-8
298a2b8
- rebuild (openjpeg)
298a2b8
83dbcb1
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-7
83dbcb1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
83dbcb1
9ba4cdd
* Tue Dec 06 2011 Adam Jackson <ajax@redhat.com> - 3.10.0-6
9ba4cdd
- Rebuild for new libpng
9ba4cdd
57b733b
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-5
57b733b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
57b733b
69bc6c2
* Wed Jan 12 2011 Rex Dieter <rdieter@fedoraproject.org> - 3.10.0-4
69bc6c2
- rebuild (openjpeg)
69bc6c2
06ee366
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-3
06ee366
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
06ee366
c39ac48
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-2
c39ac48
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
c39ac48
a6e4558
* Tue Mar 18 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 3.10.0-1
a6e4558
- Initial Fedora package