aboutsummaryrefslogtreecommitdiffstats
path: root/community/mupdf/APKBUILD
blob: ccb3cc961f2cee3f169f419e9bbe116480b48a99 (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
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
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Contributor: Michael Zhou <zhoumichaely@gmail.com>
# Maintainer: Daniel Sabogal <dsabogalcc@gmail.com>
pkgname=mupdf
pkgver=1.18.0
pkgrel=1
pkgdesc="Lightweight PDF and XPS viewer"
url="https://mupdf.com"
arch="all"
license="AGPL-3.0-or-later"
makedepends="freetype-dev
	harfbuzz-dev
	jbig2dec-dev
	jpeg-dev
	openjpeg-dev
	readline-dev
	freeglut-dev
	zlib-dev
	libx11-dev
	libxext-dev
	libxrandr-dev
	libxi-dev
	mesa-dev
	glu-dev
	"

subpackages="$pkgname-doc $pkgname-dev $pkgname-x11:_x11
	$pkgname-gl:_gl $pkgname-tools:_tools"
options="!check"
source="https://mupdf.com/downloads/archive/mupdf-$pkgver-source.tar.xz
	shared-lib.patch
	bug-fix-overflow.patch
	harden-pupulate-ui-against-unexpecter-repairs.patch
	CVE-2021-3407.patch
	"

# FIXME: shared linking of /usr/lib/libmupdf.so.0

# secfixes:
#   1.18.0-r1:
#     - CVE-2021-3407
#   1.17.0-r3:
#     - CVE-2020-26519
#   1.13-r0:
#     - CVE-2018-1000051
#     - CVE-2018-6544
#     - CVE-2018-6192
#     - CVE-2018-6187
#     - CVE-2018-5686
#     - CVE-2017-17858
#   1.11-r1:
#     - CVE-2017-6060
#   1.10a-r2:
#     - CVE-2017-5991
#   1.10a-r1:
#     - CVE-2017-5896

builddir="$srcdir/$pkgname-$pkgver-source"
prepare() {
	default_prepare

	local library=
	for library in curl freeglut freetype harfbuzz jbig2dec \
			libjpeg openjpeg zlib; do
		rm -r thirdparty/"$library"
	done
}

build() {
	make USE_SYSTEM_LIBS=yes USE_SYSTEM_GUMBO=no prefix=/usr CURL_LIBS='-lcurl -lpthread' build=release libs apps
}

package() {
	make USE_SYSTEM_LIBS=yes prefix=/usr DESTDIR="$pkgdir" install

	cd build/release
	local app; for app in muraster; do
		install -Dm755 $app "$pkgdir"/usr/bin/$app
	done

	ln -s libmupdf.so.0 "$pkgdir"/usr/lib/libmupdf.so
	ln -s libmupdf-third.so.0 "$pkgdir"/usr/lib/libmupdf-third.so
}

_x11() {
	pkgdesc="$pkgdesc with X11 backend"
	depends=""

	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/mupdf-x11 \
		"$subpkgdir"/usr/bin/
	ln -s /usr/bin/mupdf-x11 "$subpkgdir"/usr/bin/mupdf
}

_gl() {
	pkgdesc="$pkgdesc with OpenGL backend"
	depends=""

	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/mupdf-gl \
		"$subpkgdir"/usr/bin/
}

_tools() {
	pkgdesc="Tools for a lightweight PDF and XPS viewer"
	depends=""

	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/mutool \
		"$pkgdir"/usr/bin/muraster \
		"$subpkgdir"/usr/bin/
}

sha512sums="
7551f18b9bac6e2dc1cf073741cbc975ce3a16dc7e37c9d5a58254c67bf2c07bb36185d6585e435d4126f3ae351f67d7432d19a986c9b47b15105ca43db0edb8  mupdf-1.18.0-source.tar.xz
a87c52da91b0fe14c952dc1f83f4492cf1d31d135fc66bc6fb5dcce622af8c740248e10392d7cdba7409373b81e24744aafd46dc1fe5fdfcc54c77555e27420c  shared-lib.patch
811530c31c8af252b4fb4c9658d6378d004535bbf837e74c8538ff740bd3c8c293e050e05acb8745064cc82b7f514006323718933544623fd0abe245c5c27ff4  bug-fix-overflow.patch
c7870dec59c935f4d0a147a155583c8725ccccc72b1df8b26d0ba1a8c3062d000a386b6021b40d16ebd9936f396b1d2a1a5c4849642248a3fb32d4d8ca32268b  harden-pupulate-ui-against-unexpecter-repairs.patch
4751a9ecb01063197c190a04efd51a0e62cd8bc59acda1dc75e04e35fd7640d825f6ebd51b92a2f458384a671eb9c5a56452f2185a820d26eae722996c187149  CVE-2021-3407.patch
"