aboutsummaryrefslogtreecommitdiffstats
path: root/community/librsvg/APKBUILD
blob: 2d5067e76709c8b63060525f27327b013922d9d3 (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
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
pkgname=librsvg
pkgver=2.54.4
pkgrel=2
pkgdesc="SAX-based renderer for SVG files into a GdkPixbuf"
url="https://wiki.gnome.org/Projects/LibRsvg"
arch="all"
license="LGPL-2.1-or-later"
depends_dev="rsvg-convert=$pkgver-r$pkgrel"
makedepends="
	bzip2-dev
	cairo-dev
	cargo
	gi-docgen
	glib-dev
	gobject-introspection-dev
	gtk+3.0-dev
	libgsf-dev
	py3-docutils
	rust
	ttf-dejavu
	vala
	"
install="$pkgname.post-upgrade"
subpackages="
	$pkgname-dbg
	$pkgname-dev
	$pkgname-doc
	rsvg-convert:_convert
	rsvg-convert-doc:_convert_doc:noarch
	"
source="https://download.gnome.org/sources/librsvg/${pkgver%.*}/librsvg-$pkgver.tar.xz
	target.patch
	"
# tests are very dependent on versions of pango/cairo/freetype
options="!check"

if [ "$CARCH" = "riscv64" ]; then
	# binutils thinks there are fake textrels
	options="$options textrels"
fi

# secfixes:
#   2.50.4-r0:
#     - RUSTSEC-2020-0146
#   2.46.2-r0:
#     - CVE-2019-20446

export RUSTFLAGS="$RUSTFLAGS -C debuginfo=1"
export CARGO_PROFILE_RELEASE_LTO=true
export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1

prepare() {
	default_prepare

	# XXX: Hack to prevent rebuild on install.
	sed -Ei \
		-e 's/^(install-binSCRIPTS:) \$\(bin_SCRIPTS\)/\1/' \
		-e 's/^(install-am:) all-am/\1/' \
		Makefile.in
}

build() {
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--libexecdir=/usr/lib/$pkgname \
		--disable-static \
		--enable-vala
	make
}

check() {
	make check
}

package() {
	make DESTDIR="$pkgdir" install
}

_convert() {
	pkgdesc="CLI utility to convert SVG files to PNG format"

	amove usr/bin/rsvg-convert
}

_convert_doc() {
	pkgdesc="CLI utility to convert SVG files to PNG format (documentation)"
	depends=""
	install_if="docs ${subpkgname%-doc}=$pkgver-r$pkgrel"

	pkgdir="$pkgdir-doc" amove usr/share/man/man1/rsvg-convert.*
}

sha512sums="
e3415044a4faa48ec83e25cbd86dfbe7bc997286269298fb913a61a13d55195f660bcef459950979c2b8d60b144b29e33b278b2c4da0c376de65c34f39687e9a  librsvg-2.54.4.tar.xz
8cc9b9dd70a6dedb550a50e12a1bf0ca12f87487f432dcc2568d47412752565d563d7f488390108f49bda324b47387fec9386cf20be47e75d56fb482ecf0bb67  target.patch
"