263 lines
10 KiB
Bash
263 lines
10 KiB
Bash
# Template file for 'libreoffice'
|
|
pkgname=libreoffice
|
|
version=5.3.4.2
|
|
revision=1
|
|
build_style=gnu-configure
|
|
configure_args="--disable-werror"
|
|
nopie=yes
|
|
nocross=yes
|
|
|
|
#
|
|
# XXX: mit-krb5-devel nasm firebird3 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 boost-devel cups-devel libcurl-devel
|
|
dbus-glib-devel libjpeg-turbo-devel libpng-devel glu-devel graphite-devel
|
|
gst-plugins-base1-devel gtk+-devel gtk+3-devel harfbuzz-devel icu-devel
|
|
libatomic_ops-devel lcms2-devel librsvg-devel libxml2-devel libxslt-devel
|
|
MesaLib-devel nss-devel python3-devel libressl-devel libgcrypt-devel
|
|
libgpg-error-devel poppler-cpp-devel postgresql-libs-devel redland-devel
|
|
liborcus-devel lpsolve-devel unixodbc-devel libXt-devel neon-devel
|
|
avahi-libs-devel hunspell-devel hyphen-devel libabw-devel libcdr-devel CoinMP-devel
|
|
libcmis-devel libcppunit-devel libe-book-devel libfreehand-devel
|
|
libexttextcat-devel liblangtag-devel libldap-devel libmspub-devel libmwaw-devel
|
|
glew-devel glyphy-devel gst-plugins-base1-devel libodfgen-devel libpagemaker-devel
|
|
librevenge-devel libvisio-devel libetonyek-devel libwpd-devel libwpg-devel
|
|
telepathy-glib-devel libwps-devel mdds0 mythes-devel opencollada-devel vigra-devel
|
|
vlc-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/"
|
|
|
|
# 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
|
|
${_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="
|
|
1d75393fd8b02b1e2e2e001bc0262359c7452e29a0fff35cb152717246f02379
|
|
27436e2f9d755d9f909396b26f73e23fe3e297697c59ee802bdaadd9b8074665
|
|
ab8600dc99e09d90fec83bcc505c42556156730f78973cecd74fa377fe8de91a
|
|
0f5acb29e93ab8a75a216e82c87192aabcf29fe8bada8e968cc7b255fcdf81af
|
|
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
|
|
i686*) # Broken unit tests
|
|
CXXFLAGS="-DDISABLE_CVE_TESTS=1"
|
|
;;
|
|
*-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
|
|
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
*-musl)
|
|
;;
|
|
*) makedepends+=" apache-ant openjdk "
|
|
;;
|
|
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
|
|
ln -sf ${srcdistdir}/${pkg} ${wrksrc}/external/tarballs/
|
|
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
|
|
mkdir -p external/firebird
|
|
# Add musl patch
|
|
cp ${FILESDIR}/musl-fcntl_h.patch external/firebird/
|
|
sed -i external/firebird/UnpackedTarball_firebird.mk \
|
|
-e's;\(.*external/firebird\)/libc++.patch\(.*\)$;\1/libc++.patch\2\n\1/musl-fcntl_h.patch\2;'
|
|
}
|
|
|
|
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-system-dicts"
|
|
configure_args+=" --disable-odk"
|
|
configure_args+=" --enable-python=system"
|
|
configure_args+=" --enable-gtk3"
|
|
configure_args+=" --enable-vlc"
|
|
configure_args+=" --disable-dependency-tracking"
|
|
configure_args+=" --enable-release-build=yes"
|
|
configure_args+=" --disable-dconf"
|
|
configure_args+=" --enable-extra-gallery"
|
|
configure_args+=" --enable-extra-template"
|
|
configure_args+=" --enable-extra-sample"
|
|
configure_args+=" --enable-extra-font"
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
*-musl) # Can't use the glibc external modules
|
|
configure_args+=" --without-java"
|
|
;;
|
|
*) configure_args+=" --enable-ext-mariadb-connector"
|
|
configure_args+=" --enable-ext-watch-window"
|
|
configure_args+=" --enable-ext-diagram"
|
|
configure_args+=" --enable-ext-validator"
|
|
configure_args+=" --enable-ext-barcode"
|
|
configure_args+=" --enable-ext-ct2n"
|
|
configure_args+=" --enable-ext-numbertext"
|
|
configure_args+=" --enable-ext-hunart"
|
|
configure_args+=" --enable-ext-typo"
|
|
configure_args+=" --enable-ext-google-docs"
|
|
configure_args+=" --enable-ext-nlpsolver"
|
|
configure_args+=" --enable-ext-languagetool"
|
|
configure_args+=" --with-jdk-home=/usr/lib/jvm/openjdk"
|
|
configure_args+=" --without-junit"
|
|
;;
|
|
esac
|
|
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: libgltf-0.1.x API changed
|
|
# 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"
|
|
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-neon"
|
|
configure_args+=" --with-system-postgresql"
|
|
# Firebird-3.0.1 does not work with libreoffice
|
|
# configure_args+=" --with-system-firebird"
|
|
configure_args+=" --with-external-hyph-dir=${XBPS_CROSS_BASE}/usr/share/hyphen"
|
|
configure_args+=" --with-parallelism=${XBPS_MAKEJOBS}"
|
|
|
|
# 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
|
|
}
|