summaryrefslogtreecommitdiff
path: root/editors
diff options
context:
space:
mode:
authorMaho Nakata <maho@FreeBSD.org>2011-01-30 11:10:32 +0000
committerMaho Nakata <maho@FreeBSD.org>2011-01-30 11:10:32 +0000
commit8400e4cf7082edf7edb6c8a3eab49830974eb941 (patch)
tree1b650407c3f7fe185b47e7711c785aa94bd6b397 /editors
parent- Update to 1.5 (diff)
Update to 3.3.0.
Funded by: OpenOffice.org community Feature safe: yes
Notes
Notes: svn path=/head/; revision=268418
Diffstat (limited to 'editors')
-rw-r--r--editors/openoffice-3/Makefile52
-rw-r--r--editors/openoffice-3/distinfo11
-rw-r--r--editors/openoffice-3/files/Makefile.knobs30
-rw-r--r--editors/openoffice-3/files/Makefile.others6
-rw-r--r--editors/openoffice-3/files/patch-i10039515
-rw-r--r--editors/openoffice-3/files/patch-i10218118
-rw-r--r--editors/openoffice-3/files/patch-i1021846
-rw-r--r--editors/openoffice-3/files/patch-i104014231
-rw-r--r--editors/openoffice-3/files/patch-i10819713
-rw-r--r--editors/openoffice-3/files/patch-i10942911
-rw-r--r--editors/openoffice-3/files/patch-i11138434
-rw-r--r--editors/openoffice-3/files/patch-i73217162
-rw-r--r--editors/openoffice-3/files/patch-i8012927
-rw-r--r--editors/openoffice-3/files/patch-i8502725
-rw-r--r--editors/openoffice-3/files/patch-i85126305
-rw-r--r--editors/openoffice-3/files/patch-i9131818
-rw-r--r--editors/openoffice-3/files/patch-i9186119
-rw-r--r--editors/openoffice-3/files/patch-i987818
-rw-r--r--editors/openoffice.org-3/Makefile52
-rw-r--r--editors/openoffice.org-3/distinfo11
-rw-r--r--editors/openoffice.org-3/files/Makefile.knobs30
-rw-r--r--editors/openoffice.org-3/files/Makefile.others6
-rw-r--r--editors/openoffice.org-3/files/patch-i10039515
-rw-r--r--editors/openoffice.org-3/files/patch-i10218118
-rw-r--r--editors/openoffice.org-3/files/patch-i1021846
-rw-r--r--editors/openoffice.org-3/files/patch-i104014231
-rw-r--r--editors/openoffice.org-3/files/patch-i10819713
-rw-r--r--editors/openoffice.org-3/files/patch-i10942911
-rw-r--r--editors/openoffice.org-3/files/patch-i11138434
-rw-r--r--editors/openoffice.org-3/files/patch-i73217162
-rw-r--r--editors/openoffice.org-3/files/patch-i8012927
-rw-r--r--editors/openoffice.org-3/files/patch-i8502725
-rw-r--r--editors/openoffice.org-3/files/patch-i85126305
-rw-r--r--editors/openoffice.org-3/files/patch-i9131818
-rw-r--r--editors/openoffice.org-3/files/patch-i9186119
-rw-r--r--editors/openoffice.org-3/files/patch-i987818
36 files changed, 1396 insertions, 586 deletions
diff --git a/editors/openoffice-3/Makefile b/editors/openoffice-3/Makefile
index c63d0ed7143d..318c1705d519 100644
--- a/editors/openoffice-3/Makefile
+++ b/editors/openoffice-3/Makefile
@@ -9,12 +9,9 @@ PORTNAME?= openoffice.org
PORTVERSION?= ${OOOVERSION}
CATEGORIES+= editors java
MASTER_SITES+= http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \
- http://ooopackages.good-day.net/pub/OpenOffice.org/misc/moz/:mozsrc \
- ${MASTER_SITE_MOZILLA_EXTENDED:S/$/:mozsrc/} \
+ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/:extsrc \
http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg
-MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc
-DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg
-EXTRACT_ONLY= ${OOOSRC}
+DISTFILES+= ${OOOSRC} ${OOOEXTSRC} unowinreg.dll:unowinreg
#de facto maintainer is maho@FreeBSD.org
#patch submitters must sign SCA; see http://porting.openoffice.org/freebsd/#policy
@@ -23,13 +20,14 @@ COMMENT= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser(releas
CONFLICTS= cppunit*
-OOOVERSION= 3.2.1
+OOOVERSION= 3.3.0
+EXTRATC_ONLY?= ${OOOSRC} ${OOOEXTSRC}
+
+OOOEXTSRC= ext_sources.20110129.tar.bz2:extsrc
+
NO_LATEST_LINK= yes
.if !defined(WITHOUT_MOZILLA)
-SEAMONKEY_VERSION= 1.1.14
-SEAMONKEY_SOURCE= seamonkey-${SEAMONKEY_VERSION}.source.tar.bz2
-DISTFILES+= ${SEAMONKEY_SOURCE}:mozsrc
USE_GNOME+= libidl
.endif
@@ -58,7 +56,7 @@ MAKE_JOBS_SAFE= yes
USE_JAVA= yes
JAVA_BUILD= jdk
-JAVA_VENDOR?= freebsd bsdjava openjdk
+JAVA_VENDOR= freebsd bsdjava openjdk
.if (${OSVERSION} >= 700000)
JAVA_VERSION= 1.5 1.6
.else
@@ -70,13 +68,13 @@ JAVA_VERSION= 1.4 1.5 1.6
ONLY_FOR_ARCHS= i386 amd64
.if ${ARCH} == amd64
-FREEBSD_ENV_SET= FreeBSDAMDEnv.Set
+FREEBSD_ENV_SET= FreeBSDAMDEnv.Set.sh
.else
-FREEBSD_ENV_SET= FreeBSDX86Env.Set
+FREEBSD_ENV_SET= FreeBSDX86Env.Set.sh
.endif
-MILESTONE?= 19
-OOOTAG?= OOO320_m${MILESTONE}
+MILESTONE?= 20
+OOOTAG?= OOO330_m${MILESTONE}
OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX}
OOODIR= openoffice.org3
INSTALLATION_BASEDIR?= openoffice.org-${OOOVERSION}
@@ -123,13 +121,14 @@ BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \
imake:${PORTSDIR}/devel/imake \
gtar:${PORTSDIR}/archivers/gtar \
${LOCALBASE}/bin/gperf:${PORTSDIR}/devel/gperf \
- ant:${PORTSDIR}/devel/apache-ant
+ ant:${PORTSDIR}/devel/apache-ant \
+ ${JAVALIBDIR}/junit.jar:${PORTSDIR}/java/junit
#see #i85469# for gperf
USE_BISON= build
GNU_CONFIGURE= yes
-WRKSRC?= ${WRKDIR}/${OOOTAG}
-TCSH?= /bin/tcsh
+WRKSRC?= ${WRKDIR}/${OOOTAG}
+BASH?= ${PREFIX}/bin/bash
SUB_FILES= pkg-message
SUB_LIST= EXECBASE=${EXECBASE} OOOTAG=${OOOTAG} OOODIR=${OOODIR}
@@ -140,16 +139,18 @@ MAKE_JOBS_NUMBER= 1
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \
--with-gnu-patch=${LOCALBASE}/bin/gpatch \
--enable-crashdump=yes \
+ --with-junit=${LOCALBASE}/share/java/classes/junit.jar \
--with-system-zlib \
--with-system-stdlibs \
--with-epm=internal \
- --with-vendor=FreeBSD-port \
--enable-hids \
--enable-minimizer \
--enable-presenter-console \
--enable-pdfimport \
--enable-wiki-publisher \
- --enable-report-builder
+ --enable-report-builder \
+ --with-use-shell=bash \
+ --with-vendor="FreeBSD ports system"
OOOEXTENSIONS+= minimizer/presentation-minimizer.oxt
OOOEXTENSIONS+= presenter/presenter-screen.oxt
@@ -184,16 +185,9 @@ pre-everything::
.endif
#issue XXXXXX not raised yet...
-CRLFFILES=curl/curl*patch neon/neon*patch jfreereport/patches/*.patch
-
+DOS2UNIX_REGEX=curl/curl*patch neon/neon*patch jfreereport/patches/*.patch
post-extract:
- for i in ${CRLFFILES}; do \
- cd ${WRKSRC} ; ${REINPLACE_CMD} -e 's# ##g' $$i ; \
- done
@${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/
-.if !defined(WITHOUT_MOZILLA)
- @${CP} ${DISTDIR}/${DIST_SUBDIR}/${SEAMONKEY_SOURCE} ${WRKSRC}/moz/download
-.endif
pre-configure:
#Workaround for gperf. #i85469#
@@ -205,7 +199,7 @@ pre-configure:
do-build:
@cd ${WRKSRC} ; ./bootstrap
- @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" "TMP=${WRKSRC}" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl --checkmodules ; build.pl -P${MAKE_JOBS_NUMBER} --all --html --dontgraboutput"
+ @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" "LIBINTL_PREFIX=${PREFIX}" ${BASH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl --checkmodules ; build.pl -P${MAKE_JOBS_NUMBER} --all --html"
.if ${LOCALIZED_LANG} == "alllangs"
@${MAKE} languagepack
@@ -228,7 +222,7 @@ do-install:
@${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR}
@cd ${WRKDIR}/tmp/opt/ ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR}
@${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR}/extensions/
- @cd ${WRKSRC}/solver/320/unxfbsd?.pro/bin/ ; ${INSTALL_DATA} ${OOOEXTENSIONS} ${PREFIX}/${INSTALLATION_BASEDIR}/extensions/
+ @cd ${WRKSRC}/solver/3?0/unxfbsd?.pro/bin/ ; ${INSTALL_DATA} ${OOOEXTENSIONS} ${PREFIX}/${INSTALLATION_BASEDIR}/extensions/
@${INSTALL_DATA} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/bin/hid.lst ${PREFIX}/${INSTALLATION_BASEDIR}
.else
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES
diff --git a/editors/openoffice-3/distinfo b/editors/openoffice-3/distinfo
index ca07850589d4..06bc93c5e51a 100644
--- a/editors/openoffice-3/distinfo
+++ b/editors/openoffice-3/distinfo
@@ -1,9 +1,6 @@
-MD5 (openoffice.org3/OOo_OOO320_m19_source.tar.bz2) = feb692912799d9f7369a48d704f3b6df
-SHA256 (openoffice.org3/OOo_OOO320_m19_source.tar.bz2) = 130a7ec1c61f3f18698be40312ab7457bd46aac0281e412b4f9d7b9d422e2d79
-SIZE (openoffice.org3/OOo_OOO320_m19_source.tar.bz2) = 447921964
-MD5 (openoffice.org3/unowinreg.dll) = e3a0b76dcd876f3d721ee7183729153d
+SHA256 (openoffice.org3/OOo_OOO330_m20_source.tar.bz2) = dca1ca546ca54b678aa1d53ca541add50484a54bcd8dc19061e9932332d489f3
+SIZE (openoffice.org3/OOo_OOO330_m20_source.tar.bz2) = 308995356
+SHA256 (openoffice.org3/ext_sources.20110129.tar.bz2) = cb565693860546d387c141e014e84ddf063ddd9c763c0de9397d6c22ec04af3c
+SIZE (openoffice.org3/ext_sources.20110129.tar.bz2) = 214185488
SHA256 (openoffice.org3/unowinreg.dll) = f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c
SIZE (openoffice.org3/unowinreg.dll) = 6144
-MD5 (openoffice.org3/seamonkey-1.1.14.source.tar.bz2) = 31eb6ce742dc73609884dab11b1f2712
-SHA256 (openoffice.org3/seamonkey-1.1.14.source.tar.bz2) = 82d5166b227d0157c1108dc03809a89bea23cfd21f31c7e6767ef5ce1983ca28
-SIZE (openoffice.org3/seamonkey-1.1.14.source.tar.bz2) = 38063082
diff --git a/editors/openoffice-3/files/Makefile.knobs b/editors/openoffice-3/files/Makefile.knobs
index 57c658657278..990b8c9a623b 100644
--- a/editors/openoffice-3/files/Makefile.knobs
+++ b/editors/openoffice-3/files/Makefile.knobs
@@ -58,6 +58,19 @@ CONFIGURE_ARGS+= --with-system-icu=yes
CONFIGURE_ARGS+= --with-system-icu=no
.endif
+.if defined(WITH_GRAPHITE)
+CONFIGURE_ARGS+= --enable-graphite=yes --without-stlport
+.else
+CONFIGURE_ARGS+= --enable-graphite=no
+.endif
+
+.if defined(WITH_SYSTEM_GRAPHITE) && defined(WITH_GRAPHITE)
+LIB_DEPENDS+= graphite.3:${PORTSDIR}/graphics/silgraphite
+CONFIGURE_ARGS+= --with-system-graphite=yes
+.else
+CONFIGURE_ARGS+= --with-system-graphite=no
+.endif
+
pre-fetch:
@${ECHO} "OPTIONS:"
.if !defined(WITH_DEBUG)
@@ -80,6 +93,23 @@ pre-fetch:
@${ECHO} "You can compile OOo with devel/icu from ports with"
@${ECHO} "make -DWITH_SYSTEM_ICU"
.endif
+.if !defined(WITH_GRAPHITE)
+ @${ECHO}
+ @${ECHO} "You can compile OOo with Graphite smart font rendering with"
+ @${ECHO} "make -DWITH_GRAPHITE"
+.else
+ @${ECHO}
+ @${ECHO} "WARNING: Graphite support enabled, --without-stlport added"
+ @${ECHO} "to configure arguments."
+.endif
+.if !defined(WITH_SYSTEM_GRAPHITE)
+ @${ECHO}
+ @${ECHO} "You can compile OOo with graphics/silgraphite from ports with"
+ @${ECHO} "make -DWITH_SYSTEM_GRAPHITE"
+.elif !defined(WITH_GRAPHITE)
+ @${ECHO}
+ @${ECHO} "To use system Graphite, WITH_GRAPHITE must be set as well."
+.endif
.if !defined(WITHOUT_CUPS)
@${ECHO}
@${ECHO} "You can compile OOo without CUPS support with"
diff --git a/editors/openoffice-3/files/Makefile.others b/editors/openoffice-3/files/Makefile.others
index 59e68dae2b98..d0bd83eef195 100644
--- a/editors/openoffice-3/files/Makefile.others
+++ b/editors/openoffice-3/files/Makefile.others
@@ -16,7 +16,7 @@ package-rename:
package-canonical:
@${ECHO_MSG} "===> Canonical packaging for OpenOffice.org";
- @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ;\
+ @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd/ ;\
${TAR} cfj ${WRKDIR}/../${PACKAGE_BASENAME}_native_install_${LOCALIZED_LANG}${PKG_SUFX} .
sdk:
@@ -48,9 +48,9 @@ solver:
languagepack:
@${ECHO_MSG} "===> Make languagepack of OpenOffice.org"
.if defined (ALL_LOCALIZED_LANGS)
- @cd ${WRKSRC} ; ${TCSH} -c 'source ${FREEBSD_ENV_SET} ; cd instsetoo_native/util ; dmake ooolanguagepack'
+ @cd ${WRKSRC} ; ${BASH} -c 'source ${FREEBSD_ENV_SET} ; cd instsetoo_native/util ; dmake ooolanguagepack'
.else
- @cd ${WRKSRC} ; ${TCSH} -c 'source ${FREEBSD_ENV_SET} ; cd instsetoo_native/util ; dmake ooolanguagepack_${LOCALIZED_LANG}'
+ @cd ${WRKSRC} ; ${BASH} -c 'source ${FREEBSD_ENV_SET} ; cd instsetoo_native/util ; dmake ooolanguagepack_${LOCALIZED_LANG}'
.endif
.if !defined (ALL_LOCALIZED_LANGS)
diff --git a/editors/openoffice-3/files/patch-i100395 b/editors/openoffice-3/files/patch-i100395
deleted file mode 100644
index afd73b787e8f..000000000000
--- a/editors/openoffice-3/files/patch-i100395
+++ /dev/null
@@ -1,15 +0,0 @@
---- solenv/inc/unx.mk~ 2009-02-25 02:58:24.000000000 +0900
-+++ solenv/inc/unx.mk 2009-03-20 16:52:22.000000000 +0900
-@@ -242,9 +242,9 @@
- # potentially affects multiple commands following on the recipe line:
- .IF "$(USE_SHELL)" == "bash"
- AUGMENT_LIBRARY_PATH *= : && \
-- LD_LIBRARY_PATH=$${{LD_LIBRARY_PATH+$${{LD_LIBRARY_PATH}}:}}$(SOLARLIBDIR)
-+ LD_LIBRARY_PATH=$${{LD_LIBRARY_PATH+$${{LD_LIBRARY_PATH}}:}}$(SOLARLIBDIR):.
- .ELSE
- AUGMENT_LIBRARY_PATH *= if ($$?LD_LIBRARY_PATH == 1) \
-- eval 'setenv LD_LIBRARY_PATH "$${{LD_LIBRARY_PATH}}:$(SOLARLIBDIR)"' && \
-- if ($$?LD_LIBRARY_PATH == 0) setenv LD_LIBRARY_PATH "$(SOLARLIBDIR)" &&
-+ eval 'setenv LD_LIBRARY_PATH "$${{LD_LIBRARY_PATH}}:$(SOLARLIBDIR):."' && \
-+ if ($$?LD_LIBRARY_PATH == 0) setenv LD_LIBRARY_PATH "$(SOLARLIBDIR):." &&
- .ENDIF
diff --git a/editors/openoffice-3/files/patch-i102181 b/editors/openoffice-3/files/patch-i102181
index e94916cab98b..b649ffcb87c8 100644
--- a/editors/openoffice-3/files/patch-i102181
+++ b/editors/openoffice-3/files/patch-i102181
@@ -1,23 +1,23 @@
---- openssl/makefile.mk.orig 2009-12-06 12:25:44.000000000 +0900
-+++ openssl/makefile.mk 2009-12-12 17:14:17.000000000 +0900
-@@ -61,7 +61,7 @@
- OUT2LIB += libcrypto.*
- OUT2INC += include/openssl/*
+--- openssl/makefile.mk.orig 2010-07-17 07:41:38.000000000 +0900
++++ openssl/makefile.mk 2010-07-17 17:23:07.000000000 +0900
+@@ -64,7 +64,7 @@
+
+ UNAME=$(shell uname)
-.IF "$(OS)" == "LINUX" || "$(OS)" == "FREEBSD"
+.IF "$(OS)" == "LINUX"
PATCH_FILES=openssllnx.patch
ADDITIONAL_FILES:= \
- libcrypto_OOo_0_9_8n.map \
-@@ -99,6 +99,22 @@
+ libcrypto_OOo_0_9_8o.map \
+@@ -110,6 +110,22 @@
.ENDIF
.ENDIF
+.IF "$(OS)" == "FREEBSD"
+ PATCH_FILES=openssllnx.patch
+ ADDITIONAL_FILES:= \
-+ libcrypto_OOo_0_9_8n.map \
-+ libssl_OOo_0_9_8n.map
++ libcrypto_OOo_0_9_8o.map \
++ libssl_OOo_0_9_8o.map
+ .IF "$(CPU)" == "I"
+ CONFIGURE_ACTION=Configure BSD-x86-elf
+ .ELIF "$(BUILD64)" == "1"
diff --git a/editors/openoffice-3/files/patch-i102184 b/editors/openoffice-3/files/patch-i102184
index e84902f436e0..b03694aaca31 100644
--- a/editors/openoffice-3/files/patch-i102184
+++ b/editors/openoffice-3/files/patch-i102184
@@ -1,8 +1,8 @@
---- libxslt/libxslt-1.1.24.patch 2009-05-24 16:32:30.000000000 +0900
-+++ libxslt/libxslt-1.1.24.patch 2009-05-24 16:38:38.000000000 +0900
+--- libxslt/libxslt-configure.patch.org 2010-06-06 08:21:40.000000000 +0900
++++ libxslt/libxslt-configure.patch 2010-06-06 08:21:53.000000000 +0900
@@ -20,7 +20,7 @@
- major=".$current"
- - versuffix=".$current";
+ - versuffix=".$current"
+ major=.`expr $current - $age`
-+ versuffix="$major.$age.$revision"
++ versuffix="$major"
diff --git a/editors/openoffice-3/files/patch-i104014 b/editors/openoffice-3/files/patch-i104014
index 424b7b18ffc9..16460e43a476 100644
--- a/editors/openoffice-3/files/patch-i104014
+++ b/editors/openoffice-3/files/patch-i104014
@@ -1,6 +1,82 @@
---- solenv/inc/unxfbsd.mk 2009-08-05 06:24:36.000000000 +0900
-+++ solenv/inc/unxfbsd.mk 2009-08-05 09:20:06.000000000 +0900
-@@ -141,12 +141,12 @@
+--- solenv/inc/unxfbsd.mk.orig 2009-12-12 18:29:11.000000000 +0900
++++ solenv/inc/unxfbsd.mk 2009-12-13 12:17:38.000000000 +0900
+@@ -30,27 +30,24 @@
+ #*************************************************************************
+
+ # Makefile for FreeBSD.
+-
+-ASM=
+-AFLAGS=
+-
++ASM*=
++AFLAGS*=
+ SOLAR_JAVA*=
++# default optimization level for product code
++CDEFAULTOPT*=-O2
++# architecture dependent flags for the C and C++ compiler that can be changed by
++# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
++ARCH_FLAGS*=
++# position independent code switch
++PICSWITCH*:=-fpic
+ JAVAFLAGSDEBUG=-g
+
+-# Include arch specific makefile.
+-.IF "$(CPUNAME)" == "INTEL"
+-.INCLUDE : unxfbsdi.mk
+-.ENDIF
+-.IF "$(CPUNAME)" == "X86_64"
+-.INCLUDE : unxfbsdx.mk
+-.ENDIF
+-
+ # filter for supressing verbose messages from linker
+ #not needed at the moment
+ #LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
+
+ # _PTHREADS is needed for the stl
+-CDEFS+=$(PTHREAD_CFLAGS) -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=450
++CDEFS+=$(PTHREAD_CFLAGS) -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=$(STLPORT_VER)
+
+ # enable visibility define in "sal/types.h"
+ .IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+@@ -72,7 +69,7 @@
+ # name of C Compiler
+ CC*=gcc
+ .IF "$(SYSBASE)"!=""
+-CFLAGS_SYSBASE:=-isystem $(SYSBASE)/usr/include
++CFLAGS_SYSBASE:=-isystem $(SYSBASE)$/usr$/include
+ CXX+:=$(CFLAGS_SYSBASE)
+ CC+:=$(CFLAGS_SYSBASE)
+ .ENDIF # "$(SYSBASE)"!=""
+@@ -95,11 +92,14 @@
+
+ # -fpermissive should be removed as soon as possible
+ CFLAGSCXX= -pipe $(ARCH_FLAGS)
+-PICSWITCH:=-fpic
+ .IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+ CFLAGSCXX += -fvisibility-inlines-hidden
+ .ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+
++CFLAGS_CREATE_PCH=-x c++-header -I$(INCPCH) -DPRECOMPILED_HEADERS
++CFLAGS_USE_PCH=-I$(SLO)$/pch -DPRECOMPILED_HEADERS -Winvalid-pch
++CFLAGS_USE_EXCEPTIONS_PCH=-I$(SLO)$/pch_ex -DPRECOMPILED_HEADERS -Winvalid-pch
++
+ # Compiler flags for compiling static object in multi threaded environment with graphical user interface
+ CFLAGSOBJGUIMT=
+ # Compiler flags for compiling static object in multi threaded environment with character user interface
+@@ -113,6 +113,12 @@
+ # Compiler flags for debugging
+ CFLAGSDEBUG=-g
+ CFLAGSDBGUTIL=
++# Compiler flags for enabling optimizations
++.IF "$(PRODUCT)"!=""
++CFLAGSOPT=$(CDEFAULTOPT) -fno-strict-aliasing # optimizing for products
++.ELSE # "$(PRODUCT)"!=""
++CFLAGSOPT= # no optimizing for non products
++.ENDIF # "$(PRODUCT)"!=""
+ # Compiler flags for disabling optimizations
+ CFLAGSNOOPT=-O0
+ # Compiler flags for describing the output path
+@@ -141,19 +147,25 @@
# default linker flags
LINKFLAGSDEFS*=#-Wl,-z,defs
@@ -17,4 +93,151 @@
+LINKFLAGSRUNPATH_BRAND=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\'
LINKFLAGSRUNPATH_OXT=
LINKFLAGSRUNPATH_NONE=
- LINKFLAGS=-Wl,-z,combreloc $(LINKFLAGSDEFS)
+-LINKFLAGS=-Wl,-z,combreloc $(LINKFLAGSDEFS)
++# flag -Wl,-z,noexecstack sets the NX bit on the stack
++LINKFLAGS=-Wl,-z,noexecstack -Wl,-z,combreloc $(LINKFLAGSDEFS)
++.IF "$(HAVE_LD_BSYMBOLIC_FUNCTIONS)" == "TRUE"
++LINKFLAGS += -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo
++.ENDIF
+
+ # linker flags for linking applications
+-LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
+-LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
++LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \
++ -Wl,-rpath-link,$(LB):$(SOLARLIBDIR)
++LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \
++ -Wl,-rpath-link,$(LB):$(SOLARLIBDIR)
+
+ # linker flags for linking shared libraries
+ LINKFLAGSSHLGUI= -shared
+@@ -176,18 +188,30 @@
+ STDLIBCPP=-lstdc++
+
+ # default objectfilenames to link
+-STDOBJVCL=$(L)/salmain.o
++STDOBJVCL=$(L)$/salmain.o
+ STDOBJGUI=
+ STDSLOGUI=
+ STDOBJCUI=
+ STDSLOCUI=
+
++.IF "$(ALLOC)" == "TCMALLOC"
++STDLIBGUIMT+=-ltcmalloc
++STDLIBCUIMT+=-ltcmalloc
++STDSHLGUIMT+=-ltcmalloc
++STDSHLCUIMT+=-ltcmalloc
++.ENDIF
++.IF "$(HAVE_LD_HASH_STYLE)" == "TRUE"
++LINKFLAGS += -Wl,--hash-style=both
++.ELSE
++LINKFLAGS += -Wl,-zdynsort
++.ENDIF
++
+ # libraries for linking applications
+-STDLIBGUIMT=-lX11 $(PTHREAD_LIBS) -lm
+-STDLIBCUIMT=$(PTHREAD_LIBS) -lm
++STDLIBGUIMT+=-Wl,--as-needed -lX11 $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
++STDLIBCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
+ # libraries for linking shared libraries
+-STDSHLGUIMT=-lX11 -lXext $(PTHREAD_LIBS) -lm
+-STDSHLCUIMT=$(PTHREAD_LIBS) -lm
++STDSHLGUIMT+=-Wl,--as-needed -lX11 -lXext $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
++STDSHLCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
+
+ LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive
+
+@@ -212,7 +236,7 @@
+ #FILLUPARC=$(STATIC) -lsupc++ $(DYNAMIC)
+
+ # name of library manager
+-LIBMGR=ar
++LIBMGR*=ar
+ LIBFLAGS=-r
+
+ # tool for generating import libraries
+@@ -231,3 +255,4 @@
+ # platform specific identifier for shared libs
+ DLLPRE=lib
+ DLLPOST=.so
++PCHPOST=.gch
+
+
+--- solenv/inc/unxfbsdi.mk.org 2009-12-13 12:11:43.000000000 +0900
++++ solenv/inc/unxfbsdi.mk 2009-12-13 12:13:15.000000000 +0900
+@@ -29,22 +29,13 @@
+ #
+ #*************************************************************************
+
+-#
+ # FreBSD/i386 specific defines
+-#
+
+-CDEFS+=-DX86
+-
+ # architecture dependent flags for the C and C++ compiler that can be changed by
+ # exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
++CDEFAULTOPT=-Os
+ ARCH_FLAGS*=-mtune=pentiumpro
+-
+-# Compiler flags for enabling optimizations
+-.IF "$(PRODUCT)"!=""
+-CFLAGSOPT=-Os -fno-strict-aliasing # optimizing for products
+-.ELSE # "$(PRODUCT)"!=""
+-CFLAGSOPT= # no optimizing for non products
+-.ENDIF # "$(PRODUCT)"!=""
+-
+-# platform specific identifier for shared libs
++.INCLUDE : unxfbsd.mk
++CDEFS+=-DX86
++DLLPOST=.so
+ DLLPOSTFIX=fi
+
+--- solenv/inc/unxfbsdx.mk 2009-12-13 12:16:16.000000000 +0900
++++ solenv/inc/unxfbsdx.mk 2009-12-13 12:54:57.000000000 +0900
+@@ -29,25 +29,10 @@
+ #
+ #*************************************************************************
+
+-#
+ # FreBSD/amd64 specific defines
+-#
+-
++.INCLUDE : unxfbsd.mk
+ CDEFS+=-DX86_64
+-
+-# architecture dependent flags for the C and C++ compiler that can be changed by
+-# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+-.IF "$(CPUNAME)" == "X86_64"
+-ARCH_FLAGS*=
+-.ENDIF
+-
+-# Compiler flags for enabling optimizations
+-.IF "$(PRODUCT)"!=""
+-CFLAGSOPT=-O2 -fno-strict-aliasing # optimizing for products
+-.ELSE # "$(PRODUCT)"!=""
+-CFLAGSOPT= # no optimizing for non products
+-.ENDIF # "$(PRODUCT)"!=""
+-
+-# platform specific identifier for shared libs
++#MODULES_WITH_WARNINGS+=\
++# svx
+ DLLPOSTFIX=fx
+ BUILD64=1
+
+--- solenv/inc/unx.mk 2009-12-12 18:44:35.000000000 +0900
++++ solenv/inc/unx.mk 2009-12-13 17:15:50.000000000 +0900
+@@ -147,8 +147,12 @@
+ .INCLUDE : unxbsds.mk
+ .ENDIF
+
+-.IF "$(COM)$(OS)" == "GCCFREEBSD"
+-.INCLUDE : unxfbsd.mk
++.IF "$(COM)$(OS)$(CPU)" == "GCCFREEBSDI"
++.INCLUDE : unxfbsdi.mk
++.ENDIF
++
++.IF "$(COM)$(OS)$(CPU)" == "GCCFREEBSDX"
++.INCLUDE : unxfbsdx.mk
+ .ENDIF
+
+ .IF "$(COM)$(OS)$(CPU)" == "C730IRIXM"
diff --git a/editors/openoffice-3/files/patch-i108197 b/editors/openoffice-3/files/patch-i108197
new file mode 100644
index 000000000000..92b455532814
--- /dev/null
+++ b/editors/openoffice-3/files/patch-i108197
@@ -0,0 +1,13 @@
+--- testtools/source/bridgetest/makefile.mk 2010-01-10 19:40:41.000000000 +0900
++++ testtools/source/bridgetest/makefile.mk 2010-01-10 19:49:30.000000000 +0900
+@@ -143,8 +143,8 @@
+ #################################################################
+
+ runtest : $(DLLDEST)$/uno_types.rdb $(DLLDEST)$/uno_services.rdb makefile.mk
+-.IF "$(COM)$(OS)$(CPU)" == "GCCMACOSXP"
+- @echo "Mac OSX PPC GCC fails this test!, likely broken UNO bridge. Fix me."
++.IF "$(COM)$(OS)$(CPU)" == "GCCMACOSXP" || "$(COM)$(OS)$(CPU)" == "GCCFREEBSDI"
++ @echo "Mac OSX PPC GCC ad FreeBDS/i386 fails this test! likely broken UNO bridge. Fix me."
+ .ELSE
+ cd $(DLLDEST) && $(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/uno \
+ -ro uno_services.rdb -ro uno_types.rdb \
diff --git a/editors/openoffice-3/files/patch-i109429 b/editors/openoffice-3/files/patch-i109429
new file mode 100644
index 000000000000..992094149d99
--- /dev/null
+++ b/editors/openoffice-3/files/patch-i109429
@@ -0,0 +1,11 @@
+--- extensions/source/config/ldap/makefile.mk~ 2010-02-04 02:35:34.000000000 +0900
++++ extensions/source/config/ldap/makefile.mk 2010-02-19 18:50:59.000000000 +0900
+@@ -90,7 +90,7 @@
+ SHL1STDLIBS+=-lcompat
+ # workaround for FreeBSD, which needs -llber50, too
+ .IF "$(WITH_OPENLDAP)" != "YES"
+-SHL1STDLIBS+=-Wl,-Bstatic -llber50
++SHL1STDLIBS+=-Wl,-Bstatic -llber50 -Wl,-Bdynamic
+ .ENDIF
+ .ENDIF
+
diff --git a/editors/openoffice-3/files/patch-i111384 b/editors/openoffice-3/files/patch-i111384
new file mode 100644
index 000000000000..2daf10d99533
--- /dev/null
+++ b/editors/openoffice-3/files/patch-i111384
@@ -0,0 +1,34 @@
+--- /dev/null 2010-05-05 13:00:20.000000000 +0900
++++ hunspell/hunspell.patch 2010-05-05 13:03:11.000000000 +0900
+@@ -0,0 +1,8 @@
++--- misc/hunspell-1.2.9/tests/test.sh 2010-02-23 21:18:50.000000000 +0900
+++++ misc/build/hunspell-1.2.9/tests/test.sh 2010-05-05 13:01:42.000000000 +0900
++@@ -1,4 +1,4 @@
++-#!/bin/bash
+++#!/usr/bin/env bash
++ export LC_ALL="C"
++
++ function check_valgrind_log () {
+--- hunspell/makefile.mk.orig 2010-05-05 12:59:48.000000000 +0900
++++ hunspell/makefile.mk 2010-05-05 13:02:14.000000000 +0900
+@@ -43,8 +43,9 @@
+ PATCH_FILES=\
+ hunspell-wntconfig.patch \
+ hunspell-solaris.patch \
+- hunspell-stacksmash.patch
+-
++ hunspell-stacksmash.patch \
++ hunspell.patch
++
+ .IF "$(GUI)"=="UNX"
+
+ #relative to CONFIGURE_DIR
+@@ -60,6 +61,8 @@
+ .ENDIF # "$(EXTRA_CFLAGS)"!=""
+ .ELIF "$(OS)"=="MACOSX" # "$(SYSBASE)"!=""
+ CONFIGURE_FLAGS+=CPPFLAGS="$(EXTRA_CDEFS)"
++.ELIF "$(OS)"=="FREEBSD" # "$(SYSBASE)"!=""
++CONFIGURE_FLAGS+=CPPFLAGS="-I$(LIBINTL_PREFIX)/include" --with-libintl-prefix="$(LIBINTL_PREFIX)"
+ .ENDIF
+
+ BUILD_ACTION=make && make check
diff --git a/editors/openoffice-3/files/patch-i73217 b/editors/openoffice-3/files/patch-i73217
index 712631a136f1..cea0759cd41c 100644
--- a/editors/openoffice-3/files/patch-i73217
+++ b/editors/openoffice-3/files/patch-i73217
@@ -1,99 +1,63 @@
-It won't fix in the master as it breaks the POSIX.
-
-Index: epm/epm-3.7.patch
-===================================================================
-RCS file: /cvs/external/epm/epm-3.7.patch,v
-retrieving revision 1.11
-diff -u -r1.11 epm-3.7.patch
---- epm/epm-3.7.patch 1 Aug 2006 12:20:23 -0000 1.11
-+++ epm/epm-3.7.patch 6 Jan 2007 10:10:38 -0000
-@@ -247,6 +247,23 @@
- *** misc/epm-3.7/dist.c Thu Aug 7 16:14:40 2003
- --- misc/build/epm-3.7/dist.c Wed Jul 26 21:01:11 2006
- ***************
-+*** 339,345 ****
-+ const char *defval) /* I - Default value of option */
-+ {
-+ char *ptr; /* Pointer to option */
-+! static char option[256]; /* Copy of file option */
-+
-+
-+ /*
-+--- 339,345 ----
-+ const char *defval) /* I - Default value of option */
-+ {
-+ char *ptr; /* Pointer to option */
-+! static char option[1024]; /* Copy of file option */
-+
-+
-+ /*
-+***************
- *** 394,401 ****
- strcpy(platform->machine, "mips");
- #elif defined(__hpux)
-@@ -292,6 +309,35 @@
- else if (strncmp(platform->machine, "sun", 3) == 0)
- strcpy(platform->machine, "sparc");
- #endif /* __sgi */
-+***************
-+*** 550,562 ****
-+ char line[2048], /* Expanded line from list file */
-+ buf[1024], /* Original line from list file */
-+ type, /* File type */
-+! dst[256], /* Destination path */
-+! src[256], /* Source path */
-+! pattern[256], /* Pattern for source files */
-+ user[32], /* User */
-+ group[32], /* Group */
-+ *temp, /* Temporary pointer */
-+! options[256]; /* File options */
-+ int mode, /* File permissions */
-+ skip; /* 1 = skip files, 0 = archive files */
-+ dist_t *dist; /* Distribution data */
-+--- 560,572 ----
-+ char line[2048], /* Expanded line from list file */
-+ buf[1024], /* Original line from list file */
-+ type, /* File type */
-+! dst[1024], /* Destination path */
-+! src[1024], /* Source path */
-+! pattern[1024], /* Pattern for source files */
-+ user[32], /* User */
-+ group[32], /* Group */
-+ *temp, /* Temporary pointer */
-+! options[1024]; /* File options */
-+ int mode, /* File permissions */
-+ skip; /* 1 = skip files, 0 = archive files */
-+ dist_t *dist; /* Distribution data */
- *** misc/epm-3.7/epm.c Tue Oct 28 15:48:30 2003
- --- misc/build/epm-3.7/epm.c Wed Jul 26 20:59:48 2006
- ***************
-@@ -304,6 +350,29 @@
- puts("");
- puts("EPM is free software and comes with ABSOLUTELY NO WARRANTY; for details");
- puts("see the GNU General Public License in the file COPYING or at");
-+*** misc/epm-3.7/epm.h Thu Jul 24 10:20:54 2003
-+--- misc/build/epm-3.7/epm.h Sat Jan 6 19:08:44 2007
-+***************
-+*** 167,175 ****
-+ int mode; /* Permissions of file */
-+ char user[32], /* Owner of file */
-+ group[32], /* Group of file */
-+! src[512], /* Source path */
-+! dst[512], /* Destination path */
-+! options[256]; /* File options (nostrip, etc.) */
-+ } file_t;
-+
-+ typedef struct /**** Install/Patch/Remove Commands ****/
-+--- 167,175 ----
-+ int mode; /* Permissions of file */
-+ char user[32], /* Owner of file */
-+ group[32], /* Group of file */
-+! src[1024], /* Source path */
-+! dst[1024], /* Destination path */
-+! options[1024]; /* File options (nostrip, etc.) */
-+ } file_t;
-+
-+ typedef struct /**** Install/Patch/Remove Commands ****/
- *** misc/epm-3.7/file.c Wed Jul 23 23:41:08 2003
- --- misc/build/epm-3.7/file.c Wed Jul 26 20:59:48 2006
- ***************
+--- epm/epm-3.7.patch.org 2010-06-19 19:51:40.000000000 +0900
++++ epm/epm-3.7.patch 2010-06-20 08:09:43.000000000 +0900
+@@ -303,6 +303,15 @@
+ diff -urN epm-3.7-old//dist.c epm-3.7/dist.c
+ --- misc/epm-3.7/dist.c 2003-08-07 14:14:40.000000000 +0000
+ +++ misc/build/epm-3.7/dist.c 2010-04-19 22:52:32.000000000 +0000
++@@ -339,7 +339,7 @@
++ const char *defval) /* I - Default value of option */
++ {
++ char *ptr; /* Pointer to option */
++- static char option[256]; /* Copy of file option */
+++ static char option[1024]; /* Copy of file option */
++
++
++ /*
+ @@ -394,8 +394,13 @@
+ strcpy(platform->machine, "mips");
+ #elif defined(__hpux)
+@@ -332,6 +341,24 @@
+ else if (strncmp(platform->machine, "sun", 3) == 0)
+ strcpy(platform->machine, "sparc");
+ #endif /* __sgi */
++@@ -560,13 +560,13 @@
++ char line[2048], /* Expanded line from list file */
++ buf[1024], /* Original line from list file */
++ type, /* File type */
++- dst[256], /* Destination path */
++- src[256], /* Source path */
++- pattern[256], /* Pattern for source files */
+++ dst[1024], /* Destination path */
+++ src[1024], /* Source path */
+++ pattern[1024], /* Pattern for source files */
++ user[32], /* User */
++ group[32], /* Group */
++ *temp, /* Temporary pointer */
++- options[256]; /* File options */
+++ options[1024]; /* File options */
++ int mode, /* File permissions */
++ skip; /* 1 = skip files, 0 = archive files */
++ dist_t *dist; /* Distribution data */
+ diff -urN epm-3.7-old//epm.c epm-3.7/epm.c
+ --- misc/epm-3.7/epm.c 2003-10-28 14:48:30.000000000 +0000
+ +++ misc/build/epm-3.7/epm.c 2010-04-19 22:52:32.000000000 +0000
+@@ -655,3 +682,19 @@
+ return (0);
+ }
+
++diff -urN epm-3.7-old//rpm.c epm-3.7/epm.h
++--- misc/epm-3.7/epm.h 2003-10-01 19:27:15.000000000 +0000
+++++ misc/build/epm-3.7/epm.h 2010-04-19 22:52:32.000000000 +0000
++@@ -167,9 +167,9 @@
++ int mode; /* Permissions of file */
++ char user[32], /* Owner of file */
++ group[32], /* Group of file */
++- src[512], /* Source path */
++- dst[512], /* Destination path */
++- options[256]; /* File options (nostrip, etc.) */
+++ src[1024], /* Source path */
+++ dst[1024], /* Destination path */
+++ options[1024]; /* File options (nostrip, etc.) */
++ } file_t;
++
++ typedef struct /**** Install/Patch/Remove Commands ****/
diff --git a/editors/openoffice-3/files/patch-i80129 b/editors/openoffice-3/files/patch-i80129
index f590cb16a50d..de87f789df9c 100644
--- a/editors/openoffice-3/files/patch-i80129
+++ b/editors/openoffice-3/files/patch-i80129
@@ -1,16 +1,11 @@
-Index: libxml2/libxml2-2.6.31.patch
-===================================================================
-RCS file: /cvs/external/libxml2/libxml2-2.6.31.patch,v
-retrieving revision 1.2
-diff -u -r1.2 libxml2-2.6.31.patch
---- libxml2/libxml2-2.6.31.patch 6 Jun 2008 11:48:45 -0000 1.2
-+++ libxml2/libxml2-2.6.31.patch 8 Jul 2008 02:54:59 -0000
-@@ -88,7 +88,7 @@
-
- freebsd-elf)
- ! major=.`expr $current - $age`
--! versuffix=".$major.$age.$revision";
-+! versuffix="$major";
- ;;
-
- irix | nonstopux)
+--- libxml2/libxml2-configure.patch.org 2010-06-06 08:23:29.000000000 +0900
++++ libxml2/libxml2-configure.patch 2010-06-06 08:23:45.000000000 +0900
+@@ -7,7 +7,7 @@
+ - major=".$current"
+ - versuffix=".$current"
+ + major=.`expr $current - $age`
+-+ versuffix=".$major.$age.$revision";
+++ versuffix="$major";
+ ;;
+
+ irix | nonstopux)
diff --git a/editors/openoffice-3/files/patch-i85027 b/editors/openoffice-3/files/patch-i85027
index e6fe720647bc..732c68da8633 100644
--- a/editors/openoffice-3/files/patch-i85027
+++ b/editors/openoffice-3/files/patch-i85027
@@ -16,30 +16,25 @@ and
# gcc42 -print-file-name=libgcc_s.so
/usr/local/lib/gcc-4.2.3/gcc/i386-portbld-freebsd7.0/4.2.3/../../../libgcc_s.so
.
-
-Index: work/OOH680_m1/external/gcc3_specific/makefile.mk
-===================================================================
-RCS file: /cvs/util/external/gcc3_specific/makefile.mk,v
-retrieving revision 1.5
-diff -u -r1.5 makefile.mk
---- external/gcc3_specific/makefile.mk 30 Aug 2006 12:39:00 -0000 1.5
-+++ external/gcc3_specific/makefile.mk 6 Jan 2008 08:10:19 -0000
-@@ -12,7 +12,6 @@
+--- external/gcc3_specific/makefile.mk 2010-01-08 18:13:15.000000000 +0900
++++ external/gcc3_specific/makefile.mk 2010-02-07 12:17:43.000000000 +0900
+@@ -43,7 +43,6 @@
+ .IF "$(SYSTEM_STDLIBS)" != "YES" && "$(COMID)"=="gcc3"
.IF "$(OS)"!="MACOSX"
- .IF "$(OS)"!="IRIX"
-.IF "$(OS)"!="FREEBSD"
.EXPORT : CC
-@@ -25,7 +24,6 @@
- $(LB)$/libgcc_s.so.1 :
- $(GCCINSTLIB) libgcc_s.so.1 $(LB)
+@@ -60,8 +59,6 @@
+ .ENDIF
+ .ENDIF
+-
-.ENDIF
- .ENDIF
- .ENDIF
+ .ENDIF # "$(BUILD_SPECIAL)"==""
+
--- scp2/source/ooo/ure.scp 18 Mar 2008 13:35:26 -0000 1.2
+++ scp2/source/ooo/ure.scp 21 Mar 2008 09:26:48 -0000
@@ -728,7 +730,7 @@
diff --git a/editors/openoffice-3/files/patch-i85126 b/editors/openoffice-3/files/patch-i85126
index d2b427c99915..26565332843c 100644
--- a/editors/openoffice-3/files/patch-i85126
+++ b/editors/openoffice-3/files/patch-i85126
@@ -12,19 +12,80 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
"bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx"
.
---- bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.cxx 2009-06-13 15:39:58.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.cxx 2009-06-13 15:41:26.000000000 +0900
-@@ -353,6 +353,8 @@
- case X86_64_SSEDF_CLASS:
- *pStructAlign++ = *reinterpret_cast<sal_uInt64 *>( *pSSE++ );
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.cxx 2009-12-06 13:19:58.000000000 +0900
+@@ -229,6 +229,7 @@
+ for ( sal_Int32 nMember = 0; nMember < pStruct->nMembers; ++nMember )
+ {
+ typelib_TypeDescriptionReference *pTypeInStruct = pStruct->ppTypeRefs[ nMember ];
++ rByteOffset = pStruct->pMemberOffsets[ nMember ];
+
+ int num = classify_argument( pTypeInStruct, subclasses, rByteOffset );
+
+@@ -243,9 +244,6 @@
+ int pos = rByteOffset / 8;
+ classes[i + pos] = merge_classes( subclasses[i], classes[i + pos] );
+ }
+-
+- if ( pTypeInStruct->eTypeClass != typelib_TypeClass_STRUCT )
+- rByteOffset = pStruct->pMemberOffsets[ nMember ];
+ }
+
+ TYPELIB_DANGER_RELEASE( pTypeDescr );
+@@ -332,7 +330,7 @@
+ return examine_argument( pTypeRef, true, g, s ) == 0;
+ }
+
+-void x86_64::fill_struct( typelib_TypeDescriptionReference *pTypeRef, void * const *pGPR, void * const *pSSE, void *pStruct )
++void x86_64::fill_struct( typelib_TypeDescriptionReference *pTypeRef, const sal_uInt64 *pGPR, const double *pSSE, void *pStruct )
+ {
+ enum x86_64_reg_class classes[MAX_CLASSES];
+ int offset = 0;
+@@ -346,12 +344,14 @@
+ {
+ case X86_64_INTEGER_CLASS:
+ case X86_64_INTEGERSI_CLASS:
+- *pStructAlign++ = *reinterpret_cast<sal_uInt64 *>( *pGPR++ );
++ *pStructAlign++ = *pGPR++;
break;
-+ default:
+ case X86_64_SSE_CLASS:
+ case X86_64_SSESF_CLASS:
+ case X86_64_SSEDF_CLASS:
+- *pStructAlign++ = *reinterpret_cast<sal_uInt64 *>( *pSSE++ );
++ *pStructAlign++ = *reinterpret_cast<const sal_uInt64 *>( pSSE++ );
+ break;
++ default:
+ break;
}
}
+
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.hxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.hxx 2009-12-06 13:19:58.000000000 +0900
+@@ -63,7 +63,7 @@
+ */
+ bool return_in_hidden_param( typelib_TypeDescriptionReference *pTypeRef );
+
+-void fill_struct( typelib_TypeDescriptionReference *pTypeRef, void * const *pGPR, void * const *pSSE, void *pStruct );
++void fill_struct( typelib_TypeDescriptionReference *pTypeRef, const sal_uInt64* pGPR, const double* pSSE, void *pStruct );
+
+ } // namespace x86_64
---- bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx 2009-06-13 15:39:58.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx 2009-06-13 15:41:26.000000000 +0900
+
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/call.s 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/call.s 2009-12-06 13:19:58.000000000 +0900
+@@ -43,6 +43,9 @@
+ je .Lfloat
+
+ movq -144(%rbp), %rax # Return value (int case)
++ movq -136(%rbp), %rdx # Return value (int case)
++ movq -144(%rbp), %xmm0 # Return value (int case)
++ movq -136(%rbp), %xmm1 # Return value (int case)
+ jmp .Lfinish
+ .Lfloat:
+ movlpd -144(%rbp), %xmm0 # Return value (float/double case)
+
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx 2009-12-06 13:19:58.000000000 +0900
@@ -77,8 +77,8 @@
void ** gpreg, void ** fpreg, void ** ovrflw,
sal_uInt64 * pRegisterReturn /* space for register return */ )
@@ -36,7 +97,49 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
// return
typelib_TypeDescription * pReturnTypeDescr = 0;
-@@ -489,13 +489,12 @@
+@@ -126,7 +126,10 @@
+
+ int nUsedGPR = 0;
+ int nUsedSSE = 0;
+- bool bFitsRegisters = x86_64::examine_argument( rParam.pTypeRef, false, nUsedGPR, nUsedSSE );
++#if OSL_DEBUG_LEVEL > 1
++ bool bFitsRegisters =
++#endif
++ x86_64::examine_argument( rParam.pTypeRef, false, nUsedGPR, nUsedSSE );
+ if ( !rParam.bOut && bridges::cpp_uno::shared::isSimpleType( pParamTypeDescr ) ) // value
+ {
+ // Simple types must fit exactly one register on x86_64
+@@ -159,28 +162,7 @@
+ else // struct <= 16 bytes || ptr to complex value || ref
+ {
+ void *pCppStack;
+- char pTmpStruct[16];
+-
+- if ( bFitsRegisters && !rParam.bOut &&
+- ( pParamTypeDescr->eTypeClass == typelib_TypeClass_STRUCT ||
+- pParamTypeDescr->eTypeClass == typelib_TypeClass_EXCEPTION ) )
+- {
+- if ( ( nr_gpr + nUsedGPR <= x86_64::MAX_GPR_REGS ) && ( nr_fpr + nUsedSSE <= x86_64::MAX_SSE_REGS ) )
+- {
+- x86_64::fill_struct( rParam.pTypeRef, gpreg, fpreg, pTmpStruct );
+-#if OSL_DEBUG_LEVEL > 1
+- fprintf( stderr, "nUsedGPR == %d, nUsedSSE == %d, pTmpStruct[0] == 0x%x, pTmpStruct[1] == 0x%x, **gpreg == 0x%lx\n",
+- nUsedGPR, nUsedSSE, pTmpStruct[0], pTmpStruct[1], *(sal_uInt64*)*gpreg );
+-#endif
+-
+- pCppArgs[nPos] = pCppStack = reinterpret_cast<void *>( pTmpStruct );
+- gpreg += nUsedGPR;
+- fpreg += nUsedSSE;
+- }
+- else
+- pCppArgs[nPos] = pCppStack = *ovrflw++;
+- }
+- else if ( nr_gpr < x86_64::MAX_GPR_REGS )
++ if ( nr_gpr < x86_64::MAX_GPR_REGS )
+ {
+ pCppArgs[nPos] = pCppStack = *gpreg++;
+ nr_gpr++;
+@@ -489,13 +471,12 @@
//==================================================================================================
unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions(
@@ -51,7 +154,7 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
for ( sal_Int32 nPos = 0; nPos < type->nMembers; ++nPos )
{
typelib_TypeDescription * pTD = 0;
-@@ -509,14 +508,14 @@
+@@ -509,14 +490,14 @@
reinterpret_cast<typelib_InterfaceAttributeTypeDescription *>( pTD );
// get method
@@ -68,7 +171,7 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
code = codeSnippet( code, nFunctionOffset++, nVtableOffset, false );
}
}
-@@ -525,7 +524,7 @@
+@@ -525,7 +506,7 @@
typelib_InterfaceMethodTypeDescription *pMethodTD =
reinterpret_cast<typelib_InterfaceMethodTypeDescription *>( pTD );
@@ -78,8 +181,73 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
x86_64::return_in_hidden_param( pMethodTD->pReturnTypeRef ) );
}
---- bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx 2009-06-13 15:39:58.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx 2009-06-13 15:41:27.000000000 +0900
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx 2009-12-06 13:19:58.000000000 +0900
+@@ -32,6 +32,7 @@
+ #include "precompiled_bridges.hxx"
+
+ #include <stdio.h>
++#include <string.h>
+ #include <dlfcn.h>
+ #include <cxxabi.h>
+ #include <hash_map>
+@@ -121,7 +121,7 @@
+ };
+ //__________________________________________________________________________________________________
+ RTTI::RTTI() SAL_THROW( () )
+-#if __FreeBSD_version < 602103
++#if __FreeBSD_version < 702104 /* #i22253# */
+ : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) )
+ #else
+ : m_hApp( dlopen( 0, RTLD_LAZY ) )
+@@ -160,7 +160,7 @@
+ buf.append( 'E' );
+
+ OString symName( buf.makeStringAndClear() );
+-#if __FreeBSD_version < 602103 /* #i22253# */
++#if __FreeBSD_version < 702104 /* #i22253# */
+ rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() );
+ #else
+ rtti = (type_info *)dlsym( m_hApp, symName.getStr() );
+@@ -175,8 +167,8 @@
+ else
+ {
+ // try to lookup the symbol in the generated rtti map
+- t_rtti_map::const_iterator iFind( m_generatedRttis.find( unoName ) );
+- if (iFind == m_generatedRttis.end())
++ t_rtti_map::const_iterator iFind2( m_generatedRttis.find( unoName ) );
++ if (iFind2 == m_generatedRttis.end())
+ {
+ // we must generate it !
+ // symbol and rtti-name is nearly identical,
+@@ -205,7 +197,7 @@
+ }
+ else // taking already generated rtti
+ {
+- rtti = iFind->second;
++ rtti = iFind2->second;
+ }
+ }
+ }
+
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx 2009-12-06 13:19:58.000000000 +0900
+@@ -53,13 +53,13 @@
+
+ //==================================================================================================
+ static void callVirtualMethod(void * pThis, sal_uInt32 nVtableIndex,
+- void * pRegisterReturn, typelib_TypeDescription * pReturnTypeDescr, bool bSimpleReturn,
++ void * pRegisterReturn, typelib_TypeDescriptionReference * pReturnTypeRef, bool bSimpleReturn,
+ sal_uInt64 *pStack, sal_uInt32 nStack,
+ sal_uInt64 *pGPR, sal_uInt32 nGPR,
+ double *pFPR, sal_uInt32 nFPR) __attribute__((noinline));
+
+ static void callVirtualMethod(void * pThis, sal_uInt32 nVtableIndex,
+- void * pRegisterReturn, typelib_TypeDescription * pReturnTypeDescr, bool bSimpleReturn,
++ void * pRegisterReturn, typelib_TypeDescriptionReference * pReturnTypeRef, bool bSimpleReturn,
+ sal_uInt64 *pStack, sal_uInt32 nStack,
+ sal_uInt64 *pGPR, sal_uInt32 nGPR,
+ double *pFPR, sal_uInt32 nFPR)
@@ -68,13 +68,13 @@
// Let's figure out what is really going on here
{
@@ -97,7 +265,54 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
fprintf( stderr, "0x%lx, ", pStack[i] );
fprintf( stderr, "\n" );
}
-@@ -323,6 +323,8 @@
+@@ -113,6 +113,7 @@
+ sal_uInt64 rax;
+ sal_uInt64 rdx;
+ double xmm0;
++ double xmm1;
+
+ asm volatile (
+
+@@ -147,13 +148,14 @@
+ "movq %%rax, %4\n\t"
+ "movq %%rdx, %5\n\t"
+ "movsd %%xmm0, %6\n\t"
++ "movsd %%xmm1, %7\n\t"
+ :
+ : "m" ( pMethod ), "m" ( pGPR ), "m" ( pFPR ), "m" ( nFPR ),
+- "m" ( rax ), "m" ( rdx ), "m" ( xmm0 )
++ "m" ( rax ), "m" ( rdx ), "m" ( xmm0 ), "m" ( xmm1 )
+ : "rax", "rdi", "rsi", "rdx", "rcx", "r8", "r9", "r11"
+ );
+
+- switch (pReturnTypeDescr->eTypeClass)
++ switch (pReturnTypeRef->eTypeClass)
+ {
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+@@ -179,12 +181,17 @@
+ break;
+ default:
+ {
+- sal_Int32 const nRetSize = pReturnTypeDescr->nSize;
++ sal_Int32 const nRetSize = pReturnTypeRef->pType->nSize;
+ if (bSimpleReturn && nRetSize <= 16 && nRetSize > 0)
+ {
+- if (nRetSize > 8)
+- static_cast<sal_uInt64 *>(pRegisterReturn)[1] = rdx;
+- static_cast<sal_uInt64 *>(pRegisterReturn)[0] = rax;
++ sal_uInt64 longs[2];
++ longs[0] = rax;
++ longs[1] = rdx;
++
++ double doubles[2];
++ doubles[0] = xmm0;
++ doubles[1] = xmm1;
++ x86_64::fill_struct( pReturnTypeRef, &longs[0], &doubles[0], pRegisterReturn);
+ }
+ break;
+ }
+@@ -323,6 +330,8 @@
case typelib_TypeClass_DOUBLE:
INSERT_FLOAT_DOUBLE( pCppArgs[nPos], nFPR, pFPR, pStack );
break;
@@ -106,7 +321,16 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
}
// no longer needed
-@@ -435,16 +437,19 @@
+@@ -365,7 +374,7 @@
+ {
+ callVirtualMethod(
+ pAdjustedThisPtr, aVtableSlot.index,
+- pCppReturn, pReturnTypeDescr, bSimpleReturn,
++ pCppReturn, pReturnTypeRef, bSimpleReturn,
+ pStackStart, ( pStack - pStackStart ),
+ pGPR, nGPR,
+ pFPR, nFPR );
+@@ -435,16 +444,19 @@
// is my surrogate
bridges::cpp_uno::shared::UnoInterfaceProxy * pThis
= static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI);
@@ -127,7 +351,7 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
VtableSlot aVtableSlot(
getVtableSlot(
reinterpret_cast<
-@@ -489,10 +494,11 @@
+@@ -489,10 +501,11 @@
}
case typelib_TypeClass_INTERFACE_METHOD:
{
@@ -140,55 +364,6 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
VtableSlot aVtableSlot(
getVtableSlot(
reinterpret_cast<
---- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx 2009-06-13 15:39:58.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx 2009-06-13 15:42:43.000000000 +0900
-@@ -32,6 +32,7 @@
- #include "precompiled_bridges.hxx"
-
- #include <stdio.h>
-+#include <string.h>
- #include <dlfcn.h>
- #include <cxxabi.h>
- #include <hash_map>
-@@ -121,7 +121,7 @@
- };
- //__________________________________________________________________________________________________
- RTTI::RTTI() SAL_THROW( () )
--#if __FreeBSD_version < 602103
-+#if __FreeBSD_version < 702104 /* #i22253# */
- : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) )
- #else
- : m_hApp( dlopen( 0, RTLD_LAZY ) )
-@@ -160,7 +160,7 @@
- buf.append( 'E' );
-
- OString symName( buf.makeStringAndClear() );
--#if __FreeBSD_version < 602103 /* #i22253# */
-+#if __FreeBSD_version < 702104 /* #i22253# */
- rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() );
- #else
- rtti = (type_info *)dlsym( m_hApp, symName.getStr() );
-@@ -175,8 +175,8 @@
- else
- {
- // try to lookup the symbol in the generated rtti map
-- t_rtti_map::const_iterator iFind( m_generatedRttis.find( unoName ) );
-- if (iFind == m_generatedRttis.end())
-+ t_rtti_map::const_iterator iFind2( m_generatedRttis.find( unoName ) );
-+ if (iFind2 == m_generatedRttis.end())
- {
- // we must generate it !
- // symbol and rtti-name is nearly identical,
-@@ -205,7 +205,7 @@
- }
- else // taking already generated rtti
- {
-- rtti = iFind->second;
-+ rtti = iFind2->second;
- }
- }
- }
-
--- bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx~ 2009-06-13 16:41:45.000000000 +0900
+++ bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx 2009-06-13 16:42:24.000000000 +0900
@@ -40,7 +40,7 @@
diff --git a/editors/openoffice-3/files/patch-i91318 b/editors/openoffice-3/files/patch-i91318
index a87ec93e2460..4348b75903da 100644
--- a/editors/openoffice-3/files/patch-i91318
+++ b/editors/openoffice-3/files/patch-i91318
@@ -1,14 +1,14 @@
---- hunspell/hunspell-1.2.8.patch~ 2009-03-11 22:17:54.000000000 +0900
-+++ hunspell/hunspell-1.2.8.patch 2009-03-20 21:37:49.000000000 +0900
-@@ -619,3 +619,11 @@
- p++;
- }
- if (i > 0 && buf[i - 1] == '\n') {
-+--- misc/hunspell-1.2.8/tests/test.sh 2007-07-15 22:33:13.000000000 +0900
-++++ misc/build/hunspell-1.2.8/tests/test.sh 2008-08-10 10:00:33.000000000 +0900
+--- hyphen/hyphen-2.4.patch 2010-05-05 12:40:53.000000000 +0900
++++ hyphen/hyphen-2.4.patch 2010-05-05 12:41:25.000000000 +0900
+@@ -167,3 +167,11 @@
+ +
+ +.INCLUDE : target.mk
+ Common subdirectories: misc/hyphen-2.4/tests and misc/build/hyphen-2.4/tests
++--- misc/hyphen-2.4/tests/test.sh 2010-05-05 12:40:17.000000000 +0900
+++++ misc/build/hyphen-2.4/tests/test.sh 2010-05-05 12:40:31.000000000 +0900
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/usr/bin/env bash
-+ export LC_ALL="C"
+
+ function check_valgrind_log () {
++ if [ "$VALGRIND" != "" ]; then
diff --git a/editors/openoffice-3/files/patch-i91861 b/editors/openoffice-3/files/patch-i91861
index 93c8021d3385..85dfde19f963 100644
--- a/editors/openoffice-3/files/patch-i91861
+++ b/editors/openoffice-3/files/patch-i91861
@@ -1,11 +1,6 @@
-Index: vcl/source/glyphs/makefile.mk
-===================================================================
-RCS file: /cvs/gsl/vcl/source/glyphs/makefile.mk,v
-retrieving revision 1.13.106.1
-diff -u -r1.13.106.1 makefile.mk
---- vcl/source/glyphs/makefile.mk 31 Jul 2008 20:14:59 -0000 1.13.106.1
-+++ vcl/source/glyphs/makefile.mk 10 Aug 2008 01:06:59 -0000
-@@ -41,9 +41,17 @@
+--- vcl/source/glyphs/makefile.mk~ 2009-11-18 13:58:31.000000000 +0900
++++ vcl/source/glyphs/makefile.mk 2009-11-29 20:13:21.000000000 +0900
+@@ -41,7 +41,11 @@
.INCLUDE : settings.mk
.INCLUDE : $(PRJ)$/util$/makefile2.pmk
@@ -14,12 +9,6 @@ diff -u -r1.13.106.1 makefile.mk
+.ELSE
+ADDCDEFS+= $(FREETYPE_CFLAGS)
+.ENDIF
- .IF "$(USE_FT_EMBOLDEN)" == "YES"
-+.IF "$(OS)" != "FREEBSD"
- CFLAGS+=-DUSE_FT_EMBOLDEN
-+.ELSE
-+ADDCDEFS+=-DUSE_FT_EMBOLDEN
-+.ENDIF
- .ENDIF
# --- Files --------------------------------------------------------
+
diff --git a/editors/openoffice-3/files/patch-i98781 b/editors/openoffice-3/files/patch-i98781
index ca3849a011f7..d9addab6674a 100644
--- a/editors/openoffice-3/files/patch-i98781
+++ b/editors/openoffice-3/files/patch-i98781
@@ -8,8 +8,8 @@ We also need
#define USE_DOUBLE_MMAP for FreeBSD as well. The patch was included
in files/patches-i85126
---- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx 2009-06-13 14:17:39.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx 2009-06-13 15:11:21.000000000 +0900
+--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx 2009-12-06 13:19:58.000000000 +0900
@@ -362,7 +362,7 @@
int const codeSnippetSize = 16;
@@ -82,8 +82,8 @@ in files/patches-i85126
member)->pReturnTypeRef->eTypeClass);
break;
---- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx 2009-06-13 14:17:39.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx 2009-06-13 15:14:24.000000000 +0900
+--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx 2009-12-06 13:19:58.000000000 +0900
@@ -32,6 +32,7 @@
#include "precompiled_bridges.hxx"
diff --git a/editors/openoffice.org-3/Makefile b/editors/openoffice.org-3/Makefile
index c63d0ed7143d..318c1705d519 100644
--- a/editors/openoffice.org-3/Makefile
+++ b/editors/openoffice.org-3/Makefile
@@ -9,12 +9,9 @@ PORTNAME?= openoffice.org
PORTVERSION?= ${OOOVERSION}
CATEGORIES+= editors java
MASTER_SITES+= http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \
- http://ooopackages.good-day.net/pub/OpenOffice.org/misc/moz/:mozsrc \
- ${MASTER_SITE_MOZILLA_EXTENDED:S/$/:mozsrc/} \
+ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/:extsrc \
http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg
-MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc
-DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg
-EXTRACT_ONLY= ${OOOSRC}
+DISTFILES+= ${OOOSRC} ${OOOEXTSRC} unowinreg.dll:unowinreg
#de facto maintainer is maho@FreeBSD.org
#patch submitters must sign SCA; see http://porting.openoffice.org/freebsd/#policy
@@ -23,13 +20,14 @@ COMMENT= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser(releas
CONFLICTS= cppunit*
-OOOVERSION= 3.2.1
+OOOVERSION= 3.3.0
+EXTRATC_ONLY?= ${OOOSRC} ${OOOEXTSRC}
+
+OOOEXTSRC= ext_sources.20110129.tar.bz2:extsrc
+
NO_LATEST_LINK= yes
.if !defined(WITHOUT_MOZILLA)
-SEAMONKEY_VERSION= 1.1.14
-SEAMONKEY_SOURCE= seamonkey-${SEAMONKEY_VERSION}.source.tar.bz2
-DISTFILES+= ${SEAMONKEY_SOURCE}:mozsrc
USE_GNOME+= libidl
.endif
@@ -58,7 +56,7 @@ MAKE_JOBS_SAFE= yes
USE_JAVA= yes
JAVA_BUILD= jdk
-JAVA_VENDOR?= freebsd bsdjava openjdk
+JAVA_VENDOR= freebsd bsdjava openjdk
.if (${OSVERSION} >= 700000)
JAVA_VERSION= 1.5 1.6
.else
@@ -70,13 +68,13 @@ JAVA_VERSION= 1.4 1.5 1.6
ONLY_FOR_ARCHS= i386 amd64
.if ${ARCH} == amd64
-FREEBSD_ENV_SET= FreeBSDAMDEnv.Set
+FREEBSD_ENV_SET= FreeBSDAMDEnv.Set.sh
.else
-FREEBSD_ENV_SET= FreeBSDX86Env.Set
+FREEBSD_ENV_SET= FreeBSDX86Env.Set.sh
.endif
-MILESTONE?= 19
-OOOTAG?= OOO320_m${MILESTONE}
+MILESTONE?= 20
+OOOTAG?= OOO330_m${MILESTONE}
OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX}
OOODIR= openoffice.org3
INSTALLATION_BASEDIR?= openoffice.org-${OOOVERSION}
@@ -123,13 +121,14 @@ BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \
imake:${PORTSDIR}/devel/imake \
gtar:${PORTSDIR}/archivers/gtar \
${LOCALBASE}/bin/gperf:${PORTSDIR}/devel/gperf \
- ant:${PORTSDIR}/devel/apache-ant
+ ant:${PORTSDIR}/devel/apache-ant \
+ ${JAVALIBDIR}/junit.jar:${PORTSDIR}/java/junit
#see #i85469# for gperf
USE_BISON= build
GNU_CONFIGURE= yes
-WRKSRC?= ${WRKDIR}/${OOOTAG}
-TCSH?= /bin/tcsh
+WRKSRC?= ${WRKDIR}/${OOOTAG}
+BASH?= ${PREFIX}/bin/bash
SUB_FILES= pkg-message
SUB_LIST= EXECBASE=${EXECBASE} OOOTAG=${OOOTAG} OOODIR=${OOODIR}
@@ -140,16 +139,18 @@ MAKE_JOBS_NUMBER= 1
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \
--with-gnu-patch=${LOCALBASE}/bin/gpatch \
--enable-crashdump=yes \
+ --with-junit=${LOCALBASE}/share/java/classes/junit.jar \
--with-system-zlib \
--with-system-stdlibs \
--with-epm=internal \
- --with-vendor=FreeBSD-port \
--enable-hids \
--enable-minimizer \
--enable-presenter-console \
--enable-pdfimport \
--enable-wiki-publisher \
- --enable-report-builder
+ --enable-report-builder \
+ --with-use-shell=bash \
+ --with-vendor="FreeBSD ports system"
OOOEXTENSIONS+= minimizer/presentation-minimizer.oxt
OOOEXTENSIONS+= presenter/presenter-screen.oxt
@@ -184,16 +185,9 @@ pre-everything::
.endif
#issue XXXXXX not raised yet...
-CRLFFILES=curl/curl*patch neon/neon*patch jfreereport/patches/*.patch
-
+DOS2UNIX_REGEX=curl/curl*patch neon/neon*patch jfreereport/patches/*.patch
post-extract:
- for i in ${CRLFFILES}; do \
- cd ${WRKSRC} ; ${REINPLACE_CMD} -e 's# ##g' $$i ; \
- done
@${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/
-.if !defined(WITHOUT_MOZILLA)
- @${CP} ${DISTDIR}/${DIST_SUBDIR}/${SEAMONKEY_SOURCE} ${WRKSRC}/moz/download
-.endif
pre-configure:
#Workaround for gperf. #i85469#
@@ -205,7 +199,7 @@ pre-configure:
do-build:
@cd ${WRKSRC} ; ./bootstrap
- @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" "TMP=${WRKSRC}" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl --checkmodules ; build.pl -P${MAKE_JOBS_NUMBER} --all --html --dontgraboutput"
+ @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" "LIBINTL_PREFIX=${PREFIX}" ${BASH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl --checkmodules ; build.pl -P${MAKE_JOBS_NUMBER} --all --html"
.if ${LOCALIZED_LANG} == "alllangs"
@${MAKE} languagepack
@@ -228,7 +222,7 @@ do-install:
@${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR}
@cd ${WRKDIR}/tmp/opt/ ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR}
@${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR}/extensions/
- @cd ${WRKSRC}/solver/320/unxfbsd?.pro/bin/ ; ${INSTALL_DATA} ${OOOEXTENSIONS} ${PREFIX}/${INSTALLATION_BASEDIR}/extensions/
+ @cd ${WRKSRC}/solver/3?0/unxfbsd?.pro/bin/ ; ${INSTALL_DATA} ${OOOEXTENSIONS} ${PREFIX}/${INSTALLATION_BASEDIR}/extensions/
@${INSTALL_DATA} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/bin/hid.lst ${PREFIX}/${INSTALLATION_BASEDIR}
.else
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES
diff --git a/editors/openoffice.org-3/distinfo b/editors/openoffice.org-3/distinfo
index ca07850589d4..06bc93c5e51a 100644
--- a/editors/openoffice.org-3/distinfo
+++ b/editors/openoffice.org-3/distinfo
@@ -1,9 +1,6 @@
-MD5 (openoffice.org3/OOo_OOO320_m19_source.tar.bz2) = feb692912799d9f7369a48d704f3b6df
-SHA256 (openoffice.org3/OOo_OOO320_m19_source.tar.bz2) = 130a7ec1c61f3f18698be40312ab7457bd46aac0281e412b4f9d7b9d422e2d79
-SIZE (openoffice.org3/OOo_OOO320_m19_source.tar.bz2) = 447921964
-MD5 (openoffice.org3/unowinreg.dll) = e3a0b76dcd876f3d721ee7183729153d
+SHA256 (openoffice.org3/OOo_OOO330_m20_source.tar.bz2) = dca1ca546ca54b678aa1d53ca541add50484a54bcd8dc19061e9932332d489f3
+SIZE (openoffice.org3/OOo_OOO330_m20_source.tar.bz2) = 308995356
+SHA256 (openoffice.org3/ext_sources.20110129.tar.bz2) = cb565693860546d387c141e014e84ddf063ddd9c763c0de9397d6c22ec04af3c
+SIZE (openoffice.org3/ext_sources.20110129.tar.bz2) = 214185488
SHA256 (openoffice.org3/unowinreg.dll) = f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c
SIZE (openoffice.org3/unowinreg.dll) = 6144
-MD5 (openoffice.org3/seamonkey-1.1.14.source.tar.bz2) = 31eb6ce742dc73609884dab11b1f2712
-SHA256 (openoffice.org3/seamonkey-1.1.14.source.tar.bz2) = 82d5166b227d0157c1108dc03809a89bea23cfd21f31c7e6767ef5ce1983ca28
-SIZE (openoffice.org3/seamonkey-1.1.14.source.tar.bz2) = 38063082
diff --git a/editors/openoffice.org-3/files/Makefile.knobs b/editors/openoffice.org-3/files/Makefile.knobs
index 57c658657278..990b8c9a623b 100644
--- a/editors/openoffice.org-3/files/Makefile.knobs
+++ b/editors/openoffice.org-3/files/Makefile.knobs
@@ -58,6 +58,19 @@ CONFIGURE_ARGS+= --with-system-icu=yes
CONFIGURE_ARGS+= --with-system-icu=no
.endif
+.if defined(WITH_GRAPHITE)
+CONFIGURE_ARGS+= --enable-graphite=yes --without-stlport
+.else
+CONFIGURE_ARGS+= --enable-graphite=no
+.endif
+
+.if defined(WITH_SYSTEM_GRAPHITE) && defined(WITH_GRAPHITE)
+LIB_DEPENDS+= graphite.3:${PORTSDIR}/graphics/silgraphite
+CONFIGURE_ARGS+= --with-system-graphite=yes
+.else
+CONFIGURE_ARGS+= --with-system-graphite=no
+.endif
+
pre-fetch:
@${ECHO} "OPTIONS:"
.if !defined(WITH_DEBUG)
@@ -80,6 +93,23 @@ pre-fetch:
@${ECHO} "You can compile OOo with devel/icu from ports with"
@${ECHO} "make -DWITH_SYSTEM_ICU"
.endif
+.if !defined(WITH_GRAPHITE)
+ @${ECHO}
+ @${ECHO} "You can compile OOo with Graphite smart font rendering with"
+ @${ECHO} "make -DWITH_GRAPHITE"
+.else
+ @${ECHO}
+ @${ECHO} "WARNING: Graphite support enabled, --without-stlport added"
+ @${ECHO} "to configure arguments."
+.endif
+.if !defined(WITH_SYSTEM_GRAPHITE)
+ @${ECHO}
+ @${ECHO} "You can compile OOo with graphics/silgraphite from ports with"
+ @${ECHO} "make -DWITH_SYSTEM_GRAPHITE"
+.elif !defined(WITH_GRAPHITE)
+ @${ECHO}
+ @${ECHO} "To use system Graphite, WITH_GRAPHITE must be set as well."
+.endif
.if !defined(WITHOUT_CUPS)
@${ECHO}
@${ECHO} "You can compile OOo without CUPS support with"
diff --git a/editors/openoffice.org-3/files/Makefile.others b/editors/openoffice.org-3/files/Makefile.others
index 59e68dae2b98..d0bd83eef195 100644
--- a/editors/openoffice.org-3/files/Makefile.others
+++ b/editors/openoffice.org-3/files/Makefile.others
@@ -16,7 +16,7 @@ package-rename:
package-canonical:
@${ECHO_MSG} "===> Canonical packaging for OpenOffice.org";
- @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ;\
+ @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd/ ;\
${TAR} cfj ${WRKDIR}/../${PACKAGE_BASENAME}_native_install_${LOCALIZED_LANG}${PKG_SUFX} .
sdk:
@@ -48,9 +48,9 @@ solver:
languagepack:
@${ECHO_MSG} "===> Make languagepack of OpenOffice.org"
.if defined (ALL_LOCALIZED_LANGS)
- @cd ${WRKSRC} ; ${TCSH} -c 'source ${FREEBSD_ENV_SET} ; cd instsetoo_native/util ; dmake ooolanguagepack'
+ @cd ${WRKSRC} ; ${BASH} -c 'source ${FREEBSD_ENV_SET} ; cd instsetoo_native/util ; dmake ooolanguagepack'
.else
- @cd ${WRKSRC} ; ${TCSH} -c 'source ${FREEBSD_ENV_SET} ; cd instsetoo_native/util ; dmake ooolanguagepack_${LOCALIZED_LANG}'
+ @cd ${WRKSRC} ; ${BASH} -c 'source ${FREEBSD_ENV_SET} ; cd instsetoo_native/util ; dmake ooolanguagepack_${LOCALIZED_LANG}'
.endif
.if !defined (ALL_LOCALIZED_LANGS)
diff --git a/editors/openoffice.org-3/files/patch-i100395 b/editors/openoffice.org-3/files/patch-i100395
deleted file mode 100644
index afd73b787e8f..000000000000
--- a/editors/openoffice.org-3/files/patch-i100395
+++ /dev/null
@@ -1,15 +0,0 @@
---- solenv/inc/unx.mk~ 2009-02-25 02:58:24.000000000 +0900
-+++ solenv/inc/unx.mk 2009-03-20 16:52:22.000000000 +0900
-@@ -242,9 +242,9 @@
- # potentially affects multiple commands following on the recipe line:
- .IF "$(USE_SHELL)" == "bash"
- AUGMENT_LIBRARY_PATH *= : && \
-- LD_LIBRARY_PATH=$${{LD_LIBRARY_PATH+$${{LD_LIBRARY_PATH}}:}}$(SOLARLIBDIR)
-+ LD_LIBRARY_PATH=$${{LD_LIBRARY_PATH+$${{LD_LIBRARY_PATH}}:}}$(SOLARLIBDIR):.
- .ELSE
- AUGMENT_LIBRARY_PATH *= if ($$?LD_LIBRARY_PATH == 1) \
-- eval 'setenv LD_LIBRARY_PATH "$${{LD_LIBRARY_PATH}}:$(SOLARLIBDIR)"' && \
-- if ($$?LD_LIBRARY_PATH == 0) setenv LD_LIBRARY_PATH "$(SOLARLIBDIR)" &&
-+ eval 'setenv LD_LIBRARY_PATH "$${{LD_LIBRARY_PATH}}:$(SOLARLIBDIR):."' && \
-+ if ($$?LD_LIBRARY_PATH == 0) setenv LD_LIBRARY_PATH "$(SOLARLIBDIR):." &&
- .ENDIF
diff --git a/editors/openoffice.org-3/files/patch-i102181 b/editors/openoffice.org-3/files/patch-i102181
index e94916cab98b..b649ffcb87c8 100644
--- a/editors/openoffice.org-3/files/patch-i102181
+++ b/editors/openoffice.org-3/files/patch-i102181
@@ -1,23 +1,23 @@
---- openssl/makefile.mk.orig 2009-12-06 12:25:44.000000000 +0900
-+++ openssl/makefile.mk 2009-12-12 17:14:17.000000000 +0900
-@@ -61,7 +61,7 @@
- OUT2LIB += libcrypto.*
- OUT2INC += include/openssl/*
+--- openssl/makefile.mk.orig 2010-07-17 07:41:38.000000000 +0900
++++ openssl/makefile.mk 2010-07-17 17:23:07.000000000 +0900
+@@ -64,7 +64,7 @@
+
+ UNAME=$(shell uname)
-.IF "$(OS)" == "LINUX" || "$(OS)" == "FREEBSD"
+.IF "$(OS)" == "LINUX"
PATCH_FILES=openssllnx.patch
ADDITIONAL_FILES:= \
- libcrypto_OOo_0_9_8n.map \
-@@ -99,6 +99,22 @@
+ libcrypto_OOo_0_9_8o.map \
+@@ -110,6 +110,22 @@
.ENDIF
.ENDIF
+.IF "$(OS)" == "FREEBSD"
+ PATCH_FILES=openssllnx.patch
+ ADDITIONAL_FILES:= \
-+ libcrypto_OOo_0_9_8n.map \
-+ libssl_OOo_0_9_8n.map
++ libcrypto_OOo_0_9_8o.map \
++ libssl_OOo_0_9_8o.map
+ .IF "$(CPU)" == "I"
+ CONFIGURE_ACTION=Configure BSD-x86-elf
+ .ELIF "$(BUILD64)" == "1"
diff --git a/editors/openoffice.org-3/files/patch-i102184 b/editors/openoffice.org-3/files/patch-i102184
index e84902f436e0..b03694aaca31 100644
--- a/editors/openoffice.org-3/files/patch-i102184
+++ b/editors/openoffice.org-3/files/patch-i102184
@@ -1,8 +1,8 @@
---- libxslt/libxslt-1.1.24.patch 2009-05-24 16:32:30.000000000 +0900
-+++ libxslt/libxslt-1.1.24.patch 2009-05-24 16:38:38.000000000 +0900
+--- libxslt/libxslt-configure.patch.org 2010-06-06 08:21:40.000000000 +0900
++++ libxslt/libxslt-configure.patch 2010-06-06 08:21:53.000000000 +0900
@@ -20,7 +20,7 @@
- major=".$current"
- - versuffix=".$current";
+ - versuffix=".$current"
+ major=.`expr $current - $age`
-+ versuffix="$major.$age.$revision"
++ versuffix="$major"
diff --git a/editors/openoffice.org-3/files/patch-i104014 b/editors/openoffice.org-3/files/patch-i104014
index 424b7b18ffc9..16460e43a476 100644
--- a/editors/openoffice.org-3/files/patch-i104014
+++ b/editors/openoffice.org-3/files/patch-i104014
@@ -1,6 +1,82 @@
---- solenv/inc/unxfbsd.mk 2009-08-05 06:24:36.000000000 +0900
-+++ solenv/inc/unxfbsd.mk 2009-08-05 09:20:06.000000000 +0900
-@@ -141,12 +141,12 @@
+--- solenv/inc/unxfbsd.mk.orig 2009-12-12 18:29:11.000000000 +0900
++++ solenv/inc/unxfbsd.mk 2009-12-13 12:17:38.000000000 +0900
+@@ -30,27 +30,24 @@
+ #*************************************************************************
+
+ # Makefile for FreeBSD.
+-
+-ASM=
+-AFLAGS=
+-
++ASM*=
++AFLAGS*=
+ SOLAR_JAVA*=
++# default optimization level for product code
++CDEFAULTOPT*=-O2
++# architecture dependent flags for the C and C++ compiler that can be changed by
++# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
++ARCH_FLAGS*=
++# position independent code switch
++PICSWITCH*:=-fpic
+ JAVAFLAGSDEBUG=-g
+
+-# Include arch specific makefile.
+-.IF "$(CPUNAME)" == "INTEL"
+-.INCLUDE : unxfbsdi.mk
+-.ENDIF
+-.IF "$(CPUNAME)" == "X86_64"
+-.INCLUDE : unxfbsdx.mk
+-.ENDIF
+-
+ # filter for supressing verbose messages from linker
+ #not needed at the moment
+ #LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
+
+ # _PTHREADS is needed for the stl
+-CDEFS+=$(PTHREAD_CFLAGS) -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=450
++CDEFS+=$(PTHREAD_CFLAGS) -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=$(STLPORT_VER)
+
+ # enable visibility define in "sal/types.h"
+ .IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+@@ -72,7 +69,7 @@
+ # name of C Compiler
+ CC*=gcc
+ .IF "$(SYSBASE)"!=""
+-CFLAGS_SYSBASE:=-isystem $(SYSBASE)/usr/include
++CFLAGS_SYSBASE:=-isystem $(SYSBASE)$/usr$/include
+ CXX+:=$(CFLAGS_SYSBASE)
+ CC+:=$(CFLAGS_SYSBASE)
+ .ENDIF # "$(SYSBASE)"!=""
+@@ -95,11 +92,14 @@
+
+ # -fpermissive should be removed as soon as possible
+ CFLAGSCXX= -pipe $(ARCH_FLAGS)
+-PICSWITCH:=-fpic
+ .IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+ CFLAGSCXX += -fvisibility-inlines-hidden
+ .ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+
++CFLAGS_CREATE_PCH=-x c++-header -I$(INCPCH) -DPRECOMPILED_HEADERS
++CFLAGS_USE_PCH=-I$(SLO)$/pch -DPRECOMPILED_HEADERS -Winvalid-pch
++CFLAGS_USE_EXCEPTIONS_PCH=-I$(SLO)$/pch_ex -DPRECOMPILED_HEADERS -Winvalid-pch
++
+ # Compiler flags for compiling static object in multi threaded environment with graphical user interface
+ CFLAGSOBJGUIMT=
+ # Compiler flags for compiling static object in multi threaded environment with character user interface
+@@ -113,6 +113,12 @@
+ # Compiler flags for debugging
+ CFLAGSDEBUG=-g
+ CFLAGSDBGUTIL=
++# Compiler flags for enabling optimizations
++.IF "$(PRODUCT)"!=""
++CFLAGSOPT=$(CDEFAULTOPT) -fno-strict-aliasing # optimizing for products
++.ELSE # "$(PRODUCT)"!=""
++CFLAGSOPT= # no optimizing for non products
++.ENDIF # "$(PRODUCT)"!=""
+ # Compiler flags for disabling optimizations
+ CFLAGSNOOPT=-O0
+ # Compiler flags for describing the output path
+@@ -141,19 +147,25 @@
# default linker flags
LINKFLAGSDEFS*=#-Wl,-z,defs
@@ -17,4 +93,151 @@
+LINKFLAGSRUNPATH_BRAND=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\'
LINKFLAGSRUNPATH_OXT=
LINKFLAGSRUNPATH_NONE=
- LINKFLAGS=-Wl,-z,combreloc $(LINKFLAGSDEFS)
+-LINKFLAGS=-Wl,-z,combreloc $(LINKFLAGSDEFS)
++# flag -Wl,-z,noexecstack sets the NX bit on the stack
++LINKFLAGS=-Wl,-z,noexecstack -Wl,-z,combreloc $(LINKFLAGSDEFS)
++.IF "$(HAVE_LD_BSYMBOLIC_FUNCTIONS)" == "TRUE"
++LINKFLAGS += -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo
++.ENDIF
+
+ # linker flags for linking applications
+-LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
+-LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
++LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \
++ -Wl,-rpath-link,$(LB):$(SOLARLIBDIR)
++LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \
++ -Wl,-rpath-link,$(LB):$(SOLARLIBDIR)
+
+ # linker flags for linking shared libraries
+ LINKFLAGSSHLGUI= -shared
+@@ -176,18 +188,30 @@
+ STDLIBCPP=-lstdc++
+
+ # default objectfilenames to link
+-STDOBJVCL=$(L)/salmain.o
++STDOBJVCL=$(L)$/salmain.o
+ STDOBJGUI=
+ STDSLOGUI=
+ STDOBJCUI=
+ STDSLOCUI=
+
++.IF "$(ALLOC)" == "TCMALLOC"
++STDLIBGUIMT+=-ltcmalloc
++STDLIBCUIMT+=-ltcmalloc
++STDSHLGUIMT+=-ltcmalloc
++STDSHLCUIMT+=-ltcmalloc
++.ENDIF
++.IF "$(HAVE_LD_HASH_STYLE)" == "TRUE"
++LINKFLAGS += -Wl,--hash-style=both
++.ELSE
++LINKFLAGS += -Wl,-zdynsort
++.ENDIF
++
+ # libraries for linking applications
+-STDLIBGUIMT=-lX11 $(PTHREAD_LIBS) -lm
+-STDLIBCUIMT=$(PTHREAD_LIBS) -lm
++STDLIBGUIMT+=-Wl,--as-needed -lX11 $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
++STDLIBCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
+ # libraries for linking shared libraries
+-STDSHLGUIMT=-lX11 -lXext $(PTHREAD_LIBS) -lm
+-STDSHLCUIMT=$(PTHREAD_LIBS) -lm
++STDSHLGUIMT+=-Wl,--as-needed -lX11 -lXext $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
++STDSHLCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
+
+ LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive
+
+@@ -212,7 +236,7 @@
+ #FILLUPARC=$(STATIC) -lsupc++ $(DYNAMIC)
+
+ # name of library manager
+-LIBMGR=ar
++LIBMGR*=ar
+ LIBFLAGS=-r
+
+ # tool for generating import libraries
+@@ -231,3 +255,4 @@
+ # platform specific identifier for shared libs
+ DLLPRE=lib
+ DLLPOST=.so
++PCHPOST=.gch
+
+
+--- solenv/inc/unxfbsdi.mk.org 2009-12-13 12:11:43.000000000 +0900
++++ solenv/inc/unxfbsdi.mk 2009-12-13 12:13:15.000000000 +0900
+@@ -29,22 +29,13 @@
+ #
+ #*************************************************************************
+
+-#
+ # FreBSD/i386 specific defines
+-#
+
+-CDEFS+=-DX86
+-
+ # architecture dependent flags for the C and C++ compiler that can be changed by
+ # exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
++CDEFAULTOPT=-Os
+ ARCH_FLAGS*=-mtune=pentiumpro
+-
+-# Compiler flags for enabling optimizations
+-.IF "$(PRODUCT)"!=""
+-CFLAGSOPT=-Os -fno-strict-aliasing # optimizing for products
+-.ELSE # "$(PRODUCT)"!=""
+-CFLAGSOPT= # no optimizing for non products
+-.ENDIF # "$(PRODUCT)"!=""
+-
+-# platform specific identifier for shared libs
++.INCLUDE : unxfbsd.mk
++CDEFS+=-DX86
++DLLPOST=.so
+ DLLPOSTFIX=fi
+
+--- solenv/inc/unxfbsdx.mk 2009-12-13 12:16:16.000000000 +0900
++++ solenv/inc/unxfbsdx.mk 2009-12-13 12:54:57.000000000 +0900
+@@ -29,25 +29,10 @@
+ #
+ #*************************************************************************
+
+-#
+ # FreBSD/amd64 specific defines
+-#
+-
++.INCLUDE : unxfbsd.mk
+ CDEFS+=-DX86_64
+-
+-# architecture dependent flags for the C and C++ compiler that can be changed by
+-# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+-.IF "$(CPUNAME)" == "X86_64"
+-ARCH_FLAGS*=
+-.ENDIF
+-
+-# Compiler flags for enabling optimizations
+-.IF "$(PRODUCT)"!=""
+-CFLAGSOPT=-O2 -fno-strict-aliasing # optimizing for products
+-.ELSE # "$(PRODUCT)"!=""
+-CFLAGSOPT= # no optimizing for non products
+-.ENDIF # "$(PRODUCT)"!=""
+-
+-# platform specific identifier for shared libs
++#MODULES_WITH_WARNINGS+=\
++# svx
+ DLLPOSTFIX=fx
+ BUILD64=1
+
+--- solenv/inc/unx.mk 2009-12-12 18:44:35.000000000 +0900
++++ solenv/inc/unx.mk 2009-12-13 17:15:50.000000000 +0900
+@@ -147,8 +147,12 @@
+ .INCLUDE : unxbsds.mk
+ .ENDIF
+
+-.IF "$(COM)$(OS)" == "GCCFREEBSD"
+-.INCLUDE : unxfbsd.mk
++.IF "$(COM)$(OS)$(CPU)" == "GCCFREEBSDI"
++.INCLUDE : unxfbsdi.mk
++.ENDIF
++
++.IF "$(COM)$(OS)$(CPU)" == "GCCFREEBSDX"
++.INCLUDE : unxfbsdx.mk
+ .ENDIF
+
+ .IF "$(COM)$(OS)$(CPU)" == "C730IRIXM"
diff --git a/editors/openoffice.org-3/files/patch-i108197 b/editors/openoffice.org-3/files/patch-i108197
new file mode 100644
index 000000000000..92b455532814
--- /dev/null
+++ b/editors/openoffice.org-3/files/patch-i108197
@@ -0,0 +1,13 @@
+--- testtools/source/bridgetest/makefile.mk 2010-01-10 19:40:41.000000000 +0900
++++ testtools/source/bridgetest/makefile.mk 2010-01-10 19:49:30.000000000 +0900
+@@ -143,8 +143,8 @@
+ #################################################################
+
+ runtest : $(DLLDEST)$/uno_types.rdb $(DLLDEST)$/uno_services.rdb makefile.mk
+-.IF "$(COM)$(OS)$(CPU)" == "GCCMACOSXP"
+- @echo "Mac OSX PPC GCC fails this test!, likely broken UNO bridge. Fix me."
++.IF "$(COM)$(OS)$(CPU)" == "GCCMACOSXP" || "$(COM)$(OS)$(CPU)" == "GCCFREEBSDI"
++ @echo "Mac OSX PPC GCC ad FreeBDS/i386 fails this test! likely broken UNO bridge. Fix me."
+ .ELSE
+ cd $(DLLDEST) && $(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/uno \
+ -ro uno_services.rdb -ro uno_types.rdb \
diff --git a/editors/openoffice.org-3/files/patch-i109429 b/editors/openoffice.org-3/files/patch-i109429
new file mode 100644
index 000000000000..992094149d99
--- /dev/null
+++ b/editors/openoffice.org-3/files/patch-i109429
@@ -0,0 +1,11 @@
+--- extensions/source/config/ldap/makefile.mk~ 2010-02-04 02:35:34.000000000 +0900
++++ extensions/source/config/ldap/makefile.mk 2010-02-19 18:50:59.000000000 +0900
+@@ -90,7 +90,7 @@
+ SHL1STDLIBS+=-lcompat
+ # workaround for FreeBSD, which needs -llber50, too
+ .IF "$(WITH_OPENLDAP)" != "YES"
+-SHL1STDLIBS+=-Wl,-Bstatic -llber50
++SHL1STDLIBS+=-Wl,-Bstatic -llber50 -Wl,-Bdynamic
+ .ENDIF
+ .ENDIF
+
diff --git a/editors/openoffice.org-3/files/patch-i111384 b/editors/openoffice.org-3/files/patch-i111384
new file mode 100644
index 000000000000..2daf10d99533
--- /dev/null
+++ b/editors/openoffice.org-3/files/patch-i111384
@@ -0,0 +1,34 @@
+--- /dev/null 2010-05-05 13:00:20.000000000 +0900
++++ hunspell/hunspell.patch 2010-05-05 13:03:11.000000000 +0900
+@@ -0,0 +1,8 @@
++--- misc/hunspell-1.2.9/tests/test.sh 2010-02-23 21:18:50.000000000 +0900
+++++ misc/build/hunspell-1.2.9/tests/test.sh 2010-05-05 13:01:42.000000000 +0900
++@@ -1,4 +1,4 @@
++-#!/bin/bash
+++#!/usr/bin/env bash
++ export LC_ALL="C"
++
++ function check_valgrind_log () {
+--- hunspell/makefile.mk.orig 2010-05-05 12:59:48.000000000 +0900
++++ hunspell/makefile.mk 2010-05-05 13:02:14.000000000 +0900
+@@ -43,8 +43,9 @@
+ PATCH_FILES=\
+ hunspell-wntconfig.patch \
+ hunspell-solaris.patch \
+- hunspell-stacksmash.patch
+-
++ hunspell-stacksmash.patch \
++ hunspell.patch
++
+ .IF "$(GUI)"=="UNX"
+
+ #relative to CONFIGURE_DIR
+@@ -60,6 +61,8 @@
+ .ENDIF # "$(EXTRA_CFLAGS)"!=""
+ .ELIF "$(OS)"=="MACOSX" # "$(SYSBASE)"!=""
+ CONFIGURE_FLAGS+=CPPFLAGS="$(EXTRA_CDEFS)"
++.ELIF "$(OS)"=="FREEBSD" # "$(SYSBASE)"!=""
++CONFIGURE_FLAGS+=CPPFLAGS="-I$(LIBINTL_PREFIX)/include" --with-libintl-prefix="$(LIBINTL_PREFIX)"
+ .ENDIF
+
+ BUILD_ACTION=make && make check
diff --git a/editors/openoffice.org-3/files/patch-i73217 b/editors/openoffice.org-3/files/patch-i73217
index 712631a136f1..cea0759cd41c 100644
--- a/editors/openoffice.org-3/files/patch-i73217
+++ b/editors/openoffice.org-3/files/patch-i73217
@@ -1,99 +1,63 @@
-It won't fix in the master as it breaks the POSIX.
-
-Index: epm/epm-3.7.patch
-===================================================================
-RCS file: /cvs/external/epm/epm-3.7.patch,v
-retrieving revision 1.11
-diff -u -r1.11 epm-3.7.patch
---- epm/epm-3.7.patch 1 Aug 2006 12:20:23 -0000 1.11
-+++ epm/epm-3.7.patch 6 Jan 2007 10:10:38 -0000
-@@ -247,6 +247,23 @@
- *** misc/epm-3.7/dist.c Thu Aug 7 16:14:40 2003
- --- misc/build/epm-3.7/dist.c Wed Jul 26 21:01:11 2006
- ***************
-+*** 339,345 ****
-+ const char *defval) /* I - Default value of option */
-+ {
-+ char *ptr; /* Pointer to option */
-+! static char option[256]; /* Copy of file option */
-+
-+
-+ /*
-+--- 339,345 ----
-+ const char *defval) /* I - Default value of option */
-+ {
-+ char *ptr; /* Pointer to option */
-+! static char option[1024]; /* Copy of file option */
-+
-+
-+ /*
-+***************
- *** 394,401 ****
- strcpy(platform->machine, "mips");
- #elif defined(__hpux)
-@@ -292,6 +309,35 @@
- else if (strncmp(platform->machine, "sun", 3) == 0)
- strcpy(platform->machine, "sparc");
- #endif /* __sgi */
-+***************
-+*** 550,562 ****
-+ char line[2048], /* Expanded line from list file */
-+ buf[1024], /* Original line from list file */
-+ type, /* File type */
-+! dst[256], /* Destination path */
-+! src[256], /* Source path */
-+! pattern[256], /* Pattern for source files */
-+ user[32], /* User */
-+ group[32], /* Group */
-+ *temp, /* Temporary pointer */
-+! options[256]; /* File options */
-+ int mode, /* File permissions */
-+ skip; /* 1 = skip files, 0 = archive files */
-+ dist_t *dist; /* Distribution data */
-+--- 560,572 ----
-+ char line[2048], /* Expanded line from list file */
-+ buf[1024], /* Original line from list file */
-+ type, /* File type */
-+! dst[1024], /* Destination path */
-+! src[1024], /* Source path */
-+! pattern[1024], /* Pattern for source files */
-+ user[32], /* User */
-+ group[32], /* Group */
-+ *temp, /* Temporary pointer */
-+! options[1024]; /* File options */
-+ int mode, /* File permissions */
-+ skip; /* 1 = skip files, 0 = archive files */
-+ dist_t *dist; /* Distribution data */
- *** misc/epm-3.7/epm.c Tue Oct 28 15:48:30 2003
- --- misc/build/epm-3.7/epm.c Wed Jul 26 20:59:48 2006
- ***************
-@@ -304,6 +350,29 @@
- puts("");
- puts("EPM is free software and comes with ABSOLUTELY NO WARRANTY; for details");
- puts("see the GNU General Public License in the file COPYING or at");
-+*** misc/epm-3.7/epm.h Thu Jul 24 10:20:54 2003
-+--- misc/build/epm-3.7/epm.h Sat Jan 6 19:08:44 2007
-+***************
-+*** 167,175 ****
-+ int mode; /* Permissions of file */
-+ char user[32], /* Owner of file */
-+ group[32], /* Group of file */
-+! src[512], /* Source path */
-+! dst[512], /* Destination path */
-+! options[256]; /* File options (nostrip, etc.) */
-+ } file_t;
-+
-+ typedef struct /**** Install/Patch/Remove Commands ****/
-+--- 167,175 ----
-+ int mode; /* Permissions of file */
-+ char user[32], /* Owner of file */
-+ group[32], /* Group of file */
-+! src[1024], /* Source path */
-+! dst[1024], /* Destination path */
-+! options[1024]; /* File options (nostrip, etc.) */
-+ } file_t;
-+
-+ typedef struct /**** Install/Patch/Remove Commands ****/
- *** misc/epm-3.7/file.c Wed Jul 23 23:41:08 2003
- --- misc/build/epm-3.7/file.c Wed Jul 26 20:59:48 2006
- ***************
+--- epm/epm-3.7.patch.org 2010-06-19 19:51:40.000000000 +0900
++++ epm/epm-3.7.patch 2010-06-20 08:09:43.000000000 +0900
+@@ -303,6 +303,15 @@
+ diff -urN epm-3.7-old//dist.c epm-3.7/dist.c
+ --- misc/epm-3.7/dist.c 2003-08-07 14:14:40.000000000 +0000
+ +++ misc/build/epm-3.7/dist.c 2010-04-19 22:52:32.000000000 +0000
++@@ -339,7 +339,7 @@
++ const char *defval) /* I - Default value of option */
++ {
++ char *ptr; /* Pointer to option */
++- static char option[256]; /* Copy of file option */
+++ static char option[1024]; /* Copy of file option */
++
++
++ /*
+ @@ -394,8 +394,13 @@
+ strcpy(platform->machine, "mips");
+ #elif defined(__hpux)
+@@ -332,6 +341,24 @@
+ else if (strncmp(platform->machine, "sun", 3) == 0)
+ strcpy(platform->machine, "sparc");
+ #endif /* __sgi */
++@@ -560,13 +560,13 @@
++ char line[2048], /* Expanded line from list file */
++ buf[1024], /* Original line from list file */
++ type, /* File type */
++- dst[256], /* Destination path */
++- src[256], /* Source path */
++- pattern[256], /* Pattern for source files */
+++ dst[1024], /* Destination path */
+++ src[1024], /* Source path */
+++ pattern[1024], /* Pattern for source files */
++ user[32], /* User */
++ group[32], /* Group */
++ *temp, /* Temporary pointer */
++- options[256]; /* File options */
+++ options[1024]; /* File options */
++ int mode, /* File permissions */
++ skip; /* 1 = skip files, 0 = archive files */
++ dist_t *dist; /* Distribution data */
+ diff -urN epm-3.7-old//epm.c epm-3.7/epm.c
+ --- misc/epm-3.7/epm.c 2003-10-28 14:48:30.000000000 +0000
+ +++ misc/build/epm-3.7/epm.c 2010-04-19 22:52:32.000000000 +0000
+@@ -655,3 +682,19 @@
+ return (0);
+ }
+
++diff -urN epm-3.7-old//rpm.c epm-3.7/epm.h
++--- misc/epm-3.7/epm.h 2003-10-01 19:27:15.000000000 +0000
+++++ misc/build/epm-3.7/epm.h 2010-04-19 22:52:32.000000000 +0000
++@@ -167,9 +167,9 @@
++ int mode; /* Permissions of file */
++ char user[32], /* Owner of file */
++ group[32], /* Group of file */
++- src[512], /* Source path */
++- dst[512], /* Destination path */
++- options[256]; /* File options (nostrip, etc.) */
+++ src[1024], /* Source path */
+++ dst[1024], /* Destination path */
+++ options[1024]; /* File options (nostrip, etc.) */
++ } file_t;
++
++ typedef struct /**** Install/Patch/Remove Commands ****/
diff --git a/editors/openoffice.org-3/files/patch-i80129 b/editors/openoffice.org-3/files/patch-i80129
index f590cb16a50d..de87f789df9c 100644
--- a/editors/openoffice.org-3/files/patch-i80129
+++ b/editors/openoffice.org-3/files/patch-i80129
@@ -1,16 +1,11 @@
-Index: libxml2/libxml2-2.6.31.patch
-===================================================================
-RCS file: /cvs/external/libxml2/libxml2-2.6.31.patch,v
-retrieving revision 1.2
-diff -u -r1.2 libxml2-2.6.31.patch
---- libxml2/libxml2-2.6.31.patch 6 Jun 2008 11:48:45 -0000 1.2
-+++ libxml2/libxml2-2.6.31.patch 8 Jul 2008 02:54:59 -0000
-@@ -88,7 +88,7 @@
-
- freebsd-elf)
- ! major=.`expr $current - $age`
--! versuffix=".$major.$age.$revision";
-+! versuffix="$major";
- ;;
-
- irix | nonstopux)
+--- libxml2/libxml2-configure.patch.org 2010-06-06 08:23:29.000000000 +0900
++++ libxml2/libxml2-configure.patch 2010-06-06 08:23:45.000000000 +0900
+@@ -7,7 +7,7 @@
+ - major=".$current"
+ - versuffix=".$current"
+ + major=.`expr $current - $age`
+-+ versuffix=".$major.$age.$revision";
+++ versuffix="$major";
+ ;;
+
+ irix | nonstopux)
diff --git a/editors/openoffice.org-3/files/patch-i85027 b/editors/openoffice.org-3/files/patch-i85027
index e6fe720647bc..732c68da8633 100644
--- a/editors/openoffice.org-3/files/patch-i85027
+++ b/editors/openoffice.org-3/files/patch-i85027
@@ -16,30 +16,25 @@ and
# gcc42 -print-file-name=libgcc_s.so
/usr/local/lib/gcc-4.2.3/gcc/i386-portbld-freebsd7.0/4.2.3/../../../libgcc_s.so
.
-
-Index: work/OOH680_m1/external/gcc3_specific/makefile.mk
-===================================================================
-RCS file: /cvs/util/external/gcc3_specific/makefile.mk,v
-retrieving revision 1.5
-diff -u -r1.5 makefile.mk
---- external/gcc3_specific/makefile.mk 30 Aug 2006 12:39:00 -0000 1.5
-+++ external/gcc3_specific/makefile.mk 6 Jan 2008 08:10:19 -0000
-@@ -12,7 +12,6 @@
+--- external/gcc3_specific/makefile.mk 2010-01-08 18:13:15.000000000 +0900
++++ external/gcc3_specific/makefile.mk 2010-02-07 12:17:43.000000000 +0900
+@@ -43,7 +43,6 @@
+ .IF "$(SYSTEM_STDLIBS)" != "YES" && "$(COMID)"=="gcc3"
.IF "$(OS)"!="MACOSX"
- .IF "$(OS)"!="IRIX"
-.IF "$(OS)"!="FREEBSD"
.EXPORT : CC
-@@ -25,7 +24,6 @@
- $(LB)$/libgcc_s.so.1 :
- $(GCCINSTLIB) libgcc_s.so.1 $(LB)
+@@ -60,8 +59,6 @@
+ .ENDIF
+ .ENDIF
+-
-.ENDIF
- .ENDIF
- .ENDIF
+ .ENDIF # "$(BUILD_SPECIAL)"==""
+
--- scp2/source/ooo/ure.scp 18 Mar 2008 13:35:26 -0000 1.2
+++ scp2/source/ooo/ure.scp 21 Mar 2008 09:26:48 -0000
@@ -728,7 +730,7 @@
diff --git a/editors/openoffice.org-3/files/patch-i85126 b/editors/openoffice.org-3/files/patch-i85126
index d2b427c99915..26565332843c 100644
--- a/editors/openoffice.org-3/files/patch-i85126
+++ b/editors/openoffice.org-3/files/patch-i85126
@@ -12,19 +12,80 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
"bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx"
.
---- bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.cxx 2009-06-13 15:39:58.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.cxx 2009-06-13 15:41:26.000000000 +0900
-@@ -353,6 +353,8 @@
- case X86_64_SSEDF_CLASS:
- *pStructAlign++ = *reinterpret_cast<sal_uInt64 *>( *pSSE++ );
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.cxx 2009-12-06 13:19:58.000000000 +0900
+@@ -229,6 +229,7 @@
+ for ( sal_Int32 nMember = 0; nMember < pStruct->nMembers; ++nMember )
+ {
+ typelib_TypeDescriptionReference *pTypeInStruct = pStruct->ppTypeRefs[ nMember ];
++ rByteOffset = pStruct->pMemberOffsets[ nMember ];
+
+ int num = classify_argument( pTypeInStruct, subclasses, rByteOffset );
+
+@@ -243,9 +244,6 @@
+ int pos = rByteOffset / 8;
+ classes[i + pos] = merge_classes( subclasses[i], classes[i + pos] );
+ }
+-
+- if ( pTypeInStruct->eTypeClass != typelib_TypeClass_STRUCT )
+- rByteOffset = pStruct->pMemberOffsets[ nMember ];
+ }
+
+ TYPELIB_DANGER_RELEASE( pTypeDescr );
+@@ -332,7 +330,7 @@
+ return examine_argument( pTypeRef, true, g, s ) == 0;
+ }
+
+-void x86_64::fill_struct( typelib_TypeDescriptionReference *pTypeRef, void * const *pGPR, void * const *pSSE, void *pStruct )
++void x86_64::fill_struct( typelib_TypeDescriptionReference *pTypeRef, const sal_uInt64 *pGPR, const double *pSSE, void *pStruct )
+ {
+ enum x86_64_reg_class classes[MAX_CLASSES];
+ int offset = 0;
+@@ -346,12 +344,14 @@
+ {
+ case X86_64_INTEGER_CLASS:
+ case X86_64_INTEGERSI_CLASS:
+- *pStructAlign++ = *reinterpret_cast<sal_uInt64 *>( *pGPR++ );
++ *pStructAlign++ = *pGPR++;
break;
-+ default:
+ case X86_64_SSE_CLASS:
+ case X86_64_SSESF_CLASS:
+ case X86_64_SSEDF_CLASS:
+- *pStructAlign++ = *reinterpret_cast<sal_uInt64 *>( *pSSE++ );
++ *pStructAlign++ = *reinterpret_cast<const sal_uInt64 *>( pSSE++ );
+ break;
++ default:
+ break;
}
}
+
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.hxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.hxx 2009-12-06 13:19:58.000000000 +0900
+@@ -63,7 +63,7 @@
+ */
+ bool return_in_hidden_param( typelib_TypeDescriptionReference *pTypeRef );
+
+-void fill_struct( typelib_TypeDescriptionReference *pTypeRef, void * const *pGPR, void * const *pSSE, void *pStruct );
++void fill_struct( typelib_TypeDescriptionReference *pTypeRef, const sal_uInt64* pGPR, const double* pSSE, void *pStruct );
+
+ } // namespace x86_64
---- bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx 2009-06-13 15:39:58.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx 2009-06-13 15:41:26.000000000 +0900
+
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/call.s 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/call.s 2009-12-06 13:19:58.000000000 +0900
+@@ -43,6 +43,9 @@
+ je .Lfloat
+
+ movq -144(%rbp), %rax # Return value (int case)
++ movq -136(%rbp), %rdx # Return value (int case)
++ movq -144(%rbp), %xmm0 # Return value (int case)
++ movq -136(%rbp), %xmm1 # Return value (int case)
+ jmp .Lfinish
+ .Lfloat:
+ movlpd -144(%rbp), %xmm0 # Return value (float/double case)
+
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx 2009-12-06 13:19:58.000000000 +0900
@@ -77,8 +77,8 @@
void ** gpreg, void ** fpreg, void ** ovrflw,
sal_uInt64 * pRegisterReturn /* space for register return */ )
@@ -36,7 +97,49 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
// return
typelib_TypeDescription * pReturnTypeDescr = 0;
-@@ -489,13 +489,12 @@
+@@ -126,7 +126,10 @@
+
+ int nUsedGPR = 0;
+ int nUsedSSE = 0;
+- bool bFitsRegisters = x86_64::examine_argument( rParam.pTypeRef, false, nUsedGPR, nUsedSSE );
++#if OSL_DEBUG_LEVEL > 1
++ bool bFitsRegisters =
++#endif
++ x86_64::examine_argument( rParam.pTypeRef, false, nUsedGPR, nUsedSSE );
+ if ( !rParam.bOut && bridges::cpp_uno::shared::isSimpleType( pParamTypeDescr ) ) // value
+ {
+ // Simple types must fit exactly one register on x86_64
+@@ -159,28 +162,7 @@
+ else // struct <= 16 bytes || ptr to complex value || ref
+ {
+ void *pCppStack;
+- char pTmpStruct[16];
+-
+- if ( bFitsRegisters && !rParam.bOut &&
+- ( pParamTypeDescr->eTypeClass == typelib_TypeClass_STRUCT ||
+- pParamTypeDescr->eTypeClass == typelib_TypeClass_EXCEPTION ) )
+- {
+- if ( ( nr_gpr + nUsedGPR <= x86_64::MAX_GPR_REGS ) && ( nr_fpr + nUsedSSE <= x86_64::MAX_SSE_REGS ) )
+- {
+- x86_64::fill_struct( rParam.pTypeRef, gpreg, fpreg, pTmpStruct );
+-#if OSL_DEBUG_LEVEL > 1
+- fprintf( stderr, "nUsedGPR == %d, nUsedSSE == %d, pTmpStruct[0] == 0x%x, pTmpStruct[1] == 0x%x, **gpreg == 0x%lx\n",
+- nUsedGPR, nUsedSSE, pTmpStruct[0], pTmpStruct[1], *(sal_uInt64*)*gpreg );
+-#endif
+-
+- pCppArgs[nPos] = pCppStack = reinterpret_cast<void *>( pTmpStruct );
+- gpreg += nUsedGPR;
+- fpreg += nUsedSSE;
+- }
+- else
+- pCppArgs[nPos] = pCppStack = *ovrflw++;
+- }
+- else if ( nr_gpr < x86_64::MAX_GPR_REGS )
++ if ( nr_gpr < x86_64::MAX_GPR_REGS )
+ {
+ pCppArgs[nPos] = pCppStack = *gpreg++;
+ nr_gpr++;
+@@ -489,13 +471,12 @@
//==================================================================================================
unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions(
@@ -51,7 +154,7 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
for ( sal_Int32 nPos = 0; nPos < type->nMembers; ++nPos )
{
typelib_TypeDescription * pTD = 0;
-@@ -509,14 +508,14 @@
+@@ -509,14 +490,14 @@
reinterpret_cast<typelib_InterfaceAttributeTypeDescription *>( pTD );
// get method
@@ -68,7 +171,7 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
code = codeSnippet( code, nFunctionOffset++, nVtableOffset, false );
}
}
-@@ -525,7 +524,7 @@
+@@ -525,7 +506,7 @@
typelib_InterfaceMethodTypeDescription *pMethodTD =
reinterpret_cast<typelib_InterfaceMethodTypeDescription *>( pTD );
@@ -78,8 +181,73 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
x86_64::return_in_hidden_param( pMethodTD->pReturnTypeRef ) );
}
---- bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx 2009-06-13 15:39:58.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx 2009-06-13 15:41:27.000000000 +0900
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx 2009-12-06 13:19:58.000000000 +0900
+@@ -32,6 +32,7 @@
+ #include "precompiled_bridges.hxx"
+
+ #include <stdio.h>
++#include <string.h>
+ #include <dlfcn.h>
+ #include <cxxabi.h>
+ #include <hash_map>
+@@ -121,7 +121,7 @@
+ };
+ //__________________________________________________________________________________________________
+ RTTI::RTTI() SAL_THROW( () )
+-#if __FreeBSD_version < 602103
++#if __FreeBSD_version < 702104 /* #i22253# */
+ : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) )
+ #else
+ : m_hApp( dlopen( 0, RTLD_LAZY ) )
+@@ -160,7 +160,7 @@
+ buf.append( 'E' );
+
+ OString symName( buf.makeStringAndClear() );
+-#if __FreeBSD_version < 602103 /* #i22253# */
++#if __FreeBSD_version < 702104 /* #i22253# */
+ rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() );
+ #else
+ rtti = (type_info *)dlsym( m_hApp, symName.getStr() );
+@@ -175,8 +167,8 @@
+ else
+ {
+ // try to lookup the symbol in the generated rtti map
+- t_rtti_map::const_iterator iFind( m_generatedRttis.find( unoName ) );
+- if (iFind == m_generatedRttis.end())
++ t_rtti_map::const_iterator iFind2( m_generatedRttis.find( unoName ) );
++ if (iFind2 == m_generatedRttis.end())
+ {
+ // we must generate it !
+ // symbol and rtti-name is nearly identical,
+@@ -205,7 +197,7 @@
+ }
+ else // taking already generated rtti
+ {
+- rtti = iFind->second;
++ rtti = iFind2->second;
+ }
+ }
+ }
+
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx 2009-12-06 13:19:58.000000000 +0900
+@@ -53,13 +53,13 @@
+
+ //==================================================================================================
+ static void callVirtualMethod(void * pThis, sal_uInt32 nVtableIndex,
+- void * pRegisterReturn, typelib_TypeDescription * pReturnTypeDescr, bool bSimpleReturn,
++ void * pRegisterReturn, typelib_TypeDescriptionReference * pReturnTypeRef, bool bSimpleReturn,
+ sal_uInt64 *pStack, sal_uInt32 nStack,
+ sal_uInt64 *pGPR, sal_uInt32 nGPR,
+ double *pFPR, sal_uInt32 nFPR) __attribute__((noinline));
+
+ static void callVirtualMethod(void * pThis, sal_uInt32 nVtableIndex,
+- void * pRegisterReturn, typelib_TypeDescription * pReturnTypeDescr, bool bSimpleReturn,
++ void * pRegisterReturn, typelib_TypeDescriptionReference * pReturnTypeRef, bool bSimpleReturn,
+ sal_uInt64 *pStack, sal_uInt32 nStack,
+ sal_uInt64 *pGPR, sal_uInt32 nGPR,
+ double *pFPR, sal_uInt32 nFPR)
@@ -68,13 +68,13 @@
// Let's figure out what is really going on here
{
@@ -97,7 +265,54 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
fprintf( stderr, "0x%lx, ", pStack[i] );
fprintf( stderr, "\n" );
}
-@@ -323,6 +323,8 @@
+@@ -113,6 +113,7 @@
+ sal_uInt64 rax;
+ sal_uInt64 rdx;
+ double xmm0;
++ double xmm1;
+
+ asm volatile (
+
+@@ -147,13 +148,14 @@
+ "movq %%rax, %4\n\t"
+ "movq %%rdx, %5\n\t"
+ "movsd %%xmm0, %6\n\t"
++ "movsd %%xmm1, %7\n\t"
+ :
+ : "m" ( pMethod ), "m" ( pGPR ), "m" ( pFPR ), "m" ( nFPR ),
+- "m" ( rax ), "m" ( rdx ), "m" ( xmm0 )
++ "m" ( rax ), "m" ( rdx ), "m" ( xmm0 ), "m" ( xmm1 )
+ : "rax", "rdi", "rsi", "rdx", "rcx", "r8", "r9", "r11"
+ );
+
+- switch (pReturnTypeDescr->eTypeClass)
++ switch (pReturnTypeRef->eTypeClass)
+ {
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+@@ -179,12 +181,17 @@
+ break;
+ default:
+ {
+- sal_Int32 const nRetSize = pReturnTypeDescr->nSize;
++ sal_Int32 const nRetSize = pReturnTypeRef->pType->nSize;
+ if (bSimpleReturn && nRetSize <= 16 && nRetSize > 0)
+ {
+- if (nRetSize > 8)
+- static_cast<sal_uInt64 *>(pRegisterReturn)[1] = rdx;
+- static_cast<sal_uInt64 *>(pRegisterReturn)[0] = rax;
++ sal_uInt64 longs[2];
++ longs[0] = rax;
++ longs[1] = rdx;
++
++ double doubles[2];
++ doubles[0] = xmm0;
++ doubles[1] = xmm1;
++ x86_64::fill_struct( pReturnTypeRef, &longs[0], &doubles[0], pRegisterReturn);
+ }
+ break;
+ }
+@@ -323,6 +330,8 @@
case typelib_TypeClass_DOUBLE:
INSERT_FLOAT_DOUBLE( pCppArgs[nPos], nFPR, pFPR, pStack );
break;
@@ -106,7 +321,16 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
}
// no longer needed
-@@ -435,16 +437,19 @@
+@@ -365,7 +374,7 @@
+ {
+ callVirtualMethod(
+ pAdjustedThisPtr, aVtableSlot.index,
+- pCppReturn, pReturnTypeDescr, bSimpleReturn,
++ pCppReturn, pReturnTypeRef, bSimpleReturn,
+ pStackStart, ( pStack - pStackStart ),
+ pGPR, nGPR,
+ pFPR, nFPR );
+@@ -435,16 +444,19 @@
// is my surrogate
bridges::cpp_uno::shared::UnoInterfaceProxy * pThis
= static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI);
@@ -127,7 +351,7 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
VtableSlot aVtableSlot(
getVtableSlot(
reinterpret_cast<
-@@ -489,10 +494,11 @@
+@@ -489,10 +501,11 @@
}
case typelib_TypeClass_INTERFACE_METHOD:
{
@@ -140,55 +364,6 @@ http://www.openoffice.org/issues/show_bug.cgi?id=97320
VtableSlot aVtableSlot(
getVtableSlot(
reinterpret_cast<
---- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx 2009-06-13 15:39:58.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx 2009-06-13 15:42:43.000000000 +0900
-@@ -32,6 +32,7 @@
- #include "precompiled_bridges.hxx"
-
- #include <stdio.h>
-+#include <string.h>
- #include <dlfcn.h>
- #include <cxxabi.h>
- #include <hash_map>
-@@ -121,7 +121,7 @@
- };
- //__________________________________________________________________________________________________
- RTTI::RTTI() SAL_THROW( () )
--#if __FreeBSD_version < 602103
-+#if __FreeBSD_version < 702104 /* #i22253# */
- : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) )
- #else
- : m_hApp( dlopen( 0, RTLD_LAZY ) )
-@@ -160,7 +160,7 @@
- buf.append( 'E' );
-
- OString symName( buf.makeStringAndClear() );
--#if __FreeBSD_version < 602103 /* #i22253# */
-+#if __FreeBSD_version < 702104 /* #i22253# */
- rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() );
- #else
- rtti = (type_info *)dlsym( m_hApp, symName.getStr() );
-@@ -175,8 +175,8 @@
- else
- {
- // try to lookup the symbol in the generated rtti map
-- t_rtti_map::const_iterator iFind( m_generatedRttis.find( unoName ) );
-- if (iFind == m_generatedRttis.end())
-+ t_rtti_map::const_iterator iFind2( m_generatedRttis.find( unoName ) );
-+ if (iFind2 == m_generatedRttis.end())
- {
- // we must generate it !
- // symbol and rtti-name is nearly identical,
-@@ -205,7 +205,7 @@
- }
- else // taking already generated rtti
- {
-- rtti = iFind->second;
-+ rtti = iFind2->second;
- }
- }
- }
-
--- bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx~ 2009-06-13 16:41:45.000000000 +0900
+++ bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx 2009-06-13 16:42:24.000000000 +0900
@@ -40,7 +40,7 @@
diff --git a/editors/openoffice.org-3/files/patch-i91318 b/editors/openoffice.org-3/files/patch-i91318
index a87ec93e2460..4348b75903da 100644
--- a/editors/openoffice.org-3/files/patch-i91318
+++ b/editors/openoffice.org-3/files/patch-i91318
@@ -1,14 +1,14 @@
---- hunspell/hunspell-1.2.8.patch~ 2009-03-11 22:17:54.000000000 +0900
-+++ hunspell/hunspell-1.2.8.patch 2009-03-20 21:37:49.000000000 +0900
-@@ -619,3 +619,11 @@
- p++;
- }
- if (i > 0 && buf[i - 1] == '\n') {
-+--- misc/hunspell-1.2.8/tests/test.sh 2007-07-15 22:33:13.000000000 +0900
-++++ misc/build/hunspell-1.2.8/tests/test.sh 2008-08-10 10:00:33.000000000 +0900
+--- hyphen/hyphen-2.4.patch 2010-05-05 12:40:53.000000000 +0900
++++ hyphen/hyphen-2.4.patch 2010-05-05 12:41:25.000000000 +0900
+@@ -167,3 +167,11 @@
+ +
+ +.INCLUDE : target.mk
+ Common subdirectories: misc/hyphen-2.4/tests and misc/build/hyphen-2.4/tests
++--- misc/hyphen-2.4/tests/test.sh 2010-05-05 12:40:17.000000000 +0900
+++++ misc/build/hyphen-2.4/tests/test.sh 2010-05-05 12:40:31.000000000 +0900
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/usr/bin/env bash
-+ export LC_ALL="C"
+
+ function check_valgrind_log () {
++ if [ "$VALGRIND" != "" ]; then
diff --git a/editors/openoffice.org-3/files/patch-i91861 b/editors/openoffice.org-3/files/patch-i91861
index 93c8021d3385..85dfde19f963 100644
--- a/editors/openoffice.org-3/files/patch-i91861
+++ b/editors/openoffice.org-3/files/patch-i91861
@@ -1,11 +1,6 @@
-Index: vcl/source/glyphs/makefile.mk
-===================================================================
-RCS file: /cvs/gsl/vcl/source/glyphs/makefile.mk,v
-retrieving revision 1.13.106.1
-diff -u -r1.13.106.1 makefile.mk
---- vcl/source/glyphs/makefile.mk 31 Jul 2008 20:14:59 -0000 1.13.106.1
-+++ vcl/source/glyphs/makefile.mk 10 Aug 2008 01:06:59 -0000
-@@ -41,9 +41,17 @@
+--- vcl/source/glyphs/makefile.mk~ 2009-11-18 13:58:31.000000000 +0900
++++ vcl/source/glyphs/makefile.mk 2009-11-29 20:13:21.000000000 +0900
+@@ -41,7 +41,11 @@
.INCLUDE : settings.mk
.INCLUDE : $(PRJ)$/util$/makefile2.pmk
@@ -14,12 +9,6 @@ diff -u -r1.13.106.1 makefile.mk
+.ELSE
+ADDCDEFS+= $(FREETYPE_CFLAGS)
+.ENDIF
- .IF "$(USE_FT_EMBOLDEN)" == "YES"
-+.IF "$(OS)" != "FREEBSD"
- CFLAGS+=-DUSE_FT_EMBOLDEN
-+.ELSE
-+ADDCDEFS+=-DUSE_FT_EMBOLDEN
-+.ENDIF
- .ENDIF
# --- Files --------------------------------------------------------
+
diff --git a/editors/openoffice.org-3/files/patch-i98781 b/editors/openoffice.org-3/files/patch-i98781
index ca3849a011f7..d9addab6674a 100644
--- a/editors/openoffice.org-3/files/patch-i98781
+++ b/editors/openoffice.org-3/files/patch-i98781
@@ -8,8 +8,8 @@ We also need
#define USE_DOUBLE_MMAP for FreeBSD as well. The patch was included
in files/patches-i85126
---- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx 2009-06-13 14:17:39.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx 2009-06-13 15:11:21.000000000 +0900
+--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx 2009-12-06 13:19:58.000000000 +0900
@@ -362,7 +362,7 @@
int const codeSnippetSize = 16;
@@ -82,8 +82,8 @@ in files/patches-i85126
member)->pReturnTypeRef->eTypeClass);
break;
---- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx 2009-06-13 14:17:39.000000000 +0900
-+++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx 2009-06-13 15:14:24.000000000 +0900
+--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx 2009-12-12 18:15:33.000000000 +0900
++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx 2009-12-06 13:19:58.000000000 +0900
@@ -32,6 +32,7 @@
#include "precompiled_bridges.hxx"