-MD5 3908545ea3f61c386910277dc6201042 openoffice-ximian-1.3.14.ebuild 17995
-MD5 a05de7453d373da927b2b9c6cc6c7bbe openoffice-ximian-1.3.16.ebuild 17873
-MD5 2172597e048d38d848b3ee1ffdda7790 openoffice-ximian-1.3.9-r1.ebuild 17912
MD5 29de015a5d78101c1b6355189a6f4967 ChangeLog 34562
-MD5 f3942f82433bf5ae16461240cbcc4984 metadata.xml 300
-MD5 e84e07ee231b9ceaabacc5556a63f647 files/digest-openoffice-ximian-1.3.9-r1 492
-MD5 62fa209accdad43ffb6c4fe805cddda5 files/digest-openoffice-ximian-1.3.14 493
-MD5 53867a5ca81d65d0139b4334ef63bd72 files/digest-openoffice-ximian-1.3.16 490
-MD5 aa01d8f68b27d3df4af58ed02c080df5 files/1.1.4/pyunolink-fix.patch 475
+MD5 6f7ff745a5659e605fb05206914ab344 files/1.1.4/STLport-vector.patch 1472
+MD5 b2ea5c34d4a5e430c21a2da7426b9e39 files/1.1.4/cws-heapbug_CAN-2005-0941.diff 598
MD5 ffcbf659ca6f54e8e15401cced99af77 files/1.1.4/gcc-instlib.patch 393
+MD5 6938dc2e28e840cebf4fdbde9d6e2d4b files/1.1.4/gentoo-1.3.9.patch 859
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 964398ef88829e5a2935d0c0f8389c9d files/1.1.4/xooffice-wrapper-1.3 6091
-MD5 b2ea5c34d4a5e430c21a2da7426b9e39 files/1.1.4/cws-heapbug_CAN-2005-0941.diff 598
-MD5 622aff56239fa55eb653a16645b6a3f2 files/1.1.4/vcl-unx-gtk-frame-m110.diff 7858
-MD5 d14fafce0cfe0c8d399902a2c3d83e64 files/1.1.4/vcl-gtk-mainloop-m79.diff 1130
-MD5 6938dc2e28e840cebf4fdbde9d6e2d4b files/1.1.4/gentoo-1.3.9.patch 859
-MD5 3d3555a66a2d8a66613d4e4471701eb8 files/1.1.4/pthreadlink-fix.patch 1163
-MD5 3f008e2c5595512c7f6306b1a722612e files/1.1.4/nptl.patch 243
-MD5 6f7ff745a5659e605fb05206914ab344 files/1.1.4/STLport-vector.patch 1472
+MD5 ddb36dfd1d142b8a03850e3bee62a8c3 files/1.1.4/hardened-link.patch 576
+MD5 24035033f41d743378e16582c2e51469 files/1.1.4/javafix.patch 1382
MD5 a9233bc0091b925de38145108267b949 files/1.1.4/newstlportfix.patch 3638
-MD5 6938dc2e28e840cebf4fdbde9d6e2d4b files/1.1.4/gentoo-1.3.14.patch 859
-MD5 aa01d8f68b27d3df4af58ed02c080df5 files/1.1.5/pyunolink-fix.patch 475
+MD5 3f008e2c5595512c7f6306b1a722612e files/1.1.4/nptl.patch 243
+MD5 3d3555a66a2d8a66613d4e4471701eb8 files/1.1.4/pthreadlink-fix.patch 1163
+MD5 aa01d8f68b27d3df4af58ed02c080df5 files/1.1.4/pyunolink-fix.patch 475
+MD5 964398ef88829e5a2935d0c0f8389c9d files/1.1.4/xooffice-wrapper-1.3 6091
+MD5 6f7ff745a5659e605fb05206914ab344 files/1.1.5/STLport-vector.patch 1472
+MD5 9784ab4484e09b8230284b27d20d4264 files/1.1.5/build-new-xslt.diff 650
MD5 ffcbf659ca6f54e8e15401cced99af77 files/1.1.5/gcc-instlib.patch 393
-MD5 9abefd659e5b06ff9d9f515f312cdc4b files/1.1.5/gentoo-splash.diff 890
-MD5 24035033f41d743378e16582c2e51469 files/1.1.5/javafix.patch 1382
-MD5 ddb36dfd1d142b8a03850e3bee62a8c3 files/1.1.5/hardened-link.patch 576
MD5 09e70c259e5c6767251d0e22f6775a8d files/1.1.5/gentoo-1.3.16.patch 1120
+MD5 9abefd659e5b06ff9d9f515f312cdc4b files/1.1.5/gentoo-splash.diff 890
MD5 e08721c60cf0f7bc7ea0a714baeac120 files/1.1.5/getcompver.awk.patch 418
-MD5 ba6affa60977e5d658fe5a2125abb691 files/1.1.5/xooffice-wrapper-1.3 6091
-MD5 3d3555a66a2d8a66613d4e4471701eb8 files/1.1.5/pthreadlink-fix.patch 1163
-MD5 3f008e2c5595512c7f6306b1a722612e files/1.1.5/nptl.patch 243
-MD5 9784ab4484e09b8230284b27d20d4264 files/1.1.5/build-new-xslt.diff 650
-MD5 6f7ff745a5659e605fb05206914ab344 files/1.1.5/STLport-vector.patch 1472
+MD5 ddb36dfd1d142b8a03850e3bee62a8c3 files/1.1.5/hardened-link.patch 576
+MD5 24035033f41d743378e16582c2e51469 files/1.1.5/javafix.patch 1382
MD5 a9233bc0091b925de38145108267b949 files/1.1.5/newstlportfix.patch 3638
+MD5 3f008e2c5595512c7f6306b1a722612e files/1.1.5/nptl.patch 243
+MD5 3d3555a66a2d8a66613d4e4471701eb8 files/1.1.5/pthreadlink-fix.patch 1163
+MD5 aa01d8f68b27d3df4af58ed02c080df5 files/1.1.5/pyunolink-fix.patch 475
+MD5 ba6affa60977e5d658fe5a2125abb691 files/1.1.5/xooffice-wrapper-1.3 6091
+MD5 53867a5ca81d65d0139b4334ef63bd72 files/digest-openoffice-ximian-1.3.16 490
+MD5 e84e07ee231b9ceaabacc5556a63f647 files/digest-openoffice-ximian-1.3.9-r1 492
+MD5 f3942f82433bf5ae16461240cbcc4984 metadata.xml 300
+MD5 a05de7453d373da927b2b9c6cc6c7bbe openoffice-ximian-1.3.16.ebuild 17873
+MD5 2172597e048d38d848b3ee1ffdda7790 openoffice-ximian-1.3.9-r1.ebuild 17912
+++ /dev/null
---- vcl/unx/gtk/window/gtkframe.cxx
-+++ vcl/unx/gtk/window/gtkframe.cxx
-@@ -185,8 +184,9 @@
- void GtkSalFrame::doKeyCallback( guint state,
- guint keyval,
- guint16 hardware_keycode,
- guint8 group,
- guint32 time,
-+ sal_Unicode aOrigCode,
- bool bDown,
- bool bSendRelease
- )
-@@ -208,20 +226,21 @@
- SalKeyEvent aEvent;
-
- aEvent.mnTime = time;
-- aEvent.mnCode = GetKeyCode( keyval ) | GetModCode( state );
-- aEvent.mnCharCode = (USHORT)gdk_keyval_to_unicode( keyval );
-+ aEvent.mnCode = GetKeyCode( keyval ) | GetModCode( state );
-+ aEvent.mnCharCode = aOrigCode;
- aEvent.mnRepeat = 0;
-
- vcl::DeletionListener aDel( this );
-- bool bHandled = CallCallback( bDown ? SALEVENT_KEYINPUT : SALEVENT_KEYUP, &aEvent );
-- if( bDown && ! aDel.isDeleted() )
-+ if( bDown )
- {
-- /* #i42122# if application cannot handle the event (e.g. for a shortcut key)
-- * then try the same key with the default keymap in group 0, so e.g. cyrillic
-- * keys get translated to the english keyboard layout and can be recognized
-- * as shortcuts (see also generic plugin)
-+ /* #i42122# translate all keys with Ctrl and/or Alt to group 0
-+ * else shortcuts (e.g. Ctrl-o) will not work but be inserted by
-+ * the application
- */
-- if( ! bHandled && group != 0)
-+ bool bHandled = false;
-+ if( (aEvent.mnCode & (KEY_MOD1|KEY_MOD2)) == 0 || group == 0 )
-+ bHandled = CallCallback( SALEVENT_KEYINPUT, &aEvent );
-+ else
- {
- // check other mapping
- gint eff_group, level;
-@@ -236,9 +255,9 @@
- &level,
- &consumed ) )
- {
-- aEvent.mnCode = GetKeyCode( updated_keyval ) | GetModCode( state );
-+ aEvent.mnCode = GetKeyCode( updated_keyval ) | GetModCode( state );
- aEvent.mnCharCode = (USHORT)gdk_keyval_to_unicode( updated_keyval );
-- CallCallback( SALEVENT_KEYINPUT, &aEvent );
-+ bHandled = CallCallback( SALEVENT_KEYINPUT, &aEvent );
- }
- }
- if( bSendRelease && ! aDel.isDeleted() )
-@@ -246,6 +277,8 @@
- CallCallback( SALEVENT_KEYUP, &aEvent );
- }
- }
-+ else
-+ CallCallback( SALEVENT_KEYUP, &aEvent );
- }
-
- GtkSalFrame::GraphicsHolder::~GraphicsHolder()
-@@ -352,6 +394,7 @@
- m_pIMContext = NULL;
- m_bWasPreedit = false;
- m_bIgnoreCommit = false;
-+ m_bIgnorePreedit = false;
- m_aPrevKeyPresses.clear();
- m_nPrevKeyPresses = 0;
-
-@@ -1071,7 +1454,8 @@
- void GtkSalFrame::createIMContext()
- {
- if( ! m_pIMContext )
- {
-+ m_bIgnorePreedit = true;
- m_pIMContext = gtk_im_multicontext_new ();
- g_signal_connect( m_pIMContext, "commit",
- G_CALLBACK (signalIMCommit), this );
-@@ -1102,6 +1488,7 @@
- gtk_im_context_set_client_window( m_pIMContext, GTK_WIDGET(m_pWindow)->window );
- gtk_im_context_focus_in( m_pIMContext );
- m_bWasPreedit = false;
-+ m_bIgnorePreedit = false;
- }
- }
-
-@@ -2006,7 +2262,14 @@
- }
- else
- {
-- pThis->doKeyCallback( pEvent->state, pEvent->keyval, pEvent->hardware_keycode, pEvent->group, pEvent->time, (pEvent->type == GDK_KEY_PRESS), false );
-+ pThis->doKeyCallback( pEvent->state,
-+ pEvent->keyval,
-+ pEvent->hardware_keycode,
-+ pEvent->group,
-+ pEvent->time,
-+ sal_Unicode(gdk_keyval_to_unicode( pEvent->keyval )),
-+ (pEvent->type == GDK_KEY_PRESS),
-+ false );
- if( ! aDel.isDeleted() )
- {
- pThis->m_bSendModChangeOnRelease = false;
-@@ -2068,7 +2341,34 @@
- return FALSE;
- }
-
-+/* FIXME:
-+* #122282# still more hacking: some IMEs never start a preedit but simply commit
-+* in this case we cannot commit a single character. Workaround: do not do the
-+* single key hack for enter or space if the unicode commited does not match
-+*/
-+
-+static bool checkSinkleKeyCommitHack( guint keyval, sal_Unicode cCode )
-+{
-+ bool bRet = true;
-+ switch( keyval )
-+ {
-+ case GDK_KP_Enter:
-+ case GDK_Return:
-+ if( cCode != '\n' && cCode != '\r' )
-+ bRet = false;
-+ break;
-+ case GDK_space:
-+ case GDK_KP_Space:
-+ if( cCode != ' ' )
-+ bRet = false;
-+ break;
-+ default:
-+ break;
-+ }
-+ return bRet;
-+}
-+
- void GtkSalFrame::signalIMCommit( GtkIMContext* pContext, gchar* pText, gpointer frame )
- {
- GtkSalFrame* pThis = (GtkSalFrame*)frame;
-
-@@ -2109,11 +2405,18 @@
- )
- {
- const PreviousKeyPress& rKP = pThis->m_aPrevKeyPresses.back();
-+ sal_Unicode aOrigCode = aTextEvent.maText.GetChar(0);
-
-+ if( checkSinkleKeyCommitHack( rKP.keyval, aOrigCode ) )
-+ {
-+ #if OSL_DEBUG_LEVEL > 1
-+ fprintf( stderr, ":signalIMCommit (as key): '%s'\n", pText );
-+ #endif
- pThis->m_bWasPreedit = false;
-- pThis->doKeyCallback( rKP.state, rKP.keyval, rKP.hardware_keycode, rKP.group, rKP.time, true, true );
-+ pThis->doKeyCallback( rKP.state, rKP.keyval, rKP.hardware_keycode, rKP.group, rKP.time, aOrigCode, true, true );
- return;
- }
-+ }
-
- #if OSL_DEBUG_LEVEL > 1
- fprintf( stderr, ":signalIMCommit '%s'\n", pText );
-@@ -2128,6 +2431,8 @@
- void GtkSalFrame::signalIMPreeditChanged( GtkIMContext* pContext, gpointer frame )
- {
- GtkSalFrame* pThis = (GtkSalFrame*)frame;
-+ if( pThis->m_bIgnorePreedit )
-+ return;
-
- char* pText = NULL;
- PangoAttrList* pAttrs = NULL;
-@@ -2221,18 +2526,27 @@
-
- void GtkSalFrame::signalIMPreeditStart( GtkIMContext* pContext, gpointer frame )
- {
--// GtkSalFrame* pThis = (GtkSalFrame*)frame;
-+ GtkSalFrame* pThis = (GtkSalFrame*)frame;
-+ if( ! pThis->m_bIgnorePreedit )
-+ {
-+ #if OSL_DEBUG_LEVEL > 1
-+ fprintf( stderr, ":signalImPreeditStart\n" );
-+ #endif
-+ }
- }
-
- void GtkSalFrame::signalIMPreeditEnd( GtkIMContext* pContext, gpointer frame )
- {
- GtkSalFrame* pThis = (GtkSalFrame*)frame;
-+ if( ! pThis->m_bIgnorePreedit )
-+ {
- #if OSL_DEBUG_LEVEL > 1
- fprintf( stderr, ":signalImPreeditEnd\n" );
- #endif
- GTK_YIELD_GRAB();
- pThis->CallCallback( SALEVENT_ENDEXTTEXTINPUT, NULL );
- }
-+}
-
- gboolean GtkSalFrame::signalIMRetrieveSurrounding( GtkIMContext* pContext, gpointer frame )
- {
---- /opt/OpenOffice/DEVEL/ooo-build/build/OOO_1_1_4/vcl/unx/inc/plugins/gtk/gtkframe.hxx 2005-06-15 15:05:25.000000000 +0100
-+++ vcl/unx/inc/plugins/gtk/gtkframe.hxx 2005-06-28 15:05:42.664084120 +0100
-@@ -183,6 +183,7 @@
- bool m_bSendModChangeOnRelease;
- bool m_bWasPreedit;
- bool m_bIgnoreCommit;
-+ bool m_bIgnorePreedit;
-
- Size m_aMaxSize;
- Size m_aMinSize;
-@@ -234,6 +235,7 @@
- guint16 hardware_keycode,
- guint8 group,
- guint32 time,
-+ sal_Unicode aOrigCode,
- bool bDown,
- bool bSendRelease
- );
+++ /dev/null
-# 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.14.ebuild,v 1.4 2005/08/23 21:18:38 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 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 )
- 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}
- net-print/cups
- >=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
- ewarn " If you want localized helpcontent, please download the correct file "
- ewarn " for your language from an OpenOffice.org-mirror "
- ewarn " (directory /contrib/helpcontent/ e.g.) and put it in your "
- ewarn " /usr/portage/distfiles, the ebuild will use it automatically. "
- 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
-
- # Correct some broken patch
- epatch ${FILESDIR}/${OO_VER}/vcl-gtk-mainloop-m79.diff
-
- 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"
-
- #Dead keys fix
- use gnome && epatch ${FILESDIR}/${OO_VER}/vcl-unx-gtk-frame-m110.diff
-
- #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 -pPRf ${ICONDIR}/* ${S} || die
-
- einfo "Copying splash screens in place"
- cp -pPRf ${WORKDIR}/gentoo-splash/open*.bmp ${S}/offmgr/res/ || die
-
- einfo "Copying libpwd tarball in build dir"
- mkdir -p ${S}/libwpd/download/ || die
- cp -pPRf ${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() {
-
- unset LIBC
- addpredict "/bin"
- addpredict "/root/.gconfd"
- addpredict "/root/.gnome"
-
- # 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-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 \
- --with-build-version=ooo-build-${PV} \
- --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() {
-
- fdo-mime_desktop_database_update
- fdo-mime_mime_database_update
-
- 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"
-}