app-office/libreoffice: Add 5.0.2 pre-release github/pr/107
authorAndreas Sturmlechner <andreas.sturmlechner@gmail.com>
Sat, 19 Sep 2015 16:52:35 +0000 (18:52 +0200)
committerAndreas Sturmlechner <andreas.sturmlechner@gmail.com>
Sat, 19 Sep 2015 16:55:12 +0000 (18:55 +0200)
Package-Manager: portage-2.2.20.1

app-office/libreoffice/Manifest
app-office/libreoffice/libreoffice-5.0.2.2.ebuild [new file with mode: 0644]
app-office/libreoffice/libreoffice-5.0.9999.ebuild

index 69e2eaf1fc7a65c37ef8c19128f5f8e482009a41..4afeda9a3014240fd27d4adcbfb76164fc32b86b 100644 (file)
@@ -9,7 +9,9 @@ DIST d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz 16525605 SHA256 1f188ac0
 DIST libreoffice-4.4.4.3.tar.xz 164365608 SHA256 31ac86daa4f842fe825c88262b99a032ba3c0620f6e01cb22a54af14bc3dda72 SHA512 fbe97d4f8db92348927dc7c8412631ad5187968357ebdc57f22936cea84c76ced3655aac4c6ebc936b0f96d3d36bafe163eea05ed2dca02e53724bd5a0396513 WHIRLPOOL a7938d94b8644cd736a7213c0c4931a9d857da7005972bc751f6157445839ce395fdb1b6b057dc6fd681cf86143cfe96c9b2126fef2d5de5ea000eb15c5bdb35
 DIST libreoffice-4.4.5.2.tar.xz 164472672 SHA256 3aeb4f08918c6ca6ec12fc47c2be690d2180c2e41cc3136b6ed36185b89cec0d SHA512 15abecb02d8ca478cb7d006834c8670b9e42d3e5d8ec772e9a1d805dbd2ef1145092d1d4e3a6531f21eeb75210c1354e91c4d3abeec97103ad4c3092b7b7273b WHIRLPOOL a06c9e520e6f2b40c90cb703689527faf9ed6dbe0c0c3810ad276933daa21d56465c286d3de0fe6d5330be7968ae77cff1d30151d62fb34cc7fb57535e82edd6
 DIST libreoffice-5.0.1.2.tar.xz 167364360 SHA256 0751b9caebeb54e2c6702a58aae66a29ac59414088ccd4e7d84625d02d0fd21a SHA512 d58d104705fd80425a00ce61771dbd4bef74cda20028fb2afcc1ea44aa304048b8e96bf654ecc2619362a09d05801212bee1e9bc9c80e693c986021a55c0e725 WHIRLPOOL eadd72f705745632c05efcb2e4c85c3440be18f16f16805f241a653c39f204145a10e6e2cbb432d3a4801e652affd677756ee1f6cad1db120c5ffc47843a89f6
+DIST libreoffice-5.0.2.2.tar.xz 166869100 SHA256 01f0680709432039762fa608bcb1240786d2b6549099a96095aab92dcebbc176 SHA512 7a72ed01b0f9fc131b7241ea4d1bb70bc813752e33d8e823e91a769d77308d2eec2d32a0fac61bdb41fd605a6f91dbaa3d5478a0b150e64fa9f7e47724f46cce WHIRLPOOL 85a592a0f478b1957d22d932adee758d48084c0c7ee00c0549fa8c956fd30f5eead09f6fc802d22d9613bda8da0c708ec99fb6d10fd82e0922c6da96a326a14c
 DIST libreoffice-branding-gentoo-0.8.tar.xz 151568 SHA256 22722121be062742624e0634beae92289c75e6a99ed507d3bf0a05c5164e3c69 SHA512 785031a699b1d1895ce4b50ffc3ddf645f3a0ef9acdf37facfd18cf75db9484cb8f53a50abb63d6006ead76a80b6ff5aa99661063245ebb84bd64013d713de7f WHIRLPOOL 1f36652a52d501d6548cfa9aa013b3e3a1867aa2b0693d2274cf7816d4aa4e0cde3c7096cc71ed47cf74e5f96da2757bf537f553021f8fd86939accb227bf538
 DIST libreoffice-help-4.4.4.3.tar.xz 1876068 SHA256 80d2cb4c5ee1d97218741d4e65351763dd74a617df7a51fce275983bcc5e6bc9 SHA512 b3d05ab85b1c25c3cc045c7d5217fb61b8dfc54b58c54a04b442c678d2c51975e5aadf3e28ac3f17544dd7afd6770fd8115cd05e3878b80c378b8fed6bcc2b22 WHIRLPOOL 3204cfac0ef6d2cd741e2f319242da6943b46c82ba5635df45dc1f99c3049a542df00a31c4b48092bcfad1a6d6f5d4e3c1ba0a3248331c324c08d728f909cb27
 DIST libreoffice-help-4.4.5.2.tar.xz 1876044 SHA256 66044aaff17cdf4d523ceea00197381bb50d4cb86359be83016a838c27761681 SHA512 0d75f41fa3a7593c621fb3cd6e7f94fe24cb5d5251e05f9e67f58e6603853cceb2b4df2cb28228e7bf464d053b5ce068bcae752bdf6ba977fdde20882540c869 WHIRLPOOL 2715278ed374f8850ccd79e94682cc003b69501c7863c84b3dc609b0377277fa523bc8eba41d8045bff344b1cc70f08171f8acc1aebb47914a4ac190ee66bc49
 DIST libreoffice-help-5.0.1.2.tar.xz 1884112 SHA256 c71db94564307f4bcea4d556a37d5ea946c87007fbf03fc7801fbe7bc197e947 SHA512 edea7ade0a4a742788b8ceba627e9afe7ed29b4feaf6d091023697fb676421ee0a191e592991c6627d22ba7a41af2d847b188c23e42ef25f1067533b5d2a80c2 WHIRLPOOL fc54629ee68f7c22ab07295b2569313a129f63850e67f1f3bd50bdc20a3d494ad48ca14f14f0a440fef78cceed2117ba31cac0930ac5b0382f285a31acc77b86
+DIST libreoffice-help-5.0.2.2.tar.xz 1882964 SHA256 4342a5593ba8a33b1d63549f256a4127a0b51cc1a53faffdc2708f04fef5f094 SHA512 1000423578211dc843dcedb9f864634235ab09d5234f8d8fe2897065207bdf6cd3bca7cdc1b3c012de0c78b585978a25c0df5048779bd0b9a734c9160064e313 WHIRLPOOL 8b92bcd19487c1c286a477ff0dc1b7e6bd9aaf862cfe002fadc25d461add4c4f2f8ee1e45ac0426dc2d27a6322317cacb7f65e9d0a6e6d6dad01075d18476363
diff --git a/app-office/libreoffice/libreoffice-5.0.2.2.ebuild b/app-office/libreoffice/libreoffice-5.0.2.2.ebuild
new file mode 100644 (file)
index 0000000..a6ff857
--- /dev/null
@@ -0,0 +1,608 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+KDE_REQUIRED="optional"
+QT_MINIMAL="4.7.4"
+KDE_SCM="git"
+CMAKE_REQUIRED="never"
+
+PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
+PYTHON_REQ_USE="threads,xml"
+
+# experimental ; release ; old
+# Usually the tarballs are moved a lot so this should make
+# everyone happy.
+DEV_URI="
+       http://dev-builds.libreoffice.org/pre-releases/src
+       http://download.documentfoundation.org/libreoffice/src/${PV:0:5}/
+       http://download.documentfoundation.org/libreoffice/old/${PV}/
+"
+EXT_URI="http://ooo.itc.hu/oxygenoffice/download/libreoffice"
+ADDONS_URI="http://dev-www.libreoffice.org/src/"
+
+BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
+# PATCHSET="${P}-patchset-01.tar.xz"
+
+[[ ${PV} == *9999* ]] && SCM_ECLASS="git-r3"
+inherit base multiprocessing autotools bash-completion-r1 check-reqs eutils java-pkg-opt-2 kde4-base pax-utils python-single-r1 multilib toolchain-funcs flag-o-matic versionator ${SCM_ECLASS}
+unset SCM_ECLASS
+
+DESCRIPTION="LibreOffice, a full office productivity suite"
+HOMEPAGE="http://www.libreoffice.org"
+SRC_URI="branding? ( http://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
+[[ -n ${PATCHSET} ]] && SRC_URI+=" http://dev.gentooexperimental.org/~scarabeus/${PATCHSET}"
+
+# Split modules following git/tarballs
+# Core MUST be first!
+# Help is used for the image generator
+MODULES="core help"
+# Only release has the tarballs
+if [[ ${PV} != *9999* ]]; then
+       for i in ${DEV_URI}; do
+               for mod in ${MODULES}; do
+                       if [[ ${mod} == core ]]; then
+                               SRC_URI+=" ${i}/${P}.tar.xz"
+                       else
+                               SRC_URI+=" ${i}/${PN}-${mod}-${PV}.tar.xz"
+                       fi
+               done
+               unset mod
+       done
+       unset i
+fi
+unset DEV_URI
+
+# Really required addons
+# These are bundles that can't be removed for now due to huge patchsets.
+# If you want them gone, patches are welcome.
+ADDONS_SRC+=" ${ADDONS_URI}/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz"
+ADDONS_SRC+=" ${ADDONS_URI}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz" # modifies source code
+ADDONS_SRC+=" collada? ( ${ADDONS_URI}/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 )"
+ADDONS_SRC+=" java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
+ADDONS_SRC+=" libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" # no release for 8 years, should we package it?
+ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" # Does not build with 1.6 rhino at all
+ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" # requirement of rhino
+ADDONS_SRC+=" odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" # not packageable
+SRC_URI+=" ${ADDONS_SRC}"
+
+unset ADDONS_URI
+unset EXT_URI
+unset ADDONS_SRC
+
+IUSE="bluetooth +branding coinmp collada +cups dbus debug eds firebird gltf gnome gstreamer
++gtk gtk3 jemalloc kde mysql odk postgres telepathy test vlc"
+
+LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
+# Unpackaged separate extensions:
+# diagram: lo has 0.9.5 upstream is weirdly patched 0.9.4 -> wtf?
+# hunart: only on ooo extensions -> fubared download path somewhere on sf
+# numbertext, typo, validator, watch-window: ^^
+# oooblogger: no homepage or anything
+# Extensions that need extra work:
+for lo_xt in ${LO_EXTS}; do
+       IUSE+=" libreoffice_extensions_${lo_xt}"
+done
+unset lo_xt
+
+LICENSE="|| ( LGPL-3 MPL-1.1 )"
+SLOT="0"
+[[ ${PV} == *9999* ]] || \
+KEYWORDS=""
+#KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
+
+COMMON_DEPEND="
+       ${PYTHON_DEPS}
+       app-arch/zip
+       app-arch/unzip
+       >=app-text/hunspell-1.3.2-r3
+       app-text/mythes
+       >=app-text/libabw-0.1.0
+       >=app-text/libexttextcat-3.2
+       >=app-text/libebook-0.1.1
+       >=app-text/libetonyek-0.1.2
+       app-text/liblangtag
+       >=app-text/libmspub-0.1.0
+       >=app-text/libmwaw-0.3.5
+       >=app-text/libodfgen-0.1.0
+       app-text/libwpd:0.10[tools]
+       app-text/libwpg:0.3
+       =app-text/libwps-0.4*
+       >=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
+       >=dev-cpp/clucene-2.3.3.4-r2
+       =dev-cpp/libcmis-0.5*
+       dev-db/unixODBC
+       >=dev-libs/boost-1.55:=
+       dev-libs/expat
+       >=dev-libs/hyphen-2.7.1
+       >=dev-libs/icu-4.8.1.1:=
+       =dev-libs/liborcus-0.7*
+       >=dev-libs/librevenge-0.0.1
+       >=dev-libs/nspr-4.8.8
+       >=dev-libs/nss-3.12.9
+       >=dev-lang/perl-5.0
+       >=dev-libs/openssl-1.0.0d:0
+       >=dev-libs/redland-1.0.16
+       media-gfx/graphite2
+       >=media-libs/fontconfig-2.8.0
+       media-libs/freetype:2
+       >=media-libs/glew-1.10
+       >=media-libs/harfbuzz-0.9.18:=[icu(+)]
+       media-libs/lcms:2
+       >=media-libs/libpng-1.4:0=
+       >=media-libs/libcdr-0.1.0
+       >=media-libs/libfreehand-0.1.0
+       media-libs/libpagemaker
+       >=media-libs/libvisio-0.1.0
+       >=net-misc/curl-7.21.4
+       net-libs/neon
+       net-nds/openldap
+       sci-mathematics/lpsolve
+       virtual/jpeg:0
+       >=x11-libs/cairo-1.10.0[X]
+       x11-libs/libXinerama
+       x11-libs/libXrandr
+       x11-libs/libXrender
+       virtual/glu
+       virtual/opengl
+       bluetooth? ( net-wireless/bluez )
+       coinmp? ( sci-libs/coinor-mp )
+       collada? ( >=media-libs/opencollada-1.2.2_p20150207 )
+       cups? ( net-print/cups )
+       dbus? ( >=dev-libs/dbus-glib-0.92 )
+       eds? ( gnome-extra/evolution-data-server )
+       firebird? ( >=dev-db/firebird-2.5 )
+       gltf? ( media-libs/libgltf )
+       gnome? ( gnome-base/gconf:2 )
+       gtk? (
+               x11-libs/gdk-pixbuf[X]
+               >=x11-libs/gtk+-2.24:2
+       )
+       gtk3? ( >=x11-libs/gtk+-3.8:3 )
+       gstreamer? (
+               media-libs/gstreamer:1.0
+               media-libs/gst-plugins-base:1.0
+       )
+       jemalloc? ( dev-libs/jemalloc )
+       libreoffice_extensions_scripting-beanshell? ( >=dev-java/bsh-2.0_beta4 )
+       libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
+       libreoffice_extensions_wiki-publisher? (
+               dev-java/commons-codec:0
+               dev-java/commons-httpclient:3
+               dev-java/commons-lang:2.1
+               dev-java/commons-logging:0
+               dev-java/tomcat-servlet-api:3.0
+       )
+       mysql? ( >=dev-db/mysql-connector-c++-1.1.0 )
+       postgres? ( >=dev-db/postgresql-9.0:*[kerberos] )
+       telepathy? (
+               dev-libs/glib:2
+               >=net-libs/telepathy-glib-0.18.0
+               >=x11-libs/gtk+-2.24:2
+       )
+"
+
+RDEPEND="${COMMON_DEPEND}
+       !app-office/libreoffice-bin
+       !app-office/libreoffice-bin-debug
+       !<app-office/openoffice-bin-3.4.0-r1
+       !app-office/openoffice
+       media-fonts/libertine
+       media-fonts/liberation-fonts
+       media-fonts/urw-fonts
+       java? ( >=virtual/jre-1.6 )
+       kde? ( $(add_kdeapps_dep kioclient) )
+       vlc? ( media-video/vlc )
+"
+
+if [[ ${PV} != *9999* ]]; then
+       PDEPEND="=app-office/libreoffice-l10n-$(get_version_component_range 1-2)*"
+else
+       # Translations are not reliable on live ebuilds
+       # rather force people to use english only.
+       PDEPEND="!app-office/libreoffice-l10n"
+fi
+
+# FIXME: cppunit should be moved to test conditional
+#        after everything upstream is under gbuild
+#        as dmake execute tests right away
+DEPEND="${COMMON_DEPEND}
+       >=dev-libs/libatomic_ops-7.2d
+       >=dev-libs/libxml2-2.7.8
+       dev-libs/libxslt
+       dev-perl/Archive-Zip
+       dev-util/cppunit
+       >=dev-util/gperf-3
+       dev-util/intltool
+       >=dev-util/mdds-0.12.0:=
+       media-libs/glm
+       net-misc/npapi-sdk
+       >=sys-apps/findutils-4.4.2
+       sys-devel/bison
+       sys-apps/coreutils
+       sys-devel/flex
+       sys-devel/gettext
+       >=sys-devel/make-3.82
+       sys-devel/ucpp
+       sys-libs/zlib
+       virtual/pkgconfig
+       x11-libs/libXt
+       x11-libs/libXtst
+       x11-proto/randrproto
+       x11-proto/xextproto
+       x11-proto/xineramaproto
+       x11-proto/xproto
+       java? (
+               >=virtual/jdk-1.6
+               >=dev-java/ant-core-1.7
+       )
+       odk? ( >=app-doc/doxygen-1.8.4 )
+       test? ( dev-util/cppunit )
+"
+
+PATCHES=(
+       # not upstreamable stuff
+       "${FILESDIR}/${PN}-4.4-system-pyuno.patch"
+)
+
+REQUIRED_USE="
+       ${PYTHON_REQUIRED_USE}
+       bluetooth? ( dbus )
+       collada? ( gltf )
+       gnome? ( gtk )
+       eds? ( gnome )
+       telepathy? ( gtk )
+       libreoffice_extensions_nlpsolver? ( java )
+       libreoffice_extensions_scripting-beanshell? ( java )
+       libreoffice_extensions_scripting-javascript? ( java )
+       libreoffice_extensions_wiki-publisher? ( java )
+"
+
+CHECKREQS_MEMORY="512M"
+CHECKREQS_DISK_BUILD="6G"
+
+pkg_pretend() {
+       local pgslot
+
+       if [[ ${MERGE_TYPE} != binary ]]; then
+               check-reqs_pkg_pretend
+
+               if [[ $(gcc-major-version) -lt 4 ]] || \
+                                ( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ]] ) \
+                               ; then
+                       eerror "Compilation with gcc older than 4.6 is not supported"
+                       die "Too old gcc found."
+               fi
+       fi
+
+       # Ensure pg version but we have to be sure the pg is installed (first
+       # install on clean system)
+       if use postgres && has_version dev-db/postgresql; then
+                pgslot=$(postgresql-config show)
+                if [[ ${pgslot//.} < 90 ]] ; then
+                       eerror "PostgreSQL slot must be set to 9.0 or higher."
+                       eerror "    postgresql-config set 9.0"
+                       die "PostgreSQL slot is not set to 9.0 or higher."
+                fi
+       fi
+}
+
+pkg_setup() {
+       java-pkg-opt-2_pkg_setup
+       kde4-base_pkg_setup
+       python-single-r1_pkg_setup
+
+       [[ ${MERGE_TYPE} != binary ]] && check-reqs_pkg_setup
+}
+
+src_unpack() {
+       local mod mod2 dest tmplfile tmplname mypv
+
+       [[ -n ${PATCHSET} ]] && unpack ${PATCHSET}
+       use branding && unpack "${BRANDING}"
+
+       if [[ ${PV} != *9999* ]]; then
+               unpack "${P}.tar.xz"
+               for mod in ${MODULES}; do
+                       [[ ${mod} == core ]] && continue
+                       unpack "${PN}-${mod}-${PV}.tar.xz"
+               done
+       else
+               for mod in ${MODULES}; do
+                       mypv=${PV/.9999}
+                       [[ ${mypv} != ${PV} ]] && EGIT_BRANCH="${PN}-${mypv/./-}"
+                       EGIT_CHECKOUT_DIR="${WORKDIR}/${P}"
+                       [[ ${mod} != core ]] && EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-${mod}-${PV}"
+                       EGIT_REPO_URI="git://anongit.freedesktop.org/${PN}/${mod}"
+                       git-r3_src_unpack
+                       if [[ ${mod} != core ]]; then
+                               mod2=${mod}
+                               # mapping does not match on help
+                               [[ ${mod} == help ]] && mod2="helpcontent2"
+                               mkdir -p "${S}/${mod2}/" || die
+                               mv -n "${WORKDIR}/${PN}-${mod}-${PV}"/* "${S}/${mod2}" || die
+                               rm -rf "${WORKDIR}/${PN}-${mod}-${PV}"
+                       fi
+               done
+               unset EGIT_CHECKOUT_DIR EGIT_REPO_URI EGIT_BRANCH
+       fi
+}
+
+src_prepare() {
+       # optimization flags
+       export GMAKE_OPTIONS="${MAKEOPTS}"
+       # System python 2.7 enablement:
+       export PYTHON_CFLAGS=$(python_get_CFLAGS)
+       export PYTHON_LIBS=$(python_get_LIBS)
+
+       if use collada; then
+               export OPENCOLLADA_CFLAGS="-I/usr/include/opencollada/COLLADABaseUtils -I/usr/include/opencollada/COLLADAFramework -I/usr/include/opencollada/COLLADASaxFrameworkLoader -I/usr/include/opencollada/GeneratedSaxParser"
+               export OPENCOLLADA_LIBS="-L /usr/$(get_libdir)/opencollada -lOpenCOLLADABaseUtils -lOpenCOLLADAFramework -lOpenCOLLADASaxFrameworkLoader -lGeneratedSaxParser"
+       fi
+
+       # patchset
+       if [[ -n ${PATCHSET} ]]; then
+               EPATCH_FORCE="yes" \
+               EPATCH_SOURCE="${WORKDIR}/${PATCHSET/.tar.xz/}" \
+               EPATCH_SUFFIX="patch" \
+               epatch
+       fi
+
+       base_src_prepare
+
+       AT_M4DIR="m4" eautoreconf
+       # hack in the autogen.sh
+       touch autogen.lastrun
+
+       # system pyuno mess
+       sed \
+               -e "s:%eprefix%:${EPREFIX}:g" \
+               -e "s:%libdir%:$(get_libdir):g" \
+               -i pyuno/source/module/uno.py \
+               -i pyuno/source/officehelper.py || die
+       # sed in the tests
+       sed -i \
+               -e 's#all : build unitcheck#all : build#g' \
+               solenv/gbuild/Module.mk || die
+       sed -i \
+               -e 's#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g' \
+               -e 's#Makefile.gbuild all slowcheck#Makefile.gbuild all#g' \
+               Makefile.in || die
+
+       if use branding; then
+               # hack...
+               mv -v "${WORKDIR}/branding-intro.png" "${S}/icon-themes/galaxy/brand/intro.png" || die
+       fi
+}
+
+src_configure() {
+       local java_opts
+       local internal_libs
+       local lo_ext
+       local ext_opts
+
+       # sane: just sane.h header that is used for scan in writer, not
+       #       linked or anything else, worthless to depend on
+       # vigra: just uses templates from there
+       #        it is serious pain in the ass for packaging
+       #        should be replaced by boost::gil if someone interested
+       internal_libs+="
+               --without-system-sane
+               --without-system-vigra
+       "
+
+       # libreoffice extensions handling
+       for lo_xt in ${LO_EXTS}; do
+               if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
+                       ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt})"
+               else
+                       ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt})"
+               fi
+       done
+
+       if use java; then
+               # hsqldb: system one is too new
+               java_opts="
+                       --without-junit
+                       --without-system-hsqldb
+                       --with-ant-home="${ANT_HOME}"
+                       --with-jdk-home=$(java-config --jdk-home 2>/dev/null)
+                       --with-jvm-path="${EPREFIX}/usr/lib/"
+               "
+
+               use libreoffice_extensions_scripting-beanshell && \
+                       java_opts+=" --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar)"
+
+               use libreoffice_extensions_scripting-javascript && \
+                       java_opts+=" --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar)"
+
+               if use libreoffice_extensions_wiki-publisher; then
+                       java_opts+="
+                               --with-commons-codec-jar=$(java-pkg_getjar commons-codec commons-codec.jar)
+                               --with-commons-httpclient-jar=$(java-pkg_getjar commons-httpclient-3 commons-httpclient.jar)
+                               --with-commons-lang-jar=$(java-pkg_getjar commons-lang-2.1 commons-lang.jar)
+                               --with-commons-logging-jar=$(java-pkg_getjar commons-logging commons-logging.jar)
+                               --with-servlet-api-jar=$(java-pkg_getjar tomcat-servlet-api-3.0 servlet-api.jar)
+                       "
+               fi
+       fi
+
+       # system headers/libs/...: enforce using system packages
+       # --enable-cairo: ensure that cairo is always required
+       # --enable-graphite: disabling causes build breakages
+       # --enable-*-link: link to the library rather than just dlopen on runtime
+       # --enable-release-build: build the libreoffice as release
+       # --disable-fetch-external: prevent dowloading during compile phase
+       # --disable-gnome-vfs: old gnome virtual fs support
+       # --disable-kdeab: kde3 adressbook
+       # --disable-kde: kde3 support
+       # --disable-systray: quickstarter does not actually work at all so do not
+       #   promote it
+       # --enable-extension-integration: enable any extension integration support
+       # --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
+       # --disable-report-builder: too much java packages pulled in without pkgs
+       econf \
+               --docdir="${EPREFIX}/usr/share/doc/${PF}/" \
+               --with-system-headers \
+               --with-system-libs \
+               --with-system-jars \
+               --with-system-dicts \
+               --enable-cairo-canvas \
+               --enable-graphite \
+               --enable-largefile \
+               --enable-mergelibs \
+               --enable-neon \
+               --enable-python=system \
+               --enable-randr \
+               --enable-randr-link \
+               --enable-release-build \
+               --disable-hardlink-deliver \
+               --disable-ccache \
+               --disable-crashdump \
+               --disable-dependency-tracking \
+               --disable-epm \
+               --disable-fetch-external \
+               --disable-gnome-vfs \
+               --disable-gstreamer-0-10 \
+               --disable-report-builder \
+               --disable-kdeab \
+               --disable-kde \
+               --disable-online-update \
+               --disable-systray \
+               --with-alloc=$(use jemalloc && echo "jemalloc" || echo "system") \
+               --with-build-version="Gentoo official package" \
+               --enable-extension-integration \
+               --with-external-dict-dir="${EPREFIX}/usr/share/myspell" \
+               --with-external-hyph-dir="${EPREFIX}/usr/share/myspell" \
+               --with-external-thes-dir="${EPREFIX}/usr/share/myspell" \
+               --with-external-tar="${DISTDIR}" \
+               --with-lang="" \
+               --with-parallelism=$(makeopts_jobs) \
+               --with-system-ucpp \
+               --with-vendor="Gentoo Foundation" \
+               --with-x \
+               --without-fonts \
+               --without-myspell-dicts \
+               --without-help \
+               --with-helppack-integration \
+               --without-sun-templates \
+               $(use_enable bluetooth sdremote-bluetooth) \
+               $(use_enable coinmp) \
+               $(use_enable collada) \
+               $(use_enable cups) \
+               $(use_enable debug) \
+               $(use_enable dbus) \
+               $(use_enable eds evolution2) \
+               $(use_enable firebird firebird-sdbc) \
+               $(use_enable gltf) \
+               $(use_enable gnome gconf) \
+               $(use_enable gnome gio) \
+               $(use_enable gnome lockdown) \
+               $(use_enable gstreamer gstreamer-1-0) \
+               $(use_enable gtk) \
+               $(use_enable gtk3) \
+               $(use_enable kde kde4) \
+               $(use_enable mysql ext-mariadb-connector) \
+               $(use_enable odk) \
+               $(use_enable postgres postgresql-sdbc) \
+               $(use_enable telepathy) \
+               $(use_enable vlc) \
+               $(use_with coinmp system-coinmp) \
+               $(use_with collada system-opencollada) \
+               $(use_with gltf system-libgltf) \
+               $(use_with java) \
+               $(use_with mysql system-mysql-cppconn) \
+               $(use_with odk doxygen) \
+               ${internal_libs} \
+               ${java_opts} \
+               ${ext_opts}
+}
+
+src_compile() {
+       # more and more LO stuff tries to use OpenGL, including tests during build
+       # bug 501508, bug 540624, bug 545974 and probably more
+       addpredict /dev/dri
+       addpredict /dev/ati
+       addpredict /dev/nvidiactl
+
+       # hack for offlinehelp, this needs fixing upstream at some point
+       # it is broken because we send --without-help
+       # https://bugs.freedesktop.org/show_bug.cgi?id=46506
+       (
+               grep "^export" "${S}/config_host.mk" > "${T}/config_host.mk"
+               source "${T}/config_host.mk" 2&> /dev/null
+
+               local path="${WORKDIR}/helpcontent2/source/auxiliary/"
+               mkdir -p "${path}" || die
+
+               echo "perl \"${S}/helpcontent2/helpers/create_ilst.pl\" -dir=icon-themes/galaxy/res/helpimg > \"${path}/helpimg.ilst\""
+               perl "${S}/helpcontent2/helpers/create_ilst.pl" \
+                       -dir=icon-themes/galaxy/res/helpimg \
+                       > "${path}/helpimg.ilst"
+               [[ -s "${path}/helpimg.ilst" ]] || ewarn "The help images list is empty, something is fishy, report a bug."
+       )
+
+       local target
+       use test && target="build" || target="build-nocheck"
+
+       # this is not a proper make script
+       make ${target} || die
+}
+
+src_test() {
+       make unitcheck || die
+       make slowcheck || die
+}
+
+src_install() {
+       # This is not Makefile so no buildserver
+       make DESTDIR="${D}" distro-pack-install -o build -o check || die
+
+       # Fix bash completion placement
+       newbashcomp "${ED}"/etc/bash_completion.d/libreoffice.sh ${PN}
+       bashcomp_alias \
+               libreoffice \
+               unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
+       rm -rf "${ED}"/etc/ || die
+
+       if use branding; then
+               insinto /usr/$(get_libdir)/${PN}/program
+               newins "${WORKDIR}/branding-sofficerc" sofficerc
+               dodir /etc/env.d
+               echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN}
+       fi
+
+       # Hack for offlinehelp, this needs fixing upstream at some point.
+       # It is broken because we send --without-help
+       # https://bugs.freedesktop.org/show_bug.cgi?id=46506
+       insinto /usr/$(get_libdir)/libreoffice/help
+       doins xmlhelp/util/*.xsl
+
+       # Remove desktop files for support to old installs that can't parse mime
+       rm -rf "${ED}"/usr/share/mimelnk/
+
+       # FIXME: Hack add missing file
+       insinto /usr/$(get_libdir)/${PN}/program
+       doins "${S}"/instdir/program/libsaxlo.so
+
+       pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
+       pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
+}
+
+pkg_preinst() {
+       # Cache updates - all handled by kde eclass for all environments
+       kde4-base_pkg_preinst
+}
+
+pkg_postinst() {
+       kde4-base_pkg_postinst
+
+       use java || \
+               ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
+}
+
+pkg_postrm() {
+       kde4-base_pkg_postrm
+}
index 47bf9d130a94ee23449109b6206186a722ef2b2c..c361e86486a43ba0769c33844bd41aa8ecc5732c 100644 (file)
@@ -159,7 +159,7 @@ COMMON_DEPEND="
                x11-libs/gdk-pixbuf[X]
                >=x11-libs/gtk+-2.24:2
        )
-       gtk3? ( >=x11-libs/gtk+-3.2:3 )
+       gtk3? ( >=x11-libs/gtk+-3.8:3 )
        gstreamer? (
                media-libs/gstreamer:1.0
                media-libs/gst-plugins-base:1.0