aboutsummaryrefslogtreecommitdiffstats
path: root/main/ghostscript/APKBUILD
blob: 88872ca3f98498cd25c59e00fc07ee1eab7bc2cb (plain)
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
# Contributor: Cameron Banta <cbanta@gmail.com>
# Maintainer: Cameron Banta <cbanta@gmail.com>
pkgname=ghostscript
pkgver=9.06
pkgrel=3
pkgdesc="An interpreter for the PostScript language and for PDF"
url="http://ghostscript.com/"
arch="all"
license="GPL3"
makedepends="autoconf automake libjpeg-turbo-dev libpng-dev jasper-dev expat-dev
	zlib-dev tiff-dev freetype-dev libiconv-dev lcms-dev gtk+3.0-dev
	libtool"
subpackages="$pkgname-doc $pkgname-dev $pkgname-gtk"
patches="CVE-2012-4405.patch"
source="http://downloads.ghostscript.com/public/$pkgname-$pkgver.tar.gz
	$patches"

_builddir="$srcdir/ghostscript-$pkgver"
prepare() {
	cd "$_builddir"

	for i in $patches; do
		msg $i
		patch -p1 -i "$srcdir"/$i || return 1
	done

	# force it to use system-libs
	rm -rf jpeg libpng zlib jasper expat tiff lcms cups/libs

	# fix parallel builds
	sed -i -e 's/ECHO_XE/ECHOGS_XE/g' \
		-e 's/^\($(GLOBJ)md5.$(OBJ) :.*\)/\1 $(ECHOGS_XE)/' \
		base/lib.mak || return 1
	
	./autogen.sh \
		--prefix=/usr \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--docdir=/usr/share/doc/"$pkgname" \
		--enable-dynamic \
		--with-system-libtiff \
		--with-ijs \
		--with-jbig2dec \
		--without-omni \
		--enable-gtk \
		--with-drivers=FILES \
		--with-fontpath=/usr/share/fonts/Type1:/usr/share/fonts \
		--disable-compile-inits # needed for linking with system-zlib
}

build(){
	# build ijs
	cd "$_builddir"/ijs
	./autogen.sh --prefix=/usr --enable-shared --disable-static || return 1
	make

	cd "$_builddir"
	make so all || return 1 
}

package() {
	cd "$_builddir"
	make -j1 DESTDIR="${pkgdir}" install soinstall || return 1

	cd "$_builddir"/ijs
	make -j1 DESTDIR="${pkgdir}" install || return 1
	cd..

	rm "$pkgdir"/usr/lib/*.la || return 1

	#create empty dir for future fonts
	mkdir -p "${pkgdir}"/usr/share/fonts/Type1

	# license and copying
	install -m644 -D "$srcdir/$pkgname-$pkgver/LICENSE" \
		"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
	install -m644 -D "$srcdir/$pkgname-$pkgver/doc/COPYING" \
		"$pkgdir/usr/share/licenses/$pkgname/COPYING"

	# make the doc and examples more alpine like 
	#	(the --docdir above doesn't seem to work so good)
	mkdir -p "$pkgdir/usr/share/doc/$pkgname"
	mv "$pkgdir/usr/share/$pkgname/$pkgver/doc" "$pkgdir/usr/share/doc/$pkgname"
	mv "$pkgdir/usr/share/$pkgname/$pkgver/examples" "$pkgdir/usr/share/doc/$pkgname"
}

gtk() {
	pkgdesc="A GTK-enabled PostScript interpreter and renderer"
	install -d "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/gsx "$subpkgdir"/usr/bin/
}

md5sums="153ddb0622cb155d2f600146f1e28d84  ghostscript-9.06.tar.gz
9b77fb067f77c15116bd9c5b2ab58805  CVE-2012-4405.patch"