diff options
Diffstat (limited to 'app-office/openoffice-ximian')
5 files changed, 680 insertions, 26 deletions
diff --git a/app-office/openoffice-ximian/ChangeLog b/app-office/openoffice-ximian/ChangeLog index 8475a3f8c28d..000ea00b8203 100644 --- a/app-office/openoffice-ximian/ChangeLog +++ b/app-office/openoffice-ximian/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for app-office/openoffice-ximian # Copyright 2000-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-office/openoffice-ximian/ChangeLog,v 1.116 2005/03/31 13:03:50 suka Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-office/openoffice-ximian/ChangeLog,v 1.117 2005/04/05 21:00:47 suka Exp $ + +*openoffice-ximian-1.3.9 (05 Apr 2005) + + 05 Apr 2005; Andreas Proschofsky <suka@gentoo.org> + +files/1.1.4/gentoo-1.3.9.patch, +openoffice-ximian-1.3.9.ebuild: + New release of the patchset, which contains lots of fixes, for more details + see here: + + http://cvs.gnome.org/viewcvs/ooo-build/NEWS?rev=1.49.4.5&only_with_tag=ooo-b + uild-1-3&view=markup 31 Mar 2005; Andreas Proschofsky <suka@gentoo.org> +files/1.1.3/gcc34-nptl-fix.patch: diff --git a/app-office/openoffice-ximian/Manifest b/app-office/openoffice-ximian/Manifest index 629d0204fb80..82f76fe8889a 100644 --- a/app-office/openoffice-ximian/Manifest +++ b/app-office/openoffice-ximian/Manifest @@ -1,45 +1,48 @@ -MD5 f3942f82433bf5ae16461240cbcc4984 metadata.xml 300 +MD5 db0937049060bf2f60caff12204099e7 openoffice-ximian-1.3.6.ebuild 16968 MD5 4f30b05359128c7f30fc4e3c58c9b324 openoffice-ximian-1.3.8.ebuild 17826 -MD5 8cc77d2963d4bcef79def6749e584203 ChangeLog 29024 MD5 9fdc8c3794927565d0c6465f91631120 openoffice-ximian-1.3.7.ebuild 17908 -MD5 db0937049060bf2f60caff12204099e7 openoffice-ximian-1.3.6.ebuild 16968 +MD5 d04aefa9366827baa2c772ec8dd987bb openoffice-ximian-1.3.9.ebuild 17610 +MD5 0be822136375006dd2c820423504caed ChangeLog 29381 +MD5 f3942f82433bf5ae16461240cbcc4984 metadata.xml 300 MD5 2595967ac130a541e50bffc75e105041 files/digest-openoffice-ximian-1.3.6 502 MD5 0b59100689dae352eeac675e31a4cdec files/digest-openoffice-ximian-1.3.7 502 MD5 5d4e4391572b1cd6de8338b1914f6e78 files/digest-openoffice-ximian-1.3.8 500 -MD5 a9233bc0091b925de38145108267b949 files/1.1.3/newstlportfix.patch 3638 +MD5 e84e07ee231b9ceaabacc5556a63f647 files/digest-openoffice-ximian-1.3.9 492 +MD5 f9578015a434c209259917e9df3c0b27 files/1.1.3/gcc34_2.patch.bz2 33535 MD5 04621a43bfeb4fac8077a770a8eba7e3 files/1.1.3/gcc34.patch.bz2 33661 -MD5 476f1f342d8321113a27e098630a6003 files/1.1.3/xooffice-wrapper-1.3 6091 +MD5 aa01d8f68b27d3df4af58ed02c080df5 files/1.1.3/pyunolink-fix.patch 475 +MD5 a5ef896f6a59b91fa3367c92de077769 files/1.1.3/gentoo-1.3.6.patch 597 MD5 6ecbfeab440a03f031dbfa0631404aa0 files/1.1.3/ximian-openoffice.applications 980 MD5 ffcbf659ca6f54e8e15401cced99af77 files/1.1.3/gcc-instlib.patch 393 -MD5 61dc69767eddbb5ab3ac02822fff6c13 files/1.1.3/gentoo-1.3.7.patch 1449 -MD5 ddb36dfd1d142b8a03850e3bee62a8c3 files/1.1.3/hardened-link.patch 576 -MD5 e93f28c8afacb22bf9ac351ebd8195d2 files/1.1.3/gcc34-gnome.patch 598 -MD5 6984d0675ce2c9de20b0939a2f0b5dcb files/1.1.3/gcc34-nojava-fix.patch 455 +MD5 9abefd659e5b06ff9d9f515f312cdc4b files/1.1.3/gentoo-splash.diff 890 MD5 24035033f41d743378e16582c2e51469 files/1.1.3/javafix.patch 1382 +MD5 d1a499cfa276614323b547e013d5c6a0 files/1.1.3/ximian-openoffice.keys 6298 +MD5 ddb36dfd1d142b8a03850e3bee62a8c3 files/1.1.3/hardened-link.patch 576 +MD5 61dc69767eddbb5ab3ac02822fff6c13 files/1.1.3/gentoo-1.3.7.patch 1449 MD5 e08721c60cf0f7bc7ea0a714baeac120 files/1.1.3/getcompver.awk.patch 418 +MD5 476f1f342d8321113a27e098630a6003 files/1.1.3/xooffice-wrapper-1.3 6091 +MD5 6984d0675ce2c9de20b0939a2f0b5dcb files/1.1.3/gcc34-nojava-fix.patch 455 MD5 bf7df7ebe1373f6e2e5bd1e0425657bd files/1.1.3/gcc34-nptl-fix.patch 618 -MD5 f9578015a434c209259917e9df3c0b27 files/1.1.3/gcc34_2.patch.bz2 33535 -MD5 aa01d8f68b27d3df4af58ed02c080df5 files/1.1.3/pyunolink-fix.patch 475 +MD5 e93f28c8afacb22bf9ac351ebd8195d2 files/1.1.3/gcc34-gnome.patch 598 MD5 3d3555a66a2d8a66613d4e4471701eb8 files/1.1.3/pthreadlink-fix.patch 1163 -MD5 dd3785621235368cc28f1f85101fcac7 files/1.1.3/nojvmfwk-fix.patch 6986 -MD5 a5ef896f6a59b91fa3367c92de077769 files/1.1.3/gentoo-1.3.6.patch 597 +MD5 8c58ee1fa6e9199546bca43730d2400c files/1.1.3/nptl.patch 785 MD5 f43ca2544f6cd797bed8e5aad1e50a29 files/1.1.3/gcc34-sal-link-to-libsupc++.diff 405 -MD5 9abefd659e5b06ff9d9f515f312cdc4b files/1.1.3/gentoo-splash.diff 890 MD5 6f7ff745a5659e605fb05206914ab344 files/1.1.3/STLport-vector.patch 1472 -MD5 d1a499cfa276614323b547e013d5c6a0 files/1.1.3/ximian-openoffice.keys 6298 -MD5 8c58ee1fa6e9199546bca43730d2400c files/1.1.3/nptl.patch 785 -MD5 69a22ccaf3c62d6b96bfd30c70a2c679 files/1.1.4/regcompfix.patch 712 -MD5 a9233bc0091b925de38145108267b949 files/1.1.4/newstlportfix.patch 3638 -MD5 964398ef88829e5a2935d0c0f8389c9d files/1.1.4/xooffice-wrapper-1.3 6091 -MD5 a560f9fd159502d802881206b45684f1 files/1.1.4/config-db-checkfix.patch 507 +MD5 dd3785621235368cc28f1f85101fcac7 files/1.1.3/nojvmfwk-fix.patch 6986 +MD5 a9233bc0091b925de38145108267b949 files/1.1.3/newstlportfix.patch 3638 +MD5 aa01d8f68b27d3df4af58ed02c080df5 files/1.1.4/pyunolink-fix.patch 475 MD5 ffcbf659ca6f54e8e15401cced99af77 files/1.1.4/gcc-instlib.patch 393 -MD5 ddb36dfd1d142b8a03850e3bee62a8c3 files/1.1.4/hardened-link.patch 576 +MD5 9abefd659e5b06ff9d9f515f312cdc4b files/1.1.4/gentoo-splash.diff 890 MD5 24035033f41d743378e16582c2e51469 files/1.1.4/javafix.patch 1382 +MD5 ddb36dfd1d142b8a03850e3bee62a8c3 files/1.1.4/hardened-link.patch 576 MD5 e08721c60cf0f7bc7ea0a714baeac120 files/1.1.4/getcompver.awk.patch 418 -MD5 6938dc2e28e840cebf4fdbde9d6e2d4b files/1.1.4/gentoo-1.3.8.patch 859 MD5 bb6a5b602fa199bed7d40f1507b9fb21 files/1.1.4/gtk-printer-update-on-focus-change.diff 993 -MD5 aa01d8f68b27d3df4af58ed02c080df5 files/1.1.4/pyunolink-fix.patch 475 +MD5 964398ef88829e5a2935d0c0f8389c9d files/1.1.4/xooffice-wrapper-1.3 6091 +MD5 6938dc2e28e840cebf4fdbde9d6e2d4b files/1.1.4/gentoo-1.3.8.patch 859 +MD5 a560f9fd159502d802881206b45684f1 files/1.1.4/config-db-checkfix.patch 507 +MD5 6938dc2e28e840cebf4fdbde9d6e2d4b files/1.1.4/gentoo-1.3.9.patch 859 MD5 3d3555a66a2d8a66613d4e4471701eb8 files/1.1.4/pthreadlink-fix.patch 1163 -MD5 9abefd659e5b06ff9d9f515f312cdc4b files/1.1.4/gentoo-splash.diff 890 -MD5 6f7ff745a5659e605fb05206914ab344 files/1.1.4/STLport-vector.patch 1472 MD5 3f008e2c5595512c7f6306b1a722612e files/1.1.4/nptl.patch 243 +MD5 6f7ff745a5659e605fb05206914ab344 files/1.1.4/STLport-vector.patch 1472 +MD5 69a22ccaf3c62d6b96bfd30c70a2c679 files/1.1.4/regcompfix.patch 712 +MD5 a9233bc0091b925de38145108267b949 files/1.1.4/newstlportfix.patch 3638 diff --git a/app-office/openoffice-ximian/files/1.1.4/gentoo-1.3.9.patch b/app-office/openoffice-ximian/files/1.1.4/gentoo-1.3.9.patch new file mode 100644 index 000000000000..37eed77e51b5 --- /dev/null +++ b/app-office/openoffice-ximian/files/1.1.4/gentoo-1.3.9.patch @@ -0,0 +1,16 @@ +--- patches/OOO_1_1_4/apply.orig 2004-12-02 00:07:00.659646960 +0100 ++++ patches/OOO_1_1_4/apply 2004-12-02 00:07:18.119992584 +0100 +@@ -33,9 +33,10 @@ + PLD : PLDOnly, LinuxCommon, FilePickers, KDECommon, GlobalDesktopFiles, NonArkCommon, NoRpath + KDE : LinuxCommon, FilePickers, KDEOnly, NoRpath + Ark : ArkOnly, LinuxCommon, FilePickers, GlobalDesktopFiles, Gcc34, NoRpath, IndicFixes, MSCodec +-Gentoo : LinuxCommon, FilePickers, GlobalDesktopFiles, NonArkCommon, Gcc34, GentooOnly, NoRpath +-GentooGNOME : Gentoo, GnomeVFS, NovellOnly +-GentooKDE : Gentoo, KDECommon ++GentooBase : LinuxCommon, FilePickers, GlobalDesktopFiles, NonArkCommon, Gcc34, NoRpath ++Gentoo : GentooBase ++GentooGNOME : GentooBase, GnomeVFS, NovellOnly, GentooOnly ++GentooKDE : GentooBase, KDECommon + + # somewhat odder: + Win32 : VCLPlug, Common, ODKFixes, VBABits, Win32Only, NoRpath diff --git a/app-office/openoffice-ximian/files/digest-openoffice-ximian-1.3.9 b/app-office/openoffice-ximian/files/digest-openoffice-ximian-1.3.9 new file mode 100644 index 000000000000..5f528e912035 --- /dev/null +++ b/app-office/openoffice-ximian/files/digest-openoffice-ximian-1.3.9 @@ -0,0 +1,7 @@ +MD5 20c10db97865ae4c51dc827d668b8939 OOo_1.1.4_source.tar.gz 219743530 +MD5 4c01c84f1212369ceb369567ed06d1a2 STLport-4.6.2.tar.gz 755958 +MD5 ae2131f2b452f7a3f8d15e2cbd35e53c ooo-build-1.3.9.tar.gz 3393080 +MD5 98e59beecc112339bb78654863304c1c libwpd-0.8.0.tar.gz 449371 +MD5 07af8dbf461df3e01a30124009f3e1ec OOo-gentoo-splash-1.1.tar.bz2 57631 +MD5 be79d3cb5f64d2c0ac8a75e65a59cb09 ooo-icons-OOO_1_1-10.tar.gz 1563326 +MD5 05ff784fff01c54cd3dd7b975b46bae2 ooo-KDE_icons-OOO_1_1-0.3.tar.gz 1017540 diff --git a/app-office/openoffice-ximian/openoffice-ximian-1.3.9.ebuild b/app-office/openoffice-ximian/openoffice-ximian-1.3.9.ebuild new file mode 100644 index 000000000000..f717531a45f4 --- /dev/null +++ b/app-office/openoffice-ximian/openoffice-ximian-1.3.9.ebuild @@ -0,0 +1,618 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-office/openoffice-ximian/openoffice-ximian-1.3.9.ebuild,v 1.1 2005/04/05 21:00:47 suka Exp $ + +# Notes: +# +# This will take a HELL of a long time to compile, be warned. +# According to openoffice.org, it takes approximately 12 hours on a +# P3/600 with 256mb ram. And thats where building is its only task. +# +# It takes about 6 hours on my P4 1.8 with 512mb memory, and the +# build only needs about 2.1GB of disk space - Azarah. +# +# You will also need a bucketload of diskspace ... in the order of +# 4-5 gb free to store all the compiled files and installation +# directories. +# +# The information on how to build and what is required comes from: +# http://www.openoffice.org/dev_docs/source/build_linux.html +# http://tools.openoffice.org/ext_comp.html +# +# Todo: +# +# Get support going for installing a custom language pack. Also +# need to be able to install more than one language pack. + +inherit eutils fdo-mime flag-o-matic kde-functions toolchain-funcs + +IUSE="curl gnome hardened java kde nas nptl python zlib" + +OO_VER="1.1.4" +PATCHLEVEL="OOO_1_1_4" +ICON_VER="OOO_1_1-10" +KDE_ICON_VER="OOO_1_1-0.3" +KDE_ICON_PATH="documents/159/1975" +INSTDIR="/opt/Ximian-OpenOffice" +PATCHDIR="${WORKDIR}/ooo-build-${PV}" +S="${WORKDIR}" +DESCRIPTION="Ximian-ized version of OpenOffice.org, a full office productivity suite." + +SRC_URI="mirror://openoffice/stable/${OO_VER}/OOo_${OO_VER}_source.tar.gz + http://www.stlport.org/archive/STLport-4.6.2.tar.gz + http://go-oo.org/packages/${PATCHLEVEL}/ooo-build-${PV}.tar.gz + http://go-oo.org/packages/libwpd/libwpd-0.8.0.tar.gz + mirror://gentoo/OOo-gentoo-splash-1.1.tar.bz2 + gnome? ( http://go-oo.org/packages/ooo-icons-${ICON_VER}.tar.gz ) + !kde? ( http://go-oo.org/packages/ooo-icons-${ICON_VER}.tar.gz ) + kde? ( http://kde.openoffice.org/files/${KDE_ICON_PATH}/ooo-KDE_icons-${KDE_ICON_VER}.tar.gz )" + +HOMEPAGE="http://go-oo.org" + +LICENSE="|| ( LGPL-2 SISSL-1.1 )" +SLOT="0" +KEYWORDS="~x86 ~ppc ~sparc" + +RDEPEND="!app-office/openoffice-ximian-bin + virtual/x11 + virtual/libc + >=dev-lang/perl-5.0 + gnome? ( >=x11-libs/gtk+-2.0 + >=gnome-base/gnome-vfs-2.0 + >=dev-libs/libxml2-2.0 ) + kde? ( kde-base/kdelibs ) + >=media-libs/libart_lgpl-2.3.13 + >=x11-libs/startup-notification-0.5 + >=media-libs/freetype-2.1.4 + media-libs/fontconfig + media-gfx/imagemagick + media-libs/libpng + sys-devel/flex + sys-devel/bison + app-arch/zip + app-arch/unzip + dev-libs/expat + java? ( >=virtual/jre-1.4.1 ) + python? ( virtual/python ) + ppc? ( >=sys-devel/gcc-3.2.1 ) + linguas_ja? ( >=media-fonts/kochi-substitute-20030809-r3 ) + linguas_zh_CN? ( >=media-fonts/arphicfonts-0.1-r2 ) + linguas_zh_TW? ( >=media-fonts/arphicfonts-0.1-r2 )" + +DEPEND="${RDEPEND} + virtual/lpr + >=sys-apps/findutils-4.1.20-r1 + app-shells/tcsh + dev-util/pkgconfig + dev-util/intltool + curl? ( net-misc/curl ) + nas? ( media-libs/nas ) + zlib? ( sys-libs/zlib ) + sys-libs/pam + !dev-util/dmake + java? ( >=virtual/jdk-1.4.1 ) + !java? ( dev-libs/libxslt )" + +PROVIDE="virtual/ooo" + +pkg_setup() { + + if use java + then + if [ -z "${JDK_HOME}" ] || [ ! -d "${JDK_HOME}" ] + then + eerror "In order to compile java sources you have to set the" + eerror "\$JDK_HOME environment properly." + eerror "" + eerror "You can achieve this by using the java-config tool:" + eerror " emerge java-config" + die "Couldn't find a valid JDK home" + fi + fi + + ewarn + ewarn " It is important to note that OpenOffice.org is a very fragile " + ewarn " build when it comes to CFLAGS. A number of flags have already " + ewarn " been filtered out. If you experience difficulty merging this " + ewarn " package and use agressive CFLAGS, lower the CFLAGS and try to " + ewarn " merge again. " + ewarn + ewarn " Please note that this package now uses the LINGUAS environment " + ewarn " variable to provide localization. The old LANGUAGE=ENUS|PORT..." + ewarn " system does NOT work anymore." + ewarn + + set_languages +} + +set_languages () { + + strip-linguas en pt ru el nl fr es fi hu ca it cs sk da sv nb no pl de sl pt_BR th et ja ko zh_CN zh_TW tr hi_IN ar he + if [ -n "${LINGUAS}" ] ; then + # use the leftmost value + temp_lang=( ${LINGUAS} ) + primary_lang=${temp_lang[0]} + else + primary_lang="en" + fi + + case "${primary_lang}" in + en ) OOLANGNO=01; OOLANGNAME=ENUS; OOLFULLNAME="US English (default)" + ;; + pt ) OOLANGNO=03; OOLANGNAME=PORT; OOLFULLNAME=Portuguese + ;; + ru ) OOLANGNO=07; OOLANGNAME=RUSS; OOLFULLNAME=Russian + ;; + el ) OOLANGNO=30; OOLANGNAME=GREEK; OOLFULLNAME=Greek + ;; + nl ) OOLANGNO=31; OOLANGNAME=DTCH; OOLFULLNAME=Dutch + ;; + fr ) OOLANGNO=33; OOLANGNAME=FREN; OOLFULLNAME=French + ;; + es ) OOLANGNO=34; OOLANGNAME=SPAN; OOLFULLNAME=Spanish + ;; + fi ) OOLANGNO=35; OOLANGNAME=FINN; OOLFULLNAME=Finnish + ;; + hu ) OOLANGNO=36; OOLANGNAME=HUNG; OOLFULLNAME=Hungarian + ;; + ca ) OOLANGNO=37; OOLANGNAME=CAT; OOLFULLNAME=Catalan + ;; + it ) OOLANGNO=39; OOLANGNAME=ITAL; OOLFULLNAME=Italian + ;; + cs ) OOLANGNO=42; OOLANGNAME=CZECH; OOLFULLNAME=Czech + ;; + sk ) OOLANGNO=43; OOLANGNAME=SLOVAK; OOLFULLNAME=Slovak + ;; + da ) OOLANGNO=45; OOLANGNAME=DAN; OOLFULLNAME=Danish + ;; + sv ) OOLANGNO=46; OOLANGNAME=SWED; OOLFULLNAME=Swedish + ;; + no ) OOLANGNO=47; OOLANGNAME=NORBOK; OOLFULLNAME="Norwegian" + ;; + pl ) OOLANGNO=48; OOLANGNAME=POL; OOLFULLNAME=Polish + ;; + de ) OOLANGNO=49; OOLANGNAME=GER; OOLFULLNAME=German + ;; + sl ) OOLANGNO=50; OOLANGNAME=SLOVENIAN; OOLFULLNAME=Slovenian + ;; + pt_BR ) OOLANGNO=55; OOLANGNAME=PORTBR; OOLFULLNAME="Portuguese brazilian" + ;; + th ) OOLANGNO=66; OOLANGNAME=THAI; OOLFULLNAME=Thai + ;; + et ) OOLANGNO=77; OOLANGNAME=ESTONIAN; OOLFULLNAME=Estonian + ;; + ja ) OOLANGNO=81; OOLANGNAME=JAPN; OOLFULLNAME="Japanese" + ;; + ko ) OOLANGNO=82; OOLANGNAME=KOREAN; OOLFULLNAME=Korean + ;; + zh_CN ) OOLANGNO=86; OOLANGNAME=CHINSIM; OOLFULLNAME="Simplified Chinese (PRC)" + ;; + zh_TW ) OOLANGNO=88; OOLANGNAME=CHINTRAD; OOLFULLNAME="Traditional Chinese (taiwan)" + ;; + tr ) OOLANGNO=90; OOLANGNAME=TURK; OOLFULLNAME=Turkish + ;; + hi_IN ) OOLANGNO=91; OOLANGNAME=HINDI; OOLFULLNAME=Hindi + ;; + ar ) OOLANGNO=96; OOLANGNAME=ARAB; OOLFULLNAME=Arabic + ;; + he ) OOLANGNO=97; OOLANGNAME=HEBREW; OOLFULLNAME=Hebrew + ;; + esac + + einfo "Installing OpenOffice.org for ${OOLFULLNAME} environment." + +} + +oo_setup() { + + unset LANGUAGE + unset LANG + unset LC_ALL + + if [ -x /usr/sbin/gcc-config ] + then + # Do we have a gcc that use the new layout and gcc-config ? + if /usr/sbin/gcc-config --get-current-profile &> /dev/null + then + export GCC_PROFILE="$(/usr/sbin/gcc-config --get-current-profile)" + + # Just recheck gcc version ... + if [ "$(gcc-version)" != "3.2" ] && [ "$(gcc-version)" != "3.3" ] && [ "$(gcc-version)" != "3.4" ] + then + # See if we can get a gcc profile we know is proper ... + if /usr/sbin/gcc-config --get-bin-path ${CHOST}-3.2.1 &> /dev/null + then + export PATH="$(/usr/sbin/gcc-config --get-bin-path ${CHOST}-3.2.1):${PATH}" + export GCC_PROFILE="${CHOST}-3.2.1" + else + eerror "This build needs gcc-3.2, gcc-3.3 or gcc-3.4!" + eerror + eerror "Use gcc-config to change your gcc profile:" + eerror + eerror " # gcc-config $CHOST-3.2.1" + eerror + eerror "or whatever gcc version is relevant." + die + fi + fi + fi + fi +} + +src_unpack() { + + oo_setup + + cd ${WORKDIR} + unpack ${A} + + #Beginnings of our own patchset + cd ${PATCHDIR} + epatch ${FILESDIR}/${OO_VER}/gentoo-${PV}.patch + + cd ${S} + + #Still needed: The STLport patch + cp ${DISTDIR}/STLport-4.6.2.tar.gz ${S}/stlport/download || die + epatch ${FILESDIR}/${OO_VER}/newstlportfix.patch + + epatch ${FILESDIR}/${OO_VER}/gcc-instlib.patch + + #Another java problem + epatch ${FILESDIR}/${OO_VER}/javafix.patch + + # fix for bug #82385 + epatch ${FILESDIR}/${OO_VER}/getcompver.awk.patch + + # Workaround for bug #73940, may break debug use flag on ppc + if use ppc; then + epatch ${FILESDIR}/${OO_VER}/STLport-vector.patch + fi + + #Fix for nptl + if use nptl; then + epatch ${FILESDIR}/${OO_VER}/nptl.patch + fi + + #Add our own splash screen + epatch ${FILESDIR}/${OO_VER}/gentoo-splash.diff + + #Detect which look and patchset we are using + export DISTRO="Gentoo" + export MYCONF="" + export ICONDIR=${WORKDIR}/ooo-icons-${ICON_VER} + + if use gnome; then + export DISTRO="GentooGNOME" + export MYCONF="--enable-gtk" + fi + + if use kde; then + export MYCONF="${MYCONF} --enable-kde" + if use !gnome; then + export DISTRO="GentooKDE" + export MYCONF="--enable-kde" + export ICONDIR=${WORKDIR}/ooo-KDE_icons-${KDE_ICON_VER} + fi + fi + + #Finally apply the patches + einfo "Applying Ximian OO.org Patches" + ${PATCHDIR}/patches/apply.pl ${PATCHDIR}/patches/${PATCHLEVEL} ${S} -f --distro=${DISTRO} || die "Ximian patches failed" + + #Fix for hardened + if use hardened; then + epatch ${FILESDIR}/${OO_VER}/pthreadlink-fix.patch + epatch ${FILESDIR}/${OO_VER}/hardened-link.patch + epatch ${FILESDIR}/${OO_VER}/pyunolink-fix.patch + fi + + einfo "Installing / Scaling Icons" + ${PATCHDIR}/bin/scale-icons ${S} || die + cp -af ${ICONDIR}/* ${S} || die + + einfo "Copying splash screens in place" + cp -af ${WORKDIR}/gentoo-splash/open*.bmp ${S}/offmgr/res/ || die + + einfo "Copying libpwd tarball in build dir" + mkdir -p ${S}/libwpd/download/ || die + cp -af ${DISTDIR}/libwpd-0.8.0.tar.gz ${S}/libwpd/download/ || die + + einfo "Munging font mappings ..." + ${PATCHDIR}/bin/font-munge ${S}/officecfg/registry/data/org/openoffice/VCL.xcu || die +} + +get_EnvSet() { + + # Determine what Env file we should be using (Az) + export LinuxEnvSet="LinuxIntelEnv.Set.sh" + use sparc && export LinuxEnvSet="LinuxSparcEnv.Set.sh" + use ppc && export LinuxEnvSet="LinuxPPCEnv.Set.sh" + use alpha && export LinuxEnvSet="LinuxAlphaEnv.Set.sh" + + # Get build specific stuff (Az) + export SOLVER="$(awk '/^UPD=/ {gsub(/\"/, ""); gsub(/UPD=/, ""); print $0}' ${LinuxEnvSet})" + export SOLPATH="$(awk '/^INPATH=/ {gsub(/\"/, ""); gsub(/INPATH=/, ""); print $0}' ${LinuxEnvSet})" +} + +src_compile() { + + addpredict /bin + addpredict /root/.gconfd + + # dmake security patch + cd ${S}/dmake + autoconf || die + + #Check if we use java + if use java + then + MYCONF="${MYCONF} --with-jdk-home=${JAVA_HOME}" + else + MYCONF="${MYCONF} --disable-java" + fi + + #See if we use system-curl + if use curl + then + MYCONF="${MYCONF} --with-system-curl" + fi + + #See if we use system-zlib + if use zlib + then + MYCONF="${MYCONF} --with-system-zlib" + fi + + #See if we use system-python + if use python + then + MYCONF="${MYCONF} --with-python=/usr/bin/python" + fi + + #See if we use system-nas + if use nas + then + MYCONF="${MYCONF} --with-system-nas" + fi + + use kde && set-kdedir 3 + + # Do NOT compile with a external STLport, as gcc-2.95.3 users will + # get linker errors due to the ABI being different (STLport will be + # compiled with 2.95.3, while OO is compiled with 3.x). (Az) + cd ${S}/config_office + rm -f config.cache || die + autoconf || die + + if [ "OOLANGNAME" != "ENUS" ]; then + OOLANGNAME="${OOLANGNAME},ENUS" + fi + + MYCONF="${MYCONF} --enable-libart \ + --enable-libsn \ + --enable-crashdump=no \ + --with-lang=${OOLANGNAME} \ + --without-fonts \ + --disable-rpath \ + --enable-fontconfig \ + --with-system-freetype \ + --with-system-xrender \ + --disable-mozilla" + + ./configure ${MYCONF} || die + + cd ${S} + get_EnvSet + + # unpack help files if present + if [ -f ${DISTDIR}/helpcontent_${OOLANGNO}_unix.tgz ]; then + einfo "Using helpcontent for ${OOLFULLNAME}" + mkdir -p ${S}/solver/${SOLVER}/${SOLPATH}/pck + tar -xzf ${DISTDIR}/helpcontent_${OOLANGNO}_unix.tgz -C ${S}/solver/${SOLVER}/${SOLPATH}/pck + fi + + # Build as minimal as possible + export BUILD_MINIMAL="${OOLANGNO}" + + # Embedded python dies without Home set + if test "z${HOME}" = "z"; then + export HOME="" + fi + + #Get info for parallel build + export JOBS=`echo "${MAKEOPTS}" | sed -e "s/.*-j\([0-9]\+\).*/\1/"` + + if [ "${JOBS}" -gt 10 ] + then + export JOBS="10" + einfo "dmake fails with too much parallel jobs, so limiting to 10" + fi + + export buildcmd="${S}/solenv/bin/build.pl --all product=full strip=true --dlv_switch link" + + # Should the build use multiprocessing? Not enabled by default, as it tends to break + if [ "${WANT_DISTCC}" == "true" ] + then + if [ "${JOBS}" -gt 1 ] + then + export buildcmd="${buildcmd} -P${JOBS}" + einfo "Using distcc, Good Luck" + fi + fi + + # Compile problems with these ... + filter-flags "-funroll-loops" + filter-flags "-fomit-frame-pointer" + filter-flags "-fprefetch-loop-arrays" + filter-flags "-fno-default-inline" + filter-flags "-fstack-protector" + filter-flags "-ftracer" + append-flags "-fno-strict-aliasing" + replace-flags "-O3" "-O2" + replace-flags "-Os" "-O2" + + if [ "$(gcc-version)" == "3.2" ]; then + einfo "You use a buggy gcc, so replacing -march=pentium4 with -march=pentium3" + replace-flags "-march=pentium4" "-march=pentium3 -mcpu=pentium4" + fi + + # Now for our optimization flags ... + export ARCH_FLAGS="${CXXFLAGS}" + + einfo "Bootstrapping OpenOffice.org..." + # Get things ready for bootstrap (Az) + chmod 0755 ${S}/solenv/bin/*.pl + # Bootstrap ... + ./bootstrap || die + + einfo "Building OpenOffice.org..." + echo "source ${S}/${LinuxEnvSet} && cd ${S}/instsetoo && LINK=g++ ${buildcmd}" > build.sh + sh build.sh || die "Build failed!" + + [ -d ${S}/instsetoo/${SOLPATH} ] || die "Cannot find build directory!" +} + +src_install() { + + # Sandbox issues; bug #11838 + addpredict "/user" + addpredict "/share" + addpredict "/dev/dri" + addpredict "/usr/bin/soffice" + addpredict "/pspfontcache" + addpredict "/opt/OpenOffice.org/foo.tmp" + addpredict "/opt/OpenOffice.org/delme" + addpredict "/root/.gnome" + + + # The install part should now be relatively OK compared to + # what it was. Basically we use autoresponse files to install + # unattended. Afterwards we + # just cleanout ${D} from the registry, etc. This way we + # do not need pre-generated registry, and also fixes some weird + # bugs related to the old way we did things. + # + # <azarah@gentoo.org> (9 Sep 2002) + + # Autoresponse file for main installation + cat > ${T}/rsfile-global <<-"END_RS" + [ENVIRONMENT] + INSTALLATIONMODE=INSTALL_NETWORK + INSTALLATIONTYPE=STANDARD + DESTINATIONPATH=<destdir> + OUTERPATH= + LOGFILE= + LANGUAGELIST=<LANGUAGE> + + [JAVA] + JavaSupport=preinstalled_or_none + END_RS + + # Autoresponse file for user installation + cat > ${T}/rsfile-local <<-"END_RS" + [ENVIRONMENT] + INSTALLATIONMODE=INSTALL_WORKSTATION + INSTALLATIONTYPE=WORKSTATION + DESTINATIONPATH=<home>/.xopenoffice/<pv> + + [JAVA] + JavaSupport=none + END_RS + + # Fixing install location in response file + sed -e "s|<destdir>|${D}${INSTDIR}|" \ + ${T}/rsfile-global > ${T}/autoresponse || die + + einfo "Installing Ximian-OpenOffice.org into build root..." + dodir ${INSTDIR} + cd ${S}/instsetoo/${SOLPATH}/${OOLANGNO}/normal + ./setup -v -noexit -nogui -r:${T}/autoresponse || die "Setup failed" + + #Fix for parallel install + sed -i -e s/sversionrc/xversionrc/g ${D}${INSTDIR}/program/bootstraprc ${D}${INSTDIR}/program/instdb.ins || die + + einfo "Removing build root from registry..." + # Remove totally useless stuff. + rm -f ${D}${INSTDIR}/program/{setup.log,sopatchlevel.sh} || die + # Remove build root from registry and co + egrep -rl "${D}" ${D}${INSTDIR}/* | \ + xargs -i perl -pi -e "s|${D}||g" {} || : + + einfo "Fixing permissions..." + # Fix permissions + find ${D}${INSTDIR}/ -type f -exec chmod a+r {} \; + chmod a+x ${D}${INSTDIR}/share/config/webcast/*.pl + + # Install user autoresponse file + insinto /etc/ximian-openoffice + sed -e "s|<pv>|${OO_VER}|g" ${T}/rsfile-local > ${T}/autoresponse-${OO_VER}.conf + doins ${T}/autoresponse-${OO_VER}.conf + + # Install wrapper script + exeinto /usr/bin + sed -e "s|<pv>|${OO_VER}|g" \ + ${FILESDIR}/${OO_VER}/xooffice-wrapper-1.3 > ${T}/xooffice + doexe ${T}/xooffice + + # Component symlinks + for app in calc draw impress math web writer setup; do + dosym xooffice /usr/bin/xoo${app} + done + + # Install icons and menu shortcuts + cd ${PATCHDIR}/desktop/ + insinto /usr/share/pixmaps + doins *.png + + einfo "Installing menu shortcuts" + for menu in drawing presentation spreadsheet textdoc; do + intltool-merge -d ../po ${menu}.desktop.in xoo-${menu}.desktop; + done + sed -i -e s/'=oo'/'=xoo'/g *.desktop + insinto /usr/share/applications + doins *.desktop + + if use kde + then + insinto /usr/share/mimelnk/application + doins ${S}/sysui/${SOLPATH}/misc/kde/share/mimelnk/application/* + fi + + # Install corrected Symbol Font + insinto /usr/share/fonts/TTF/ + doins ${PATCHDIR}/fonts/*.ttf + + # Remove unneeded stuff + rm -rf ${D}${INSTDIR}/share/cde || die + + # Fix instdb.ins, to *not* install local copies of these + for entry in Kdeapplnk Kdemimetext Kdeicons Gnome_Apps Gnome_Icons Gnome2_Apps; do + perl -pi -e "/^File gid_File_Extra_$entry/ .. /^End/ and (\ + s|^\tSize\s+\= .*|\tSize\t\t = 0;\r| or \ + s|^\tArchiveFiles\s+\= .*|\tArchiveFiles\t = 0;\r| or \ + s|^\tArchiveSize\s+\= .*|\tArchiveSize\t = 0;\r| or \ + s|^\tContains\s+\= .*|\tContains\t = ();\r| or \ + s|\t\t\t\t\t\".*|\r|g)" \ + ${D}${INSTDIR}/program/instdb.ins + done + + # Make sure these do not get nuked. + keepdir ${INSTDIR}/user/registry/res/en-us/org/openoffice/{Office,ucb} ${INSTDIR}/user/psprint/{driver,fontmetric} ${INSTDIR}/user/{autocorr,backup,plugin,store,temp,template} +} + +pkg_postinst() { + + if use gnome; then + fdo-mime_desktop_database_update + fdo-mime_mime_database_update + fi + + einfo " To start Ximian-OpenOffice.org, run:" + einfo + einfo " $ xooffice" + einfo + einfo " Also, for individual components, you can use any of:" + einfo + einfo " xoocalc, xoodraw, xooimpress, xoomath, xooweb or xoowriter" +} |