diff options
author | Nicolás Reynolds <fauno@endefensadelsl.org> | 2014-05-10 03:49:37 +0000 |
---|---|---|
committer | Nicolás Reynolds <fauno@endefensadelsl.org> | 2014-05-10 03:49:37 +0000 |
commit | bf8ca82240123cfd3e65739dc2318f5f1d145d12 (patch) | |
tree | b8320743e13c3a3de7a54a217ec30970c6336706 /extra/libreoffice/PKGBUILD.43 | |
parent | 66018e3cb2f893ec3add478fcd86ed3334e46fa9 (diff) |
Sat May 10 03:41:34 UTC 2014
Diffstat (limited to 'extra/libreoffice/PKGBUILD.43')
-rw-r--r-- | extra/libreoffice/PKGBUILD.43 | 725 |
1 files changed, 725 insertions, 0 deletions
diff --git a/extra/libreoffice/PKGBUILD.43 b/extra/libreoffice/PKGBUILD.43 new file mode 100644 index 000000000..0ab501c1a --- /dev/null +++ b/extra/libreoffice/PKGBUILD.43 @@ -0,0 +1,725 @@ +# $Id: PKGBUILD 211574 2014-04-20 12:55:34Z andyrtr $ +# Maintainer: AndyRTR <andyrtr@archlinux.org> +# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> + +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.3.0.0.alpha1 +pkgver=4.3.0 +pkgrel=0.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' 'libwpg' 'mesa' 'clucene' + 'java-environment' 'postgresql-libs' 'bluez-libs' 'harfbuzz-icu' + 'gdb' 'doxygen' 'libatomic_ops' 'glew' 'apr' 'serf' + # the runtime dependencies + "curl>=7.20.0" "hunspell>=1.2.8" "python>=3.4" 'libwpd>=0.9.2' + 'libwps' 'libxaw' "neon>=0.28.6" 'pango' 'nspr' 'libjpeg' 'libxrandr' + 'libgl' 'dbus-glib' 'libxslt' 'librsvg' 'redland' #"icu>=52.1" + 'hyphen' 'lpsolve' 'gcc-libs' 'sh' 'libtextcat' 'graphite' + 'lcms2' 'poppler>=0.24.0' 'libvisio' 'libetonyek' 'libodfgen' + 'libcdr' 'libmspub' + '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}/d6eef4b4cacb2183f2bf265a5a03a354-boost_1_55_0.tar.bz2 + ${_additional_source_url}/9e96ed4c1d99c0d14ac03c140f9f346c-icu4c-52_1-src.tgz + ${_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}/e8e197d628436490886d17cffa108fe3-commons-logging-1.1.3-src.tar.gz + ${_additional_source_url}/8ab049135b2d15313da5d9f0656894a1-commons-lang3-3.3.1-src.tar.gz + ${_additional_source_url}/2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz + ${_additional_source_url}/048751f3271906db5126ab76870444c4-commons-codec-1.9-src.zip + ${_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}/47203e7cade74e5c385aa812f21e7932-mdds_0.10.2.tar.bz2 + ${_additional_source_url}/ae330b9493bd4503ac390106ff6060d7-libexttextcat-3.4.3.tar.bz2 + ${_additional_source_url}/22f8a85daf4a012180322e1f52a7563b-libcmis-0.4.1.tar.gz + ${_additional_source_url}/7681383be6ce489d84c1c74f4e7f9643-liborcus-0.7.0.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}/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 + ${_additional_source_url}/8ac8ae9829c4fefd1ae9f715f95d4e0b-libgltf.tar.gz + ${_additional_source_url}/CoinMP-1.7.6.tgz + ${_additional_source_url}/bae83fa5dc7f081768daace6e199adc3-glm-0.9.4.6-libreoffice.zip # don't use system glm! LibO patches it! + make-pyuno-work-with-system-wide-module-install.diff + libreoffice-common.sh libreoffice-common.csh + prevent_KDE_Qt_from_interfering_with_the_session_manager.diff) +noextract=(d6eef4b4cacb2183f2bf265a5a03a354-boost_1_55_0.tar.bz2 + 9e96ed4c1d99c0d14ac03c140f9f346c-icu4c-52_1-src.tgz + 185d60944ea767075d27247c3162b3bc-unowinreg.dll + 47203e7cade74e5c385aa812f21e7932-mdds_0.10.2.tar.bz2 + 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 + e8e197d628436490886d17cffa108fe3-commons-logging-1.1.3-src.tar.gz + 8ab049135b2d15313da5d9f0656894a1-commons-lang3-3.3.1-src.tar.gz + 2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz + 048751f3271906db5126ab76870444c4-commons-codec-1.9-src.zip + 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 + 7681383be6ce489d84c1c74f4e7f9643-liborcus-0.7.0.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 + 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 + 8ac8ae9829c4fefd1ae9f715f95d4e0b-libgltf.tar.gz + CoinMP-1.7.6.tgz + bae83fa5dc7f081768daace6e199adc3-glm-0.9.4.6-libreoffice.zip) +md5sums=('6eab0996f37263f687bfcf511d14d747' + 'SKIP' + '848577e3ccdd4c1083824a9b56db8151' + 'SKIP' + '7ba0e71d7ed2900caa44c462efc53c49' + 'SKIP' + 'd6eef4b4cacb2183f2bf265a5a03a354' + '9e96ed4c1d99c0d14ac03c140f9f346c' + '1f24ab1d39f4a51faf22244c94a6203f' + '35c94d2df8893241173de1d16b6034c0' + '798b2ffdc8bcfe7bca2cf92b62caf685' + 'a7983f859eafb2677d7ff386a023bc40' + 'e8e197d628436490886d17cffa108fe3' + '8ab049135b2d15313da5d9f0656894a1' + '2c9b0f83ed5890af02c0df1c1776f39b' + '048751f3271906db5126ab76870444c4' + 'eeb2c7ddf0d302fba4bfc6e97eac9624' + '39bb3fcea1514f1369fcfc87542390fd' + '3404ab6b1792ae5f16bbd603bd1e1d03' + '97b2d4dba862397f446b217e2b623e71' + 'f94d9870737518e3b597f9265f4e9803' + '8ce2fcd72becf06c41f7201d15373ed9' + 'd8bd5eed178db6e2b18eeed243f85aa8' + '3bdf40c0d199af31923e900d082ca2dd' + 'ace6ab49184e329db254e454a010f56d' + 'db60e4fde8dd6d6807523deb71ee34dc' + 'ba2930200c9f019c2d93a8c88c651a0f' + '47203e7cade74e5c385aa812f21e7932' + 'ae330b9493bd4503ac390106ff6060d7' + '22f8a85daf4a012180322e1f52a7563b' + '7681383be6ce489d84c1c74f4e7f9643' + '36271d3fa0d9dec1632029b6d7aac925' + '0168229624cfac409e766913506961a8' + '17410483b5b5f267aa18b7e00b65e6e0' + '185d60944ea767075d27247c3162b3bc' + 'd794625f156a9fb1c53b3f8a8aa13b5e' + '496dd00028afcc19f896b01394769043' + '21154d2004e025c8a3666625b0357bb5' + '2f1ceaf2ac8752ed278e175447d9b978' + '40fa48e03b1e28ae0325cc34b35bc46d' + '504af523f5d1a5590bbeb6a4b55e8a97' + '8ac8ae9829c4fefd1ae9f715f95d4e0b' + '1cce53bf4b40ae29790d2c5c9f8b1129' + 'bae83fa5dc7f081768daace6e199adc3' + '07d2bf5ad839a394cca008b3ec6e7bb1' + '4195735a80876ae812fca5736b50192a' + 'e7e4b3e70e99e5cba8f8dfcacf3b0d87' + 'fa2109339289663cb8ea7cf27cc22f4e') + +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 some startup issues with kde4 integration + # https://bugs.archlinux.org/task/39819 - https://bugs.freedesktop.org/show_bug.cgi?id=77128 +# patch -Np1 -i ${srcdir}/prevent_KDE_Qt_from_interfering_with_the_session_manager.diff + + #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\ + --with-system-apr \ + --with-system-libcdr \ + --without-system-mdds\ + --without-myspell-dicts \ + --with-system-libvisio \ + --without-system-libcmis \ + --with-system-libmspub \ + --without-system-libexttextcat \ + --without-system-orcus \ + --without-system-liblangtag \ + --without-system-jfreereport \ + --without-system-apache-commons \ + --with-system-libodfgen \ + --without-system-libmwaw \ + --with-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\ + --with-system-glew \ + --without-system-glm \ + --with-system-libwpg \ + --with-system-libwps \ + --with-system-redland\ + --with-system-serf \ + --without-system-npapi-headers \ + --with-ant-home="/usr/share/apache-ant"\ + --without-system-boost\ + --without-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=<all/yes> \ # 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 + # 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>=52.1" + #'telepathy-glib' # (calc telepathy-glib libtubeslo.so) + 'libodfgen' 'libvisio' 'harfbuzz-icu' 'hicolor-icon-theme' 'glu' + 'libmspub' 'libcdr' 'glew' # 'apr' 'serf' ? + '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' + 'libwpg: library for importing and converting Corel WordPerfect(tm) Graphics images and for MS visual import' + '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' 'libetonyek') + 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' 'libwpd>=0.9.2' 'libwps' 'libxml2') + optdepends=('libwpg: library for importing and converting Corel WordPerfect(tm) Graphics images') + 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" + #arch=('any') + 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" + #arch=('any') + 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" + #arch=('any') + 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 +} |