aboutsummaryrefslogtreecommitdiffstats
path: root/main/libreoffice/APKBUILD
blob: d3ef80cc73d2751fd91e8e9b08fd97353b2f74b5 (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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
# Contributor: Timo Teräs <timo.teras@iki.fi>
# Maintainer:
pkgname=libreoffice
pkgver=4.4.2.2
pkgrel=1
pkgdesc="LibreOffice - Meta package for the full office suite"
url="http://www.libreoffice.org/"
arch="all"
license="MPL2"
depends_dev="cups-dev libjpeg-turbo-dev boost-dev clucene-dev libe-book-dev icu-dev
	libetonyek-dev libwpd-dev libwpg-dev libmspub-dev libmwaw-dev libpagemaker-dev
	libvisio-dev libcmis-dev lcms2-dev cppunit-dev freetype-dev libabw-dev libwps-dev
	libxslt-dev postgresql-dev mdds-dev glm-dev glu-dev glew-dev vigra-dev
	unixodbc-dev openldap-dev openssl-dev nss-dev npapi-sdk hunspell-dev
	libxrender-dev libxrandr-dev neon-dev apr-dev redland-dev libexttextcat-dev
	gconf-dev bluez-dev gstreamer1-dev gst-plugins-base1-dev gtk+2.0-dev
	poppler-dev cairo-dev hyphen-dev mythes-dev python3-dev harfbuzz-dev
	libfreehand-dev libodfgen-dev libcdr-dev"
makedepends="$depends_dev autoconf automake tar coreutils ucpp gperf bison flex
	zip perl perl-archive-zip sed"
# GNU sed is needed for in i18npool/CustomTarget_localedata.mk
install=""
subpackages="$pkgname-base $pkgname-calc $pkgname-common $pkgname-draw
	$pkgname-gnome $pkgname-impress $pkgname-lang-en_us $pkgname-math
	$pkgname-connector-postgres $pkgname-writer"
depends="$subpackages"
_addsrcurl="http://dev-www.libreoffice.org/src"
source="http://download.documentfoundation.org/libreoffice/src/${pkgver%.*}/libreoffice-$pkgver.tar.xz
	$_addsrcurl/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
	linux-musl.patch
	fix-execinfo.patch
	fix-includes.patch
	"

# help abuild find shared objects in rpath
ldpath="/usr/lib/libreoffice/program:/usr/lib/libreoffice/ure/lib/"

_builddir="$srcdir"/libreoffice-$pkgver
unpack() {
	if [ -z "$force" ]; then
		verify || return 1
		initdcheck || return 1
	fi
	mkdir -p "$srcdir"
	msg "Unpacking sources..."

	local u
	for u in $source; do
		local s="$SRCDEST/$(filename_from_uri $u)"
		case $s in
		*/libreoffice-*.tar.xz)
			msg "Unpacking $s..."
			unxz -c "$s" | tar -C "$srcdir" -x || return 1;;
		esac
	done
}

prepare() {
	local i
	cd "$_builddir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done

	# https://bugs.documentfoundation.org/show_bug.cgi?id=78174
	# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64812
	# gcc 4.9.x -fvisibility-inlines-hidden is broken, force disable it for now
	sed -e 's/@HAVE_GCC_VISIBILITY_BROKEN@/TRUE/g' -i config_host.mk.in

	NOCONFIGURE=1 ./autogen.sh
}

build() {
	cd "$_builddir"
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--localstatedir=/var \
		--with-vendor="Alpine Linux" \
		--disable-online-update \
		--disable-fetch-external \
		--disable-dependency-tracking \
		--disable-crashdump \
		--enable-release-build \
		--enable-split-app-modules \
		--enable-verbose \
		--enable-python=system \
		--with-alloc=system \
		--with-tls=openssl \
		--with-system-libs \
		--with-system-dicts \
		--with-system-ucpp \
		--with-external-dict-dir=/usr/share/hunspell \
		--with-external-hyph-dir=/usr/share/hyphen \
		--with-external-tar="$srcdir" \
		--without-java \
		--without-fonts \
		--without-system-sane \
		--without-myspell-dicts \
		--disable-firebird-sdbc \
		--disable-orcus \
		--disable-graphite \
		--disable-coinmp \
		--disable-lpsolve \
		--disable-gltf \
		--disable-liblangtag \
		|| return 1
	make || return 1
}

package() {
	cd "$_builddir"
	make DESTDIR="$pkgdir"/../all distro-pack-install || return 1
}

_split() {
	local i
	for i in $(grep -v ^%dir $_builddir/file-lists/${1}_list.txt | sort -u); do
		dirname="$(dirname $i)"
		[ -d "$subpkgdir/$dirname" ] || install -dm755 "$subpkgdir/$dirname"
		mv "$pkgdir"/../all/"$i" "$subpkgdir"/"$i"
	done
}

base() {
	pkgdesc="LibreOffice - Database frontend"
	depends="libreoffice-common"
	_split base
}

calc() {
	pkgdesc="LibreOffice - Spreadsheet"
	depends="libreoffice-common"
	_split calc
}

common() {
	pkgdesc="LibreOffice - Common files"
	depends="libreoffice-lang-en_us"
	_split common
}

draw() {
	pkgdesc="LibreOffice - Drawing application"
	depends="libreoffice-common"
	_split draw
}

gnome() {
	pkgdesc="LibreOffice - GNOME integration"
	depends="libreoffice-common"
	_split gnome
}

impress() {
	pkgdesc="LibreOffice - Presentation application"
	depends="libreoffice-common"
	_split impress
}

en_us() {
	pkgdesc="LibreOffice - English (US) language pack"
	depends=""
	_split lang_en_US
}

math() {
	pkgdesc="LibreOffice - Equation editor"
	depends="libreoffice-common"
	_split math
}

postgres() {
	pkgdesc="LibreOffice - Connector for PostgreSQL database"
	depends="libreoffice-base"
	_split postgresql
}

writer() {
	pkgdesc="LibreOffice - Word Processor"
	depends="libreoffice-common"
	_split writer
}

md5sums="5971b3feefec99f819d8b6c6260eb845  libreoffice-4.4.2.2.tar.xz
1f24ab1d39f4a51faf22244c94a6203f  1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
69bef53b6dc9d39d59d1514d02dbbcf7  linux-musl.patch
1cff63a520d1b037edddf1b4de4799dc  fix-execinfo.patch
2410b3fef56a2163a0d3142330ecbcdc  fix-includes.patch"
sha256sums="7d1cae6c6e03854c53d415ad7a8d445b734e5929a056330c5938c1f5073a2e36  libreoffice-4.4.2.2.tar.xz
390a5085651828b8fe12aa978b200f59b9155eedbb91a4be89bf7cf39eefdd4a  1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
5cf5a446e5769f6a2df01c5c10702514fe9178334d1e53d3c7df843ca72c6fa2  linux-musl.patch
7171dfa651a7ee81b4e13a9fd9131428d9a65af138cac4cb428ae6c3e4bcb1f3  fix-execinfo.patch
2044d4c997472a46e95c68fa8bec19c1424e9074fad05df9f1c0d220dec00281  fix-includes.patch"
sha512sums="b13f44745cda2e149e8deb4f962e77e684e8e972c1e42483198b1e93f5ca1c067a06ee4f81dc24c5ae42a0c2d299aa3cf30bfbe9d119414f59bd7c7d4828f696  libreoffice-4.4.2.2.tar.xz
5664203e6426880041cdb227e91f79f00d2ca7ae28c6997f61b72cc599aac55838d082d2b2b551bd7a228424c350ddea5d41599b8ca58d444a2cd46c9206ea91  1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
5fb4d5bf5cab21a0c95a9e51a4a138b427a08677c34bc14287c3eb74926b606345d5185c76bbe8957043d79dc33d46cf4aaa5182642c7fb9136dc48ed9e7fabb  linux-musl.patch
567123f990c4a47c2e4cebf99f3486150740015e647ca2b2521e606f3350fc55ceda6c7ac031302da34e8fc90747d66619334fcfda4e7b8998456fe3619ab860  fix-execinfo.patch
15defc8362fb0e53db32b75d9c4ece73e1ee8bd1cc05b4dd8f072f808e6943b385a5415513b237d3daa130dedce3c6ac6370e05ec0b4a25065ce27aadd269e92  fix-includes.patch"