From e065c7af62ed234c14d79dd6e4f5a87e3930654c Mon Sep 17 00:00:00 2001 From: Andreas Proschofsky Date: Fri, 16 Mar 2007 09:05:40 +0000 Subject: [PATCH] Bump for security bug #170828 Package-Manager: portage-2.1.2.2 --- app-office/openoffice/ChangeLog | 11 +- app-office/openoffice/Manifest | 34 +- .../ooo-build-2.1.6-hyperlinks-quotes.diff | 382 ++++++++++++++++++ ...2.1.6-starcalc-file-format-parser-2.2.diff | 43 ++ .../files/digest-openoffice-2.1.0-r1 | 39 ++ .../openoffice/openoffice-2.1.0-r1.ebuild | 369 +++++++++++++++++ 6 files changed, 863 insertions(+), 15 deletions(-) create mode 100644 app-office/openoffice/files/2.1.0/ooo-build-2.1.6-hyperlinks-quotes.diff create mode 100644 app-office/openoffice/files/2.1.0/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff create mode 100644 app-office/openoffice/files/digest-openoffice-2.1.0-r1 create mode 100644 app-office/openoffice/openoffice-2.1.0-r1.ebuild diff --git a/app-office/openoffice/ChangeLog b/app-office/openoffice/ChangeLog index 40c1aed796b2..0377464359de 100644 --- a/app-office/openoffice/ChangeLog +++ b/app-office/openoffice/ChangeLog @@ -1,6 +1,15 @@ # 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 + +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 openoffice-2.0.4.ebuild, openoffice-2.1.0.ebuild: diff --git a/app-office/openoffice/Manifest b/app-office/openoffice/Manifest index b4bb40f1f143..eff7ccb27537 100644 --- a/app-office/openoffice/Manifest +++ b/app-office/openoffice/Manifest @@ -1,6 +1,3 @@ ------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 @@ -33,6 +30,14 @@ AUX 2.1.0/gentoo-2.1.0.diff 181 RMD160 8ac1700851de1216bf6c342fd697d65d123b13ae 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 @@ -61,20 +66,25 @@ DIST libwps-0.1.0~svn20070129.tar.gz 426668 RMD160 5936f952392ec44aaa7d3fb836bc7 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 @@ -85,10 +95,6 @@ SHA256 b069f01aacb01cc7136aad7b37f65aee07a3cfc574902972e4b1d48cabcd0890 files/di 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 diff --git a/app-office/openoffice/files/2.1.0/ooo-build-2.1.6-hyperlinks-quotes.diff b/app-office/openoffice/files/2.1.0/ooo-build-2.1.6-hyperlinks-quotes.diff new file mode 100644 index 000000000000..0a21ab51ab03 --- /dev/null +++ b/app-office/openoffice/files/2.1.0/ooo-build-2.1.6-hyperlinks-quotes.diff @@ -0,0 +1,382 @@ +--- 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 ++ #endif ++ +++#ifndef _RTL_USTRBUF_HXX_ +++#include +++#endif +++ ++ #ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_ ++ #include ++ #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 ++ #endif ++ ++-#ifndef _RTL_USTRBUF_HXX_ ++-#include ++-#endif ++- ++ #ifndef _RTL_URI_H_ ++ #include ++ #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 ++ // -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 ); ++ } ++ } ++ diff --git a/app-office/openoffice/files/2.1.0/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff b/app-office/openoffice/files/2.1.0/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff new file mode 100644 index 000000000000..4e04dfb19bc0 --- /dev/null +++ b/app-office/openoffice/files/2.1.0/ooo-build-2.1.6-starcalc-file-format-parser-2.2.diff @@ -0,0 +1,43 @@ +--- 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 (Row), Tab, aNote ); +++ delete [] pNote; ++ } ++ } ++ pPrgrsBar->Progress(); ++ diff --git a/app-office/openoffice/files/digest-openoffice-2.1.0-r1 b/app-office/openoffice/files/digest-openoffice-2.1.0-r1 new file mode 100644 index 000000000000..7870e7b668f2 --- /dev/null +++ b/app-office/openoffice/files/digest-openoffice-2.1.0-r1 @@ -0,0 +1,39 @@ +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 diff --git a/app-office/openoffice/openoffice-2.1.0-r1.ebuild b/app-office/openoffice/openoffice-2.1.0-r1.ebuild new file mode 100644 index 000000000000..37f0679acf4d --- /dev/null +++ b/app-office/openoffice/openoffice-2.1.0-r1.ebuild @@ -0,0 +1,369 @@ +# 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.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. " + +} -- 2.26.2