1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
# Maintainer: Eric BĂ©langer <eric@archlinux.org>
pkgbase=imagemagick-fftw
pkgname=(libmagick-fftw imagemagick-fftw)
pkgver=7.0.8.30
pkgrel=1
pkgdesc="An image viewing/manipulation program"
url="https://www.imagemagick.org/"
arch=(x86_64)
license=(custom)
depends=(libltdl lcms2 fontconfig libxext liblqr libraqm libpng libxml2)
makedepends=(ghostscript openexr libwmf librsvg libxml2 openjpeg2 libraw opencl-headers libwebp
chrpath ocl-icd glu ghostpcl ghostxps libheif jbigkit 'fftw')
checkdepends=(gsfonts ttf-dejavu)
_relname=ImageMagick-${pkgver%%.*}
_tarname=ImageMagick-${pkgver%.*}-${pkgver##*.}
source=(https://www.imagemagick.org/download/releases/$_tarname.tar.xz{,.asc}
arch-fonts.diff IM7-GS-policy.patch)
sha256sums=('e9fa2e8ede199a9084507d930a37432180547131af52c0687ebeb3c7906e36a0'
'SKIP'
'a85b744c61b1b563743ecb7c7adad999d7ed9a8af816650e3ab9321b2b102e73'
'f20c09860da65a4259ec9627ceeca7d993949b7460fa199c5ffd874633814cf6')
validpgpkeys=(D8272EF51DA223E4D05B466989AB63D48277377A) # Lexie Parsimoniae
shopt -s extglob
prepare() {
mkdir -p binpkg/usr/lib/pkgconfig {binpkg,docpkg}/usr/share
cd $_tarname
# Fix up typemaps to match our packages, where possible
patch -p1 -i ../arch-fonts.diff
# Work around ghostscript security issues https://bugs.archlinux.org/task/59778
patch -p1 -i ../IM7-GS-policy.patch
}
build() {
cd $_tarname
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--with-dejavu-font-dir=/usr/share/fonts/TTF \
--with-gs-font-dir=/usr/share/fonts/gsfonts \
PSDelegate=/usr/bin/gs \
XPSDelegate=/usr/bin/gxps \
PCLDelegate=/usr/bin/gpcl6 \
--enable-hdri \
--enable-opencl \
--with-gslib \
--with-lqr \
--with-modules \
--with-openexr \
--with-openjp2 \
--with-perl \
--with-perl-options=INSTALLDIRS=vendor \
--with-rsvg \
--with-webp \
--with-wmf \
--with-xml \
--without-autotrace \
--without-djvu \
--without-dps \
--with-fftw \
--without-fpx \
--without-gcc-arch \
--without-gvc
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
check() (
cd $_tarname
ulimit -n 4096
sed -e '/validate-formats/d' -i Makefile # these fail due to the security patch
make check
)
package_libmagick-fftw() {
provides=("libmagick=$pkgver")
conflicts=("libmagick")
pkgdesc+=" (library)"
optdepends=('ghostscript: PS/PDF support'
'libheif: HEIF support'
'libraw: DNG support'
'librsvg: SVG support'
'libwebp: WEBP support'
'libwmf: WMF support'
'libxml2: Magick Scripting Language'
'ocl-icd: OpenCL support'
'openexr: OpenEXR support'
'openjpeg2: JPEG2000 support'
'pango: Text rendering')
backup=(etc/$_relname/{colors,delegates,log,mime,policy,quantization-table,thresholds,type,type-{dejavu,ghostscript}}.xml)
options=('!emptydirs' libtool)
cd $_tarname
make DESTDIR="$pkgdir" install
rm "$pkgdir"/etc/$_relname/type-{apple,urw-base35,windows}.xml
rm "$pkgdir"/usr/lib/*.la
install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 LICENSE NOTICE
# Split 'imagemagick'
cd ../binpkg
mv "$pkgdir/usr/bin" usr/
mv "$pkgdir/usr/lib/perl5" usr/lib/
mv "$pkgdir/usr/share/man" usr/share/
# Split docs
mv "$pkgdir/usr/share/doc" "$srcdir/docpkg/usr/share/"
}
package_imagemagick-fftw() {
provides=("imagemagick=$pkgver")
conflicts=("imagemagick")
depends=("libmagick-fftw=$pkgver-$pkgrel")
optdepends=('imagemagick-doc: manual and API docs')
options=('!emptydirs')
mv binpkg/* "$pkgdir"
find "$pkgdir/usr/lib/perl5" -name '*.so' -exec chrpath -d {} +
cd $_tarname
install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 LICENSE NOTICE
}
|