# ChangeLog for app-office/openoffice
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-office/openoffice/ChangeLog,v 1.306 2007/03/07 22:14:31 wolf31o2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-office/openoffice/ChangeLog,v 1.307 2007/03/16 09:05:40 suka Exp $
+
+*openoffice-2.1.0-r1 (16 Mar 2007)
+
+ 16 Mar 2007; Andreas Proschofsky <suka@gentoo.org>
+ +files/2.1.0/ooo-build-2.1.6-hyperlinks-quotes.diff,
+ +files/2.1.0/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff,
+ +openoffice-2.1.0-r1.ebuild:
+ Bump for security bug #170828, also another update to the patchset
+ (ooo-build-2.1.8)
07 Mar 2007; Chris Gianelloni <wolf31o2@gentoo.org>
openoffice-2.0.4.ebuild, openoffice-2.1.0.ebuild:
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
AUX 2.0.4/disable-regcomp-java.diff 965 RMD160 43ddf498738802101e3a4d1df15dbd8fc569482e SHA1 d5768499c6bf9290dd0dab867918596369dbbfab SHA256 0a3656e0a34c0069f0096251eb245efc7ebd1b3ec2870592065695a556b17b19
MD5 c4d90c5fb8d48a5feb3ec4cd6d6e3f38 files/2.0.4/disable-regcomp-java.diff 965
RMD160 43ddf498738802101e3a4d1df15dbd8fc569482e files/2.0.4/disable-regcomp-java.diff 965
MD5 0ac100c746d44b8f92d7034cf41db54b files/2.1.0/gentoo-2.1.0.diff 181
RMD160 8ac1700851de1216bf6c342fd697d65d123b13ae files/2.1.0/gentoo-2.1.0.diff 181
SHA256 c0bcfd92976525c66f9e77a728c1dc71c8f09712177af9454d286082ba6e3d8d files/2.1.0/gentoo-2.1.0.diff 181
+AUX 2.1.0/ooo-build-2.1.6-hyperlinks-quotes.diff 14411 RMD160 01dc2b8c3e703a3efe2168b1cc7c645696acbadb SHA1 79a36df355e018816f046a572c08161e8a98bb04 SHA256 ad22053b6adea4ce813e588f57733cbd5711662c636aa5847b4408e15787c4ae
+MD5 37fd32448b01b513ac2df85d742d22d7 files/2.1.0/ooo-build-2.1.6-hyperlinks-quotes.diff 14411
+RMD160 01dc2b8c3e703a3efe2168b1cc7c645696acbadb files/2.1.0/ooo-build-2.1.6-hyperlinks-quotes.diff 14411
+SHA256 ad22053b6adea4ce813e588f57733cbd5711662c636aa5847b4408e15787c4ae files/2.1.0/ooo-build-2.1.6-hyperlinks-quotes.diff 14411
+AUX 2.1.0/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff 1536 RMD160 0c42927cfcb4809d06dcc2f532d881ddd6ce2a74 SHA1 9265887b8f7f64ed6c264cdee70fb4c3c51711ef SHA256 01dd19928cf03a1be4252f3bda669fc41fde13360f893d8b5e5aaba2cc4e5f55
+MD5 96ed8c34be60f1e96c153f32a7015fc3 files/2.1.0/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff 1536
+RMD160 0c42927cfcb4809d06dcc2f532d881ddd6ce2a74 files/2.1.0/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff 1536
+SHA256 01dd19928cf03a1be4252f3bda669fc41fde13360f893d8b5e5aaba2cc4e5f55 files/2.1.0/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff 1536
AUX 2.1.0/ooo-wrapper.in 2650 RMD160 081f34f44be85f13224b59c7199fa27265563760 SHA1 77654213fbc2f1ef20e2a76b4bc87230865036c8 SHA256 ec974e0323c7cf89bea75f56ccc6db2fd90b2be45e676851ea62d7130defcdce
MD5 3998f6afdb1e322b138d3d1c65449866 files/2.1.0/ooo-wrapper.in 2650
RMD160 081f34f44be85f13224b59c7199fa27265563760 files/2.1.0/ooo-wrapper.in 2650
DIST lp_solve_5.5.tar.gz 495452 RMD160 4f54d0d2116998da5de38cf51505835a8fd6e412 SHA1 1cb19a392a4b3370adc3513964f7a351ad605875 SHA256 6f9946c08c8fc3c97f74b58db8a62eac74027a7e709d81ee968716f7386682f1
DIST ooo-build-2.0.4.11.tar.gz 4675395 RMD160 73f7f981f3d4a15f879bbd8cc41d1690be4d6dd7 SHA1 102c4df8e14a95bbf410c0364089d39c4f70e563 SHA256 f3164e2242fa8bbe4e196bcac8c9ab332f33542940c3677d58bd13fc3a3c55ca
DIST ooo-build-2.1.7.tar.gz 4250358 RMD160 91d5d40affc7ca8a5db7b4324e5ba28733f14bc6 SHA1 c7ea704722544da247f544557b4885120c676938 SHA256 8ef5f8f65619f32dfe0ced5b53901a28696b524f9584658e36c76fae632e724e
+DIST ooo-build-2.1.8.tar.gz 4256705 RMD160 f95b77237f5e97f6b991ae039435f40125f8d21f SHA1 8718753322ba2e0a9c5ae850617e2f228179bc1f SHA256 cfe1f5ccab51a5bca175c1c0910c355bf86f5f7896b3780d3f4c6c30f8703173
DIST unowinreg.dll 6144 RMD160 9e2a2789a96842a2aec747a62dee3db3e8370761 SHA1 712720da502d36175cd7aa05cb1862ee0330638c SHA256 f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c
DIST xt-20051206-src-only.zip 423516 RMD160 5fd5bb66b6586809e27fc240d624d64589ec4b9d SHA1 edaba936383f5e1d6d245b4c826c6207825a8297 SHA256 38121476c238c81760e1285e3aeea9eda1a7ab18c0c31a54e3645910bd8fb38e
EBUILD openoffice-2.0.4.ebuild 9992 RMD160 850c171baef4e4b4f97f58e8f26f9195940337c2 SHA1 1f805b200acf417544433c5508788ef475e8c6eb SHA256 b33c49ae6c40db39e135f735c29ef23cff7fdd32d143c0da0bcae6b81beb0b7c
MD5 37fbef8cc00b926131d1f85e55eb356e openoffice-2.0.4.ebuild 9992
RMD160 850c171baef4e4b4f97f58e8f26f9195940337c2 openoffice-2.0.4.ebuild 9992
SHA256 b33c49ae6c40db39e135f735c29ef23cff7fdd32d143c0da0bcae6b81beb0b7c openoffice-2.0.4.ebuild 9992
+EBUILD openoffice-2.1.0-r1.ebuild 11854 RMD160 d02d802b9a0d2960bd985313fa3368af1ef1652a SHA1 f56b92f2f682667cc46c4e7a917fb8d0268d7b92 SHA256 5aef4a0cf2a72c1e87e6f719af895f0f2fe5de1ce8d4ff11c2d04c38b5bc6522
+MD5 c7466f0f3da580582be95dd15af6bdad openoffice-2.1.0-r1.ebuild 11854
+RMD160 d02d802b9a0d2960bd985313fa3368af1ef1652a openoffice-2.1.0-r1.ebuild 11854
+SHA256 5aef4a0cf2a72c1e87e6f719af895f0f2fe5de1ce8d4ff11c2d04c38b5bc6522 openoffice-2.1.0-r1.ebuild 11854
EBUILD openoffice-2.1.0.ebuild 11712 RMD160 936c4b54f74318d8efbb4527f7a546b82d7322f3 SHA1 f8c73707a15f49446ed685aab3fed5e5cb1fdf57 SHA256 79ee1e56252692c5ff5ea0213b79e6686190e243c8d18005fc98d8fc67b47f82
MD5 708176470695d99ae00ce5c3f1485aef openoffice-2.1.0.ebuild 11712
RMD160 936c4b54f74318d8efbb4527f7a546b82d7322f3 openoffice-2.1.0.ebuild 11712
SHA256 79ee1e56252692c5ff5ea0213b79e6686190e243c8d18005fc98d8fc67b47f82 openoffice-2.1.0.ebuild 11712
-MISC ChangeLog 63718 RMD160 c04362e2c7e8d568d376f131502c5281de53e73b SHA1 bd881058442f0660aff9f5aeea922d1413cdeae1 SHA256 3bbb1d29e3ad833f7bcd55f5bcded8720a78a218778b14f66478ad8d3bba73f6
-MD5 2c3cec790803aff46fe4d68f758430ae ChangeLog 63718
-RMD160 c04362e2c7e8d568d376f131502c5281de53e73b ChangeLog 63718
-SHA256 3bbb1d29e3ad833f7bcd55f5bcded8720a78a218778b14f66478ad8d3bba73f6 ChangeLog 63718
+MISC ChangeLog 64048 RMD160 2c846989343c7a87370c814b7d60843b38b3d625 SHA1 57c9839fdb45e6b19547ccaee41034045a4a4827 SHA256 8270cdcb7442a69bc3560e9b785037634348ba17f150cae718d4eb2190219c21
+MD5 5840b3e7ae785d0fe9962eca0279fe48 ChangeLog 64048
+RMD160 2c846989343c7a87370c814b7d60843b38b3d625 ChangeLog 64048
+SHA256 8270cdcb7442a69bc3560e9b785037634348ba17f150cae718d4eb2190219c21 ChangeLog 64048
MISC metadata.xml 461 RMD160 3e99c165e962e73417462c6df7a476a558b3ae18 SHA1 dc88aabf10f5ff2f3e4613172ba8f12abe4d0f59 SHA256 7a25927f2c830703539753c0f7295551795419ef0d05b72db505a2ac1094d291
MD5 e3ec4a70395943b59adad7fc4f0538d7 metadata.xml 461
RMD160 3e99c165e962e73417462c6df7a476a558b3ae18 metadata.xml 461
MD5 c85832554136787a45115b4aaf9938f6 files/digest-openoffice-2.1.0 3232
RMD160 51dc0494f89693175424d707a90934923aaa62d1 files/digest-openoffice-2.1.0 3232
SHA256 2e2b3e9ccea46b0016c000f9aad9c3742e742f16a1215119f306bf8ed469e9a9 files/digest-openoffice-2.1.0 3232
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.2 (GNU/Linux)
-
-iD8DBQFF7zlNkT4lNIS36YERAq2kAKC7GkvDoAPRj6A6oeUl+nsks9TSkgCgtZv7
-dPW0xP7Qj/SDR5wudDDkvfA=
-=49/Q
------END PGP SIGNATURE-----
+MD5 acb3faf6e0310d9967b1a4cc99c4061a files/digest-openoffice-2.1.0-r1 3232
+RMD160 16e3352760c50dd8f4346b2b4295d4981e92b69a files/digest-openoffice-2.1.0-r1 3232
+SHA256 dbdeecfcfda608071d33015e7eb524b541f9e86d998e01bbe4cfa10a70b4e2f9 files/digest-openoffice-2.1.0-r1 3232
--- /dev/null
+--- patches/src680/apply
++++ patches/src680/apply
+@@ -400,6 +400,10 @@
+ # silly leaks around the place
+ leak-sal-file.diff, i#49510, michael
+
++[ Fixes ]
++# Security issue with hyper links, CVE-2007-0239, n#241636
++hyperlinks-2.1.diff
++cws-obr04-quotes.diff
+
+ [ QuickStarter ]
+ # External splash screen implementation / 2nd time accelerator
+--- patches/src680/cws-obr04-quotes.diff
++++ patches/src680/cws-obr04-quotes.diff
+@@ -0,0 +1,123 @@
++Index: shell/source/unix/misc/cde-open-url.sh
++===================================================================
++RCS file: /cvs/gsl/shell/source/unix/misc/cde-open-url.sh,v
++retrieving revision 1.3
++retrieving revision 1.3.120.1
++diff -u -p -u -p -r1.3 -r1.3.120.1
++--- shell/source/unix/misc/cde-open-url.sh 27 Sep 2005 12:54:22 -0000 1.3
+++++ shell/source/unix/misc/cde-open-url.sh 20 Dec 2006 15:03:24 -0000 1.3.120.1
++@@ -58,5 +58,5 @@ else
++ fi
++
++ if [ -z "$TMPFILE" ]; then exit 1; fi
++-( echo $1 > "$TMPFILE"; dtaction Open "$TMPFILE"; rm -f "$TMPFILE" ) &
+++( echo "$1" > "$TMPFILE"; dtaction Open "$TMPFILE"; rm -f "$TMPFILE" ) &
++ exit 0
++Index: shell/source/unix/misc/gnome-open-url.sh
++===================================================================
++RCS file: /cvs/gsl/shell/source/unix/misc/gnome-open-url.sh,v
++retrieving revision 1.3
++retrieving revision 1.3.166.1
++diff -u -p -u -p -r1.3 -r1.3.166.1
++--- shell/source/unix/misc/gnome-open-url.sh 13 May 2005 07:31:07 -0000 1.3
+++++ shell/source/unix/misc/gnome-open-url.sh 20 Dec 2006 15:03:25 -0000 1.3.166.1
++@@ -50,6 +50,6 @@ case `uname -s` in
++ esac
++
++ # use gnome-open utility coming with libgnome if available
++-gnome-open $1 2>/dev/null || "$0.bin" $1
+++gnome-open "$1" 2>/dev/null || "$0.bin" $1
++
++ exit 0
++Index: shell/source/unix/misc/kde-open-url.sh
++===================================================================
++RCS file: /cvs/gsl/shell/source/unix/misc/kde-open-url.sh,v
++retrieving revision 1.2
++retrieving revision 1.2.254.1
++diff -u -p -u -p -r1.2 -r1.2.254.1
++--- shell/source/unix/misc/kde-open-url.sh 10 May 2004 13:08:06 -0000 1.2
+++++ shell/source/unix/misc/kde-open-url.sh 20 Dec 2006 15:03:25 -0000 1.2.254.1
++@@ -51,9 +51,9 @@ esac
++
++ # special handling for mailto: uris
++ if echo $1 | grep '^mailto:' > /dev/null; then
++- kmailservice $1 &
+++ kmailservice "$1" &
++ else
++- kfmclient openURL $1 &
+++ kfmclient openURL "$1" &
++ fi
++
++ exit 0
++Index: shell/source/unix/misc/open-url.sh
++===================================================================
++RCS file: /cvs/gsl/shell/source/unix/misc/open-url.sh,v
++retrieving revision 1.3
++retrieving revision 1.3.120.2
++diff -u -p -u -p -r1.3 -r1.3.120.2
++--- shell/source/unix/misc/open-url.sh 27 Sep 2005 12:54:42 -0000 1.3
+++++ shell/source/unix/misc/open-url.sh 20 Dec 2006 15:03:25 -0000 1.3.120.2
++@@ -96,15 +96,15 @@ esac
++ # special handling for mailto: uris
++ if echo $1 | grep '^mailto:' > /dev/null; then
++ # check $MAILER variable
++- if [ $MAILER ]; then
++- $MAILER $1 &
+++ if [ ! -z "$MAILER" ]; then
+++ $MAILER "$1" &
++ exit 0
++ else
++ # mozilla derivates may need -remote semantics
++ for i in thunderbird mozilla netscape; do
++ mailer=`which $i`
++ if [ ! -z "$mailer" ]; then
++- run_mozilla $mailer $1
+++ run_mozilla "$mailer" "$1"
++ exit 0
++ fi
++ done
++@@ -113,15 +113,15 @@ if echo $1 | grep '^mailto:' > /dev/null
++ fi
++ else
++ # check $BROWSER variable
++- if [ $BROWSER ]; then
++- $BROWSER $1 &
+++ if [ ! -z "$BROWSER" ]; then
+++ $BROWSER "$1" &
++ exit 0
++ else
++ # mozilla derivates may need -remote semantics
++ for i in firefox mozilla netscape; do
++ browser=`which $i`
++ if [ ! -z "$browser" ]; then
++- run_mozilla $browser $1
+++ run_mozilla "$browser" "$1"
++ exit 0
++ fi
++ done
++Index: scp2/source/ooo/file_ooo.scp
++===================================================================
++RCS file: /cvs/installation/scp2/source/ooo/file_ooo.scp,v
++retrieving revision 1.175
++retrieving revision 1.175.10.1
++diff -u -p -u -p -r1.175 -r1.175.10.1
++--- scp2/source/ooo/file_ooo.scp 13 Dec 2006 15:14:08 -0000 1.175
+++++ scp2/source/ooo/file_ooo.scp 12 Jan 2007 08:06:00 -0000 1.175.10.1
++@@ -369,7 +369,7 @@ File gid_File_Bin_Gnome_Open_Url
++ BIN_FILE_BODY;
++ Dir = gid_Dir_Program;
++ Name = "gnome-open-url";
++- Styles = (PACKED);
+++ Styles = (PACKED, PATCH);
++ End
++
++ File gid_File_Bin_Gnome_Open_Url_Bin
++@@ -383,7 +383,7 @@ File gid_File_Bin_Kde_Open_Url
++ BIN_FILE_BODY;
++ Dir = gid_Dir_Program;
++ Name = "kde-open-url";
++- Styles = (PACKED);
+++ Styles = (PACKED, PATCH);
++ End
++
++ File gid_File_Bin_Cde_Open_Url
+--- patches/src680/hyperlinks-2.1.diff
++++ patches/src680/hyperlinks-2.1.diff
+@@ -0,0 +1,240 @@
++--- shell/source/unix/exec/shellexec.hxx.old 2005-09-07 21:54:18.000000000 +0200
+++++ shell/source/unix/exec/shellexec.hxx 2007-02-01 18:41:49.000000000 +0100
++@@ -44,6 +44,10 @@
++ #include <osl/mutex.hxx>
++ #endif
++
+++#ifndef _RTL_USTRBUF_HXX_
+++#include <rtl/ustrbuf.hxx>
+++#endif
+++
++ #ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_
++ #include <com/sun/star/lang/XServiceInfo.hpp>
++ #endif
++@@ -65,6 +69,8 @@
++ ::rtl::OString m_aDesktopEnvironment;
++ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >
++ m_xContext;
+++
+++ sal_Int32 SAL_CALL tryExecuteProcess( const rtl::OUString& aCommand, const rtl::OUString& aParameter );
++
++ public:
++ ShellExec(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& xContext);
++--- shell/source/unix/exec/shellexec.cxx.old 2006-09-17 03:41:54.000000000 +0200
+++++ shell/source/unix/exec/shellexec.cxx 2007-02-02 16:03:56.000000000 +0100
++@@ -56,10 +56,6 @@
++ #include <rtl/strbuf.hxx>
++ #endif
++
++-#ifndef _RTL_USTRBUF_HXX_
++-#include <rtl/ustrbuf.hxx>
++-#endif
++-
++ #ifndef _RTL_URI_H_
++ #include <rtl/uri.hxx>
++ #endif
++@@ -124,6 +120,47 @@
++ }
++ }
++
+++//------------------------------------------------------------------------
+++// helper method
+++//------------------------------------------------------------------------
+++
+++sal_Int32 SAL_CALL ShellExec::tryExecuteProcess( const OUString& aCommand, const OUString& aParameter )
+++{
+++ OUString aCommandURL;
+++ osl::FileBase::getFileURLFromSystemPath(aCommand, aCommandURL);
+++
+++ rtl_uString *args[] = { aCommandURL.pData, aParameter.pData };
+++ oslProcess pProcess = NULL;
+++ sal_Int32 rc = 1;
+++
+++ oslProcessError error = osl_executeProcess(
+++ args[0], /* ustrImageName */
+++ args+1, /* ustrArguments[] */
+++ 1, /* nArguments */
+++ osl_Process_WAIT | osl_Process_SEARCHPATH | osl_Process_NORMAL, /* Options */
+++ NULL, /* Security */
+++ NULL, /* ustrDirectory */
+++ NULL, /* ustrEnvironments[] */
+++ 0, /* nEnvironmentVars */
+++ &pProcess); /* pProcess*/
+++
+++ if (error == osl_Process_E_None)
+++ {
+++ error = osl_joinProcess( pProcess );
+++ if (error==osl_Process_E_None)
+++ {
+++ oslProcessInfo aProcessInfo;
+++ aProcessInfo.Size = sizeof(aProcessInfo);
+++ error = osl_getProcessInfo( pProcess, osl_Process_EXITCODE, &aProcessInfo );
+++ if (error==osl_Process_E_None)
+++ rc = aProcessInfo.Code;
+++ }
+++ }
+++ osl_freeProcessHandle(pProcess);
+++
+++ return rc;
+++}
+++
++ //-----------------------------------------------------------------------------------------
++ //
++ //-----------------------------------------------------------------------------------------
++@@ -157,23 +194,28 @@
++ void SAL_CALL ShellExec::execute( const OUString& aCommand, const OUString& aParameter, sal_Int32 /*nFlags*/ )
++ throw (IllegalArgumentException, SystemShellExecuteException, RuntimeException)
++ {
++- OStringBuffer aBuffer, aLaunchBuffer;
+++ OStringBuffer aOfficeLauncher;
+++ OUString aURL;
+++
+++ sal_Bool bTryDesktopLauncher = sal_False;
++
++ // DESKTOP_LAUNCH, see http://freedesktop.org/pipermail/xdg/2004-August/004489.html
++- static const char *pDesktopLaunch = getenv( "DESKTOP_LAUNCH" );
+++ static const char *pDesktopLauncher = getenv( "DESKTOP_LAUNCH" );
++
++ // Check wether aCommand contains a document url or not
++ sal_Int32 nIndex = aCommand.indexOf( OUString( RTL_CONSTASCII_USTRINGPARAM(":/") ) );
++
++ if( nIndex > 0 || 0 == aCommand.compareToAscii("mailto:", 7) )
++ {
++- // It seems to be a url ..
+++ // It seems to be an url ..
+++ if ( pDesktopLauncher && *pDesktopLauncher )
+++ bTryDesktopLauncher = sal_True;
+++
++ // We need to re-encode file urls because osl_getFileURLFromSystemPath converts
++ // to UTF-8 before encoding non ascii characters, which is not what other apps
++ // expect.
++- OUString aURL(
++- com::sun::star::uri::ExternalUriReferenceTranslator::create(
++- m_xContext)->translateToExternal(aCommand));
+++ aURL = com::sun::star::uri::ExternalUriReferenceTranslator::create(
+++ m_xContext)->translateToExternal(aCommand);
++ if ( aURL.getLength() == 0 && aCommand.getLength() != 0 )
++ {
++ throw RuntimeException(
++@@ -183,15 +225,17 @@
++ + aCommand),
++ static_cast< cppu::OWeakObject * >(this));
++ }
++-
+++
+++ // URL needs furher changes depending on the launcher
+++ // FIXME: Should we try pDesktopLauncher before we modify the URL?
++ #ifdef MACOSX
++- aBuffer.append("open");
+++ aOfficeLauncher.append("open");
++ #else
++ OUString aProgramURL;
++ if ( osl_Process_E_None != osl_getExecutableFile(&aProgramURL.pData) )
++ {
++ throw SystemShellExecuteException(
++- OUString(RTL_CONSTASCII_USTRINGPARAM("Cound not determine executable path")),
+++ OUString(RTL_CONSTASCII_USTRINGPARAM("Cound not determine executable path")),
++ static_cast < XSystemShellExecute * > (this), ENOENT );
++ }
++
++@@ -199,7 +243,7 @@
++ if ( FileBase::E_None != FileBase::getSystemPathFromFileURL(aProgramURL, aProgram))
++ {
++ throw SystemShellExecuteException(
++- OUString(RTL_CONSTASCII_USTRINGPARAM("Cound not convert executable path")),
+++ OUString(RTL_CONSTASCII_USTRINGPARAM("Cound not convert executable path")),
++ static_cast < XSystemShellExecute * > (this), ENOENT );
++ }
++
++@@ -208,7 +252,7 @@
++ OString aTmp = OUStringToOString(aProgram, osl_getThreadTextEncoding());
++ nIndex = aTmp.lastIndexOf('/');
++ if (nIndex > 0)
++- aBuffer.append(aTmp.copy(0, nIndex+1));
+++ aOfficeLauncher.append(aTmp.copy(0, nIndex+1));
++
++ // Respect the desktop environment - if there is an executable named
++ // <desktop-environement-is>-open-url, pass the url to this one instead
++@@ -216,17 +260,17 @@
++ if ( m_aDesktopEnvironment.getLength() > 0 )
++ {
++ OString aDesktopEnvironment(m_aDesktopEnvironment.toAsciiLowerCase());
++- OStringBuffer aCopy(aBuffer);
+++ OStringBuffer aCopy(aOfficeLauncher);
++
++ aCopy.append(aDesktopEnvironment);
++ aCopy.append("-open-url");
++
++ if ( 0 == access( aCopy.getStr(), X_OK) )
++ {
++- aBuffer.append(aDesktopEnvironment);
++- aBuffer.append("-");
+++ aOfficeLauncher.append(aDesktopEnvironment);
+++ aOfficeLauncher.append("-");
++
++- /* CDE requires file urls to be decoded */
+++ /* CDE requires file urls to be decoded */
++ if ( m_aDesktopEnvironment.equals("CDE") && 0 == aURL.compareToAscii("file://", 7) )
++ {
++ aURL = rtl::Uri::decode(aURL, rtl_UriDecodeWithCharset, osl_getThreadTextEncoding());
++@@ -234,44 +278,30 @@
++ }
++ }
++
++- aBuffer.append("open-url");
+++ aOfficeLauncher.append("open-url");
++ #endif
++- aBuffer.append(" \'");
++- aBuffer.append(OUStringToOString(aURL, osl_getThreadTextEncoding()));
++- aBuffer.append("\'");
++-
++- if ( pDesktopLaunch && *pDesktopLaunch )
++- {
++- aLaunchBuffer.append( pDesktopLaunch );
++- aLaunchBuffer.append( " \'" );
++- aLaunchBuffer.append(OUStringToOString(aURL, osl_getThreadTextEncoding()));
++- aLaunchBuffer.append( "\'" );
++- }
++ } else {
++- aBuffer.append(OUStringToOString(aCommand, osl_getThreadTextEncoding()));
++- aBuffer.append(" ");
++- aBuffer.append(OUStringToOString(aParameter, osl_getThreadTextEncoding()));
+++ aOfficeLauncher.append(OUStringToOString(aCommand, osl_getThreadTextEncoding()));
+++ aURL = aParameter;
++ }
++
++- // Prefer DESKTOP_LAUNCH when available
++- if ( aLaunchBuffer.getLength() > 0 )
+++ if ( bTryDesktopLauncher )
++ {
++- FILE *pLaunch = popen( aLaunchBuffer.makeStringAndClear().getStr(), "w" );
++- if ( pLaunch != NULL )
++- {
++- if ( 0 == pclose( pLaunch ) )
++- return;
++- }
++- // Failed, do not try DESKTOP_LAUNCH any more
++- pDesktopLaunch = NULL;
+++ sal_Int32 nErr = tryExecuteProcess( OUString::createFromAscii(pDesktopLauncher), aURL);
+++ if ( nErr )
+++ // Failed, do not try DESKTOP_LAUNCH any more
+++ pDesktopLauncher = NULL;
+++ else
+++ return;
++ }
++
++- OString cmd = aBuffer.makeStringAndClear();
++- if ( 0 != pclose(popen(cmd.getStr(), "w")) )
+++ OUString aOfficeLauncherOUStr = ::rtl::OStringToOUString(aOfficeLauncher.makeStringAndClear(), osl_getThreadTextEncoding());
+++ sal_Int32 nErr = tryExecuteProcess( aOfficeLauncherOUStr, aURL);
+++ if ( nErr )
++ {
++- int nerr = errno;
++- throw SystemShellExecuteException(OUString::createFromAscii( strerror( nerr ) ),
++- static_cast < XSystemShellExecute * > (this), nerr );
+++ OUString msg = OUString::createFromAscii( "Failed to execute ") + aOfficeLauncherOUStr;
+++ throw SystemShellExecuteException(msg,
+++ static_cast < XSystemShellExecute * > (this), nErr );
++ }
++ }
++
--- /dev/null
+--- patches/src680/apply
++++ patches/src680/apply
+@@ -405,6 +405,9 @@
+ hyperlinks-2.1.diff
+ cws-obr04-quotes.diff
+
++# Critical vulnerability in OpenOffice StarCalc file format parser, CVE-2007-0238, n#241652
++starcalc-file-format-parser-2.2.diff
++
+ [ QuickStarter ]
+ # External splash screen implementation / 2nd time accelerator
+ # (Old version of these is in CWS unxsplash)
+--- patches/src680/starcalc-file-format-parser-2.2.diff
++++ patches/src680/starcalc-file-format-parser-2.2.diff
+@@ -0,0 +1,28 @@
++Index: sc/source/filter/starcalc/scflt.cxx
++===================================================================
++RCS file: /cvs/sc/sc/source/filter/starcalc/scflt.cxx,v
++retrieving revision 1.16
++retrieving revision 1.16.84.1
++diff -u -p -u -p -r1.16 -r1.16.84.1
++--- sc/source/filter/starcalc/scflt.cxx 5 Oct 2006 16:21:16 -0000 1.16
+++++ sc/source/filter/starcalc/scflt.cxx 10 Jan 2007 14:31:00 -0000 1.16.84.1
++@@ -1770,12 +1770,13 @@ void Sc10Import::LoadCol(SCCOL Col, SCTA
++ rStream >> NoteLen;
++ if (NoteLen != 0)
++ {
++- sal_Char Note[4096];
++- rStream.Read(Note, NoteLen);
++- Note[NoteLen] = 0;
++- String aText( SC10TOSTRING(Note));
++- ScPostIt aNote(aText, pDoc);
+++ sal_Char* pNote = new sal_Char[NoteLen+1];
+++ rStream.Read(pNote, NoteLen);
+++ pNote[NoteLen] = 0;
+++ String aText( SC10TOSTRING(pNote));
+++ ScPostIt aNote(aText, pDoc);
++ pDoc->SetNote(Col, static_cast<SCROW> (Row), Tab, aNote );
+++ delete [] pNote;
++ }
++ }
++ pPrgrsBar->Progress();
++
--- /dev/null
+MD5 927c57be1e322d1d16a3e08f2e581b02 OOo_2.1.0_src_binfilter.tar.bz2 16349604
+RMD160 69625f4ac6e1c72bf901b69173195009a78d33ba OOo_2.1.0_src_binfilter.tar.bz2 16349604
+SHA256 0145872512badc637b17be36444211b17d83676ce3570068950dac763ea65be0 OOo_2.1.0_src_binfilter.tar.bz2 16349604
+MD5 bf80f2a2d6139787b17c018ad7a98c8e OOo_2.1.0_src_core.tar.bz2 122566860
+RMD160 11256b125fdc412480d90983b0f80f35d4833e9a OOo_2.1.0_src_core.tar.bz2 122566860
+SHA256 44d1f4696a3eddef02fd3b4dde07c2049884953dcd96c1121513ad6eddd5db77 OOo_2.1.0_src_core.tar.bz2 122566860
+MD5 46c8140b4ab5ef2b528a0e0596c88dec OOo_2.1.0_src_l10n.tar.bz2 73603380
+RMD160 4b8e95a35f2222330790a442aa1a9a4988d9d37e OOo_2.1.0_src_l10n.tar.bz2 73603380
+SHA256 269a08ca3e14cf69f4ad82c4743029aaf87510c9a9b7c6dfd9b35f6b4c75bbd1 OOo_2.1.0_src_l10n.tar.bz2 73603380
+MD5 cfb76978fa162b50d771bdbce4b691fa OOo_2.1.0_src_sdk.tar.bz2 29297196
+RMD160 64d8a113ad1307c8fa66880bb0edf83c769f5978 OOo_2.1.0_src_sdk.tar.bz2 29297196
+SHA256 1d860adc52390b2910961e33b8ac5d27a55cc4212b9db8f73ccc1e05fbef2863 OOo_2.1.0_src_sdk.tar.bz2 29297196
+MD5 1948e39a68f12bfa0b7eb309c14d940c biblio.tar.bz2 6000
+RMD160 d6d74ed50fd12ab1b7363e1611aa5bae5a8b19d6 biblio.tar.bz2 6000
+SHA256 c0410a80028c8c0a6c28f4727e89b632875a128c9fccc17102f18773f0ea620b biblio.tar.bz2 6000
+MD5 733051ebeffae5232a2eb760162da020 extras-2.tar.bz2 94740
+RMD160 cba0fdebbbf84e6520af08d1cbb09363d36874bd extras-2.tar.bz2 94740
+SHA256 26e593ad0fecc6642b59349923434c6b36c224db5a26239c760b119ba29c9863 extras-2.tar.bz2 94740
+MD5 4cc68d37ed3a3191bb78a14630e14c64 hunspell_UNO_1.1.tar.gz 13774
+RMD160 9c0c31220d63894c9060a05fd136083b0b017b94 hunspell_UNO_1.1.tar.gz 13774
+SHA256 9de07fbe97c9539bae9c76502474c76471ab173dac365e251ca3fc5281008149 hunspell_UNO_1.1.tar.gz 13774
+MD5 cd5997284f4ba1e8dde5d1e5869fc342 libwpd-0.8.8.tar.gz 563088
+RMD160 09632cf9c84f12d7850399e0119407b1a0d29139 libwpd-0.8.8.tar.gz 563088
+SHA256 3ded0ca9a24b55c844c2e82b84e6e55db4c46acbed4137c7be1f44b2cd68232b libwpd-0.8.8.tar.gz 563088
+MD5 2e442485100f7e00685737513f853546 libwps-0.1.0~svn20070129.tar.gz 426668
+RMD160 5936f952392ec44aaa7d3fb836bc76421377f669 libwps-0.1.0~svn20070129.tar.gz 426668
+SHA256 586d0e527f065bc462a2df16cc5842203377bb8b835faa4ce545f26e7e3956ec libwps-0.1.0~svn20070129.tar.gz 426668
+MD5 2ff7b4c52f9c3937ebe3002798fbc479 lp_solve_5.5.tar.gz 495452
+RMD160 4f54d0d2116998da5de38cf51505835a8fd6e412 lp_solve_5.5.tar.gz 495452
+SHA256 6f9946c08c8fc3c97f74b58db8a62eac74027a7e709d81ee968716f7386682f1 lp_solve_5.5.tar.gz 495452
+MD5 ec39e9bb30c5285afba50ae32dbe7af2 ooo-build-2.1.8.tar.gz 4256705
+RMD160 f95b77237f5e97f6b991ae039435f40125f8d21f ooo-build-2.1.8.tar.gz 4256705
+SHA256 cfe1f5ccab51a5bca175c1c0910c355bf86f5f7896b3780d3f4c6c30f8703173 ooo-build-2.1.8.tar.gz 4256705
+MD5 e3a0b76dcd876f3d721ee7183729153d unowinreg.dll 6144
+RMD160 9e2a2789a96842a2aec747a62dee3db3e8370761 unowinreg.dll 6144
+SHA256 f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c unowinreg.dll 6144
+MD5 0395e6e7da27c1cea7e1852286f6ccf9 xt-20051206-src-only.zip 423516
+RMD160 5fd5bb66b6586809e27fc240d624d64589ec4b9d xt-20051206-src-only.zip 423516
+SHA256 38121476c238c81760e1285e3aeea9eda1a7ab18c0c31a54e3645910bd8fb38e xt-20051206-src-only.zip 423516
--- /dev/null
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-office/openoffice/openoffice-2.1.0-r1.ebuild,v 1.1 2007/03/16 09:05:40 suka Exp $
+
+WANT_AUTOCONF="2.5"
+WANT_AUTOMAKE="1.9"
+
+inherit check-reqs db-use eutils fdo-mime flag-o-matic java-pkg-opt-2 kde-functions multilib toolchain-funcs
+
+IUSE="binfilter branding cairo cups dbus debug eds firefox gnome gstreamer gtk kde ldap sound odk pam seamonkey webdav"
+
+MY_PV="2.1.8"
+PATCHLEVEL="OOE680"
+SRC="OOo_${PV}_src"
+S="${WORKDIR}/ooo"
+S_OLD="${WORKDIR}/ooo-build-${MY_PV}"
+CONFFILE="${S}/distro-configs/Gentoo.conf.in"
+DESCRIPTION="OpenOffice.org, a full office productivity suite."
+
+SRC_URI="mirror://openoffice/stable/${PV}/${SRC}_core.tar.bz2
+ binfilter? ( mirror://openoffice/stable/${PV}/${SRC}_binfilter.tar.bz2 )
+ http://go-oo.org/packages/${PATCHLEVEL}/ooo-build-${MY_PV}.tar.gz
+ odk? ( mirror://openoffice/stable/${PV}/${SRC}_sdk.tar.bz2
+ java? ( http://tools.openoffice.org/unowinreg_prebuild/680/unowinreg.dll ) )
+ http://go-oo.org/packages/SRC680/extras-2.tar.bz2
+ http://go-oo.org/packages/SRC680/biblio.tar.bz2
+ http://go-oo.org/packages/SRC680/hunspell_UNO_1.1.tar.gz
+ http://go-oo.org/packages/xt/xt-20051206-src-only.zip
+ http://go-oo.org/packages/SRC680/lp_solve_5.5.tar.gz
+ http://go-oo.org/packages/libwpd/libwpd-0.8.8.tar.gz
+ http://go-oo.org/packages/SRC680/libwps-0.1.0~svn20070129.tar.gz"
+
+LANGS1="af ar as_IN be_BY bg bn bs ca cs cy da de el en_GB en_ZA es et fa fi fr gu_IN he hi_IN hr hu it ja km ko lt lv mk nb nl nn nr ns or_IN pa_IN pl pt pt_BR ru rw sh_YU sk sl sr_CS st sv sw_TZ ta_IN te_IN tg th ti_ER tn tr ts ur_IN ve vi xh zh_CN zh_TW zu"
+LANGS="${LANGS1} en en_US"
+
+for X in ${LANGS} ; do
+ IUSE="${IUSE} linguas_${X}"
+done
+
+for Y in ${LANGS1} ; do
+ SRC_URI="${SRC_URI} linguas_${Y}? ( mirror://openoffice/stable/${PV}/${SRC}_l10n.tar.bz2 )"
+done
+
+HOMEPAGE="http://go-oo.org"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc -sparc ~x86"
+
+COMMON_DEPEND="!app-office/openoffice-bin
+ x11-libs/libXaw
+ x11-libs/libXinerama
+ virtual/libc
+ >=dev-lang/perl-5.0
+ dbus? ( || (
+ >=dev-libs/dbus-glib-0.71
+ ( <sys-apps/dbus-0.90 >=sys-apps/dbus-0.61 )
+ ) )
+ gnome? ( >=x11-libs/gtk+-2.4
+ >=gnome-base/gnome-vfs-2.6
+ >=gnome-base/gconf-2.0 )
+ gtk? ( >=x11-libs/gtk+-2.4 )
+ cairo? ( >=x11-libs/cairo-1.0.2
+ >=x11-libs/gtk+-2.8 )
+ eds? ( >=gnome-extra/evolution-data-server-1.2 )
+ gstreamer? ( >=media-libs/gstreamer-0.10
+ >=media-libs/gst-plugins-base-0.10 )
+ kde? ( >=kde-base/kdelibs-3.2 )
+ java? ( >=dev-java/bsh-2.0_beta4
+ >=dev-java/xalan-2.7
+ >=dev-java/xerces-2.7
+ =dev-java/xml-commons-external-1.3* )
+ firefox? ( >=www-client/mozilla-firefox-1.5-r9
+ >=dev-libs/nspr-4.6.2
+ >=dev-libs/nss-3.11-r1 )
+ !firefox? ( seamonkey? ( www-client/seamonkey
+ >=dev-libs/nspr-4.6.2
+ >=dev-libs/nss-3.11-r1 ) )
+ sound? ( >=media-libs/portaudio-18.1-r5
+ >=media-libs/libsndfile-1.0.9 )
+ webdav? ( >=net-misc/neon-0.24.7 )
+ >=x11-libs/startup-notification-0.5
+ >=media-libs/freetype-2.1.10-r2
+ >=media-libs/fontconfig-2.2.0
+ cups? ( net-print/cups )
+ media-libs/jpeg
+ media-libs/libpng
+ sys-devel/flex
+ sys-devel/bison
+ app-arch/zip
+ app-arch/unzip
+ >=app-text/hunspell-1.1.4-r1
+ >=app-admin/eselect-oodict-20060706
+ dev-libs/expat
+ >=dev-libs/icu-3.4
+ >=sys-libs/db-4.3
+ >=dev-libs/STLport-5.1.0
+ 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 )"
+
+RDEPEND="java? ( || ( =virtual/jre-1.5* =virtual/jre-1.4* ) )
+ ${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+ x11-libs/libXrender
+ x11-proto/printproto
+ x11-proto/xextproto
+ x11-proto/xproto
+ x11-proto/xineramaproto
+ >=sys-apps/findutils-4.1.20-r1
+ dev-perl/Archive-Zip
+ dev-perl/Compress-Zlib
+ dev-util/pkgconfig
+ dev-util/intltool
+ >=dev-libs/boost-1.33.1
+ >=net-misc/curl-7.9.8
+ sys-libs/zlib
+ sys-apps/coreutils
+ pam? ( sys-libs/pam )
+ !dev-util/dmake
+ >=dev-lang/python-2.3.4
+ java? ( || ( !amd64? ( =virtual/jdk-1.5* ) =virtual/jdk-1.4* )
+ dev-java/ant-core )
+ dev-libs/libxslt
+ ldap? ( net-nds/openldap )
+ >=dev-libs/libxml2-2.0"
+
+PROVIDE="virtual/ooo"
+
+if use amd64; then
+ # All available Java 1.5 JDKs are broken, in one way or another, on amd64.
+ # Thus we force the use of a Java 1.4 JDK on amd64 (and amd64 only).
+ export JAVA_PKG_NV_DEPEND="=virtual/jdk-1.4*"
+fi
+
+
+pkg_setup() {
+
+ 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. Also note that building OOo takes a lot of time and "
+ ewarn " hardware ressources: 4-6 GB free diskspace and 256 MB RAM are "
+ ewarn " the minimum requirements. If you have less, use openoffice-bin "
+ ewarn " instead. "
+ ewarn
+
+ # Check if we have enough RAM and free diskspace to build this beast
+ CHECKREQS_MEMORY="256"
+ use debug && CHECKREQS_DISK_BUILD="8192" || CHECKREQS_DISK_BUILD="5120"
+ check_reqs
+
+ strip-linguas ${LANGS}
+
+ if [[ -z "${LINGUAS}" ]]; then
+ export LINGUAS_OOO="en-US"
+ ewarn
+ ewarn " To get a localized build, set the according LINGUAS variable(s). "
+ ewarn
+ else
+ export LINGUAS_OOO=`echo ${LINGUAS} | \
+ sed -e 's/\ben\b/en_US/g' -e 's/_/-/g'`
+ fi
+
+ if use !java; then
+ ewarn " You are building with java-support disabled, this results in some "
+ ewarn " of the OpenOffice.org functionality (i.e. help) being disabled. "
+ ewarn " If something you need does not work for you, rebuild with "
+ ewarn " java in your USE-flags. "
+ ewarn
+ fi
+
+ if is-flagq -ffast-math ; then
+ eerror " You are using -ffast-math, which is known to cause problems. "
+ eerror " Please remove it from your CFLAGS, using this globally causes "
+ eerror " all sorts of problems. "
+ eerror " After that you will also have to - at least - rebuild python otherwise "
+ eerror " the openoffice build will break. "
+ die
+ fi
+
+ java-pkg-opt-2_pkg_setup
+
+ # sys-libs/db version used
+ local db_ver="$(db_findver '>=sys-libs/db-4.3')"
+
+}
+
+src_unpack() {
+
+ unpack ooo-build-${MY_PV}.tar.gz
+
+ # Hackish workaround for overlong path problem, see bug #130837
+ mv ${S_OLD} ${S} || die
+
+ #Some fixes for our patchset
+ cd ${S}
+ epatch ${FILESDIR}/${PV}/gentoo-${PV}.diff
+ epatch ${FILESDIR}/${PV}/detect-db4.5.diff
+ epatch ${FILESDIR}/${PV}/wrapper-readd.diff
+ cp -f ${FILESDIR}/${PV}/ooo-wrapper.in ${S}/bin || die
+ epatch ${FILESDIR}/${PV}/ooo-build-2.1.6-hyperlinks-quotes.diff
+ epatch ${FILESDIR}/${PV}/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff
+
+ if use ppc ; then
+ cp -f ${FILESDIR}/${PV}/disable-regcomp-java.diff ${S}/patches/src680 || die
+ cp -f ${FILESDIR}/${PV}/disable-regcomp-python.diff ${S}/patches/src680 || die
+ epatch ${FILESDIR}/${PV}/regcompapply.diff
+ fi
+
+ #Use flag checks
+ if use java ; then
+ echo "--with-ant-home=${ANT_HOME}" >> ${CONFFILE}
+ echo "--with-jdk-home=$(java-config --jdk-home 2>/dev/null)" >> ${CONFFILE}
+ echo "--with-system-beanshell" >> ${CONFFILE}
+ echo "--with-system-xalan" >> ${CONFFILE}
+ echo "--with-system-xerces" >> ${CONFFILE}
+ echo "--with-system-xml-apis" >> ${CONFFILE}
+ echo "--with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar)" >> ${CONFFILE}
+ echo "--with-serializer-jar=$(java-pkg_getjar xalan serializer.jar)" >> ${CONFFILE}
+ echo "--with-xalan-jar=$(java-pkg_getjar xalan xalan.jar)" >> ${CONFFILE}
+ echo "--with-xerces-jar=$(java-pkg_getjar xerces-2 xercesImpl.jar)" >> ${CONFFILE}
+ echo "--with-xml-apis-jar=$(java-pkg_getjar xml-commons-external-1.3 xml-apis.jar)" >> ${CONFFILE}
+ fi
+
+ use branding && echo "--with-intro-bitmaps=\\\"${S}/src/openintro_gentoo.bmp\\\"" >> ${CONFFILE}
+
+ echo "`use_enable binfilter`" >> ${CONFFILE}
+
+ if use firefox || use seamonkey ; then
+ echo "--enable-mozilla" >> ${CONFFILE}
+ echo "--with-system-mozilla" >> ${CONFFILE}
+ echo "`use_with firefox`" >> ${CONFFILE}
+ echo "`use_with seamonkey`" >> ${CONFFILE}
+ else
+ echo "--disable-mozilla" >> ${CONFFILE}
+ echo "--without-system-mozilla" >> ${CONFFILE}
+ fi
+
+ echo "`use_enable cups`" >> ${CONFFILE}
+ echo "`use_enable ldap`" >> ${CONFFILE}
+ echo "`use_with ldap openldap`" >> ${CONFFILE}
+ echo "`use_enable eds evolution2`" >> ${CONFFILE}
+ echo "`use_enable gnome gnome-vfs`" >> ${CONFFILE}
+ echo "`use_enable gnome lockdown`" >> ${CONFFILE}
+ echo "`use_enable gnome atkbridge`" >> ${CONFFILE}
+ echo "`use_enable gstreamer`" >> ${CONFFILE}
+ echo "`use_enable dbus`" >> ${CONFFILE}
+ echo "`use_enable webdav neon`" >> ${CONFFILE}
+ echo "`use_with webdav system-neon`" >> ${CONFFILE}
+
+ echo "`use_enable sound pasf`" >> ${CONFFILE}
+ echo "`use_with sound system-portaudio`" >> ${CONFFILE}
+ echo "`use_with sound system-sndfile`" >> ${CONFFILE}
+
+ echo "`use_enable debug crashdump`" >> ${CONFFILE}
+
+}
+
+src_compile() {
+
+ unset LIBC
+ addpredict "/bin"
+ addpredict "/root/.gconfd"
+ addpredict "/root/.gnome"
+
+ # Should the build use multiprocessing? Not enabled by default, as it tends to break
+ export JOBS="1"
+ if [[ "${WANT_MP}" == "true" ]]; then
+ export JOBS=`echo "${MAKEOPTS}" | sed -e "s/.*-j\([0-9]\+\).*/\1/"`
+ fi
+
+ # Compile problems with these ...
+ filter-flags "-funroll-loops"
+ filter-flags "-fprefetch-loop-arrays"
+ filter-flags "-fno-default-inline"
+ filter-flags "-fstack-protector"
+ filter-flags "-fstack-protector-all"
+ filter-flags "-ftracer"
+ filter-flags "-fforce-addr"
+ replace-flags "-O?" "-O2"
+
+ use ppc && append-flags "-D_STLP_STRICT_ANSI"
+
+ # Now for our optimization flags ...
+ export ARCH_FLAGS="${CXXFLAGS}"
+ use debug || export LINKFLAGSOPTIMIZE="${LDFLAGS}"
+
+ # Make sure gnome-users get gtk-support
+ export GTKFLAG="`use_enable gtk`" && use gnome && GTKFLAG="--enable-gtk"
+
+ cd ${S}
+ autoconf || die
+ ./configure ${MYCONF} \
+ --with-distro="Gentoo" \
+ --with-arch="${ARCH}" \
+ --with-srcdir="${DISTDIR}" \
+ --with-lang="${LINGUAS_OOO}" \
+ --with-num-cpus="${JOBS}" \
+ --with-binsuffix="2" \
+ --with-installed-ooo-dirname="openoffice" \
+ "${GTKFLAG}" \
+ `use_enable kde` \
+ `use_enable cairo` \
+ `use_with cairo system-cairo` \
+ `use_enable gnome quickstart` \
+ `use_enable pam` \
+ `use_enable !debug strip` \
+ `use_enable odk` \
+ `use_with java` \
+ --disable-access \
+ --disable-mono \
+ --disable-post-install-scripts \
+ --enable-hunspell \
+ --with-system-hunspell \
+ --mandir=/usr/share/man \
+ --libdir=/usr/$(get_libdir) \
+ || die "Configuration failed!"
+
+ einfo "Building OpenOffice.org..."
+ use kde && set-kdedir 3
+ make || die "Build failed"
+
+}
+
+src_install() {
+
+ export PYTHONPATH=""
+
+ einfo "Preparing Installation"
+ make DESTDIR=${D} install || die "Installation failed!"
+
+ # Fix the permissions for security reasons
+ chown -R root:root ${D}
+
+ # record java libraries
+ use java && java-pkg_regjar ${D}/usr/$(get_libdir)/openoffice/program/classes/*.jar
+
+}
+
+pkg_postinst() {
+
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+
+ eselect oodict update --libdir $(get_libdir)
+
+ [[ -x /sbin/chpax ]] && [[ -e /usr/$(get_libdir)/openoffice/program/soffice.bin ]] && chpax -zm /usr/$(get_libdir)/openoffice/program/soffice.bin
+
+ # Add available & useful jars to openoffice classpath
+ use java && /usr/lib/openoffice/program/java-set-classpath $(java-config --classpath=jdbc-mysql 2>/dev/null) >/dev/null
+
+ elog " To start OpenOffice.org, run:"
+ elog
+ elog " $ ooffice2"
+ elog
+ elog " Also, for individual components, you can use any of:"
+ elog
+ elog " oobase2, oocalc2, oodraw2, oofromtemplate2, ooimpress2, oomath2,"
+ elog " ooweb2 or oowriter2"
+ elog
+ elog " Spell checking is now provided through our own myspell-ebuilds, "
+ elog " if you want to use it, please install the correct myspell package "
+ elog " according to your language needs. "
+
+}