Files
void-packages/srcpkgs/libreoffice/template
2016-10-02 00:03:49 +02:00

236 lines
9.3 KiB
Bash

broken=ENOSPC
# Template file for 'libreoffice'
pkgname=libreoffice
version=5.2.2.2
revision=2
build_style=gnu-configure
configure_args="--disable-werror"
nopie=yes
nocross=yes
#
# XXX: mit-krb5-devel nasm neon openjdk vlc hamcrest iwyu ogl-math
# Missing, required libraries are downloaded and built internally
#
hostmakedepends="automake libtool pkg-config bison flex gperf icu
perl-Archive-Zip hyphen openldap sane ucpp unzip zip wget"
makedepends="apr-devel gst-plugins-base1-devel gtk+-devel gtk+3-devel
libatomic_ops-devel librsvg-devel nss-devel python3.4-devel libgcrypt-devel
poppler-cpp-devel postgresql-libs-devel redland-devel liborcus11-devel
lpsolve-devel unixodbc-devel libXt-devel avahi-libs-devel hunspell-devel
hyphen-devel libabw-devel libcdr-devel CoinMP-devel
libcmis-devel libe-book-devel libfbclient-devel libfreehand-devel
libexttextcat-devel libldap-devel libmspub-devel libmwaw-devel
glew-devel glyphy-devel gst-plugins-base1-devel libodfgen-devel libpagemaker-devel
libvisio-devel libetonyek-devel libwpg-devel telepathy-glib-devel libwps-devel
mdds0 mythes-devel opencollada-devel vigra-devel"
depends="hyphen openldap sane"
short_desc="Productivity suite, formerly OpenOffice.org"
maintainer="Jürgen Buchmüller <pullmoll@t-online.de>"
license="LGPL-3"
homepage="http://www.libreoffice.org/"
# XXX: -ENOSPC on the builders; verified working locally
# Enable again when the builders have enough disk or tmpfs space
#
# Additional zip archives
#_ooop_fonts_md5hash=a10aa597411643326e27d7fc128af12d
#_ooop_fonts_version=2.9.0.0
#_ooop_gallery_md5hash=af9314c5972d95a5d6da23ffad818f68
#_ooop_gallery_version=2.8.0.0
#_ooop_samples_md5hash=a6bccacf44914969e6e7b2f8faf4132c
#_ooop_samples_version=2.7.0.0
#_ooop_templates_md5hash=1be202fbbbc13f10592a98f70a4a87fb
#_ooop_templates_version=2.9.0.0
# # Extra gallery, samples and templates
#_ooopurl="http://ooo.itc.hu/oxygenoffice/download/libreoffice"
# Source, dictionary, help and translations
_baseurl="http://download.documentfoundation.org/${pkgname}/src/${version%.*}"
distfiles="
${_baseurl}/${pkgname}-${version}.tar.xz
${_baseurl}/${pkgname}-dictionaries-${version}.tar.xz
${_baseurl}/${pkgname}-help-${version}.tar.xz
${_baseurl}/${pkgname}-translations-${version}.tar.xz
"
# XXX: -ENOSPC on the builders
# ${_ooopurl}/${_ooop_fonts_md5hash}-OOOP-fonts-pack-${_ooop_fonts_version}.zip
# ${_ooopurl}/${_ooop_gallery_md5hash}-OOOP-gallery-pack-${_ooop_gallery_version}.zip
# ${_ooopurl}/${_ooop_samples_md5hash}-OOOP-samples-pack-${_ooop_samples_version}.zip
# ${_ooopurl}/${_ooop_templates_md5hash}-OOOP-templates-pack-${_ooop_templates_version}.zip
checksum="
5952eaa0b06a0659cf7cca397f95c00e73f0f410f14310deb363985746dad9e0
f201c12e7a488c14b11a188b2c7eb9ee13895b68e5c4779c6706d8d39b9318dd
01c639223d9a31b58480935e1fef4f1bc7b82306f5fac8b6269541ab411ca2be
f1ae61411106679769bdafa8c62f48b124874784e19bb53501ebbf61d670bc5b
"
# XXX: -ENOSPC on the builders
# cf21b8a0a58c0f0af562869846ce2af4c68b13a7178b9b74ee7be7480a87c84c
# c95f6c398e81ee7def378e51e4c7b5bdeba526f28ff281e79ca3795e6d467159
# 1834aa0632499134f98ce85057d6d67604b9ed3b7efa7f13e76046f5886a3a2d
# c31a4b1ab988a6b016654cc91e9652727cbb0fcbe9b09ee4b3d93b57a57901e0
skip_extraction="
${pkgname}-dictionaries-${version}.tar.xz
${pkgname}-help-${version}.tar.xz
${pkgname}-translations-${version}.tar.xz
${_ooop_fonts_md5}-OOOP-fonts-pack-${_ooop_fonts_ver}.zip
${_ooop_gallery_md5}-OOOP-gallery-pack-${_ooop_gallery_ver}.zip
${_ooop_samples_md5}-OOOP-samples-pack-${_ooop_samples_ver}.zip
${_ooop_templates_md5}-OOOP-templates-pack-${_ooop_templates_ver}.zip
"
if [ -z "$CROSS_BUILD" ]; then
# mariadbclient can't currently be cross compiled
makedepends+=" libmariadbclient-devel"
configure_args+=" --with-system-mariadb"
fi
case "$XBPS_TARGET_MACHINE" in
*-musl) # use shipped clucene, because CLucene/analysis/cjk/CJKAnalyzer.h
# is missing in the musl clucene-devel files
;;
*) configure_args+=" --with-system-clucene"
makedepends+=" clucene-devel"
;;
esac
post_fetch() {
local srcdistdir=${XBPS_SRCDISTDIR}/${pkgname}-${version} pkg
mkdir -p ${wrksrc}/external/tarballs
for pkg in \
${pkgname}-dictionaries-${version}.tar.xz \
${pkgname}-help-${version}.tar.xz \
${pkgname}-translations-${version}.tar.xz \
${_ooop_fonts_md5hash}-OOOP-fonts-pack-${_ooop_fonts_version}.zip \
${_ooop_gallery_md5hash}-OOOP-gallery-pack-${_ooop_gallery_version}.zip \
${_ooop_samples_md5hash}-OOOP-samples-pack-${_ooop_samples_version}.zip \
${_ooop_templates_md5hash}-OOOP-templates-pack-${_ooop_templates_version}.zip; do
if [ -f "${srcdistdir}/${pkg}" ]; then
ln -sf "${srcdistdir}/${pkg}" "${wrksrc}/external/tarballs/"
fi
done
}
pre_configure() {
sed -e "/gzip -f/d" \
-e "s|.1.gz|.1|g" \
-i bin/distro-install-desktop-integration
sed -e "/distro-install-file-lists/d" -i Makefile.in
chmod +x bin/unpack-sources
}
do_configure() {
local incdir="${XBPS_CROSS_BASE}/usr/include"
# Separate autogen.sh and configure because we need
# to patch configure for musl support
NOCONFIGURE=1 ./autogen.sh
# Add linux-musl* as host OS to lines containing linux-gnu*
sed -i configure -e 's;linux-gnu\*;linux-gnu*|linux-musl*;g'
configure_args+=" --with-vendor='VoidLinux'"
configure_args+=" --with-help"
configure_args+=" --with-alloc=system"
configure_args+=" --without-java"
configure_args+=" --without-system-dicts"
configure_args+=" --disable-odk"
configure_args+=" --enable-python=system"
configure_args+=" --enable-gtk3"
configure_args+=" --disable-dependency-tracking"
configure_args+=" --enable-release-build=yes"
configure_args+=" --disable-dconf"
configure_args+=" --with-tls=nss"
configure_args+=" --with-system-cairo"
configure_args+=" --with-myspell-dicts"
configure_args+=" --with-system-zlib"
configure_args+=" --with-system-jpeg"
configure_args+=" --with-system-expat"
configure_args+=" --with-system-icu"
configure_args+=" --with-system-icu-for-build=yes"
configure_args+=" --with-system-ucpp"
configure_args+=" --with-system-opencollada"
configure_args+=" --with-system-poppler"
configure_args+=" --with-system-curl"
configure_args+=" --with-system-boost"
configure_args+=" --with-system-mdds"
configure_args+=" --with-system-glew"
configure_args+=" --with-system-glyphy"
configure_args+=" --with-system-nss"
# Currently broken: missing symbol libgltf::gltf_get_camera_pos(...)
# configure_args+=" --with-system-libgltf"
configure_args+=" --with-system-graphite"
configure_args+=" --with-system-orcus"
configure_args+=" --with-system-harfbuzz"
configure_args+=" --with-system-apr"
# Currently broken: missing libtest_ucb_webdav_local_neon.so
# configure_args+=" --with-system-neon"
configure_args+=" --with-system-openssl"
configure_args+=" --with-system-redland"
configure_args+=" --with-system-libexttextcat"
configure_args+=" --with-system-libpng"
configure_args+=" --with-system-lpsolve"
configure_args+=" --with-system-coinmp"
configure_args+=" --with-system-liblangtag"
configure_args+=" --with-system-lcms2"
configure_args+=" --with-system-cppunit"
configure_args+=" --with-system-hunspell"
configure_args+=" --with-system-libabw"
configure_args+=" --with-system-libatomic_ops"
configure_args+=" --with-system-libcdr"
configure_args+=" --with-system-libcmis"
configure_args+=" --with-system-libebook"
configure_args+=" --with-system-libetonyek"
configure_args+=" --with-system-libfreehand"
configure_args+=" --with-system-libmspub"
configure_args+=" --with-system-libmwaw"
configure_args+=" --with-system-libodfgen"
configure_args+=" --with-system-libpagemaker"
configure_args+=" --with-system-librevenge"
configure_args+=" --with-system-libvisio"
configure_args+=" --with-system-libwpd"
configure_args+=" --with-system-libwpg"
configure_args+=" --with-system-libwps"
configure_args+=" --with-system-libxml"
configure_args+=" --with-system-mythes"
configure_args+=" --with-system-altlinuxhyph"
configure_args+=" --with-system-odbc"
configure_args+=" --with-system-openldap"
configure_args+=" --with-system-openssl"
configure_args+=" --with-system-postgresql"
configure_args+=" --with-system-firebird"
configure_args+=" --with-external-hyph-dir=${XBPS_CROSS_BASE}/usr/share/hyphen"
configure_args+=" --with-parallelism=${XBPS_MAKEJOBS}"
# XXX: -ENOSPC on the builders
#configure_args+=" --enable-extra-gallery"
#configure_args+=" --enable-extra-template"
#configure_args+=" --enable-extra-sample"
#configure_args+=" --enable-extra-font"
# In theory we could use --with-lang=ALL but building the package then takes ages.
OPENCOLLADA_CFLAGS="-I${incdir}/opencollada/COLLADABaseUtils -I${incdir}/opencollada/COLLADAFramework -I${incdir}/opencollada/COLLADASaxFrameworkLoader -I${incdir}/opencollada/COLLADAStreamWriter -I${incdir}/opencollada/GeneratedSaxParser" \
OPENCOLLADA_LIBS="-L${XBPS_CROSS_BASE}/usr/lib -lGeneratedSaxParser -lMathMLSolver -lOpenCOLLADABaseUtils -lOpenCOLLADAFramework -lOpenCOLLADASaxFrameworkLoader -lOpenCOLLADAStreamWriter -lUTF -lbuffer -lftoa" \
./configure ${configure_args} --with-lang='en-US de es fr it pl pt'
}
do_build() {
make build
}
do_install() {
local f
make DESTDIR="${DESTDIR}" PREFIXDIR="/usr" distro-pack-install
mkdir -p ${INSTDIR}/share/appdata
cp -p sysui/desktop/appstream-appdata/*.xml ${INSTDIR}/share/appdata/
# Remove unwanted libreoffice packaging files from the root directory
rm -f ${DESTDIR}/gid_Module*
# Remove useless directory usr/lib32
rm -rf ${DESTDIR}/usr/lib32
}