# Contributor: Timo Teräs # Maintainer: pkgname=libreoffice pkgver=5.1.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 icu 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 findutils ucpp gperf bison flex zip perl perl-archive-zip sed libxml2-utils doxygen" # 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-math $pkgname-connector-postgres $pkgname-writer" depends="$subpackages" _addsrcurl="http://dev-www.libreoffice.org/src" case $pkgver in *.*.*.*) _v=${pkgver%.*};; *.*.*) _v=$pkgver;; esac source="http://download.documentfoundation.org/libreoffice/src/${_v}/libreoffice-$pkgver.tar.xz http://download.documentfoundation.org/libreoffice/src/${_v}/libreoffice-dictionaries-$pkgver.tar.xz http://download.documentfoundation.org/libreoffice/src/${_v}/libreoffice-translations-$pkgver.tar.xz $_addsrcurl/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz linux-musl.patch fix-execinfo.patch fix-includes.patch " languages="" add_lang() { local pkglang="${3:-$1}" subpackages="$subpackages $pkgname-lang-${1}:_lang_${1}" languages="$languages ${pkglang/_/-}" eval "_lang_$1() { pkgdesc=\"LibreOffice - $2 language pack\"; depends=\"\"; _split lang_${pkglang}; }" } add_lang en_us "English (US)" en_US add_lang es "Spanish" add_lang fi "Finnish" add_lang pt "Portuguese" add_lang pt_br "Portuguese (Brazil)" pt_BR add_lang ru "Russian" add_lang sv "Swedish" # 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" # boost-1.59 export CPPFLAGS="$CPPFLAGS -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED" ./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" \ --with-lang="$languages" \ --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 build-nocheck || 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 } 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="6145510261094a85a6cecaecefa10c94 libreoffice-5.1.2.2.tar.xz 05188274ca5b5aac92f0321e4cf153d7 libreoffice-dictionaries-5.1.2.2.tar.xz 4075e99e6075fb7bd163a5f66e24c0f3 libreoffice-translations-5.1.2.2.tar.xz 1f24ab1d39f4a51faf22244c94a6203f 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz bfde50b1b04c715cd172be03a204521f linux-musl.patch 1cff63a520d1b037edddf1b4de4799dc fix-execinfo.patch 2410b3fef56a2163a0d3142330ecbcdc fix-includes.patch" sha256sums="54ecdc9e0201a64fb6a0898b2e5ebd6c6e22c36965e3eb797ae351219e441781 libreoffice-5.1.2.2.tar.xz c500d21160a22808986b80230c71a1eff8b2f2102e2d5f9d1d543dcfa698a03e libreoffice-dictionaries-5.1.2.2.tar.xz 7fbf0d742df7d9a5cf567bb8b8d78e16160936a6f339b9d035e0ac9e1d2455f0 libreoffice-translations-5.1.2.2.tar.xz 390a5085651828b8fe12aa978b200f59b9155eedbb91a4be89bf7cf39eefdd4a 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz fd0778cfd18b034a415a8966f7a3d8437c3f2ba1c6cfde8220ba663261b9c67f linux-musl.patch 7171dfa651a7ee81b4e13a9fd9131428d9a65af138cac4cb428ae6c3e4bcb1f3 fix-execinfo.patch 2044d4c997472a46e95c68fa8bec19c1424e9074fad05df9f1c0d220dec00281 fix-includes.patch" sha512sums="0b2d9d2f91b40fc6eda67d9d6a16f95391f985be8ffa43e8f577c42bc0c1228e2c14de4dfbdef808a6edd61985903d5e12e0696ef43f522e78ee123c1d5f01e8 libreoffice-5.1.2.2.tar.xz b74d1ac8c43610eeb70138fc995d638fb33b55f238bfffc3885093e377dc721cfedd1426c04ceac4d2a419efc927e1d2ba414ff04a95bca20f38645cffdda3a2 libreoffice-dictionaries-5.1.2.2.tar.xz 01ee739af883530744ca792754ee398b6e41a8def997151e0757a52957cad054a445c505c08fb8fb92eec1a5bedde78085d099128d119d9a30aa25aa1f26a54b libreoffice-translations-5.1.2.2.tar.xz 5664203e6426880041cdb227e91f79f00d2ca7ae28c6997f61b72cc599aac55838d082d2b2b551bd7a228424c350ddea5d41599b8ca58d444a2cd46c9206ea91 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz 6abfd9c6cf1917e9ee89695086013c94f5ec68f9732ad60faeeaabe6f3765f5ff19df575a3ef0098d6dd6ba3c76369cec871770396f5cd84829031c3e38485a8 linux-musl.patch 567123f990c4a47c2e4cebf99f3486150740015e647ca2b2521e606f3350fc55ceda6c7ac031302da34e8fc90747d66619334fcfda4e7b8998456fe3619ab860 fix-execinfo.patch 15defc8362fb0e53db32b75d9c4ece73e1ee8bd1cc05b4dd8f072f808e6943b385a5415513b237d3daa130dedce3c6ac6370e05ec0b4a25065ce27aadd269e92 fix-includes.patch"