summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--metadata/repository_mask.conf7
-rw-r--r--packages/app-office/libreoffice/files/423079fd4db3163f66ab38d053f60eeec1afc2e7.patch37
-rw-r--r--packages/app-office/libreoffice/files/libreoffice-4.0-Explicitely-check-for-gtk-when-enabling-telepathy.patch34
-rw-r--r--packages/app-office/libreoffice/files/libreoffice-4.0-GLU-also-needs-lGL-to-link.patch27
-rw-r--r--packages/app-office/libreoffice/files/libreoffice-4.0-separate-checks.patch52
-rw-r--r--packages/app-office/libreoffice/libreoffice-4.0.1.2.exheres-048
-rw-r--r--packages/app-office/libreoffice/libreoffice-4.exlib265
7 files changed, 470 insertions, 0 deletions
diff --git a/metadata/repository_mask.conf b/metadata/repository_mask.conf
new file mode 100644
index 0000000..b0b4712
--- /dev/null
+++ b/metadata/repository_mask.conf
@@ -0,0 +1,7 @@
+app-office/libreoffice[>=4.0.0] [[
+ author = [ Benedikt Morbach <moben@exherbo.org> ]
+ date = [ 02 Mar 2013 ]
+ token = testing
+ description = [ Masked for testing / early adopters ]
+]]
+
diff --git a/packages/app-office/libreoffice/files/423079fd4db3163f66ab38d053f60eeec1afc2e7.patch b/packages/app-office/libreoffice/files/423079fd4db3163f66ab38d053f60eeec1afc2e7.patch
new file mode 100644
index 0000000..9e17e41
--- /dev/null
+++ b/packages/app-office/libreoffice/files/423079fd4db3163f66ab38d053f60eeec1afc2e7.patch
@@ -0,0 +1,37 @@
+Upstream: yes, master branch
+Reason: Failed to link against system nss
+ see also https://bugs.freedesktop.org/show_bug.cgi?id=60115
+
+From 423079fd4db3163f66ab38d053f60eeec1afc2e7 Mon Sep 17 00:00:00 2001
+From: David Tardon <dtardon@redhat.com>
+Date: Mon, 04 Feb 2013 07:09:16 +0000
+Subject: fdo#60115 build of ldapbe2 breaks if nss is in nonstd. location
+
+Change-Id: I32a0495edffbe13734457c230a3a1735aa254198
+---
+diff --git a/extensions/Library_ldapbe2.mk b/extensions/Library_ldapbe2.mk
+index f0c053d..3e6d6b4 100644
+--- a/extensions/Library_ldapbe2.mk
++++ b/extensions/Library_ldapbe2.mk
+@@ -58,16 +58,9 @@ $(eval $(call gb_Library_use_system_win32_libs,ldapbe2,\
+ wldap32 \
+ ))
+ else # 0S!=WNT
+-$(eval $(call gb_Library_use_externals,ldapbe2,openldap))
+-
+-$(eval $(call gb_Library_add_libs,ldapbe2,\
+- -lssl3 \
+- -lsmime3 \
+- -lnss3 \
+- -lnssutil3 \
+- -lplds4 \
+- -lplc4 \
+- -lnspr4 \
++$(eval $(call gb_Library_use_externals,ldapbe2,\
++ nss3 \
++ openldap \
+ ))
+ endif
+
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/packages/app-office/libreoffice/files/libreoffice-4.0-Explicitely-check-for-gtk-when-enabling-telepathy.patch b/packages/app-office/libreoffice/files/libreoffice-4.0-Explicitely-check-for-gtk-when-enabling-telepathy.patch
new file mode 100644
index 0000000..2812a2d
--- /dev/null
+++ b/packages/app-office/libreoffice/files/libreoffice-4.0-Explicitely-check-for-gtk-when-enabling-telepathy.patch
@@ -0,0 +1,34 @@
+Upstream: yes, master
+
+From 9efe8c8f2b8339d8d5b477eb98a409797ce2cafb Mon Sep 17 00:00:00 2001
+From: Tomas Chvatal <tchvatal@suse.cz>
+Date: Mon, 28 Jan 2013 19:01:19 +0100
+Subject: [PATCH] Explicitely check for gtk when enabling telepathy
+
+This is needed in tubes.
+
+Change-Id: Ia77968a68da4e781c6e5d4c202b3e5f751f1c952
+Signed-off-by: Tomas Chvatal <tchvatal@suse.cz>
+Reviewed-on: https://gerrit.libreoffice.org/1904
+Reviewed-by: Michael Stahl <mstahl@redhat.com>
+Tested-by: Michael Stahl <mstahl@redhat.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index a1dbc23..a18eed4 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -9686,7 +9686,7 @@ if test "$_os" != "WINNT" -a "$_os" != "Darwin" -a "$enable_telepathy" = "yes";
+ ENABLE_TELEPATHY="TRUE"
+ AC_DEFINE(ENABLE_TELEPATHY)
+ AC_MSG_RESULT([yes])
+- PKG_CHECK_MODULES( TELEPATHY, telepathy-glib >= 0.18.0 glib-2.0 gobject-2.0 gthread-2.0 gio-2.0 )
++ PKG_CHECK_MODULES( TELEPATHY, telepathy-glib >= 0.18.0 glib-2.0 gobject-2.0 gthread-2.0 gio-2.0 gtk+-2.0 >= 2.4 )
+ else
+ AC_MSG_RESULT([no])
+ fi
+--
+1.8.1.5
+
diff --git a/packages/app-office/libreoffice/files/libreoffice-4.0-GLU-also-needs-lGL-to-link.patch b/packages/app-office/libreoffice/files/libreoffice-4.0-GLU-also-needs-lGL-to-link.patch
new file mode 100644
index 0000000..1822069
--- /dev/null
+++ b/packages/app-office/libreoffice/files/libreoffice-4.0-GLU-also-needs-lGL-to-link.patch
@@ -0,0 +1,27 @@
+Upstream: submitted, https://bugs.freedesktop.org/show_bug.cgi?id=62110
+Reason: configure would fail because AC_CHECK_LIB doesn't pass -lGL
+
+From 27d4845c551c5b3b9782577a5263deef0b7dae81 Mon Sep 17 00:00:00 2001
+From: Benedikt Morbach <benedikt.morbach@googlemail.com>
+Date: Sun, 10 Mar 2013 15:30:23 +0100
+Subject: [PATCH] GLU also needs -lGL to link
+
+---
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.ac b/configure.ac
+index e293023..4938ab7 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -9548,6 +9548,7 @@ else
+ AC_MSG_RESULT([yes])
+ AC_CHECK_LIB([GL], [main], [:],
+ [AC_MSG_ERROR(libGL not installed or functional)], [])
++ LDFLAGS="$LDFLAGS -lGL"
+ AC_CHECK_LIB([GLU], [main], [:],
+ [AC_MSG_ERROR(libGLU not installed or functional)], [])
+ ENABLE_OPENGL=TRUE
+--
+1.8.1.5
+
diff --git a/packages/app-office/libreoffice/files/libreoffice-4.0-separate-checks.patch b/packages/app-office/libreoffice/files/libreoffice-4.0-separate-checks.patch
new file mode 100644
index 0000000..e11f660
--- /dev/null
+++ b/packages/app-office/libreoffice/files/libreoffice-4.0-separate-checks.patch
@@ -0,0 +1,52 @@
+Source: gentoo, http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-office/libreoffice/files/libreoffice-3.7-separate-checks.patch
+Upstream: no, this code is gone/changed/fixed differently in master
+Reason: `make`, aka `make all` and pretty much any other make target would also run tests (in src_compile)
+
+diff --git a/Makefile.top b/Makefile.top
+index 9e67a71..64a7b6c 100644
+--- a/Makefile.top
++++ b/Makefile.top
+@@ -244,7 +244,7 @@ stlport\
+ sysui\
+ xpdf\
+
+-export gb_TAILBUILDTARGET=all slowcheck
++export gb_TAILBUILDTARGET=all
+
+ define gbuild_module_rules
+ .PHONY: $(1) $(1).all $(1).build $(1).check $(1).clean $(1).subsequentcheck $(1).deliver
+@@ -546,7 +546,7 @@ findunusedcode:
+ | grep -v ^WSObject \
+ > unusedcode.easy
+
+-check: dev-install subsequentcheck
++check: unitcheck slowcheck dev-install subsequentcheck
+
+ subsequentcheck :| $(if $(filter-out subsequentcheck,$(MAKECMDGOALS)),dev-install)
+ $(GNUMAKE) -j $(CHECK_PARALLELISM) $(GMAKE_OPTIONS) -f Makefile.post $@
+diff --git a/solenv/bin/build.pl b/solenv/bin/build.pl
+index c8e62ee..11a9069 100755
+--- a/solenv/bin/build.pl
++++ b/solenv/bin/build.pl
+@@ -1902,7 +1902,7 @@ sub run_job {
+ return 1 if (! $path =~ /prj$/ );
+ mkpath("$workdir/Logs");
+ my $gbuild_flags = '-j' . $ENV{PARALLELISM};
+- my $gbuild_target = 'all slowcheck';
++ my $gbuild_target = 'all';
+ if ($registered_name =~ /tail_build\/prj$/ )
+ {
+ $gbuild_target = $ENV{gb_TAILBUILDTARGET};
+diff --git a/solenv/gbuild/Module.mk b/solenv/gbuild/Module.mk
+index 97f1a81..c7ae7f4 100644
+--- a/solenv/gbuild/Module.mk
++++ b/solenv/gbuild/Module.mk
+@@ -139,7 +139,7 @@ gb_Module_DEVINSTALLHINT=
+ debugrun :| build
+ endif
+
+-all : build unitcheck
++all : build
+ $(info $(gb_Module_BUILDHINT))
+
+ build :
diff --git a/packages/app-office/libreoffice/libreoffice-4.0.1.2.exheres-0 b/packages/app-office/libreoffice/libreoffice-4.0.1.2.exheres-0
new file mode 100644
index 0000000..48a304f
--- /dev/null
+++ b/packages/app-office/libreoffice/libreoffice-4.0.1.2.exheres-0
@@ -0,0 +1,48 @@
+# Copyright 2008, 2009, 2010, 2011 Ingmar Vanhassel <ingmar@exherbo.org>
+# Copyright 2011 Dimitry Ishenko <dimitry.ishenko@gmail.com>
+# Copyright 2011, 2012, 2013 Benedikt Morbach <moben@exherbo.org>
+# Distributed under the terms of the GNU General Public License v2
+
+linguas=(
+ af am an ar as ast be bg bn bn-IN bo br brx bs ca ca-XV cs cy da de dgo dz el en-GB en-ZA eo es
+ et eu fa fi fr ga gd gl gu he hi hr hu id is it ja ka kk kl km kn ko kok ks ku ky lb lo lt lv
+ mai mk ml mn mni mr my nb ne nl nn nr nso oc om or pa-IN pl pt pt-BR ro ru rw sa-IN sat sd sh
+ si sid sk sl sq sr ss st sv sw-TZ ta te tg th tn tr ts tt ug uk ur uz ve vi xh zh-CN zh-TW zu
+)
+
+# When bumping, check download.lst for new tarballs
+bundle=(
+ # bundled libraries/tools
+ libcdr-0.0.10.tar.bz2
+ libmspub-0.0.5.tar.bz2
+ libvisio-0.0.25.tar.bz2
+ f5ef3f7f10fa8c3542c6a085a233080b-graphite2-1.2.0.tgz
+ b2371dc7cf4811c9d32146eec913d296-libcmis-0.3.0.tar.gz
+ dc3d21a3921931096d6e80f6701f6763-libexttextcat-3.4.0.tar.bz2
+ 54e578c91b1b68e69c72be22adcb2195-liblangtag-0.4.0.tar.bz2
+ 8755aac23317494a9028569374dc87b2-liborcus_0.3.0.tar.bz2
+ 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
+ 26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz
+ 9f9e15966b5624834157fe3d748312bc-mdds_0.6.1.tar.bz2
+ 46e92b68e31e858512b680b3b61dc4c1-mythes-1.2.3.tar.gz
+ 0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz
+ # Unpackaged extensions:
+ # Those either need java or reside on some other url that isn't on libreoffice.org
+ # barcode diagram google-docs hunart languagetool mysql-connector
+ # nlpsolver report-builder typo validator watch-window wiki-publisher
+ 451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt
+ b7cae45ad2c23551fd6ccb8ae2c1f59e-numbertext_0.9.5.oxt
+)
+
+PLATFORMS="~amd64 ~x86"
+
+DEFAULT_SRC_PREPARE_PATCHES=(
+ "${FILES}"/423079fd4db3163f66ab38d053f60eeec1afc2e7.patch
+ "${FILES}"/${PN}-$(ever range -2)-separate-checks.patch
+ "${FILES}"/${PN}-$(ever range -2)-GLU-also-needs-lGL-to-link.patch
+ "${FILES}"/${PN}-$(ever range -2)-Explicitely-check-for-gtk-when-enabling-telepathy.patch
+)
+
+# this is down here because it uses `linguas` and `bundle`
+require libreoffice-4
+
diff --git a/packages/app-office/libreoffice/libreoffice-4.exlib b/packages/app-office/libreoffice/libreoffice-4.exlib
new file mode 100644
index 0000000..0a3f541
--- /dev/null
+++ b/packages/app-office/libreoffice/libreoffice-4.exlib
@@ -0,0 +1,265 @@
+# Copyright 2008, 2009, 2010, 2011 Ingmar Vanhassel <ingmar@exherbo.org>
+# Copyright 2011 Dimitry Ishenko <dimitry.ishenko@gmail.com>
+# Copyright 2011, 2012, 2013 Benedikt Morbach <moben@exherbo.org>
+# Distributed under the terms of the GNU General Public License v2
+# Based in part upon 'libreoffice.exlib', which is:
+# Based in part upon 'openoffice-3.0.0_rc1.ebuild' from Gentoo, which is:
+# Copyright 1999-2008 Gentoo Foundation.
+
+
+require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.13 1.12 1.11 ] ]
+require bash-completion libreoffice
+
+export_exlib_phases src_unpack src_configure src_compile src_test src_install
+
+DOWNLOADS=""
+
+for file in "${bundle[@]}" ; do
+ DOWNLOADS+=" http://dev-www.libreoffice.org/src/${file} "
+done
+
+for url in "${LIBRE_URLS[@]}" ; do
+ DOWNLOADS+="
+ ${url}/${PNV}.tar.xz
+ ${url}/${PN}-help-${PV}.tar.xz
+ ${url}/${PN}-dictionaries-${PV}.tar.xz
+ ${url}/${PN}-translations-${PV}.tar.xz
+ "
+done
+
+
+MYOPTIONS="gstreamer gtk kde opengl
+ bluetooth [[ description = [ Bluetooth presentation control ] ]]
+ collaboration [[ description = [ Collaborative document editing ] ]]
+ dbus [[ description = [ dbus support, e.g. for presentation mode screensaver control ] ]]
+ evolution [[ description = [ Build evolution 2 addressbook connectivity ] ]]
+ gconf [[ description = [ Use GConf for various preferences and lockdown support ] ]]
+ gtk3 [[ description = [ Build the gtk3 interface (experimental) ] ]]
+ mergelibs [[ description = [ Needs more RAM during build, but results in faster binaries ] ]]
+
+ bluetooth [[ requires = [ dbus ] ]]
+
+ ( linguas: ${linguas[@]} )
+"
+
+DEPENDENCIES="
+ build:
+ app-arch/unzip
+ app-arch/zip
+ dev-cpp/cppunit[>=1.12.0]
+ dev-lang/perl:*[>=5.9.3] [[ note = [ for Compress::Zlib ] ]]
+ dev-libs/libxslt
+ dev-libs/xulrunner
+ dev-perl/Archive-Zip
+ dev-util/gperf[>=3.0.0]
+ sys-devel/bison
+ sys-devel/flex
+ virtual/pkg-config
+ build+run:
+ !app-office/openoffice [[ description = [ LibreOffice is a fork of openoffice ] resolution = uninstall-blocked-after ]]
+ !app-office/libreoffice-bin
+ app-spell/hunspell
+ app-text/poppler[>=0.8.0] [[ note = [ for pdf import ] ]]
+ dev-cpp/clucene:1
+ dev-lang/python:=[>=2.6]
+ dev-libs/boost[>=1.36] [[ note = [ using system orcus might turn this into 'run:' ] ]]
+ dev-libs/expat
+ dev-libs/icu[>=4.6]
+ dev-libs/libxml2:2.0[>=2.0]
+ dev-libs/nspr[>=4.8]
+ dev-libs/nss[>=3.9.3]
+ dev-libs/openssl
+ dev-libs/redland[>=1.0.8]
+ dev-libs/vigra
+ media-libs/fontconfig[>=2.2.0]
+ media-libs/freetype:2[>=2.0]
+ media-libs/jpeg
+ media-libs/lcms2
+ media-libs/libpng
+ net-directory/openldap
+ net-misc/curl[>=7.13.1]
+ net-misc/neon[>=0.26.0]
+ net-print/cups
+ office-libs/hyphen
+ office-libs/libwpd[>=0.9.0]
+ office-libs/libwpg[>=0.2.0]
+ office-libs/libwps[>=0.2.0]
+ x11-apps/xrandr[>=1.2.2]
+ x11-libs/cairo[>=1.0.2] [[ note = [ for cairo canvas ] ]]
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXrender
+ x11-libs/libXt
+ bluetooth? ( net-wireless/bluez )
+ collaboration? (
+ dev-libs/glib:2[>=2.15.0] [[ note = [ Previous versions lack GIO ] ]]
+ net-im/telepathy-glib[>=0.18.0]
+ x11-libs/gtk+:2[>=2.4] [[ note = [ missing check in configure in 4.0.1.2 ] ]]
+ )
+ dbus? ( dev-libs/dbus-glib:1[>=0.70] )
+ evolution? ( dev-libs/glib:2 )
+ gconf? (
+ dev-libs/glib:2
+ gnome-platform/GConf:2
+ )
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-plugins/gst-plugins-base:1.0
+ )
+ gtk? (
+ dev-libs/glib:2[>=2.15.0] [[ note = [ Previous versions lack GIO ] ]]
+ x11-libs/gdk-pixbuf:2.0[>=2.2][X]
+ x11-libs/gtk+:2[>=2.10]
+ )
+ gtk3? (
+ x11-libs/cairo
+ x11-libs/gtk+:3[>=3.2]
+ )
+ kde? (
+ kde/kdelibs:4[>=4.2]
+ x11-libs/qt:4
+ )
+ opengl? (
+ x11-dri/glu
+ x11-dri/mesa[>=9.0]
+ )
+"
+
+
+libreoffice-4_src_unpack() {
+ unpack ${PNV}.tar.xz \
+ ${PN}-help-${PV}.tar.xz \
+ ${PN}-dictionaries-${PV}.tar.xz \
+ ${PN}-translations-${PV}.tar.xz
+
+ edo mkdir "${WORK}"/src/
+ for f in "${bundle[@]}"; do
+ edo ln -s "${FETCHEDDIR}"/${f} "${WORK}"/src/${f}
+ done
+}
+
+libreoffice-4_src_configure() {
+ option kde && export QT4LIB="/usr/${LIBDIR}/qt4/"
+
+ # Needed to use python-2.*
+ export PYTHON="/usr/bin/python2"
+
+ myconf=(
+ # TODO(moben) check if we can enable/optionalise/package some of those:
+ # (dict, hyph and thes need some stuff packaged)
+ #--enable-extra-font
+ #--enable-extra-gallery
+ #--enable-extra-sample
+ #--enable-extra-template
+ #--with-external-dict-dir
+ #--with-external-hyph-dir
+ #--with-external-thes-dir
+ --enable-cups
+ --enable-ext-ct2n
+ --enable-ext-numbertext
+ --enable-ext-presenter-minimizer
+ --enable-extension-integration
+ --enable-graphite
+ --enable-hardlink-deliver
+ --enable-neon
+ --enable-python=system
+ --enable-release-build
+ --enable-symbols
+ --enable-unix-qstart-libpng
+ --enable-vba
+ --enable-verbose
+ --disable-debug
+ --disable-dbgutil
+ --disable-epm
+ --disable-fetch-external
+ --disable-gnome-vfs
+ --disable-gstreamer-0-10
+ --disable-kde
+ --disable-kdeab
+ --disable-odk
+ --disable-packagekit
+ --disable-postgresql-sdbc
+ --disable-tde
+ --disable-tdeab
+ --disable-zenity
+ --with-alloc=system
+ --with-build-version=${PNVR}
+ --with-lang="${LINGUAS//_/-}"
+ --with-parallelism="${EXJOBS:-1}"
+ --with-system-libs
+ --with-system-headers
+ --with-system-mesa-headers
+ --with-system-npapi-headers
+ --with-system-xextensions-headers
+ --with-unix-wrapper=libreoffice
+ --with-vendor=Exherbo
+ --without-afms
+ --without-epm
+ --without-fonts
+ --without-gssapi
+ --without-java
+ --without-krb5
+ --without-ppds
+ # TODO package some of these:
+ --without-system-graphite
+ --without-system-libcdr
+ --without-system-libcmis
+ --without-system-libexttextcat
+ --without-system-liblangtag
+ --without-system-libmspub
+ --without-system-libvisio
+ --without-system-lpsolve
+ --without-system-mythes
+ --without-system-orcus
+ --without-system-ucpp
+ # supposedly, only headers from the following are used
+ --without-system-mdds
+ --without-system-odbc
+ --without-system-sane
+
+ $(option_enable bluetooth sdremote_bluetooth)
+ $(option_enable collaboration telepathy)
+ $(option_enable dbus)
+ $(option_enable evolution evolution2)
+ $(option_enable gconf)
+ $(option_enable gconf lockdown)
+ $(option_enable gstreamer)
+ $(option_enable gtk)
+ $(option_enable gtk gio)
+ $(option_enable gtk systray)
+ $(option_enable gtk3 gtk3)
+ $(option_enable kde kde4)
+ $(option_enable mergelibs)
+ $(option_enable opengl)
+ )
+
+ # without this, make runs configure again, but without args
+ edo touch autogen.lastrun
+
+ econf "${myconf[@]}"
+}
+
+libreoffice-4_src_compile() {
+ # parallel make is handled by --with-parallelism
+ edo make build
+}
+
+libreoffice-4_src_test() {
+ # make check tries to install, among other things
+ # TODO(moben) there is also subsequenttests, but maybe that needs X
+ edo make unitcheck
+ edo make slowcheck
+}
+
+libreoffice-4_src_install() {
+ emake -j1 DESTDIR="${IMAGE}" distro-pack-install
+ emagicdocs
+
+ # upstream installs bash completion into the wrong place
+ dobashcompletion "${IMAGE}"/etc/bash_completion.d/${PN}.sh ${PN}
+ edo rm "${IMAGE}"/etc/bash_completion.d/${PN}.sh
+
+ # remove empty directories
+ edo find "${IMAGE}" -type d -empty -delete
+}
+