1 |
|
# Copyright 1999-2018 Gentoo Foundation
|
|
1 |
# Copyright 1999-2022 Gentoo Authors
|
2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
4 |
|
EAPI=6
|
|
4 |
EAPI=8
|
5 |
5 |
|
6 |
|
inherit toolchain-funcs eutils
|
|
6 |
inherit edos2unix toolchain-funcs
|
7 |
7 |
|
8 |
8 |
MY_PN=FreeImage
|
9 |
9 |
MY_PV=${PV//.}
|
10 |
10 |
MY_P=${MY_PN}${MY_PV}
|
11 |
11 |
|
12 |
12 |
DESCRIPTION="Image library supporting many formats"
|
13 |
|
HOMEPAGE="http://freeimage.sourceforge.net/"
|
|
13 |
HOMEPAGE="https://freeimage.sourceforge.io/"
|
14 |
14 |
SRC_URI="mirror://sourceforge/${PN}/${MY_P}.zip
|
15 |
|
mirror://sourceforge/${PN}/${MY_P}.pdf"
|
|
15 |
mirror://sourceforge/${PN}/${MY_P}.pdf
|
|
16 |
https://dev.gentoo.org/~juippis/distfiles/tmp/freeimage-3.18.0-unbundling.patch"
|
16 |
17 |
|
17 |
18 |
LICENSE="|| ( GPL-2 FIPL-1.0 )"
|
18 |
19 |
SLOT="0"
|
19 |
|
KEYWORDS="amd64 ~arm x86 ~amd64-linux ~x86-linux"
|
20 |
|
IUSE="jpeg jpeg2k mng openexr png raw static-libs tiff"
|
|
20 |
KEYWORDS="amd64 ~arm ~arm64 ~riscv x86 ~amd64-linux ~x86-linux"
|
|
21 |
IUSE="jpeg jpeg2k mng openexr png raw static-libs tiff webp"
|
21 |
22 |
|
22 |
|
# The tiff/ilmbase isn't a typo. The TIFF plugin cheats and
|
|
23 |
# The tiff/imath+openexr isn't a typo. The TIFF plugin cheats and
|
23 |
24 |
# uses code from it to handle 16bit<->float conversions.
|
24 |
25 |
RDEPEND="
|
25 |
26 |
sys-libs/zlib
|
26 |
|
jpeg? ( virtual/jpeg:0 )
|
27 |
|
jpeg2k? ( media-libs/openjpeg:0= )
|
|
27 |
jpeg? ( media-libs/libjpeg-turbo:= )
|
|
28 |
jpeg2k? ( media-libs/openjpeg:2= )
|
28 |
29 |
mng? ( media-libs/libmng:= )
|
29 |
30 |
openexr? ( media-libs/openexr:= )
|
30 |
31 |
png? ( media-libs/libpng:0= )
|
31 |
32 |
raw? ( media-libs/libraw:= )
|
32 |
33 |
tiff? (
|
33 |
|
media-libs/ilmbase:=
|
34 |
|
media-libs/tiff:0
|
35 |
|
)"
|
36 |
|
DEPEND="${RDEPEND}
|
37 |
|
virtual/pkgconfig
|
38 |
|
app-arch/unzip"
|
|
34 |
>=dev-libs/imath-3.1.4-r2:=
|
|
35 |
>=media-libs/openexr-3:0=
|
|
36 |
>=media-libs/tiff-4.4.0:=
|
|
37 |
)
|
|
38 |
webp? ( media-libs/libwebp:= )"
|
|
39 |
DEPEND="${RDEPEND}"
|
|
40 |
BDEPEND="
|
|
41 |
app-arch/unzip
|
|
42 |
virtual/pkgconfig"
|
39 |
43 |
|
40 |
44 |
S=${WORKDIR}/${MY_PN}
|
41 |
45 |
|
42 |
46 |
DOCS=( "${DISTDIR}"/${MY_P}.pdf README.linux Whatsnew.txt )
|
|
47 |
|
43 |
48 |
PATCHES=(
|
44 |
|
"${FILESDIR}"/${PN}-3.15.4-{unbundling,raw}.patch
|
45 |
|
"${FILESDIR}"/${PN}-3.15.4-CVE-2016-5684-1.patch
|
46 |
|
"${FILESDIR}"/${PN}-3.15.4-CVE-2016-5684-2.patch
|
47 |
|
"${FILESDIR}"/${PN}-3.15.4-CVE-2015-0852.patch
|
48 |
|
"${FILESDIR}"/${PN}-3.15.4-libjpeg9.patch
|
|
49 |
"${DISTDIR}"/${PN}-3.18.0-unbundling.patch
|
|
50 |
"${FILESDIR}"/${PN}-3.18.0-remove-jpeg-transform.patch
|
|
51 |
"${FILESDIR}"/${PN}-3.18.0-rename-jpeg_read_icc_profile.patch
|
|
52 |
"${FILESDIR}"/${PN}-3.18.0-disable-plugin-G3.patch
|
|
53 |
"${FILESDIR}"/${PN}-3.18.0-raw.patch
|
|
54 |
"${FILESDIR}"/${PN}-3.18.0-libjpeg9.patch
|
|
55 |
"${FILESDIR}"/${PN}-3.18.0-CVE-2019-12211-CVE-2019-12213.patch
|
|
56 |
"${FILESDIR}"/${PN}-3.18.0-openexr-3-imath.patch
|
|
57 |
"${FILESDIR}"/${PN}-3.18.0-libraw-0.20.0.patch
|
|
58 |
"${FILESDIR}"/${PN}-3.18.0-tiff-4.4.0.patch
|
|
59 |
"${FILESDIR}"/${PN}-3.18.0-null-to-false.patch
|
|
60 |
"${FILESDIR}"/${PN}-3.18.0-libraw-0.21.0.patch
|
49 |
61 |
)
|
50 |
62 |
|
51 |
63 |
src_prepare() {
|
52 |
64 |
pushd Source >/dev/null || die
|
53 |
|
if has_version ">=media-libs/libjpeg-turbo-1.2.1"; then
|
54 |
|
# Patch from Christian Heimes's fork (thanks)
|
55 |
|
# https://bitbucket.org/tiran/freeimageturbo
|
56 |
|
eapply "${FILESDIR}"/${PN}-3.15.4-libjpeg-turbo.patch
|
57 |
|
cp LibJPEG/{jpegcomp.h,jpegint.h} . || die
|
58 |
|
fi
|
59 |
65 |
cp LibJPEG/{transupp.c,transupp.h,jinclude.h} . || die
|
60 |
66 |
cp LibTIFF4/{tiffiop,tif_dir}.h . || die
|
61 |
|
rm -rf LibPNG LibMNG LibOpenJPEG ZLib OpenEXR LibRawLite LibTIFF4 LibJPEG || die
|
|
67 |
rm -rf LibPNG LibMNG LibOpenJPEG ZLib OpenEXR LibRawLite LibTIFF4 LibJPEG LibWebP LibJXR || die
|
62 |
68 |
popd >/dev/null || die
|
63 |
|
if has_version ">=media-libs/libjpeg-turbo-2.0"; then
|
64 |
|
eapply "${FILESDIR}"/${PN}-3.15.4-libjpeg-turbo-2.0.patch
|
65 |
|
fi
|
66 |
69 |
|
67 |
70 |
edos2unix Makefile.{gnu,fip,srcs} fipMakefile.srcs */*.h */*/*.cpp
|
68 |
71 |
sed -i \
|
... | ... | |
74 |
77 |
-e 's: TestAPI: \\\n\tTestAPI:g' \
|
75 |
78 |
-e 's: -ISource: \\\n\t-ISource:g' \
|
76 |
79 |
-e 's: -IWrapper: \\\n\t-IWrapper:g' \
|
|
80 |
-e 's:INCLS:\nINCLS:g' \
|
77 |
81 |
Makefile.srcs fipMakefile.srcs || die
|
78 |
82 |
sed -i \
|
79 |
83 |
-e "/LibJPEG/d" \
|
|
84 |
-e "/LibJXR/d" \
|
80 |
85 |
-e "/LibPNG/d" \
|
81 |
86 |
-e "/LibTIFF/d" \
|
82 |
87 |
-e "/Source\/ZLib/d" \
|
... | ... | |
84 |
89 |
-e "/OpenEXR/d" \
|
85 |
90 |
-e "/LibRawLite/d" \
|
86 |
91 |
-e "/LibMNG/d" \
|
|
92 |
-e "/LibWebP/d" \
|
|
93 |
-e "/LibJXR/d" \
|
87 |
94 |
Makefile.srcs fipMakefile.srcs || die
|
88 |
95 |
|
89 |
96 |
default
|
... | ... | |
100 |
107 |
USE_PNG=$(usex png) \
|
101 |
108 |
USE_TIFF=$(usex tiff) \
|
102 |
109 |
USE_RAW=$(usex raw) \
|
|
110 |
USE_WEBP=$(usex webp) \
|
103 |
111 |
$(usex static-libs '' STATICLIB=) \
|
104 |
112 |
"$@"
|
105 |
113 |
done
|
... | ... | |
114 |
122 |
}
|
115 |
123 |
|
116 |
124 |
src_install() {
|
117 |
|
foreach_make install DESTDIR="${ED}" INSTALLDIR="${ED%/}"/usr/$(get_libdir)
|
|
125 |
foreach_make install DESTDIR="${ED}" INSTALLDIR="${ED}"/usr/$(get_libdir)
|
118 |
126 |
einstalldocs
|
119 |
127 |
}
|