Signed-off-by: wei dong <weidong@uniontech.com> (cherry picked from commit a993bb5efc14831afca9905a502727145955f36d)
132 lines
4.7 KiB
RPMSpec
132 lines
4.7 KiB
RPMSpec
#%global debug_package %{nil}
|
|
%undefine _ld_as_needed
|
|
|
|
%define major 3
|
|
|
|
Name: freeimage
|
|
Version: 3.18.0
|
|
Release: 7
|
|
Summary: FreeImage is a library project for developers who would like to support popular graphics image formats (PNG, JPEG, TIFF, BMP and others)
|
|
License: GPLv2 or GPLv3 and FIPL
|
|
URL: https://freeimage.sourceforge.io/
|
|
Source0: http://downloads.sourceforge.net/freeimage/FreeImage3180.zip
|
|
|
|
Patch0: CVE-2019-12211_2019-12213.patch
|
|
|
|
# https://github.com/glennrp/libpng/commit/32784523239c376dfe544bb6c7012c4934624a6d
|
|
Patch1: fix-libpng-arm-neon.patch
|
|
Patch2: FreeImage_unbundle.patch
|
|
# Fix incorrect path in doxyfile
|
|
Patch3: FreeImage_doxygen.patch
|
|
# Fix incorrect variable names in BIGENDIAN blocks
|
|
Patch4: FreeImage_bigendian.patch
|
|
Patch5: substream.patch
|
|
Patch6: Fix-build-failure-with-OpenEXR-3.0.patch
|
|
|
|
|
|
BuildRequires: doxygen gcc-c++ make jxrlib-devel libjpeg-devel libmng-devel libpng-devel libtiff-devel libwebp-devel LibRaw-devel OpenEXR-devel openjpeg2-devel
|
|
|
|
|
|
%description
|
|
FreeImage is a library project for developers who would like to support popular graphics image formats (PNG, JPEG, TIFF, BMP and others). Some highlights are: extremely simple in use, not limited to the local PC (unique FreeImageIO) and Plugin driven!
|
|
|
|
%package devel
|
|
Summary: FreeImage is a library project for developers who would like to support popular graphics image formats (PNG, JPEG, TIFF, BMP and others)
|
|
Requires: %{name} = %{version}-%{release}
|
|
%description devel
|
|
FreeImage is a library project for developers who would like to support popular graphics image formats (PNG, JPEG, TIFF, BMP and others). Some highlights are: extremely simple in use, not limited to the local PC (unique FreeImageIO) and Plugin driven!
|
|
|
|
%prep
|
|
%autosetup -p1 -n FreeImage
|
|
# remove all included libs to make sure these don't get used during compile
|
|
rm -r Source/Lib* Source/ZLib Source/OpenEXR
|
|
|
|
# clear files which cannot be built due to dependencies on private headers
|
|
# (see also unbundle patch)
|
|
> Source/FreeImage/PluginG3.cpp
|
|
> Source/FreeImageToolkit/JPEGTransform.cpp
|
|
|
|
# sanitize encodings / line endings
|
|
for file in `find . -type f -name '*.c' -or -name '*.cpp' -or -name '*.h' -or -name '*.txt' -or -name Makefile`; do
|
|
iconv --from=ISO-8859-15 --to=UTF-8 $file > $file.new && \
|
|
sed -i 's|\r||g' $file.new && \
|
|
touch -r $file $file.new && mv $file.new $file
|
|
done
|
|
|
|
|
|
%build
|
|
sh ./gensrclist.sh
|
|
sh ./genfipsrclist.sh
|
|
%ifarch %{power64} %{mips32} aarch64
|
|
%make_build -f Makefile.gnu CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" LDFLAGS="%{__global_ldflags}"
|
|
%make_build -f Makefile.fip CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" LDFLAGS="%{__global_ldflags}"
|
|
%else
|
|
%make_build -f Makefile.gnu CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" LDFLAGS="%{__global_ldflags}"
|
|
%make_build -f Makefile.fip CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" LDFLAGS="%{__global_ldflags}"
|
|
%endif
|
|
|
|
pushd Wrapper/FreeImagePlus/doc
|
|
doxygen FreeImagePlus.dox
|
|
popd
|
|
|
|
|
|
%install
|
|
install -Dpm 755 Dist/lib%{name}-%{version}.so %{buildroot}%{_libdir}/lib%{name}-%{version}.so
|
|
ln -s lib%{name}-%{version}.so %{buildroot}%{_libdir}/lib%{name}.so
|
|
|
|
install -Dpm 755 Dist/lib%{name}plus-%{version}.so %{buildroot}%{_libdir}/lib%{name}plus-%{version}.so
|
|
ln -s lib%{name}plus-%{version}.so %{buildroot}%{_libdir}/lib%{name}plus.so
|
|
install -Dpm 644 Source/FreeImage.h %{buildroot}%{_includedir}/FreeImage.h
|
|
install -Dpm 644 Wrapper/FreeImagePlus/FreeImagePlus.h %{buildroot}%{_includedir}/FreeImagePlus.h
|
|
|
|
# install missing symlink (was giving no-ldconfig-symlink rpmlint errors)
|
|
ldconfig -n %{buildroot}%{_libdir}
|
|
|
|
%pre
|
|
%preun
|
|
%post
|
|
%postun
|
|
|
|
%check
|
|
|
|
%files
|
|
%license license-*.txt
|
|
%doc README.linux README.md Whatsnew.txt
|
|
%{_libdir}/lib%{name}-%{version}.so
|
|
%{_libdir}/lib%{name}.so.*
|
|
%{_libdir}/lib%{name}plus-%{version}.so
|
|
%{_libdir}/lib%{name}plus.so.*
|
|
|
|
%files devel
|
|
%doc Examples Wrapper/FreeImagePlus/html
|
|
%{_includedir}/FreeImage.h
|
|
%{_libdir}/lib%{name}.so
|
|
%{_includedir}/FreeImagePlus.h
|
|
%{_libdir}/lib%{name}plus.so
|
|
|
|
|
|
%changelog
|
|
* Tue Mar 01 2022 weidong <weidong@uniontech.com> -3.18.0-7
|
|
- Fix build error
|
|
|
|
* Tue Feb 09 2021 Jiachen Fan <fanjiachen3@huawei.com> -3.18.0-6
|
|
- correct the substream.patch: correct the line
|
|
|
|
* Wed Dec 16 2020 Senlin <xiasenlin1@huawei.com> -3.18.0-5
|
|
- correct the substream.patch: add an empty line at end of file
|
|
|
|
* Tue Dec 15 2020 Senlin <xiasenlin1@huawei.com> -3.18.0-4
|
|
- Rebuild for new LibRaw
|
|
|
|
* Mon Nov 09 2020 weidong <weidong@uniontech.com>
|
|
- Unbundle bundled libraries
|
|
- Fix incorrect path in doxyfile
|
|
- Fix incorrect variable names in BIGENDIAN blocks
|
|
|
|
* Thu Sep 10 2020 weidong <weidong@uniontech.com>
|
|
- fix libpng arm neon in freeimage
|
|
|
|
* Mon May 4 2020 Wei Xiong <myeuler@163.com>
|
|
- Package init
|
|
|