summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-office/openoffice-ximian/ChangeLog19
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/STLport-vector.patch32
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/config-db-checkfix.patch11
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/gcc-instlib.patch12
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/gentoo-1.3.8.patch33
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/gentoo-splash.diff30
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/hardened-link.patch14
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/javafix.patch27
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/newstlportfix.patch100
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/nptl.patch11
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/pthreadlink-fix.patch32
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/pyunolink-fix.patch14
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/regcompfix.patch22
-rw-r--r--app-office/openoffice-ximian/files/1.1.4/xooffice-wrapper-1.3175
-rw-r--r--app-office/openoffice-ximian/files/digest-openoffice-ximian-1.3.87
-rw-r--r--app-office/openoffice-ximian/openoffice-ximian-1.3.8.ebuild615
16 files changed, 1153 insertions, 1 deletions
diff --git a/app-office/openoffice-ximian/ChangeLog b/app-office/openoffice-ximian/ChangeLog
index 3c2061525e88..5b770a6e5a0b 100644
--- a/app-office/openoffice-ximian/ChangeLog
+++ b/app-office/openoffice-ximian/ChangeLog
@@ -1,6 +1,23 @@
# 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.103 2005/01/24 07:39:31 suka Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-office/openoffice-ximian/ChangeLog,v 1.104 2005/01/28 07:29:39 suka Exp $
+
+*openoffice-ximian-1.3.8 (28 Jan 2005)
+
+ 28 Jan 2005; Andreas Proschofsky <suka@gentoo.org>
+ +files/1.1.4/STLport-vector.patch, +files/1.1.4/config-db-checkfix.patch,
+ +files/1.1.4/gcc-instlib.patch, +files/1.1.4/gentoo-1.3.8.patch,
+ +files/1.1.4/gentoo-splash.diff, +files/1.1.4/hardened-link.patch,
+ +files/1.1.4/javafix.patch, +files/1.1.4/newstlportfix.patch,
+ +files/1.1.4/nptl.patch, +files/1.1.4/pthreadlink-fix.patch,
+ +files/1.1.4/pyunolink-fix.patch, +files/1.1.4/regcompfix.patch,
+ +files/1.1.4/xooffice-wrapper-1.3, +openoffice-ximian-1.3.8.ebuild:
+ New patch version release, the first one based on OOo 1.1.4. Also includes a
+ patch for a new build problem introduced in 1.3.8. A list of other changes
+ and improvements can be found here:
+
+ http://cvs.gnome.org/viewcvs/ooo-build/NEWS?rev=1.49.4.4&only_with_tag=ooo-b
+ uild-1-3&view=auto
24 Jan 2005; Andreas Proschofsky <suka@gentoo.org>
files/1.1.3/xooffice-wrapper-1.3:
diff --git a/app-office/openoffice-ximian/files/1.1.4/STLport-vector.patch b/app-office/openoffice-ximian/files/1.1.4/STLport-vector.patch
new file mode 100644
index 000000000000..1892f1cabeed
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/STLport-vector.patch
@@ -0,0 +1,32 @@
+--- stlport/STLport-4.6.2.patch 2005-01-06 12:26:48.770546592 +1100
++++ stlport/STLport-4.6.2.patch 2005-01-06 12:26:01.125789696 +1100
+@@ -69,3 +69,29 @@
+ ln -s $(STLDEBUG_DYNLIB) $(OUTDIR)/$(STLDEBUG_NAME).$(DYNEXT)
+
+ install_unix :
++--- misc/build/STLport-4.6.2/src/gcc-linux.mak.old 2005-01-06 12:22:54.127217800 +1100
+++++ misc/build/STLport-4.6.2/src/gcc-linux.mak 2005-01-06 12:24:28.192917640 +1100
++@@ -46,8 +46,8 @@
++ CXXFLAGS_DEBUG_static = $(CXXFLAGS_COMMON) -O -g
++ CXXFLAGS_DEBUG_dynamic = $(CXXFLAGS_COMMON) -O -g -fPIC
++
++-CXXFLAGS_STLDEBUG_static = $(CXXFLAGS_DEBUG_static) -D_STLP_DEBUG
++-CXXFLAGS_STLDEBUG_dynamic = $(CXXFLAGS_DEBUG_dynamic) -D_STLP_DEBUG -fPIC
+++CXXFLAGS_STLDEBUG_static = $(CXXFLAGS_DEBUG_static)
+++CXXFLAGS_STLDEBUG_dynamic = $(CXXFLAGS_DEBUG_dynamic) -fPIC
++
++ include common_percent_rules.mak
++ include common_rules.mak
++--- misc/build/STLport-4.6.2/src/gcc.mak.old 2005-01-06 15:20:18.840975336 +1100
+++++ misc/build/STLport-4.6.2/src/gcc.mak 2005-01-06 15:21:00.373661408 +1100
++@@ -44,8 +44,8 @@
++ CXXFLAGS_DEBUG_static = $(CXXFLAGS_COMMON) -O -g
++ CXXFLAGS_DEBUG_dynamic = $(CXXFLAGS_COMMON) -O -g -fPIC
++
++-CXXFLAGS_STLDEBUG_static = $(CXXFLAGS_DEBUG_static) -D_STLP_DEBUG
++-CXXFLAGS_STLDEBUG_dynamic = $(CXXFLAGS_DEBUG_dynamic) -D_STLP_DEBUG
+++CXXFLAGS_STLDEBUG_static = $(CXXFLAGS_DEBUG_static)
+++CXXFLAGS_STLDEBUG_dynamic = $(CXXFLAGS_DEBUG_dynamic)
++
++ include common_percent_rules.mak
++ include common_rules.mak
diff --git a/app-office/openoffice-ximian/files/1.1.4/config-db-checkfix.patch b/app-office/openoffice-ximian/files/1.1.4/config-db-checkfix.patch
new file mode 100644
index 000000000000..a7a00241b32f
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/config-db-checkfix.patch
@@ -0,0 +1,11 @@
+--- patches/OOO_1_1/config-switches.diff 2005-01-27 17:30:12.326135752 +0100
++++ patches/OOO_1_1/config-switches.diff 2005-01-27 17:30:12.326135752 +0100
+@@ -202,7 +202,7 @@
+ +else
+ + AC_MSG_RESULT([internal])
+ + SYSTEM_DB=NO
+-+ DB_VERSION=$(ls -1 ../berkeleydb/download/db* \
+++ DB_VERSION=$(ls -1 ../berkeleydb/download/db-4* \
+ + | $SED -e s,\.\./berkeleydb/download/db-,, | $SED -e s,\.tar\.gz,, \
+ + | cut -d"." -f1,2)
+ + DB_VERSION_MAJOR=$(echo $DB_VERSION | cut -d"." -f1)
diff --git a/app-office/openoffice-ximian/files/1.1.4/gcc-instlib.patch b/app-office/openoffice-ximian/files/1.1.4/gcc-instlib.patch
new file mode 100644
index 000000000000..99e424abed01
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/gcc-instlib.patch
@@ -0,0 +1,12 @@
+diff -urN solenv/bin/gccinstlib.pl oo_1.1.2_src/solenv/bin/gccinstlib.pl
+--- solenv/bin/gccinstlib.pl 2004-03-16 11:15:42.000000000 +0100
++++ solenv/bin/gccinstlib.pl 2004-09-27 10:36:02.338394960 +0200
+@@ -63,7 +63,7 @@
+ #
+ #*************************************************************************
+
+-$ENV{'LC_MESSAGES'} = 'C';
++$ENV{'LC_ALL'} = 'C';
+
+ %SearchDirs = GetGccSearchDirs ();
+
diff --git a/app-office/openoffice-ximian/files/1.1.4/gentoo-1.3.8.patch b/app-office/openoffice-ximian/files/1.1.4/gentoo-1.3.8.patch
new file mode 100644
index 000000000000..4deda5db44cc
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/gentoo-1.3.8.patch
@@ -0,0 +1,33 @@
+--- 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,7 +33,7 @@
+ 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
++Gentoo : LinuxCommon, FilePickers, GlobalDesktopFiles, NonArkCommon, NoRpath
+ GentooGNOME : Gentoo, GnomeVFS, NovellOnly
+ GentooKDE : Gentoo, KDECommon
+
+@@ -1225,20 +1225,6 @@
+
+ ########################################################
+
+-[ Gcc34 ]
+-gcc34-main.diff
+-gcc34-nojava-fix.diff
+-gcc34-nptl-fix.diff
+-gcc34-stlport.diff
+-gcc34-sal-link-to-libsupc++.diff
+-
+-########################################################
+-
+-[ GentooOnly, RedHatOnly ]
+-gcc34-gnome.diff
+-
+-########################################################
+-
+ [ TestLayout ]
+ # the beginnings of layout
+ gui-window-layout.diff
+
diff --git a/app-office/openoffice-ximian/files/1.1.4/gentoo-splash.diff b/app-office/openoffice-ximian/files/1.1.4/gentoo-splash.diff
new file mode 100644
index 000000000000..164b125b1aad
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/gentoo-splash.diff
@@ -0,0 +1,30 @@
+Index: offmgr/source/offapp/intro/ooo.src
+===================================================================
+RCS file: /cvs/framework/offmgr/source/offapp/intro/Attic/ooo.src,v
+retrieving revision 1.44.16.7
+diff -u -p -u -r1.44.16.7 ooo.src
+--- offmgr/source/offapp/intro/ooo.src 19 Feb 2004 15:38:23 -0000 1.44.16.7
++++ offmgr/source/offapp/intro/ooo.src 15 Mar 2004 23:07:54 -0000
+@@ -76,10 +76,10 @@
+ #include "app.hrc"
+ #include "intro.hrc"
+
+-#ifdef BUILD_SPECIAL
+-#define OOO_VENDOR "Sun Microsystems Inc."
++#if 1
++#define OOO_VENDOR "Gentoo Foundation"
+ #define OOO_LICENSE "LGPL"
+-#define OOO_INTRO "openintro_sun.bmp"
++#define OOO_INTRO "openintro_gentoo.bmp"
+ #else
+ //#define OOO_VENDOR "my company"
+ #define OOO_LICENSE "LGPL"
+@@ -88,7 +88,7 @@
+
+ Bitmap RID_DEFAULT_ABOUT_BMP_LOGO
+ {
+- File = "openabout.bmp" ;
++ File = "openabout_gentoo.bmp" ;
+ };
+
+ Bitmap RID_DEFAULTINTRO
diff --git a/app-office/openoffice-ximian/files/1.1.4/hardened-link.patch b/app-office/openoffice-ximian/files/1.1.4/hardened-link.patch
new file mode 100644
index 000000000000..83c707dc106d
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/hardened-link.patch
@@ -0,0 +1,14 @@
+diff -ur solenv.orig/inc/unxlngi4.mk solenv/inc/unxlngi4.mk
+--- solenv.orig/inc/unxlngi4.mk 2004-10-23 20:09:29.344518376 +0200
++++ solenv/inc/unxlngi4.mk 2004-10-23 20:09:43.084429592 +0200
+@@ -156,8 +156,8 @@
+ LINKFLAGS=-Wl,-z,combreloc $(LINKFLAGSDEFS) $(LINKFLAGSRUNPATH)
+
+ # linker flags for linking applications
+-LINKFLAGSAPPGUI= -Wl,-export-dynamic
+-LINKFLAGSAPPCUI= -Wl,-export-dynamic
++LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,-z,execheap
++LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,-z,execheap
+
+ # linker flags for linking shared libraries
+ LINKFLAGSSHLGUI= -shared
diff --git a/app-office/openoffice-ximian/files/1.1.4/javafix.patch b/app-office/openoffice-ximian/files/1.1.4/javafix.patch
new file mode 100644
index 000000000000..e2d9ccf723b1
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/javafix.patch
@@ -0,0 +1,27 @@
+--- connectivity/source/drivers/jdbc/DriverPropertyInfo.cxx
++++ connectivity/source/drivers/jdbc/DriverPropertyInfo.cxx
+@@ -184,7 +184,12 @@
+ {
+ jfieldID id = t.pEnv->GetFieldID(java_sql_DriverPropertyInfo::getMyClass(),"choices","[Ljava/lang/String;");
+ if(id)
+- return copyArrayAndDelete(t.pEnv,(jobjectArray)t.pEnv->GetObjectField( object, id), ::rtl::OUString(),java_lang_String(NULL,NULL));
++ return copyArrayAndDelete(
++ t.pEnv,
++ (jobjectArray)t.pEnv->GetObjectField( object, id),
++ static_cast< const ::rtl::OUString* >( NULL ),
++ static_cast< const java_lang_String* >( NULL )
++ );
+ } //t.pEnv
+ return Sequence< ::rtl::OUString>();
+ }
+--- connectivity/source/inc/java/tools.hxx
++++ connectivity/source/inc/java/tools.hxx
+@@ -101,7 +101,7 @@
+
+ java_util_Properties* createStringPropertyArray(JNIEnv *pEnv,const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& info ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException);
+
+- template<class T,class JT> ::com::sun::star::uno::Sequence< T > copyArrayAndDelete(JNIEnv *pEnv,jobjectArray _Array,const T& _rD1,const JT& _rD2)
++ template<class T,class JT> ::com::sun::star::uno::Sequence< T > copyArrayAndDelete(JNIEnv *pEnv,jobjectArray _Array, const T*, const JT* )
+ {
+ ::com::sun::star::uno::Sequence< T > xOut;
+ if(_Array)
diff --git a/app-office/openoffice-ximian/files/1.1.4/newstlportfix.patch b/app-office/openoffice-ximian/files/1.1.4/newstlportfix.patch
new file mode 100644
index 000000000000..f88927669a7b
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/newstlportfix.patch
@@ -0,0 +1,100 @@
+--- stlport/makefile.mk.orig 2004-01-28 11:52:04.000000000 +0100
++++ stlport/makefile.mk 2004-11-04 15:36:38.158427224 +0100
+@@ -72,11 +72,12 @@
+ # --- Files --------------------------------------------------------
+ .EXPORT : CC CXX
+ .IF "$(COMID)"=="gcc3"
+- TARFILE_NAME=STLport-4.5
+ .IF "$(OS)$(BUILD_OS_MAJOR)$(BUILD_OS_MINOR)"=="MACOSX103"
++ TARFILE_NAME=STLport-4.5
+ PATCH_FILE_NAME=STLport-4.5-macxp-panther.patch
+ .ELSE
+- PATCH_FILE_NAME=STLport-4.5.patch
++ TARFILE_NAME=STLport-4.6.2
++ PATCH_FILE_NAME=STLport-4.6.2.patch
+ .ENDIF
+ .ELSE # "$(COMID)"=="gcc3"
+ .IF "$(OS)"=="MACOSX"
+@@ -127,7 +128,7 @@
+ .ELIF "$(OS)"=="MACOSX"
+ BUILD_FLAGS=-f gcc-3.0-macosx.mak
+ .ELSE
+- BUILD_FLAGS=-f gcc-3.0.mak
++ BUILD_FLAGS=-f gcc.mak
+ .ENDIF
+ .ELSE # "$(COMID)"=="gcc3"
+ # MacOS X/Darwin need a special makefile
+--- /dev/null 2004-10-28 17:21:08.585283768 +0200
++++ stlport/STLport-4.6.2.patch 2004-11-04 21:27:55.986110360 +0100
+@@ -0,0 +1,71 @@
++--- misc/build/STLport-4.6.2/src/num_get_float.cpp 2003-11-02 09:58:50.000000000 +0100
+++++ misc/build/STLport-4.6.2/src/num_get_float.cpp 2004-11-04 15:26:12.605525720 +0100
++@@ -770,18 +770,18 @@
++
++ void _STLP_CALL
++ __string_to_float(const string& v, float& val) {
++- val = _Stl_string_to_double(v.data());
+++ val = _Stl_string_to_double(v.c_str());
++ }
++
++ void _STLP_CALL
++ __string_to_float(const string& v, double& val) {
++- val = _Stl_string_to_double(v.data());
+++ val = _Stl_string_to_double(v.c_str());
++ }
++
++ #ifndef _STLP_NO_LONG_DOUBLE
++ void _STLP_CALL
++ __string_to_float(const string& v, long double& val) {
++- val = _Stl_string_to_long_double(v.data());
+++ val = _Stl_string_to_long_double(v.c_str());
++ }
++ #endif
++
++--- misc/build/STLport-4.6.2/stlport/config/stl_gcc.h 2003-11-02 09:59:11.000000000 +0100
+++++ misc/build/STLport-4.6.2/stlport/config/stl_gcc.h 2004-11-04 15:26:12.342565696 +0100
++@@ -7,7 +7,9 @@
++ # define _STLP_USE_GLIBC
++ #endif
++
+++#if (__GNUC__ >= 3) && (__GNUC_MAJOR__ >= 4)
++ # define _STLP_NO_MEMBER_TEMPLATE_KEYWORD
+++#endif
++
++ # if defined(__FreeBSD__) || defined (__hpux) || defined(__amigaos__) || ( defined(__OS2__) && defined(__EMX__) )
++ # define _STLP_NO_WCHAR_T
++@@ -263,7 +265,7 @@
++
++ # if (__GNUC__ >= 3)
++
++-# if ((__GNUC_MINOR__ == 0) || (__APPLE__))
+++# if 1 || ((__GNUC_MINOR__ == 0) || (__APPLE__))
++ # define _STLP_NATIVE_INCLUDE_PATH ../g++-v3
++ # define _STLP_NATIVE_OLD_STREAMS_INCLUDE_PATH ../g++-v3/backward
++ # else
++--- misc/build/STLport-4.6.2/stlport/stdexcept 2003-11-02 09:59:01.000000000 +0100
+++++ misc/build/STLport-4.6.2/stlport/stdexcept 2004-11-04 15:26:12.474545632 +0100
++@@ -60,6 +60,11 @@
++ # endif
++ # define _STLP_EXCEPTION_BASE exception
++
+++#if (__GNUC__ >= 3)
+++#undef _STLP_NOTHROW_INHERENTLY
+++#define _STLP_NOTHROW_INHERENTLY throw()
+++#endif
+++
++ class _STLP_CLASS_DECLSPEC __Named_exception : public _STLP_EXCEPTION_BASE {
++ public:
++ __Named_exception(const string& __str)
++--- misc/build/STLport-4.6.2/src/common_rules.mak 2004-11-04 21:25:58.322997872 +0100
+++++ misc/build/STLport-4.6.2/src/common_rules.mak 2004-11-04 21:26:15.731351400 +0100
++@@ -84,7 +84,8 @@
++ $(RM) $(OUTDIR)/$(STLDEBUG_NAME).$(DYNEXT)
++ $(RM) $(OUTDIR)/$(DEBUG_NAME).$(DYNEXT)
++ ln -s $(RELEASE_DYNLIB) $(OUTDIR)/$(RELEASE_NAME).$(DYNEXT)
++- -ln -s $(DEBUG_DYNLIB) $(OUTDIR)/$(DEBUG_NAME).$(DYNEXT)
+++# not needed ?
+++# -ln -s $(DEBUG_DYNLIB) $(OUTDIR)/$(DEBUG_NAME).$(DYNEXT)
++ ln -s $(STLDEBUG_DYNLIB) $(OUTDIR)/$(STLDEBUG_NAME).$(DYNEXT)
++
++ install_unix :
diff --git a/app-office/openoffice-ximian/files/1.1.4/nptl.patch b/app-office/openoffice-ximian/files/1.1.4/nptl.patch
new file mode 100644
index 000000000000..09407412b706
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/nptl.patch
@@ -0,0 +1,11 @@
+--- tools/source/solar/solar.c.orig
++++ tools/source/solar/solar.c
+@@ -577,7 +577,7 @@
+
+ {
+ char* p = NULL;
+- InfoMemoryAccess( p );
++ /*InfoMemoryAccess( p );*/
+ p = (char*)&p;
+ InfoMemoryAccess( p );
+ InfoMemoryTypeAccess( t_short );
diff --git a/app-office/openoffice-ximian/files/1.1.4/pthreadlink-fix.patch b/app-office/openoffice-ximian/files/1.1.4/pthreadlink-fix.patch
new file mode 100644
index 000000000000..381221095037
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/pthreadlink-fix.patch
@@ -0,0 +1,32 @@
+diff -ur solenv.orig/inc/unxlngi4.mk solenv/inc/unxlngi4.mk
+--- solenv.orig/inc/unxlngi4.mk 2004-10-23 20:07:59.714144264 +0200
++++ solenv/inc/unxlngi4.mk 2004-10-23 20:08:36.190599000 +0200
+@@ -151,13 +151,13 @@
+ LINK*=$(CC)
+
+ # default linker flags
+-LINKFLAGSDEFS*=-z defs
++LINKFLAGSDEFS*=-Wl,-z,defs
+ LINKFLAGSRUNPATH*=-Wl,-rpath,\''$$ORIGIN'\'
+-LINKFLAGS=-O2 -Bsymbolic -z combreloc $(LINKFLAGSDEFS) $(LINKFLAGSRUNPATH)
++LINKFLAGS=-Wl,-O2 -Bsymbolic,-z,combreloc $(LINKFLAGSDEFS) $(LINKFLAGSRUNPATH)
+
+ # linker flags for linking applications
+-LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
+-LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
++LINKFLAGSAPPGUI= -Wl,-export-dynamic
++LINKFLAGSAPPCUI= -Wl,-export-dynamic
+
+ # linker flags for linking shared libraries
+ LINKFLAGSSHLGUI= -shared
+@@ -198,8 +198,8 @@
+
+ LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive
+
+-LIBSTLPORT=$(DYNAMIC) -lstlport_gcc -lstdc++
+-LIBSTLPORTST=$(STATIC) -lstlport_gcc $(DYNAMIC)
++LIBSTLPORT=$(DYNAMIC) -lstlport_gcc -lpthread -lstdc++
++LIBSTLPORTST=$(STATIC) -lstlport_gcc -lpthread $(DYNAMIC)
+
+ #FILLUPARC=$(STATIC) -lsupc++ $(DYNAMIC)
+
diff --git a/app-office/openoffice-ximian/files/1.1.4/pyunolink-fix.patch b/app-office/openoffice-ximian/files/1.1.4/pyunolink-fix.patch
new file mode 100644
index 000000000000..6d8ce6323868
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/pyunolink-fix.patch
@@ -0,0 +1,14 @@
+--- pyuno.orig/source/module/makefile.mk 2005-01-18 11:59:23.462336464 +0100
++++ pyuno/source/module/makefile.mk 2005-01-18 11:59:42.289474304 +0100
+@@ -82,9 +82,9 @@
+ # so this library cannot be checked
+ SHL1NOCHECK=yes
+ PYUNORC=pyunorc
+-.IF "$(OS)"=="SOLARIS" || "$(OS)"=="MACOSX"
++#.IF "$(OS)"=="SOLARIS" || "$(OS)"=="MACOSX"
+ PYTHONLIB=-lpython
+-.ENDIF
++#.ENDIF
+ .ELSE
+ # on windows, the python executable also uses the shared library,
+ # so we link pyuno directly to it
diff --git a/app-office/openoffice-ximian/files/1.1.4/regcompfix.patch b/app-office/openoffice-ximian/files/1.1.4/regcompfix.patch
new file mode 100644
index 000000000000..04fb5a3a9a89
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/regcompfix.patch
@@ -0,0 +1,22 @@
+-- cpputools/source/registercomponent/makefile.mk.bak 2004-07-16 13:06:39.000000000 +0800
++++ cpputools/source/registercomponent/makefile.mk 2004-07-16 13:06:49.000000000 +0800
+@@ -75,7 +75,7 @@
+
+ UNOUCROUT = $(OUT)$/inc$/$(TARGET)
+ INCPRE += $(UNOUCROUT)
+-CPPUMAKERFLAGS += -C
++CPPUMAKERFLAGS =
+
+ UNOTYPES=\
+ com.sun.star.uno.TypeClass \
+--- cpputools/source/regsingleton/makefile.mk.bak 2004-07-16 13:07:04.000000000 +0800
++++ cpputools/source/regsingleton/makefile.mk 2004-07-16 13:07:11.000000000 +0800
+@@ -76,7 +76,7 @@
+
+ UNOUCROUT = $(OUT)$/inc$/$(TARGET)
+ INCPRE += $(UNOUCROUT)
+-CPPUMAKERFLAGS+= -C
++CPPUMAKERFLAGS=
+
+ UNOTYPES= \
+ com.sun.star.uno.TypeClass \
diff --git a/app-office/openoffice-ximian/files/1.1.4/xooffice-wrapper-1.3 b/app-office/openoffice-ximian/files/1.1.4/xooffice-wrapper-1.3
new file mode 100644
index 000000000000..dcdd4024add8
--- /dev/null
+++ b/app-office/openoffice-ximian/files/1.1.4/xooffice-wrapper-1.3
@@ -0,0 +1,175 @@
+#!/bin/sh
+#
+# Wrapper script for openoffice
+#
+# (C) Peter 'Nidd' Novodvorsky, 2001,2002
+# (C) Martin 'empty' Quinson, 2002.
+# Modifications by Chris Halls
+# Modifications by Lucien Saviot
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+# this string should be exactly as in ~/.xversionrc
+PV=<pv>
+OOVERSION="OpenOffice.org ${PV}"
+
+##
+## Source system configuration file
+##
+[ -r /etc/openoffice/openoffice.conf ] && . /etc/openoffice/openoffice.conf
+
+# Migration to new user install dir
+if [ -d "$HOME/.xopenoffice/1.1.3" ] ; then
+ mv $HOME/.xopenoffice/1.1.3 $HOME/.xopenoffice/1.1.4
+ sed -i -e s/1.1.3/1.1.4/g $HOME/.xversionrc
+ sed -i -e s/1.1.3/1.1.4/g $HOME/.xopenoffice/1.1.4/user/basic/*.xlc
+ echo "Your user install dir has been moved over to the new version"
+fi
+
+if [ ! -f "/proc/version" ] ; then
+ echo "--- Warning - OO.o will not work without a mounted /proc filesystem ---"
+fi
+
+###
+### Get user settings directory from ~/.xversionrc and echo directory name to stdout
+### get_settings_dir <Version>
+### return: 0 - directory found,
+### 1 - ~/.xversionrc non existent
+### 2 - entry exists in ~/.xversionrc but directory not found
+### 3 - ~/.xversionrc exists but no entry found
+get_settings_dir()
+{
+ [ -r ${HOME}/.xversionrc ] || exit 1
+ # warning, .xversionrc is DOS encoded so strip ^M
+ settings_dir="`tr -d '\r' < ~/.xversionrc | sed -n "/^$1=/s%^$1=file://\(.*\)$%\1%p"`"
+ echo "$settings_dir"
+ [ -n "$settings_dir" ] || exit 3
+ [ -d "$settings_dir" ] || exit 2
+}
+
+##
+## where does OO live for this user ?
+##
+OOHOME="`get_settings_dir "$OOVERSION"`"
+if [ $? -eq 2 ] ; then
+ # .xversionrc contains a version yet the directory does not exist
+ echo "I'm confused because I can't find OpenOffice's user files."
+ echo "Your ~/.xversionrc file tells they should be under $OOHOME,"
+ echo "but they are not. Please fix the situation manually."
+ echo "You may want to edit ~/.xversionrc to indicate where is OO"
+ echo "installed, or remove it if you did remove your installation"
+ echo "directory manually (you bad one)."
+ exit 1
+fi
+
+## search LOCALE
+if [ -n "$LC_ALL" ]; then
+ LOCALE="$LC_ALL"
+ # OOo doesn't understand LC_ALL, so set LANG
+ LANG="$LC_ALL"
+elif [ -n "$LANG" ]; then
+ LOCALE="$LANG"
+elif [ -n "$LC_MESSAGES" ]; then
+ LOCALE="$LC_MESSAGES"
+ LANG="$LC_MESSAGES"
+else
+ LOCALE="en_US"
+fi
+
+# Set locale to en_US if locale is C
+if [ "x$LOCALE" = "xC" ] ; then LOCALE="en_US"; fi
+
+LOCALEOO=`echo $LOCALE | sed 's/_/-/'`
+
+##
+## install OO for this user if needed
+##
+if [ -z "$OOHOME" ] ; then
+ if [ -e /etc/ximian-openoffice/autoresponse-<pv>.conf ] && \
+ grep -q DESTINATIONPATH /etc/ximian-openoffice/autoresponse-<pv>.conf ; then
+
+ # first install
+ OOHOME=`grep DESTINATIONPATH /etc/ximian-openoffice/autoresponse-<pv>.conf | \
+ sed -e 's/DESTINATIONPATH=//' -e "s|<home>|$HOME|"`
+
+ if [ -d "$OOHOME" ]; then
+ echo "openoffice.org: You have no entry for $OOVERSION in ~/.xversionrc, "
+ echo "yet the directory $OOHOME exists."
+ echo "Please remove $OOHOME and try again."
+ exit 1
+ fi
+
+ echo "running openoffice.org setup..."
+ if ! /opt/Ximian-OpenOffice/program/setup -R:/etc/ximian-openoffice/autoresponse-<pv>.conf >& /dev/null; then
+ echo "setup failed.. abort"
+ exit 1
+ fi
+
+ echo "Setup complete. Running openoffice.org..."
+
+else
+ echo "openoffice.org: Damnit! I can't find OpenOffice's user files. Did you break"
+ echo "the /etc/ximian-openoffice/autoresponse-<pv>.conf file manually ?"
+ echo "This file should contain DESTINATIONPATH"
+ exit 1
+ fi
+fi
+
+##
+## If no file is specified on the command line, which application to start?
+## The wrapper can be called from several links in /usr/bin
+##
+if [ $# = 0 ]; then
+ case `basename $0` in
+ xoocalc) set -- private:factory/scalc;;
+ xoodraw) set -- private:factory/sdraw;;
+ xooimpress) set -- private:factory/simpress;;
+ xoomath) set -- private:factory/smath;;
+ xooweb) set -- private:factory/swriter/web;;
+ xoowriter) set -- private:factory/swriter;;
+ xoomaster) set -- private:factory/swriter/Global;;
+ esac
+fi
+
+## Previous dead installation?
+[ -d $HOME/.xopenoffice/user ] && echo "Warning: you have a user settings directory from 1.0.0 in ~/.xopenoffice/user - this is no longer used"
+
+if [ ! -s $OOHOME/setup ]; then
+ echo "${OOHOME}/setup links to nothing, resetting link"
+ ln -sf /opt/Ximian-OpenOffice/program/setup ${OOHOME}/setup
+fi
+if [ ! -s $OOHOME/soffice ]; then
+ echo "${OOHOME}/soffice links to nothing, resetting link"
+ ln -sf /opt/Ximian-OpenOffice/program/soffice ${OOHOME}/soffice
+fi
+if [ ! -s $OOHOME/spadmin ]; then
+ echo "${OOHOME}/spadmin links to nothing, resetting link"
+ ln -sf /opt/Ximian-OpenOffice/program/soffice ${OOHOME}/spadmin
+fi
+
+
+##
+## That's it. Launch the beast (with the given args)
+##
+LANG=$LOCALE
+export LANG
+case `basename $0` in
+ xoosetup) exec "$OOHOME/setup"
+ ;;
+ xoopadmin) exec "$OOHOME/spadmin"
+ ;;
+ *) exec "$OOHOME/soffice" "$@"
+ ;;
+esac
diff --git a/app-office/openoffice-ximian/files/digest-openoffice-ximian-1.3.8 b/app-office/openoffice-ximian/files/digest-openoffice-ximian-1.3.8
new file mode 100644
index 000000000000..93d8f83dc15b
--- /dev/null
+++ b/app-office/openoffice-ximian/files/digest-openoffice-ximian-1.3.8
@@ -0,0 +1,7 @@
+MD5 20c10db97865ae4c51dc827d668b8939 OOo_1.1.4_source.tar.gz 219743530
+MD5 4c01c84f1212369ceb369567ed06d1a2 STLport-4.6.2.tar.gz 755958
+MD5 766efafe1d2a606f2f31f4e613244e96 ooo-build-1.3.8.tar.gz 3179063
+MD5 c3d8c9f5ae2abbe1b7091817265b9ef3 libwpd-snap-20040823.tar.gz 447710
+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.8.ebuild b/app-office/openoffice-ximian/openoffice-ximian-1.3.8.ebuild
new file mode 100644
index 000000000000..63cd56190890
--- /dev/null
+++ b/app-office/openoffice-ximian/openoffice-ximian-1.3.8.ebuild
@@ -0,0 +1,615 @@
+# 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.8.ebuild,v 1.1 2005/01/28 07:29:39 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 toolchain-funcs
+
+IUSE="curl gnome hardened java kde 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://ooo.ximian.com/packages/${PATCHLEVEL}/ooo-build-${PV}.tar.gz
+ http://ooo.ximian.com/packages/libwpd-snap-20040823.tar.gz
+ mirror://gentoo/OOo-gentoo-splash-1.1.tar.bz2
+ gnome? ( http://ooo.ximian.com/packages/ooo-icons-${ICON_VER}.tar.gz )
+ !kde? ( http://ooo.ximian.com/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://ooo.ximian.com"
+
+LICENSE="|| ( LGPL-2 SISSL-1.1 )"
+SLOT="0"
+KEYWORDS="~x86 ~ppc"
+
+RDEPEND="!app-office/openoffice-ximian-bin
+ virtual/x11
+ virtual/libc
+ virtual/lpr
+ >=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}
+ >=sys-apps/findutils-4.1.20-r1
+ app-shells/tcsh
+ dev-util/pkgconfig
+ dev-util/intltool
+ curl? ( net-misc/curl )
+ zlib? ( sys-libs/zlib )
+ sys-libs/pam
+ !dev-util/dmake
+ java? ( >=virtual/jdk-1.4.1 )
+ !java? ( dev-libs/libxslt )"
+
+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
+
+ #Fix db-check
+ epatch ${FILESDIR}/${OO_VER}/config-db-checkfix.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
+
+ # 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"
+
+ # GCC 3.4.x fixes
+ if [ "$(gcc-version)" = "3.4" ]
+ then
+ epatch ${PATCHDIR}/patches/gcc34/gcc34-main.diff
+ epatch ${PATCHDIR}/patches/gcc34/gcc34-sal-link-to-libsupc++.diff
+ use !java && epatch ${PATCHDIR}/patches/gcc34/gcc34-nojava-fix.diff
+ use nptl && epatch ${PATCHDIR}/patches/gcc34/gcc34-nptl-fix.diff
+ use gnome && epatch ${PATCHDIR}/patches/gcc34/gcc34-gnome.diff
+ fi
+
+ #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-snap-20040823.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
+
+ # 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="${CFLAGS}"
+
+ if [ -z "$(grep 'CCCOMP' ${S}/${LinuxEnvSet})" ]
+ then
+ # Set CCCOMP and CXXCOMP. This is still needed for STLport
+ export CCCOMP="$(tc-getCC)"
+ export CXXCOMP="$(tc-getCXX)"
+ fi
+
+ 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"
+
+ # 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"
+}