# $Id$ # Maintainer: AndyRTR # Maintainer: Bartłomiej Piotrowski # ALARM: Kevin Mihelich # - patch to fix building icu buildarch=20 pkgbase="libreoffice" pkgname=('libreoffice-common' 'libreoffice-base' 'libreoffice-calc' 'libreoffice-draw' 'libreoffice-gnome' 'libreoffice-impress' 'libreoffice-kde4' 'libreoffice-math' 'libreoffice-sdk' 'libreoffice-sdk-doc' 'libreoffice-writer' 'libreoffice-en-US' 'libreoffice-postgresql-connector' 'libreoffice-extension-wiki-publisher' 'libreoffice-extension-nlpsolver') # svn up -r 142692 (last one with all extensions built) _LOver=4.2.5.2 pkgver=4.2.5 pkgrel=1 arch=('i686' 'x86_64') license=('LGPL3') url="http://www.libreoffice.org/" makedepends=( # makedepends 'sane' 'perl-archive-zip' 'zip' 'unzip' 'unixodbc' 'apache-ant' 'gperf' 'kdelibs' 'gconf' 'gtk3' 'cppunit' 'beanshell2' 'vigra' 'clucene' 'junit' 'libmythes' 'mesa' 'clucene' 'java-environment' 'postgresql-libs' 'bluez-libs' 'harfbuzz-icu' 'gdb' 'doxygen' 'libatomic_ops' 'mdds' # the runtime dependencies "curl>=7.20.0" "hunspell>=1.2.8" "python>=3.4" 'libxaw' "neon>=0.28.6" 'pango' 'nspr' 'libjpeg' 'libxrandr' 'libgl' 'dbus-glib' 'libxslt' 'librsvg' 'redland' 'icu' 'hyphen' 'lpsolve' 'gcc-libs' 'sh' 'libtextcat' 'graphite' 'lcms2' 'poppler>=0.24.0' 'hicolor-icon-theme' 'desktop-file-utils' 'shared-mime-info' 'gtk2' 'orbit2' 'translate-toolkit' 'xdg-utils' #'telepathy-glib' 'gst-plugins-base-libs' 'glu' 'ttf-liberation' # to satisfy regression tests 'git') # there's only one single static library in libreoffice-sdk, # the next build that removes it may lead to trouble if people may use it # -rw-r--r-- 1 root root 5,1K 12. Okt 23:34 /usr/lib/libreoffice/sdk/lib/libsalcpprt.a # options=('staticlibs') # http://download.documentfoundation.org/mirrors/all.html # http://wiki.documentfoundation.org/Mirrors _mirror="http://download.documentfoundation.org/libreoffice/src/${pkgver}" #_mirror="http://dev-builds.libreoffice.org/pre-releases/src" _additional_source_url="http://dev-www.libreoffice.org/src" _additional_source_url2="http://dev-www.libreoffice.org/extern" source=(${_mirror}/${pkgbase}{,-help,-translations}-${_LOver}.tar.xz{,.asc} ${_additional_source_url}/15cb8c0803064faef0c4ddf5bc5ca279-boost_1_54_0.tar.bz2 ${_additional_source_url}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz ${_additional_source_url}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip ${_additional_source_url}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip ${_additional_source_url}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip ${_additional_source_url}/3c219630e4302863a9a83d0efde889db-commons-logging-1.1.1-src.tar.gz ${_additional_source_url}/625ff5f2f968dd908bca43c9469d6e6b-commons-lang-2.4-src.tar.gz ${_additional_source_url}/2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz ${_additional_source_url}/2e482c7567908d334785ce7d69ddfff7-commons-codec-1.6-src.tar.gz ${_additional_source_url}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip ${_additional_source_url}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip ${_additional_source_url}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip ${_additional_source_url}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip ${_additional_source_url}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip ${_additional_source_url}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip ${_additional_source_url}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip ${_additional_source_url}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip ${_additional_source_url}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip ${_additional_source_url}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip ${_additional_source_url}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip ${_additional_source_url}/ae330b9493bd4503ac390106ff6060d7-libexttextcat-3.4.3.tar.bz2 ${_additional_source_url}/22f8a85daf4a012180322e1f52a7563b-libcmis-0.4.1.tar.gz ${_additional_source_url}/ea2acaf140ae40a87a952caa75184f4d-liborcus-0.5.1.tar.bz2 ${_additional_source_url}/36271d3fa0d9dec1632029b6d7aac925-liblangtag-0.5.1.tar.bz2 ${_additional_source_url}/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz ${_additional_source_url}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip ${_additional_source_url2}/185d60944ea767075d27247c3162b3bc-unowinreg.dll ${_additional_source_url}/libmwaw-0.2.0.tar.bz2 ${_additional_source_url}/libcdr-0.0.15.tar.bz2 ${_additional_source_url}/libetonyek-0.0.4.tar.bz2 ${_additional_source_url}/libmspub-0.0.6.tar.bz2 ${_additional_source_url}/libodfgen-0.0.4.tar.bz2 ${_additional_source_url}/libvisio-0.0.31.tar.bz2 ${_additional_source_url}/a3dcac551fae5ebbec16e844810828c4-libwpd-0.9.9.tar.bz2 ${_additional_source_url}/b85436266b2ac91d351ab5684b181151-libwpg-0.2.2.tar.bz2 ${_additional_source_url}/46eb0e7f213ad61bd5dee0c494132cb0-libwps-0.2.9.tar.bz2 ${_additional_source_url}/libfreehand-0.0.0.tar.bz2 ${_additional_source_url}/Firebird-2.5.2.26540-0.tar.bz2 ${_additional_source_url}/libe-book-0.0.3.tar.bz2 ${_additional_source_url}/libabw-0.0.2.tar.bz2 ${_additional_source_url}/language-subtag-registry-2014-03-27.tar.bz2 make-pyuno-work-with-system-wide-module-install.diff libreoffice-common.sh libreoffice-common.csh icudata-stdlibs.patch) noextract=(15cb8c0803064faef0c4ddf5bc5ca279-boost_1_54_0.tar.bz2 185d60944ea767075d27247c3162b3bc-unowinreg.dll 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz ae330b9493bd4503ac390106ff6060d7-libexttextcat-3.4.3.tar.bz2 22f8a85daf4a012180322e1f52a7563b-libcmis-0.4.1.tar.gz 35c94d2df8893241173de1d16b6034c0-swingExSrc.zip a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip 3c219630e4302863a9a83d0efde889db-commons-logging-1.1.1-src.tar.gz 625ff5f2f968dd908bca43c9469d6e6b-commons-lang-2.4-src.tar.gz 2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz 2e482c7567908d334785ce7d69ddfff7-commons-codec-1.6-src.tar.gz eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip 39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip 3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip 97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip 8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip 3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip ea2acaf140ae40a87a952caa75184f4d-liborcus-0.5.1.tar.bz2 36271d3fa0d9dec1632029b6d7aac925-liblangtag-0.5.1.tar.bz2 0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip libmwaw-0.2.0.tar.bz2 libcdr-0.0.15.tar.bz2 libetonyek-0.0.4.tar.bz2 libmspub-0.0.6.tar.bz2 libodfgen-0.0.4.tar.bz2 libvisio-0.0.31.tar.bz2 a3dcac551fae5ebbec16e844810828c4-libwpd-0.9.9.tar.bz2 b85436266b2ac91d351ab5684b181151-libwpg-0.2.2.tar.bz2 46eb0e7f213ad61bd5dee0c494132cb0-libwps-0.2.9.tar.bz2 libfreehand-0.0.0.tar.bz2 Firebird-2.5.2.26540-0.tar.bz2 libe-book-0.0.3.tar.bz2 libabw-0.0.2.tar.bz2 language-subtag-registry-2014-03-27.tar.bz2) md5sums=('eb44cc33bb9331db4c1b6ae0b03fff9f' 'SKIP' '867c10167b05ba19162b78032405524b' 'SKIP' '6bcd61a3f977f78c64b1eaa13a40524c' 'SKIP' '15cb8c0803064faef0c4ddf5bc5ca279' '1f24ab1d39f4a51faf22244c94a6203f' '35c94d2df8893241173de1d16b6034c0' '798b2ffdc8bcfe7bca2cf92b62caf685' 'a7983f859eafb2677d7ff386a023bc40' '3c219630e4302863a9a83d0efde889db' '625ff5f2f968dd908bca43c9469d6e6b' '2c9b0f83ed5890af02c0df1c1776f39b' '2e482c7567908d334785ce7d69ddfff7' 'eeb2c7ddf0d302fba4bfc6e97eac9624' '39bb3fcea1514f1369fcfc87542390fd' '3404ab6b1792ae5f16bbd603bd1e1d03' '97b2d4dba862397f446b217e2b623e71' 'f94d9870737518e3b597f9265f4e9803' '8ce2fcd72becf06c41f7201d15373ed9' 'd8bd5eed178db6e2b18eeed243f85aa8' '3bdf40c0d199af31923e900d082ca2dd' 'ace6ab49184e329db254e454a010f56d' 'db60e4fde8dd6d6807523deb71ee34dc' 'ba2930200c9f019c2d93a8c88c651a0f' 'ae330b9493bd4503ac390106ff6060d7' '22f8a85daf4a012180322e1f52a7563b' 'ea2acaf140ae40a87a952caa75184f4d' '36271d3fa0d9dec1632029b6d7aac925' '0168229624cfac409e766913506961a8' '17410483b5b5f267aa18b7e00b65e6e0' '185d60944ea767075d27247c3162b3bc' 'd794625f156a9fb1c53b3f8a8aa13b5e' 'fbcd8619fc6646f41d527c1329102998' '3c50bc60394d1f2675fbf9bd22581363' '1120705cd0f0d9bd5506360bf57b6c2e' 'e5483d1f0b71e64c367c1194b54b0f53' '82628333418f101a20cd21f980cf9f40' 'a3dcac551fae5ebbec16e844810828c4' 'b85436266b2ac91d351ab5684b181151' '46eb0e7f213ad61bd5dee0c494132cb0' '496dd00028afcc19f896b01394769043' '21154d2004e025c8a3666625b0357bb5' '2f1ceaf2ac8752ed278e175447d9b978' '40fa48e03b1e28ae0325cc34b35bc46d' '504af523f5d1a5590bbeb6a4b55e8a97' '07d2bf5ad839a394cca008b3ec6e7bb1' '4195735a80876ae812fca5736b50192a' 'e7e4b3e70e99e5cba8f8dfcacf3b0d87' '0fa64bbd473ad7da9eb78a3890c29c2a') prepare() { cd libreoffice-$_LOver #return 1 # move external sources into place mkdir ${srcdir}/ext_sources && pushd ${srcdir}/ext_sources for source in "${noextract[@]}"; do ln -s ${srcdir}/$source . done popd # unowinreg.dll must be a file not a symlink or the result will become a broken symlink # /usr/share/libreoffice/sdk/classes/win/unowinreg.dll -> /build/libreoffice/src/185d60944ea767075d27247c3162b3bc-unowinreg.dll rm ${srcdir}/ext_sources/185d60944ea767075d27247c3162b3bc-unowinreg.dll cp -f ${srcdir}/185d60944ea767075d27247c3162b3bc-unowinreg.dll ${srcdir}/ext_sources # fix not upstreamable pyuno paths - patch taken from Debian patch -Np1 -i ${srcdir}/make-pyuno-work-with-system-wide-module-install.diff # fix icu building on ARM patch -Np1 -i ${srcdir}/icudata-stdlibs.patch #use the CFLAGS but remove the LibO overridden ones for i in $CFLAGS; do case "$i" in -O?|-pipe|-Wall|-g|-fexceptions) continue;; esac ARCH_FLAGS="$ARCH_FLAGS $i" done # qt4 fix sed -i "s:qmake:qmake-qt4:g" configure.ac } build() { cd libreoffice-$_LOver #autoconf -f # non-SMP test build #export MAKEFLAGS="-j1" #./configure --with-build-version="${_LOver} Arch Linux build-${pkgrel}" --with-vendor="Arch Linux" \ ./autogen.sh --with-build-version="${_LOver} Arch Linux build-${pkgrel}" --with-vendor="Arch Linux" \ --enable-split-app-modules \ --with-parallelism=${MAKEFLAGS/-j/} \ --with-external-tar="${srcdir}/ext_sources" \ --disable-fetch-external \ --disable-verbose \ --enable-release-build \ --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc \ --libdir=/usr/lib --mandir=/usr/share/man \ --with-lang="" \ --enable-crashdump \ --enable-avahi \ --enable-dbus \ --enable-evolution2\ --enable-gio\ --disable-gnome-vfs\ --disable-kde\ --enable-kde4\ --enable-gtk3 \ --enable-gstreamer \ --disable-gstreamer-0-10 \ --enable-lockdown\ --enable-opencl \ --enable-opengl \ --enable-openssl \ --enable-odk\ --enable-orcus \ --enable-python=system \ --enable-scripting-beanshell \ --enable-scripting-javascript \ --disable-telepathy \ --enable-ext-wiki-publisher \ --enable-ext-nlpsolver \ --without-fonts\ --without-afms\ --without-system-libcdr \ --with-system-mdds\ --without-myspell-dicts \ --without-system-libvisio \ --without-system-libcmis \ --without-system-libmspub \ --without-system-libexttextcat \ --without-system-orcus \ --without-system-liblangtag \ --without-system-jfreereport \ --without-system-apache-commons \ --without-system-libodfgen \ --without-system-libmwaw \ --without-system-libetonyek \ --without-system-libfreehand \ --without-system-firebird \ --with-system-libatomic-ops \ --without-system-libebook \ --without-system-libabw \ --with-system-dicts \ --with-external-dict-dir=/usr/share/hunspell \ --with-external-hyph-dir=/usr/share/hyphen \ --with-external-thes-dir=/usr/share/mythes \ --with-system-beanshell \ --with-system-cppunit\ --with-system-graphite\ --without-system-libwpd \ --without-system-libwpg \ --without-system-libwps \ --with-system-redland\ --without-system-npapi-headers \ --with-ant-home="/usr/share/apache-ant"\ --without-system-boost\ --with-system-icu \ --with-system-cairo\ --with-system-libs\ --with-system-mythes\ --with-system-headers\ --without-system-hsqldb \ --with-alloc=system\ --with-system-clucene \ --disable-dependency-tracking \ --enable-hardlink-deliver #--help # --enable-mergelibs= \ # https://bugs.archlinux.org/task/34414 # --without-ppds\ # breaks spadmin permission #--enable-split-opt-features Split file lists for some optional features, .e.g. pyuno, testtool touch src.downloaded #./download make build # fake installation to create split file lists mkdir $srcdir/fakeinstall make DESTDIR=${srcdir}/fakeinstall distro-pack-install # -o build -o check } #check() { # cd ${srcdir}/build # make check #} package_libreoffice-common() { pkgdesc="Common files for LibreOffice - a productivity suite that is compatible with other major office suites" install=libreoffice-common.install depends=('libreoffice-langpack' "hunspell>=1.2.8" "python>=3.3" "neon>=0.28.6" 'dbus-glib' 'librsvg' 'libcups' 'nss' 'libsm' 'redland' 'hyphen' 'graphite' 'clucene' 'lcms2' "poppler>=0.24.0" 'icu' 'harfbuzz-icu' 'hicolor-icon-theme' 'glu' 'desktop-file-utils' 'shared-mime-info' 'xdg-utils') optdepends=('libreoffice-langpack: additional language support' 'java-runtime: adds java support' 'pstoedit: translates PostScript and PDF graphics into other vector formats' 'libmythes: for use in thesaurus' 'beanshell2: interactive java -- good for prototyping/macros' 'vigra: C++ computer vision library, usable in Basebmp' 'libmspack: library for Microsoft compression formats for use in FontOOo' 'sane: for scanner access' 'unixodbc: adds ODBC database support' 'gst-plugins-base-libs: + some gstr-plugins to support multimedia content, e.g. in impress' 'gtk2: for browser plugin' 'libpaper: takes care of papersize') backup=(etc/libreoffice/sofficerc etc/libreoffice/bootstraprc etc/libreoffice/psprint.conf etc/profile.d/libreoffice-common.sh etc/profile.d/libreoffice-common.csh) groups=('libreoffice') provides=('go-openoffice' 'libreoffice-extension-pdfimport' 'libreoffice-extension-presenter-screen' 'libreoffice-scripting-beanshell' 'libreoffice-scripting-javascript' 'libreoffice-extension-scripting-python' 'libreoffice-extension-report-builder') conflicts=('go-openoffice') replaces=('go-openoffice' 'openoffice-base' 'libreoffice' 'libreoffice-extension-pdfimport' 'libreoffice-extension-presenter-screen' 'libreoffice-scripting-beanshell' 'libreoffice-scripting-javascript' 'libreoffice-extension-scripting-python' 'libreoffice-extension-report-builder' 'libreoffice-extension-presentation-minimizer' 'libreoffice-extension-presentation-minimizer') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/common_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/common_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done # put configuration files into place install -dm755 ${pkgdir}/etc/libreoffice install -m644 ${pkgdir}/usr/lib/libreoffice/program/{bootstraprc,sofficerc} ${pkgdir}/etc/libreoffice/ install -m644 ${pkgdir}/usr/lib/libreoffice/share/psprint/psprint.conf ${pkgdir}/etc/libreoffice/ # install dummy links to make them found by LibO cd ${pkgdir}/usr/lib/libreoffice/program/ ln -vsf /etc/libreoffice/{bootstraprc,sofficerc} . cd ${pkgdir}/usr/lib/libreoffice/share/psprint/ ln -vsf /etc/libreoffice/psprint.conf . # allow to preset desired VLC install -dm755 ${pkgdir}/etc/profile.d install -m755 ${srcdir}/libreoffice-common.{sh,csh} ${pkgdir}/etc/profile.d/ # move bash-completion files to its new place install -dm755 ${pkgdir}/usr/share/bash-completion/completions mv ${pkgdir}/etc/bash_completion.d/libreoffice.sh ${pkgdir}/usr/share/bash-completion/completions/libreoffice.sh rm -rf ${pkgdir}/etc/bash_completion.d # make pyuno find its modules install -dm755 ${pkgdir}/usr/lib/python3.4/site-packages ln -svf /usr/lib/libreoffice/program/uno.py ${pkgdir}/usr/lib/python3.4/site-packages/uno.py ln -svf /usr/lib/libreoffice/program/unohelper.py ${pkgdir}/usr/lib/python3.4/site-packages/unohelper.py # workaround all packages now depend on that file cp ${srcdir}/fakeinstall/usr/lib/libreoffice/share/registry/writer.xcd ${pkgdir}/usr/lib/libreoffice/share/registry/writer.xcd # workaround lowriter depending on a lib that's part of calc # https://bugs.archlinux.org/task/39038 - https://bugs.freedesktop.org/show_bug.cgi?id=75506 # cp ${srcdir}/fakeinstall/usr/lib/libreoffice/program/libtubeslo.so ${pkgdir}/usr/lib/libreoffice/program/libtubeslo.so # add missing files from Beanshell provider # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/orig/gid_Module_Optional_Extensions_Script_Provider_For_BS`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/orig/gid_Module_Optional_Extensions_Script_Provider_For_BS`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file || /bin/true # some double file entries make it fail done } package_libreoffice-base() { pkgdesc="GUI database front-end for LibreOffice. Allows creation and management of databases through a GUI." install=libreoffice-base.install depends=('libreoffice-common') optdepends=('libreoffice-postgresql-connector') groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/base_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/base_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-postgresql-connector() { pkgdesc="A PostgreSQL connector for the database front-end for LibreOffice" depends=('libreoffice-base' 'postgresql-libs') groups=('libreoffice') replaces=('libreoffice') # workaround double entries in the file list mv ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt.orig sort ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt.orig | uniq 1>& ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/postgresql_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-calc() { pkgdesc="Spreadsheet application for LibreOffice." install=libreoffice-calc.install depends=('libreoffice-common' 'lpsolve') #depends=('libreoffice-writer' 'lpsolve' ) # some hidden uno linking to parts of the writer pkg - https://bugs.archlinux.org/task/34332 groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/calc_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/calc_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done # workaround lowriter depending on a lib that's part of calc # https://bugs.archlinux.org/task/39038 - https://bugs.freedesktop.org/show_bug.cgi?id=75506 # rm -vf ${pkgdir}/usr/lib/libreoffice/program/libtubeslo.so } package_libreoffice-draw() { pkgdesc="Drawing Application for LibreOffice." install=libreoffice-draw.install depends=('libreoffice-common') groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/draw_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/draw_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-gnome() { pkgdesc="Plug-in for LibreOffice that enables integration into the Gnome and other gtk desktop environment." depends=('libreoffice-common' 'gconf') optdepends=('gtk3: for gtk3 Gnome integration' 'gtk2: for older gtk2 desktop integration') groups=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/gnome_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/gnome_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-impress() { pkgdesc="Presentation Application for LibreOffice." install=libreoffice-impress.install depends=('libreoffice-common') groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/impress_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/impress_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-kde4() { pkgdesc="Plug-in for LibreOffice that enables integration into the KDE4 desktop environment." depends=('libreoffice-common' 'kdelibs') optdepends=() backup=() groups=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/kde4_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/kde4_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done # one file (libkde4be1lo.so) is part of kde_list.txt # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/kde_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/kde_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-math() { pkgdesc="Equation Editor Application for LibreOffice." depends=('libreoffice-common') groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/math_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/math_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-sdk() { pkgdesc="Software Development Kit for LibreOffice." depends=('libreoffice-common' 'gcc-libs' 'sh' 'make' 'zip' 'gcc' 'java-environment') groups=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/sdk_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/sdk_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done # fix environment path to keep compatibility with other java-environments # sed -i -e "s:\/usr\/lib\/jvm\/java-7-openjdk:\$J2SDKDIR:" ${pkgdir}/usr/lib/libreoffice/sdk/setsdkenv_unix.{sh,csh} sed -i -e "s:\/usr\/lib\/jvm\/java-7-openjdk:\$J2SDKDIR:" ${pkgdir}/usr/lib/libreoffice/sdk/setsdkenv_unix.sh } package_libreoffice-sdk-doc() { pkgdesc="Software Development Kit documentation for LibreOffice" depends=('libreoffice-common' 'libreoffice-sdk') groups=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/sdk_doc_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/sdk_doc_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done #fix permissions find ${pkgdir}/usr/lib/libreoffice/sdk/examples -type f -exec chmod -x {} \; } package_libreoffice-writer() { pkgdesc="Word Processor Application for LibreOffice." install=libreoffice-writer.install depends=('libreoffice-common' 'libxml2') groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/writer_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/writer_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done # for workaround this file belongs now to common rm -vf ${pkgdir}/usr/lib/libreoffice/share/registry/writer.xcd } package_libreoffice-en-US() { pkgdesc="English (US) language pack for LibreOffice" provides=('openoffice-en-US' 'libreoffice-langpack') replaces=(openoffice-en-US) conflicts=(openoffice-en-US) # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/lang_en_US_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/lang_en_US_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-extension-wiki-publisher() { pkgdesc="This extension enables you to create Wiki articles on MediaWiki servers without having to know the syntax of the MediaWiki markup language" depends=('libreoffice-common' 'java-environment') groups=('libreoffice-extensions') install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions unzip -q ${srcdir}/libreoffice-$_LOver/workdir/Extension/wiki-publisher.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/wiki-publisher } package_libreoffice-extension-nlpsolver() { pkgdesc="This extension integrates into Calc and offers new Solver engines to use for optimizing nonlinear programming models" depends=('libreoffice-common' 'java-environment') groups=('libreoffice-extensions') install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions unzip -q ${srcdir}/libreoffice-$_LOver/workdir/Extension/nlpsolver.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/nlpsolver }