diff --git a/editors/openoffice-3-devel/Makefile b/editors/openoffice-3-devel/Makefile index 6ecbdd5743c1..d4ce17161eb6 100644 --- a/editors/openoffice-3-devel/Makefile +++ b/editors/openoffice-3-devel/Makefile @@ -1,304 +1,307 @@ # New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME?= openoffice.org PORTVERSION?= 2.2.${SNAPDATE} CATEGORIES+= editors java MASTER_SITES+= ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/developer/680_m${MILESTONE}/&,} \ http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ ${MASTER_SITE_MOZILLA:S/$/:mozsrc/} \ http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg .if defined(WITH_GPC) DISTFILES+= gpc231.tar.Z:gpc .endif .if defined(WITH_GNUGCJ) DISTFILES+= ${ANT_DISTFILE}:antbin .endif EXTRACT_ONLY= ${OOOSRC} MAINTAINER= openoffice@FreeBSD.org COMMENT?= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser(developer version) NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_VERSION= 1.7.5 MOZILLA_SOURCE= mozilla-source-${MOZILLA_VERSION}.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_SOURCE}:mozsrc USE_GNOME+= libidl .endif .if defined(WITH_KDE) USE_KDELIBS_VER= 3 .endif USE_XLIB= yes USE_GMAKE= yes USE_PERL5= yes USE_BZIP2= yes WITHOUT_CPU_CFLAGS= true .if !defined(WITH_GNUGCJ) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk JAVA_VENDOR= freebsd bsdjava .endif .include .include <${FILESDIR}/Makefile.localized> ONLY_FOR_ARCHS= i386 amd64 .if ${ARCH} == amd64 GCC_TARGET= x86_64-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDAMDEnv.Set .else GCC_TARGET= ${ARCH}-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDIntelEnv.Set .endif .if ${PERL_LEVEL} < 500600 IGNORE= install lang/perl5.8 then try again .endif CODELINE= 680 MILESTONE?= 198 OOOTAG?= SRC680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} SNAPDATE= 20060103 INSTALLATION_BASEDIR?= openoffice.org-${OOOTAG} EXECBASE?= openoffice.org-${OOOTAG} DIST_SUBDIR= openoffice.org2.0 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}X86_64 .else PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}Intel .endif LOCALIZED_LANG?= en-US # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX= -${LANG_SUFFIX} .endif RUN_DEPENDS+= ${LOCALBASE}/share/icons/hicolor/index.theme:${PORTSDIR}/misc/hicolor-icon-theme .if defined(WITH_GNUGCJ) GCCVER=41 BUILD_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt BUILD_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat RUN_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt RUN_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat .else .if ${ARCH} == amd64 GCCVER=41 BUILD_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 RUN_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 .else GCCVER=34 BUILD_DEPENDS+= gcc-ooo:${PORTSDIR}/lang/gcc-ooo .endif .endif .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CCACHE_PREFIX= ccache .else CCACHE_PREFIX= .endif .if (${GCCVER} == 41) CC= gcc41 CXX= g++41 .endif .if (${GCCVER} == 34) CC= gcc-ooo CXX= g++-ooo .endif CC:= ${CCACHE_PREFIX} ${CC} CXX:= ${CCACHE_PREFIX} ${CXX} BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ gpatch:${PORTSDIR}/devel/patch \ ${SITE_PERL}/Archive/Zip.pm:${PORTSDIR}/archivers/p5-Archive-Zip \ bison2:${PORTSDIR}/devel/bison2 \ imake:${X_IMAKE_PORT} .if defined(WITH_GNUGCJ) LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 ANT_DISTFILE= apache-ant-${ANT_VERSION}-bin.tar.bz2 ANT_VERSION= 1.6.5 .else BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant .endif .if !defined(WITH_GPC) LIB_DEPENDS+= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl .endif GNU_CONFIGURE= yes WRKSRC?= ${WRKDIR}/${OOOTAG} CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message NUMOFPROCESSES?= 1 .if defined(WITH_GNUGCJ) CONFIGURE_ENV+= PATH="${LOCALBASE}/lib/jvm/java-gcj41/bin:${PATH}" .endif CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ --enable-crashdump=yes \ --enable-symbols=SMALL .if ${ARCH} == amd64 || ${GCCVER} == 41 WITHOUT_MOZILLA= yes .endif .if (${GCCVER} == 41) LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .endif +.if (${OSVERSION} <= 700021) +EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 +.endif .if (${OSVERSION} <= 492000) EXTRA_PATCHES+= ${FILESDIR}/fbsd4-workaroundpatch .endif .if defined(WITH_GNUGCJ) EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround .endif .if defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif ICONS= ${WRKSRC}/sysui/desktop/icons .include <${FILESDIR}/Makefile.knobs> pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/ .if defined(WITH_GNUGCJ) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${ANT_DISTFILE} | ${BZIP2_CMD} -d | ${TAR} xf - .endif .if defined(WITH_GPC) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .endif .if !defined(WITHOUT_MOZILLA) @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download .endif do-build: @cd ${WRKSRC} ; ./bootstrap # PR:84786 #i53289# .if (${NUMOFPROCESSES}>1) @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl -P${NUMOFPROCESSES} --all" .else @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; dmake" .endif do-install: @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES @${RM} -Rf ${WRKDIR}/tmp @${MKDIR} ${WRKDIR}/tmp @for i in `${CAT} ${WRKDIR}/INSTALLFILES`; do \ ${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ${WRKDIR}/tmp ; \ cd ${WRKDIR}/tmp ; ${TAR} xfz ${WRKDIR}/tmp/$$i ; \ done @${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR} @cd ${WRKDIR}/tmp/opt/openoffice* ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR} post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice.org-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ ${WRKDIR}/openoffice.org-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice.org-wrapper \ ${PREFIX}/bin/${EXECBASE} @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sbase @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-scalc @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sdraw @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-setofficelang @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-smath @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter @${ECHO_CMD} "" > ${TMPPLIST} @${REINPLACE_CMD} -e '/^Exec/s/printeradmin/spadmin/' \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop @for app in base calc draw impress math printeradmin writer; do \ ${REINPLACE_CMD} -e "s/^Exec.*/Exec=${EXECBASE} -$${app} %U/" \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/$${app}.desktop ; \ done @${RM} ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop.bak @${RM} -f ${DESKTOPDIR}/${EXECBASE} @${MKDIR} ${DESKTOPDIR} @${LN} -sf ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg \ ${DESKTOPDIR}/${EXECBASE} @${ECHO_CMD} "share/applications/${EXECBASE}" >> ${TMPPLIST} @${ECHO_CMD} "@unexec ${RMDIR} %D/share/applications 2>/dev/null || ${TRUE}" >> ${TMPPLIST} @for dir in `ls ${ICONS}/hicolor | ${GREP} -v CVS`; do \ for app in base calc draw impress math printeradmin writer; do \ if [ -r ${ICONS}/hicolor/$${dir}/apps/$${app}.png ]; then \ ${CP} ${ICONS}/hicolor/$${dir}/apps/$${app}.png \ ${PREFIX}/share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png" >> ${TMPPLIST} ; \ fi \ done ; \ for file in `cd ${ICONS}/hicolor/$${dir}/mimetypes; ls *.png`; do \ ${CP} ${ICONS}/hicolor/$${dir}/mimetypes/$${file} \ ${PREFIX}/share/icons/hicolor/$${dir}/mimetypes/ ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/mimetypes/$${file}" >> ${TMPPLIST} ; \ done ; \ done @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} @${CP} ${FILESDIR}/pkg-message.in ${PKGMESSAGE} @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ -e 's#%%EXECBASE%%#${EXECBASE}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ ${PKGMESSAGE} @${ECHO_CMD} @${CAT} ${PKGMESSAGE} @${ECHO_CMD} .include <${FILESDIR}/Makefile.others> .include diff --git a/editors/openoffice-3-devel/files/patch-i66667 b/editors/openoffice-3-devel/files/patch-i66667 index 26c0b1b4a88c..f60b55f79d73 100644 --- a/editors/openoffice-3-devel/files/patch-i66667 +++ b/editors/openoffice-3-devel/files/patch-i66667 @@ -1,55 +1,139 @@ -Index: vcl/unx/gtk/app/gtkinst.cxx -=================================================================== -RCS file: /cvs/gsl/vcl/unx/gtk/app/gtkinst.cxx,v -retrieving revision 1.14 -diff -u -r1.14 gtkinst.cxx ---- vcl/unx/gtk/app/gtkinst.cxx 19 Jun 2006 19:44:33 -0000 1.14 -+++ vcl/unx/gtk/app/gtkinst.cxx 27 Jun 2006 02:11:09 -0000 -@@ -43,6 +43,7 @@ - #include +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Tue May 2 08:01:08 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Fri Sep 8 17:25:05 2006 +@@ -120,6 +120,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -436,7 +439,7 @@ + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( + void ** slots, unsigned char * code, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, +- sal_Int32 functionCount, sal_Int32 vtableOffset) ++ sal_Int32 /*functionCount*/, sal_Int32 vtableOffset) + { + for (sal_Int32 i = 0; i < type->nMembers; ++i) { + typelib_TypeDescription * member = 0; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig Wed Sep 7 18:20:22 2005 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx Mon Sep 11 12:21:03 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include #include -+#include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) ++#endif + { + } + //__________________________________________________________________________________________________ +@@ -139,8 +144,8 @@ + OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName; + + MutexGuard guard( m_mutex ); +- t_rtti_map::const_iterator iFind( m_rttis.find( unoName ) ); +- if (iFind == m_rttis.end()) ++ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) ); ++ if (iRttiFind == m_rttis.end()) + { + // RTTI symbol + OStringBuffer buf( 64 ); +@@ -157,8 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); +-//#iZ 22253 ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { +@@ -205,7 +213,7 @@ + } + else + { +- rtti = iFind->second; ++ rtti = iRttiFind->second; + } - #if OSL_DEBUG_LEVEL > 1 - #include -@@ -111,13 +112,27 @@ - GtkHookedYieldMutex *pYieldMutex = GET_YIELD_MUTEX(); - pYieldMutex->ThreadsLeave(); + return rtti; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Mon Jun 19 19:43:09 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Fri Sep 8 17:25:05 2006 +@@ -142,6 +142,8 @@ + case typelib_TypeClass_DOUBLE: + asm ( "fstpl %0\n\t" : : "m"(*(char *)pRegisterReturn) ); + break; ++ default: ++ break; } -- static bool hookLocks( oslModule pModule ) -+ static bool hookLocks( void ) + } + +@@ -217,6 +219,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -329,7 +334,6 @@ + // is my surrogate + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis + = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI); +- typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr; + + switch (pMemberDescr->eTypeClass) { -- typedef void (*GdkLockFn) (GCallback enter_fn, GCallback leave_fn); -+ typedef void (*GdkLockFn) ( GCallback enter_fn, GCallback leave_fn ); - rtl::OUString aSymbolName( RTL_CONSTASCII_USTRINGPARAM( "gdk_threads_set_lock_functions") ); - -+ /* XXX GDK library path should be set by configure. */ -+ OUStringBuffer aModName( 128 ); -+ aModName.appendAscii( SAL_DLLPREFIX"gdk-x11-2.0" ); -+ aModName.appendAscii( SAL_DLLEXTENSION ); -+ OUString aModule = aModName.makeStringAndClear(); -+ oslModule aMod = osl_loadModule( aModule.pData, SAL_LOADMODULE_DEFAULT ); -+ -+ if ( !aMod ) -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Failed to load "SAL_DLLPREFIX"gdk-x11-2.0"SAL_DLLEXTENSION"\n" ); +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig Wed Jul 19 05:30:01 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx Mon Sep 11 12:21:25 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) +#endif -+ return false; -+ } - GdkLockFn gdk_threads_set_lock_functions = -- (GdkLockFn) osl_getFunctionSymbol( pModule, aSymbolName.pData ); -+ (GdkLockFn) osl_getFunctionSymbol( aMod, aSymbolName.pData ); - if ( !gdk_threads_set_lock_functions ) - { - #if OSL_DEBUG_LEVEL > 1 -@@ -150,7 +165,7 @@ - if ( !g_thread_supported() ) - g_thread_init( NULL ); - -- if ( hookLocks( pModule ) ) -+ if ( hookLocks() ) - pYieldMutex = new GtkHookedYieldMutex(); - else - pYieldMutex = new GtkYieldMutex(); + { + } + //__________________________________________________________________________________________________ +@@ -157,7 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { diff --git a/editors/openoffice-3-devel/files/patch-i66667 b/editors/openoffice-3-devel/files/rtld-workaround-i66667 similarity index 100% copy from editors/openoffice-3-devel/files/patch-i66667 copy to editors/openoffice-3-devel/files/rtld-workaround-i66667 diff --git a/editors/openoffice-3/Makefile b/editors/openoffice-3/Makefile index 91c3f47bd9db..d109abf5093c 100644 --- a/editors/openoffice-3/Makefile +++ b/editors/openoffice-3/Makefile @@ -1,304 +1,307 @@ # New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME?= openoffice.org PORTVERSION?= ${OOOVERSION} CATEGORIES+= editors java MASTER_SITES+= ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/stable/${OOOVERSION}/&,} \ http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ ${MASTER_SITE_MOZILLA:S/$/:mozsrc/} \ http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg .if defined(WITH_GPC) DISTFILES+= gpc231.tar.Z:gpc .endif .if defined(WITH_GNUGCJ) DISTFILES+= ${ANT_DISTFILE}:antbin .endif EXTRACT_ONLY= ${OOOSRC} MAINTAINER= openoffice@FreeBSD.org COMMENT?= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser OOOVERSION= 2.1.0 NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_VERSION= 1.7.5 MOZILLA_SOURCE= mozilla-source-${MOZILLA_VERSION}.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_SOURCE}:mozsrc USE_GNOME+= libidl .endif .if defined(WITH_KDE) USE_KDELIBS_VER= 3 .endif USE_XLIB= yes USE_GMAKE= yes USE_PERL5= yes USE_BZIP2= yes WITHOUT_CPU_CFLAGS= true .if !defined(WITH_GNUGCJ) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk JAVA_VENDOR= freebsd bsdjava .endif .include .include <${FILESDIR}/Makefile.localized> ONLY_FOR_ARCHS= i386 amd64 .if ${ARCH} == amd64 GCC_TARGET= x86_64-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDAMDEnv.Set .else GCC_TARGET= ${ARCH}-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDIntelEnv.Set .endif .if ${PERL_LEVEL} < 500600 IGNORE= install lang/perl5.8 then try again .endif CODELINE= 680 MILESTONE?= 6 OOOTAG?= OOE680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} INSTALLATION_BASEDIR?= openoffice.org-${OOOVERSION} EXECBASE?= openoffice.org-${OOOVERSION} DIST_SUBDIR= openoffice.org2.0 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOVERSION}_${OPSYS}${SIMPLEOSVER}X86_64 .else PACKAGE_BASENAME= OOo_${OOOVERSION}_${OPSYS}${SIMPLEOSVER}Intel .endif LOCALIZED_LANG?= en-US # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX= -${LANG_SUFFIX} .endif RUN_DEPENDS+= ${LOCALBASE}/share/icons/hicolor/index.theme:${PORTSDIR}/misc/hicolor-icon-theme .if defined(WITH_GNUGCJ) GCCVER=41 BUILD_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt BUILD_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat RUN_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt RUN_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat .else .if ${ARCH} == amd64 GCCVER=41 BUILD_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 RUN_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 .else GCCVER=34 BUILD_DEPENDS+= gcc-ooo:${PORTSDIR}/lang/gcc-ooo .endif .endif .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CCACHE_PREFIX= ccache .else CCACHE_PREFIX= .endif .if (${GCCVER} == 41) CC= gcc41 CXX= g++41 .endif .if (${GCCVER} == 34) CC= gcc-ooo CXX= g++-ooo .endif CC:= ${CCACHE_PREFIX} ${CC} CXX:= ${CCACHE_PREFIX} ${CXX} BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ gpatch:${PORTSDIR}/devel/patch \ ${SITE_PERL}/Archive/Zip.pm:${PORTSDIR}/archivers/p5-Archive-Zip \ bison2:${PORTSDIR}/devel/bison2 \ imake:${X_IMAKE_PORT} .if defined(WITH_GNUGCJ) LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 ANT_DISTFILE= apache-ant-${ANT_VERSION}-bin.tar.bz2 ANT_VERSION= 1.6.5 .else BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant .endif .if !defined(WITH_GPC) LIB_DEPENDS+= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl .endif GNU_CONFIGURE= yes WRKSRC?= ${WRKDIR}/${OOOTAG} CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message NUMOFPROCESSES?= 1 .if defined(WITH_GNUGCJ) CONFIGURE_ENV+= PATH="${LOCALBASE}/lib/jvm/java-gcj41/bin:${PATH}" .endif CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ --enable-crashdump=yes \ --enable-symbols=SMALL .if ${ARCH} == amd64 || ${GCCVER} == 41 WITHOUT_MOZILLA= yes .endif .if (${GCCVER} == 41) LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .endif +.if (${OSVERSION} <= 700021) +EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 +.endif .if (${OSVERSION} <= 492000) EXTRA_PATCHES+= ${FILESDIR}/fbsd4-workaroundpatch .endif .if defined(WITH_GNUGCJ) EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround .endif .if defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif ICONS= ${WRKSRC}/sysui/desktop/icons .include <${FILESDIR}/Makefile.knobs> pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/ .if defined(WITH_GNUGCJ) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${ANT_DISTFILE} | ${BZIP2_CMD} -d | ${TAR} xf - .endif .if defined(WITH_GPC) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .endif .if !defined(WITHOUT_MOZILLA) @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download .endif do-build: @cd ${WRKSRC} ; ./bootstrap # PR:84786 #i53289# .if (${NUMOFPROCESSES}>1) @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl -P${NUMOFPROCESSES} --all" .else @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; dmake" .endif do-install: @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES @${RM} -Rf ${WRKDIR}/tmp @${MKDIR} ${WRKDIR}/tmp @for i in `${CAT} ${WRKDIR}/INSTALLFILES`; do \ ${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ${WRKDIR}/tmp ; \ cd ${WRKDIR}/tmp ; ${TAR} xfz ${WRKDIR}/tmp/$$i ; \ done @${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR} @cd ${WRKDIR}/tmp/opt/openoffice* ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR} post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice.org-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ ${WRKDIR}/openoffice.org-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice.org-wrapper \ ${PREFIX}/bin/${EXECBASE} @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sbase @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-scalc @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sdraw @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-setofficelang @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-smath @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter @${ECHO_CMD} "" > ${TMPPLIST} @${REINPLACE_CMD} -e '/^Exec/s/printeradmin/spadmin/' \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop @for app in base calc draw impress math printeradmin writer; do \ ${REINPLACE_CMD} -e "s/^Exec.*/Exec=${EXECBASE} -$${app} %U/" \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/$${app}.desktop ; \ done @${RM} ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop.bak @${RM} -f ${DESKTOPDIR}/${EXECBASE} @${MKDIR} ${DESKTOPDIR} @${LN} -sf ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg \ ${DESKTOPDIR}/${EXECBASE} @${ECHO_CMD} "share/applications/${EXECBASE}" >> ${TMPPLIST} @${ECHO_CMD} "@unexec ${RMDIR} %D/share/applications 2>/dev/null || ${TRUE}" >> ${TMPPLIST} @for dir in `ls ${ICONS}/hicolor | ${GREP} -v CVS`; do \ for app in base calc draw impress math printeradmin writer; do \ if [ -r ${ICONS}/hicolor/$${dir}/apps/$${app}.png ]; then \ ${CP} ${ICONS}/hicolor/$${dir}/apps/$${app}.png \ ${PREFIX}/share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png" >> ${TMPPLIST} ; \ fi \ done ; \ for file in `cd ${ICONS}/hicolor/$${dir}/mimetypes; ls *.png`; do \ ${CP} ${ICONS}/hicolor/$${dir}/mimetypes/$${file} \ ${PREFIX}/share/icons/hicolor/$${dir}/mimetypes/ ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/mimetypes/$${file}" >> ${TMPPLIST} ; \ done ; \ done @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} @${CP} ${FILESDIR}/pkg-message.in ${PKGMESSAGE} @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ -e 's#%%EXECBASE%%#${EXECBASE}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ ${PKGMESSAGE} @${ECHO_CMD} @${CAT} ${PKGMESSAGE} @${ECHO_CMD} .include <${FILESDIR}/Makefile.others> .include diff --git a/editors/openoffice-3/files/patch-i66667 b/editors/openoffice-3/files/patch-i66667 index b73949eee465..f60b55f79d73 100644 --- a/editors/openoffice-3/files/patch-i66667 +++ b/editors/openoffice-3/files/patch-i66667 @@ -1,55 +1,139 @@ -Index: vcl/unx/gtk/app/gtkinst.cxx -=================================================================== -RCS file: /cvs/gsl/vcl/unx/gtk/app/gtkinst.cxx,v -retrieving revision 1.14.88.1 -diff -u -r1.14.88.1 gtkinst.cxx ---- vcl/unx/gtk/app/gtkinst.cxx 10 Aug 2006 14:53:08 -0000 1.14.88.1 -+++ vcl/unx/gtk/app/gtkinst.cxx 21 Aug 2006 05:38:21 -0000 -@@ -43,6 +43,7 @@ - #include +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Tue May 2 08:01:08 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Fri Sep 8 17:25:05 2006 +@@ -120,6 +120,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -436,7 +439,7 @@ + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( + void ** slots, unsigned char * code, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, +- sal_Int32 functionCount, sal_Int32 vtableOffset) ++ sal_Int32 /*functionCount*/, sal_Int32 vtableOffset) + { + for (sal_Int32 i = 0; i < type->nMembers; ++i) { + typelib_TypeDescription * member = 0; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig Wed Sep 7 18:20:22 2005 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx Mon Sep 11 12:21:03 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include #include -+#include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) ++#endif + { + } + //__________________________________________________________________________________________________ +@@ -139,8 +144,8 @@ + OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName; + + MutexGuard guard( m_mutex ); +- t_rtti_map::const_iterator iFind( m_rttis.find( unoName ) ); +- if (iFind == m_rttis.end()) ++ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) ); ++ if (iRttiFind == m_rttis.end()) + { + // RTTI symbol + OStringBuffer buf( 64 ); +@@ -157,8 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); +-//#iZ 22253 ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { +@@ -205,7 +213,7 @@ + } + else + { +- rtti = iFind->second; ++ rtti = iRttiFind->second; + } - #if OSL_DEBUG_LEVEL > 1 - #include -@@ -111,13 +112,28 @@ - GtkHookedYieldMutex *pYieldMutex = GET_YIELD_MUTEX(); - pYieldMutex->ThreadsLeave(); + return rtti; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Mon Jun 19 19:43:09 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Fri Sep 8 17:25:05 2006 +@@ -142,6 +142,8 @@ + case typelib_TypeClass_DOUBLE: + asm ( "fstpl %0\n\t" : : "m"(*(char *)pRegisterReturn) ); + break; ++ default: ++ break; } -- static bool hookLocks( oslModule pModule ) -+ static bool hookLocks( void ) + } + +@@ -217,6 +219,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -329,7 +334,6 @@ + // is my surrogate + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis + = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI); +- typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr; + + switch (pMemberDescr->eTypeClass) { - typedef void (*GdkLockFn) (GCallback enter_fn, GCallback leave_fn); - rtl::OUString aSymbolName( RTL_CONSTASCII_USTRINGPARAM( "gdk_threads_set_lock_functions") ); - -+ /* XXX GDK library path should be set by configure. */ -+ OUStringBuffer aModName( 128 ); -+ aModName.appendAscii( SAL_DLLPREFIX"gdk-x11-2.0" ); -+ aModName.appendAscii( SAL_DLLEXTENSION ); -+ OUString aModule = aModName.makeStringAndClear(); -+ oslModule aMod = osl_loadModule( aModule.pData, SAL_LOADMODULE_DEFAULT ); -+ -+ if ( !aMod ) -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Failed to load "SAL_DLLPREFIX"gdk-x11-2.0"SAL_DLLEXTENSION"\n" ); +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig Wed Jul 19 05:30:01 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx Mon Sep 11 12:21:25 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) +#endif -+ return false; -+ } -+ - GdkLockFn gdk_threads_set_lock_functions = -- (GdkLockFn) osl_getFunctionSymbol( pModule, aSymbolName.pData ); -+ (GdkLockFn) osl_getFunctionSymbol( aMod, aSymbolName.pData ); - if ( !gdk_threads_set_lock_functions ) - { - #if OSL_DEBUG_LEVEL > 1 -@@ -150,7 +166,7 @@ - if ( !g_thread_supported() ) - g_thread_init( NULL ); - -- if ( hookLocks( pModule ) ) -+ if ( hookLocks() ) - pYieldMutex = new GtkHookedYieldMutex(); - else - pYieldMutex = new GtkYieldMutex(); + { + } + //__________________________________________________________________________________________________ +@@ -157,7 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { diff --git a/editors/openoffice-3/files/patch-i66667 b/editors/openoffice-3/files/rtld-workaround-i66667 similarity index 100% copy from editors/openoffice-3/files/patch-i66667 copy to editors/openoffice-3/files/rtld-workaround-i66667 diff --git a/editors/openoffice.org-2-RC/Makefile b/editors/openoffice.org-2-RC/Makefile index 7d287326b467..fc0b00337d7f 100644 --- a/editors/openoffice.org-2-RC/Makefile +++ b/editors/openoffice.org-2-RC/Makefile @@ -1,306 +1,309 @@ # New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME?= openoffice.org PORTVERSION?= 2.1.${SNAPDATE} CATEGORIES+= editors java MASTER_SITES+= ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/developer/680_m${MILESTONE}/&,} \ http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ ${MASTER_SITE_MOZILLA:S/$/:mozsrc/} \ http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg .if defined(WITH_GPC) DISTFILES+= gpc231.tar.Z:gpc .endif .if defined(WITH_GNUGCJ) DISTFILES+= ${ANT_DISTFILE}:antbin .endif EXTRACT_ONLY= ${OOOSRC} MAINTAINER= openoffice@FreeBSD.org COMMENT?= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser(release branch) -IGNORE= Please use editors/openoffice.org-2 +#IGNORE= Please use editors/openoffice.org-2 NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_VERSION= 1.7.5 MOZILLA_SOURCE= mozilla-source-${MOZILLA_VERSION}.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_SOURCE}:mozsrc USE_GNOME+= libidl .endif .if defined(WITH_KDE) USE_KDELIBS_VER= 3 .endif USE_XLIB= yes USE_GMAKE= yes USE_PERL5= yes USE_BZIP2= yes WITHOUT_CPU_CFLAGS= true .if !defined(WITH_GNUGCJ) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk JAVA_VENDOR= freebsd bsdjava .endif .include .include <${FILESDIR}/Makefile.localized> ONLY_FOR_ARCHS= i386 amd64 .if ${ARCH} == amd64 GCC_TARGET= x86_64-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDAMDEnv.Set .else GCC_TARGET= ${ARCH}-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDIntelEnv.Set .endif .if ${PERL_LEVEL} < 500600 IGNORE= install lang/perl5.8 then try again .endif CODELINE= 680 MILESTONE?= 6 OOOTAG?= OOE680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} SNAPDATE= 20061201 INSTALLATION_BASEDIR?= openoffice.org-${OOOTAG} EXECBASE?= openoffice.org-${OOOTAG} DIST_SUBDIR= openoffice.org2.0 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}X86_64 .else PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}Intel .endif LOCALIZED_LANG?= en-US # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX= -${LANG_SUFFIX} .endif RUN_DEPENDS+= ${LOCALBASE}/share/icons/hicolor/index.theme:${PORTSDIR}/misc/hicolor-icon-theme .if defined(WITH_GNUGCJ) GCCVER=41 BUILD_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt BUILD_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat RUN_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt RUN_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat .else .if ${ARCH} == amd64 GCCVER=41 BUILD_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 RUN_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 .else GCCVER=34 BUILD_DEPENDS+= gcc-ooo:${PORTSDIR}/lang/gcc-ooo .endif .endif .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CCACHE_PREFIX= ccache .else CCACHE_PREFIX= .endif .if (${GCCVER} == 41) CC= gcc41 CXX= g++41 .endif .if (${GCCVER} == 34) CC= gcc-ooo CXX= g++-ooo .endif CC:= ${CCACHE_PREFIX} ${CC} CXX:= ${CCACHE_PREFIX} ${CXX} BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ gpatch:${PORTSDIR}/devel/patch \ ${SITE_PERL}/Archive/Zip.pm:${PORTSDIR}/archivers/p5-Archive-Zip \ bison2:${PORTSDIR}/devel/bison2 \ imake:${X_IMAKE_PORT} .if defined(WITH_GNUGCJ) LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 ANT_DISTFILE= apache-ant-${ANT_VERSION}-bin.tar.bz2 ANT_VERSION= 1.6.5 .else BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant .endif .if !defined(WITH_GPC) LIB_DEPENDS+= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl .endif GNU_CONFIGURE= yes WRKSRC?= ${WRKDIR}/${OOOTAG} CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message NUMOFPROCESSES?= 1 .if defined(WITH_GNUGCJ) CONFIGURE_ENV+= PATH="${LOCALBASE}/lib/jvm/java-gcj41/bin:${PATH}" .endif CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ --enable-crashdump=yes \ --enable-symbols=SMALL .if ${ARCH} == amd64 || ${GCCVER} == 41 WITHOUT_MOZILLA= yes .endif .if (${GCCVER} == 41) LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .endif +.if (${OSVERSION} <= 700021) +EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 +.endif .if (${OSVERSION} <= 492000) EXTRA_PATCHES+= ${FILESDIR}/fbsd4-workaroundpatch .endif .if defined(WITH_GNUGCJ) EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround .endif .if defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif ICONS= ${WRKSRC}/sysui/desktop/icons .include <${FILESDIR}/Makefile.knobs> pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/ .if defined(WITH_GNUGCJ) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${ANT_DISTFILE} | ${BZIP2_CMD} -d | ${TAR} xf - .endif .if defined(WITH_GPC) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .endif .if !defined(WITHOUT_MOZILLA) @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download .endif do-build: @cd ${WRKSRC} ; ./bootstrap # PR:84786 #i53289# .if (${NUMOFPROCESSES}>1) @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl -P${NUMOFPROCESSES} --all" .else @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; dmake" .endif do-install: @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES @${RM} -Rf ${WRKDIR}/tmp @${MKDIR} ${WRKDIR}/tmp @for i in `${CAT} ${WRKDIR}/INSTALLFILES`; do \ ${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ${WRKDIR}/tmp ; \ cd ${WRKDIR}/tmp ; ${TAR} xfz ${WRKDIR}/tmp/$$i ; \ done @${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR} @cd ${WRKDIR}/tmp/opt/openoffice* ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR} post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice.org-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ ${WRKDIR}/openoffice.org-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice.org-wrapper \ ${PREFIX}/bin/${EXECBASE} @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sbase @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-scalc @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sdraw @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-setofficelang @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-smath @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter @${ECHO_CMD} "" > ${TMPPLIST} @${REINPLACE_CMD} -e '/^Exec/s/printeradmin/spadmin/' \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop @for app in base calc draw impress math printeradmin writer; do \ ${REINPLACE_CMD} -e "s/^Exec.*/Exec=${EXECBASE} -$${app} %U/" \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/$${app}.desktop ; \ done @${RM} ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop.bak @${RM} -f ${DESKTOPDIR}/${EXECBASE} @${MKDIR} ${DESKTOPDIR} @${LN} -sf ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg \ ${DESKTOPDIR}/${EXECBASE} @${ECHO_CMD} "share/applications/${EXECBASE}" >> ${TMPPLIST} @${ECHO_CMD} "@unexec ${RMDIR} %D/share/applications 2>/dev/null || ${TRUE}" >> ${TMPPLIST} @for dir in `ls ${ICONS}/hicolor | ${GREP} -v CVS`; do \ for app in base calc draw impress math printeradmin writer; do \ if [ -r ${ICONS}/hicolor/$${dir}/apps/$${app}.png ]; then \ ${CP} ${ICONS}/hicolor/$${dir}/apps/$${app}.png \ ${PREFIX}/share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png" >> ${TMPPLIST} ; \ fi \ done ; \ for file in `cd ${ICONS}/hicolor/$${dir}/mimetypes; ls *.png`; do \ ${CP} ${ICONS}/hicolor/$${dir}/mimetypes/$${file} \ ${PREFIX}/share/icons/hicolor/$${dir}/mimetypes/ ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/mimetypes/$${file}" >> ${TMPPLIST} ; \ done ; \ done @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} @${CP} ${FILESDIR}/pkg-message.in ${PKGMESSAGE} @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ -e 's#%%EXECBASE%%#${EXECBASE}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ ${PKGMESSAGE} @${ECHO_CMD} @${CAT} ${PKGMESSAGE} @${ECHO_CMD} .include <${FILESDIR}/Makefile.others> .include diff --git a/editors/openoffice.org-2-RC/files/patch-i66667 b/editors/openoffice.org-2-RC/files/patch-i66667 index b73949eee465..f60b55f79d73 100644 --- a/editors/openoffice.org-2-RC/files/patch-i66667 +++ b/editors/openoffice.org-2-RC/files/patch-i66667 @@ -1,55 +1,139 @@ -Index: vcl/unx/gtk/app/gtkinst.cxx -=================================================================== -RCS file: /cvs/gsl/vcl/unx/gtk/app/gtkinst.cxx,v -retrieving revision 1.14.88.1 -diff -u -r1.14.88.1 gtkinst.cxx ---- vcl/unx/gtk/app/gtkinst.cxx 10 Aug 2006 14:53:08 -0000 1.14.88.1 -+++ vcl/unx/gtk/app/gtkinst.cxx 21 Aug 2006 05:38:21 -0000 -@@ -43,6 +43,7 @@ - #include +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Tue May 2 08:01:08 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Fri Sep 8 17:25:05 2006 +@@ -120,6 +120,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -436,7 +439,7 @@ + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( + void ** slots, unsigned char * code, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, +- sal_Int32 functionCount, sal_Int32 vtableOffset) ++ sal_Int32 /*functionCount*/, sal_Int32 vtableOffset) + { + for (sal_Int32 i = 0; i < type->nMembers; ++i) { + typelib_TypeDescription * member = 0; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig Wed Sep 7 18:20:22 2005 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx Mon Sep 11 12:21:03 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include #include -+#include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) ++#endif + { + } + //__________________________________________________________________________________________________ +@@ -139,8 +144,8 @@ + OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName; + + MutexGuard guard( m_mutex ); +- t_rtti_map::const_iterator iFind( m_rttis.find( unoName ) ); +- if (iFind == m_rttis.end()) ++ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) ); ++ if (iRttiFind == m_rttis.end()) + { + // RTTI symbol + OStringBuffer buf( 64 ); +@@ -157,8 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); +-//#iZ 22253 ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { +@@ -205,7 +213,7 @@ + } + else + { +- rtti = iFind->second; ++ rtti = iRttiFind->second; + } - #if OSL_DEBUG_LEVEL > 1 - #include -@@ -111,13 +112,28 @@ - GtkHookedYieldMutex *pYieldMutex = GET_YIELD_MUTEX(); - pYieldMutex->ThreadsLeave(); + return rtti; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Mon Jun 19 19:43:09 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Fri Sep 8 17:25:05 2006 +@@ -142,6 +142,8 @@ + case typelib_TypeClass_DOUBLE: + asm ( "fstpl %0\n\t" : : "m"(*(char *)pRegisterReturn) ); + break; ++ default: ++ break; } -- static bool hookLocks( oslModule pModule ) -+ static bool hookLocks( void ) + } + +@@ -217,6 +219,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -329,7 +334,6 @@ + // is my surrogate + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis + = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI); +- typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr; + + switch (pMemberDescr->eTypeClass) { - typedef void (*GdkLockFn) (GCallback enter_fn, GCallback leave_fn); - rtl::OUString aSymbolName( RTL_CONSTASCII_USTRINGPARAM( "gdk_threads_set_lock_functions") ); - -+ /* XXX GDK library path should be set by configure. */ -+ OUStringBuffer aModName( 128 ); -+ aModName.appendAscii( SAL_DLLPREFIX"gdk-x11-2.0" ); -+ aModName.appendAscii( SAL_DLLEXTENSION ); -+ OUString aModule = aModName.makeStringAndClear(); -+ oslModule aMod = osl_loadModule( aModule.pData, SAL_LOADMODULE_DEFAULT ); -+ -+ if ( !aMod ) -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Failed to load "SAL_DLLPREFIX"gdk-x11-2.0"SAL_DLLEXTENSION"\n" ); +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig Wed Jul 19 05:30:01 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx Mon Sep 11 12:21:25 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) +#endif -+ return false; -+ } -+ - GdkLockFn gdk_threads_set_lock_functions = -- (GdkLockFn) osl_getFunctionSymbol( pModule, aSymbolName.pData ); -+ (GdkLockFn) osl_getFunctionSymbol( aMod, aSymbolName.pData ); - if ( !gdk_threads_set_lock_functions ) - { - #if OSL_DEBUG_LEVEL > 1 -@@ -150,7 +166,7 @@ - if ( !g_thread_supported() ) - g_thread_init( NULL ); - -- if ( hookLocks( pModule ) ) -+ if ( hookLocks() ) - pYieldMutex = new GtkHookedYieldMutex(); - else - pYieldMutex = new GtkYieldMutex(); + { + } + //__________________________________________________________________________________________________ +@@ -157,7 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { diff --git a/editors/openoffice-3/files/patch-i66667 b/editors/openoffice.org-2-RC/files/rtld-workaround-i66667 similarity index 100% copy from editors/openoffice-3/files/patch-i66667 copy to editors/openoffice.org-2-RC/files/rtld-workaround-i66667 diff --git a/editors/openoffice.org-2-devel/Makefile b/editors/openoffice.org-2-devel/Makefile index 6ecbdd5743c1..d4ce17161eb6 100644 --- a/editors/openoffice.org-2-devel/Makefile +++ b/editors/openoffice.org-2-devel/Makefile @@ -1,304 +1,307 @@ # New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME?= openoffice.org PORTVERSION?= 2.2.${SNAPDATE} CATEGORIES+= editors java MASTER_SITES+= ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/developer/680_m${MILESTONE}/&,} \ http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ ${MASTER_SITE_MOZILLA:S/$/:mozsrc/} \ http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg .if defined(WITH_GPC) DISTFILES+= gpc231.tar.Z:gpc .endif .if defined(WITH_GNUGCJ) DISTFILES+= ${ANT_DISTFILE}:antbin .endif EXTRACT_ONLY= ${OOOSRC} MAINTAINER= openoffice@FreeBSD.org COMMENT?= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser(developer version) NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_VERSION= 1.7.5 MOZILLA_SOURCE= mozilla-source-${MOZILLA_VERSION}.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_SOURCE}:mozsrc USE_GNOME+= libidl .endif .if defined(WITH_KDE) USE_KDELIBS_VER= 3 .endif USE_XLIB= yes USE_GMAKE= yes USE_PERL5= yes USE_BZIP2= yes WITHOUT_CPU_CFLAGS= true .if !defined(WITH_GNUGCJ) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk JAVA_VENDOR= freebsd bsdjava .endif .include .include <${FILESDIR}/Makefile.localized> ONLY_FOR_ARCHS= i386 amd64 .if ${ARCH} == amd64 GCC_TARGET= x86_64-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDAMDEnv.Set .else GCC_TARGET= ${ARCH}-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDIntelEnv.Set .endif .if ${PERL_LEVEL} < 500600 IGNORE= install lang/perl5.8 then try again .endif CODELINE= 680 MILESTONE?= 198 OOOTAG?= SRC680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} SNAPDATE= 20060103 INSTALLATION_BASEDIR?= openoffice.org-${OOOTAG} EXECBASE?= openoffice.org-${OOOTAG} DIST_SUBDIR= openoffice.org2.0 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}X86_64 .else PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}Intel .endif LOCALIZED_LANG?= en-US # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX= -${LANG_SUFFIX} .endif RUN_DEPENDS+= ${LOCALBASE}/share/icons/hicolor/index.theme:${PORTSDIR}/misc/hicolor-icon-theme .if defined(WITH_GNUGCJ) GCCVER=41 BUILD_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt BUILD_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat RUN_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt RUN_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat .else .if ${ARCH} == amd64 GCCVER=41 BUILD_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 RUN_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 .else GCCVER=34 BUILD_DEPENDS+= gcc-ooo:${PORTSDIR}/lang/gcc-ooo .endif .endif .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CCACHE_PREFIX= ccache .else CCACHE_PREFIX= .endif .if (${GCCVER} == 41) CC= gcc41 CXX= g++41 .endif .if (${GCCVER} == 34) CC= gcc-ooo CXX= g++-ooo .endif CC:= ${CCACHE_PREFIX} ${CC} CXX:= ${CCACHE_PREFIX} ${CXX} BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ gpatch:${PORTSDIR}/devel/patch \ ${SITE_PERL}/Archive/Zip.pm:${PORTSDIR}/archivers/p5-Archive-Zip \ bison2:${PORTSDIR}/devel/bison2 \ imake:${X_IMAKE_PORT} .if defined(WITH_GNUGCJ) LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 ANT_DISTFILE= apache-ant-${ANT_VERSION}-bin.tar.bz2 ANT_VERSION= 1.6.5 .else BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant .endif .if !defined(WITH_GPC) LIB_DEPENDS+= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl .endif GNU_CONFIGURE= yes WRKSRC?= ${WRKDIR}/${OOOTAG} CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message NUMOFPROCESSES?= 1 .if defined(WITH_GNUGCJ) CONFIGURE_ENV+= PATH="${LOCALBASE}/lib/jvm/java-gcj41/bin:${PATH}" .endif CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ --enable-crashdump=yes \ --enable-symbols=SMALL .if ${ARCH} == amd64 || ${GCCVER} == 41 WITHOUT_MOZILLA= yes .endif .if (${GCCVER} == 41) LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .endif +.if (${OSVERSION} <= 700021) +EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 +.endif .if (${OSVERSION} <= 492000) EXTRA_PATCHES+= ${FILESDIR}/fbsd4-workaroundpatch .endif .if defined(WITH_GNUGCJ) EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround .endif .if defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif ICONS= ${WRKSRC}/sysui/desktop/icons .include <${FILESDIR}/Makefile.knobs> pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/ .if defined(WITH_GNUGCJ) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${ANT_DISTFILE} | ${BZIP2_CMD} -d | ${TAR} xf - .endif .if defined(WITH_GPC) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .endif .if !defined(WITHOUT_MOZILLA) @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download .endif do-build: @cd ${WRKSRC} ; ./bootstrap # PR:84786 #i53289# .if (${NUMOFPROCESSES}>1) @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl -P${NUMOFPROCESSES} --all" .else @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; dmake" .endif do-install: @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES @${RM} -Rf ${WRKDIR}/tmp @${MKDIR} ${WRKDIR}/tmp @for i in `${CAT} ${WRKDIR}/INSTALLFILES`; do \ ${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ${WRKDIR}/tmp ; \ cd ${WRKDIR}/tmp ; ${TAR} xfz ${WRKDIR}/tmp/$$i ; \ done @${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR} @cd ${WRKDIR}/tmp/opt/openoffice* ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR} post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice.org-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ ${WRKDIR}/openoffice.org-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice.org-wrapper \ ${PREFIX}/bin/${EXECBASE} @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sbase @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-scalc @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sdraw @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-setofficelang @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-smath @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter @${ECHO_CMD} "" > ${TMPPLIST} @${REINPLACE_CMD} -e '/^Exec/s/printeradmin/spadmin/' \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop @for app in base calc draw impress math printeradmin writer; do \ ${REINPLACE_CMD} -e "s/^Exec.*/Exec=${EXECBASE} -$${app} %U/" \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/$${app}.desktop ; \ done @${RM} ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop.bak @${RM} -f ${DESKTOPDIR}/${EXECBASE} @${MKDIR} ${DESKTOPDIR} @${LN} -sf ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg \ ${DESKTOPDIR}/${EXECBASE} @${ECHO_CMD} "share/applications/${EXECBASE}" >> ${TMPPLIST} @${ECHO_CMD} "@unexec ${RMDIR} %D/share/applications 2>/dev/null || ${TRUE}" >> ${TMPPLIST} @for dir in `ls ${ICONS}/hicolor | ${GREP} -v CVS`; do \ for app in base calc draw impress math printeradmin writer; do \ if [ -r ${ICONS}/hicolor/$${dir}/apps/$${app}.png ]; then \ ${CP} ${ICONS}/hicolor/$${dir}/apps/$${app}.png \ ${PREFIX}/share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png" >> ${TMPPLIST} ; \ fi \ done ; \ for file in `cd ${ICONS}/hicolor/$${dir}/mimetypes; ls *.png`; do \ ${CP} ${ICONS}/hicolor/$${dir}/mimetypes/$${file} \ ${PREFIX}/share/icons/hicolor/$${dir}/mimetypes/ ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/mimetypes/$${file}" >> ${TMPPLIST} ; \ done ; \ done @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} @${CP} ${FILESDIR}/pkg-message.in ${PKGMESSAGE} @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ -e 's#%%EXECBASE%%#${EXECBASE}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ ${PKGMESSAGE} @${ECHO_CMD} @${CAT} ${PKGMESSAGE} @${ECHO_CMD} .include <${FILESDIR}/Makefile.others> .include diff --git a/editors/openoffice.org-2-devel/files/patch-i66667 b/editors/openoffice.org-2-devel/files/patch-i66667 index 26c0b1b4a88c..f60b55f79d73 100644 --- a/editors/openoffice.org-2-devel/files/patch-i66667 +++ b/editors/openoffice.org-2-devel/files/patch-i66667 @@ -1,55 +1,139 @@ -Index: vcl/unx/gtk/app/gtkinst.cxx -=================================================================== -RCS file: /cvs/gsl/vcl/unx/gtk/app/gtkinst.cxx,v -retrieving revision 1.14 -diff -u -r1.14 gtkinst.cxx ---- vcl/unx/gtk/app/gtkinst.cxx 19 Jun 2006 19:44:33 -0000 1.14 -+++ vcl/unx/gtk/app/gtkinst.cxx 27 Jun 2006 02:11:09 -0000 -@@ -43,6 +43,7 @@ - #include +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Tue May 2 08:01:08 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Fri Sep 8 17:25:05 2006 +@@ -120,6 +120,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -436,7 +439,7 @@ + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( + void ** slots, unsigned char * code, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, +- sal_Int32 functionCount, sal_Int32 vtableOffset) ++ sal_Int32 /*functionCount*/, sal_Int32 vtableOffset) + { + for (sal_Int32 i = 0; i < type->nMembers; ++i) { + typelib_TypeDescription * member = 0; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig Wed Sep 7 18:20:22 2005 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx Mon Sep 11 12:21:03 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include #include -+#include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) ++#endif + { + } + //__________________________________________________________________________________________________ +@@ -139,8 +144,8 @@ + OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName; + + MutexGuard guard( m_mutex ); +- t_rtti_map::const_iterator iFind( m_rttis.find( unoName ) ); +- if (iFind == m_rttis.end()) ++ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) ); ++ if (iRttiFind == m_rttis.end()) + { + // RTTI symbol + OStringBuffer buf( 64 ); +@@ -157,8 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); +-//#iZ 22253 ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { +@@ -205,7 +213,7 @@ + } + else + { +- rtti = iFind->second; ++ rtti = iRttiFind->second; + } - #if OSL_DEBUG_LEVEL > 1 - #include -@@ -111,13 +112,27 @@ - GtkHookedYieldMutex *pYieldMutex = GET_YIELD_MUTEX(); - pYieldMutex->ThreadsLeave(); + return rtti; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Mon Jun 19 19:43:09 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Fri Sep 8 17:25:05 2006 +@@ -142,6 +142,8 @@ + case typelib_TypeClass_DOUBLE: + asm ( "fstpl %0\n\t" : : "m"(*(char *)pRegisterReturn) ); + break; ++ default: ++ break; } -- static bool hookLocks( oslModule pModule ) -+ static bool hookLocks( void ) + } + +@@ -217,6 +219,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -329,7 +334,6 @@ + // is my surrogate + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis + = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI); +- typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr; + + switch (pMemberDescr->eTypeClass) { -- typedef void (*GdkLockFn) (GCallback enter_fn, GCallback leave_fn); -+ typedef void (*GdkLockFn) ( GCallback enter_fn, GCallback leave_fn ); - rtl::OUString aSymbolName( RTL_CONSTASCII_USTRINGPARAM( "gdk_threads_set_lock_functions") ); - -+ /* XXX GDK library path should be set by configure. */ -+ OUStringBuffer aModName( 128 ); -+ aModName.appendAscii( SAL_DLLPREFIX"gdk-x11-2.0" ); -+ aModName.appendAscii( SAL_DLLEXTENSION ); -+ OUString aModule = aModName.makeStringAndClear(); -+ oslModule aMod = osl_loadModule( aModule.pData, SAL_LOADMODULE_DEFAULT ); -+ -+ if ( !aMod ) -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Failed to load "SAL_DLLPREFIX"gdk-x11-2.0"SAL_DLLEXTENSION"\n" ); +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig Wed Jul 19 05:30:01 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx Mon Sep 11 12:21:25 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) +#endif -+ return false; -+ } - GdkLockFn gdk_threads_set_lock_functions = -- (GdkLockFn) osl_getFunctionSymbol( pModule, aSymbolName.pData ); -+ (GdkLockFn) osl_getFunctionSymbol( aMod, aSymbolName.pData ); - if ( !gdk_threads_set_lock_functions ) - { - #if OSL_DEBUG_LEVEL > 1 -@@ -150,7 +165,7 @@ - if ( !g_thread_supported() ) - g_thread_init( NULL ); - -- if ( hookLocks( pModule ) ) -+ if ( hookLocks() ) - pYieldMutex = new GtkHookedYieldMutex(); - else - pYieldMutex = new GtkYieldMutex(); + { + } + //__________________________________________________________________________________________________ +@@ -157,7 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { diff --git a/editors/openoffice-3-devel/files/patch-i66667 b/editors/openoffice.org-2-devel/files/rtld-workaround-i66667 similarity index 100% copy from editors/openoffice-3-devel/files/patch-i66667 copy to editors/openoffice.org-2-devel/files/rtld-workaround-i66667 diff --git a/editors/openoffice.org-2/Makefile b/editors/openoffice.org-2/Makefile index 91c3f47bd9db..d109abf5093c 100644 --- a/editors/openoffice.org-2/Makefile +++ b/editors/openoffice.org-2/Makefile @@ -1,304 +1,307 @@ # New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME?= openoffice.org PORTVERSION?= ${OOOVERSION} CATEGORIES+= editors java MASTER_SITES+= ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/stable/${OOOVERSION}/&,} \ http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ ${MASTER_SITE_MOZILLA:S/$/:mozsrc/} \ http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg .if defined(WITH_GPC) DISTFILES+= gpc231.tar.Z:gpc .endif .if defined(WITH_GNUGCJ) DISTFILES+= ${ANT_DISTFILE}:antbin .endif EXTRACT_ONLY= ${OOOSRC} MAINTAINER= openoffice@FreeBSD.org COMMENT?= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser OOOVERSION= 2.1.0 NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_VERSION= 1.7.5 MOZILLA_SOURCE= mozilla-source-${MOZILLA_VERSION}.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_SOURCE}:mozsrc USE_GNOME+= libidl .endif .if defined(WITH_KDE) USE_KDELIBS_VER= 3 .endif USE_XLIB= yes USE_GMAKE= yes USE_PERL5= yes USE_BZIP2= yes WITHOUT_CPU_CFLAGS= true .if !defined(WITH_GNUGCJ) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk JAVA_VENDOR= freebsd bsdjava .endif .include .include <${FILESDIR}/Makefile.localized> ONLY_FOR_ARCHS= i386 amd64 .if ${ARCH} == amd64 GCC_TARGET= x86_64-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDAMDEnv.Set .else GCC_TARGET= ${ARCH}-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDIntelEnv.Set .endif .if ${PERL_LEVEL} < 500600 IGNORE= install lang/perl5.8 then try again .endif CODELINE= 680 MILESTONE?= 6 OOOTAG?= OOE680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} INSTALLATION_BASEDIR?= openoffice.org-${OOOVERSION} EXECBASE?= openoffice.org-${OOOVERSION} DIST_SUBDIR= openoffice.org2.0 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOVERSION}_${OPSYS}${SIMPLEOSVER}X86_64 .else PACKAGE_BASENAME= OOo_${OOOVERSION}_${OPSYS}${SIMPLEOSVER}Intel .endif LOCALIZED_LANG?= en-US # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX= -${LANG_SUFFIX} .endif RUN_DEPENDS+= ${LOCALBASE}/share/icons/hicolor/index.theme:${PORTSDIR}/misc/hicolor-icon-theme .if defined(WITH_GNUGCJ) GCCVER=41 BUILD_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt BUILD_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat RUN_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt RUN_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat .else .if ${ARCH} == amd64 GCCVER=41 BUILD_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 RUN_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 .else GCCVER=34 BUILD_DEPENDS+= gcc-ooo:${PORTSDIR}/lang/gcc-ooo .endif .endif .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CCACHE_PREFIX= ccache .else CCACHE_PREFIX= .endif .if (${GCCVER} == 41) CC= gcc41 CXX= g++41 .endif .if (${GCCVER} == 34) CC= gcc-ooo CXX= g++-ooo .endif CC:= ${CCACHE_PREFIX} ${CC} CXX:= ${CCACHE_PREFIX} ${CXX} BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ gpatch:${PORTSDIR}/devel/patch \ ${SITE_PERL}/Archive/Zip.pm:${PORTSDIR}/archivers/p5-Archive-Zip \ bison2:${PORTSDIR}/devel/bison2 \ imake:${X_IMAKE_PORT} .if defined(WITH_GNUGCJ) LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 ANT_DISTFILE= apache-ant-${ANT_VERSION}-bin.tar.bz2 ANT_VERSION= 1.6.5 .else BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant .endif .if !defined(WITH_GPC) LIB_DEPENDS+= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl .endif GNU_CONFIGURE= yes WRKSRC?= ${WRKDIR}/${OOOTAG} CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message NUMOFPROCESSES?= 1 .if defined(WITH_GNUGCJ) CONFIGURE_ENV+= PATH="${LOCALBASE}/lib/jvm/java-gcj41/bin:${PATH}" .endif CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ --enable-crashdump=yes \ --enable-symbols=SMALL .if ${ARCH} == amd64 || ${GCCVER} == 41 WITHOUT_MOZILLA= yes .endif .if (${GCCVER} == 41) LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .endif +.if (${OSVERSION} <= 700021) +EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 +.endif .if (${OSVERSION} <= 492000) EXTRA_PATCHES+= ${FILESDIR}/fbsd4-workaroundpatch .endif .if defined(WITH_GNUGCJ) EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround .endif .if defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif ICONS= ${WRKSRC}/sysui/desktop/icons .include <${FILESDIR}/Makefile.knobs> pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/ .if defined(WITH_GNUGCJ) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${ANT_DISTFILE} | ${BZIP2_CMD} -d | ${TAR} xf - .endif .if defined(WITH_GPC) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .endif .if !defined(WITHOUT_MOZILLA) @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download .endif do-build: @cd ${WRKSRC} ; ./bootstrap # PR:84786 #i53289# .if (${NUMOFPROCESSES}>1) @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl -P${NUMOFPROCESSES} --all" .else @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; dmake" .endif do-install: @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES @${RM} -Rf ${WRKDIR}/tmp @${MKDIR} ${WRKDIR}/tmp @for i in `${CAT} ${WRKDIR}/INSTALLFILES`; do \ ${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ${WRKDIR}/tmp ; \ cd ${WRKDIR}/tmp ; ${TAR} xfz ${WRKDIR}/tmp/$$i ; \ done @${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR} @cd ${WRKDIR}/tmp/opt/openoffice* ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR} post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice.org-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ ${WRKDIR}/openoffice.org-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice.org-wrapper \ ${PREFIX}/bin/${EXECBASE} @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sbase @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-scalc @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sdraw @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-setofficelang @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-smath @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter @${ECHO_CMD} "" > ${TMPPLIST} @${REINPLACE_CMD} -e '/^Exec/s/printeradmin/spadmin/' \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop @for app in base calc draw impress math printeradmin writer; do \ ${REINPLACE_CMD} -e "s/^Exec.*/Exec=${EXECBASE} -$${app} %U/" \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/$${app}.desktop ; \ done @${RM} ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop.bak @${RM} -f ${DESKTOPDIR}/${EXECBASE} @${MKDIR} ${DESKTOPDIR} @${LN} -sf ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg \ ${DESKTOPDIR}/${EXECBASE} @${ECHO_CMD} "share/applications/${EXECBASE}" >> ${TMPPLIST} @${ECHO_CMD} "@unexec ${RMDIR} %D/share/applications 2>/dev/null || ${TRUE}" >> ${TMPPLIST} @for dir in `ls ${ICONS}/hicolor | ${GREP} -v CVS`; do \ for app in base calc draw impress math printeradmin writer; do \ if [ -r ${ICONS}/hicolor/$${dir}/apps/$${app}.png ]; then \ ${CP} ${ICONS}/hicolor/$${dir}/apps/$${app}.png \ ${PREFIX}/share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png" >> ${TMPPLIST} ; \ fi \ done ; \ for file in `cd ${ICONS}/hicolor/$${dir}/mimetypes; ls *.png`; do \ ${CP} ${ICONS}/hicolor/$${dir}/mimetypes/$${file} \ ${PREFIX}/share/icons/hicolor/$${dir}/mimetypes/ ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/mimetypes/$${file}" >> ${TMPPLIST} ; \ done ; \ done @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} @${CP} ${FILESDIR}/pkg-message.in ${PKGMESSAGE} @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ -e 's#%%EXECBASE%%#${EXECBASE}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ ${PKGMESSAGE} @${ECHO_CMD} @${CAT} ${PKGMESSAGE} @${ECHO_CMD} .include <${FILESDIR}/Makefile.others> .include diff --git a/editors/openoffice.org-2/files/patch-i66667 b/editors/openoffice.org-2/files/patch-i66667 index b73949eee465..f60b55f79d73 100644 --- a/editors/openoffice.org-2/files/patch-i66667 +++ b/editors/openoffice.org-2/files/patch-i66667 @@ -1,55 +1,139 @@ -Index: vcl/unx/gtk/app/gtkinst.cxx -=================================================================== -RCS file: /cvs/gsl/vcl/unx/gtk/app/gtkinst.cxx,v -retrieving revision 1.14.88.1 -diff -u -r1.14.88.1 gtkinst.cxx ---- vcl/unx/gtk/app/gtkinst.cxx 10 Aug 2006 14:53:08 -0000 1.14.88.1 -+++ vcl/unx/gtk/app/gtkinst.cxx 21 Aug 2006 05:38:21 -0000 -@@ -43,6 +43,7 @@ - #include +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Tue May 2 08:01:08 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Fri Sep 8 17:25:05 2006 +@@ -120,6 +120,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -436,7 +439,7 @@ + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( + void ** slots, unsigned char * code, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, +- sal_Int32 functionCount, sal_Int32 vtableOffset) ++ sal_Int32 /*functionCount*/, sal_Int32 vtableOffset) + { + for (sal_Int32 i = 0; i < type->nMembers; ++i) { + typelib_TypeDescription * member = 0; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig Wed Sep 7 18:20:22 2005 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx Mon Sep 11 12:21:03 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include #include -+#include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) ++#endif + { + } + //__________________________________________________________________________________________________ +@@ -139,8 +144,8 @@ + OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName; + + MutexGuard guard( m_mutex ); +- t_rtti_map::const_iterator iFind( m_rttis.find( unoName ) ); +- if (iFind == m_rttis.end()) ++ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) ); ++ if (iRttiFind == m_rttis.end()) + { + // RTTI symbol + OStringBuffer buf( 64 ); +@@ -157,8 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); +-//#iZ 22253 ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { +@@ -205,7 +213,7 @@ + } + else + { +- rtti = iFind->second; ++ rtti = iRttiFind->second; + } - #if OSL_DEBUG_LEVEL > 1 - #include -@@ -111,13 +112,28 @@ - GtkHookedYieldMutex *pYieldMutex = GET_YIELD_MUTEX(); - pYieldMutex->ThreadsLeave(); + return rtti; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Mon Jun 19 19:43:09 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Fri Sep 8 17:25:05 2006 +@@ -142,6 +142,8 @@ + case typelib_TypeClass_DOUBLE: + asm ( "fstpl %0\n\t" : : "m"(*(char *)pRegisterReturn) ); + break; ++ default: ++ break; } -- static bool hookLocks( oslModule pModule ) -+ static bool hookLocks( void ) + } + +@@ -217,6 +219,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -329,7 +334,6 @@ + // is my surrogate + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis + = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI); +- typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr; + + switch (pMemberDescr->eTypeClass) { - typedef void (*GdkLockFn) (GCallback enter_fn, GCallback leave_fn); - rtl::OUString aSymbolName( RTL_CONSTASCII_USTRINGPARAM( "gdk_threads_set_lock_functions") ); - -+ /* XXX GDK library path should be set by configure. */ -+ OUStringBuffer aModName( 128 ); -+ aModName.appendAscii( SAL_DLLPREFIX"gdk-x11-2.0" ); -+ aModName.appendAscii( SAL_DLLEXTENSION ); -+ OUString aModule = aModName.makeStringAndClear(); -+ oslModule aMod = osl_loadModule( aModule.pData, SAL_LOADMODULE_DEFAULT ); -+ -+ if ( !aMod ) -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Failed to load "SAL_DLLPREFIX"gdk-x11-2.0"SAL_DLLEXTENSION"\n" ); +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig Wed Jul 19 05:30:01 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx Mon Sep 11 12:21:25 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) +#endif -+ return false; -+ } -+ - GdkLockFn gdk_threads_set_lock_functions = -- (GdkLockFn) osl_getFunctionSymbol( pModule, aSymbolName.pData ); -+ (GdkLockFn) osl_getFunctionSymbol( aMod, aSymbolName.pData ); - if ( !gdk_threads_set_lock_functions ) - { - #if OSL_DEBUG_LEVEL > 1 -@@ -150,7 +166,7 @@ - if ( !g_thread_supported() ) - g_thread_init( NULL ); - -- if ( hookLocks( pModule ) ) -+ if ( hookLocks() ) - pYieldMutex = new GtkHookedYieldMutex(); - else - pYieldMutex = new GtkYieldMutex(); + { + } + //__________________________________________________________________________________________________ +@@ -157,7 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { diff --git a/editors/openoffice-3/files/patch-i66667 b/editors/openoffice.org-2/files/rtld-workaround-i66667 similarity index 100% copy from editors/openoffice-3/files/patch-i66667 copy to editors/openoffice.org-2/files/rtld-workaround-i66667 diff --git a/editors/openoffice.org-3-RC/Makefile b/editors/openoffice.org-3-RC/Makefile index 7d287326b467..fc0b00337d7f 100644 --- a/editors/openoffice.org-3-RC/Makefile +++ b/editors/openoffice.org-3-RC/Makefile @@ -1,306 +1,309 @@ # New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME?= openoffice.org PORTVERSION?= 2.1.${SNAPDATE} CATEGORIES+= editors java MASTER_SITES+= ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/developer/680_m${MILESTONE}/&,} \ http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ ${MASTER_SITE_MOZILLA:S/$/:mozsrc/} \ http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg .if defined(WITH_GPC) DISTFILES+= gpc231.tar.Z:gpc .endif .if defined(WITH_GNUGCJ) DISTFILES+= ${ANT_DISTFILE}:antbin .endif EXTRACT_ONLY= ${OOOSRC} MAINTAINER= openoffice@FreeBSD.org COMMENT?= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser(release branch) -IGNORE= Please use editors/openoffice.org-2 +#IGNORE= Please use editors/openoffice.org-2 NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_VERSION= 1.7.5 MOZILLA_SOURCE= mozilla-source-${MOZILLA_VERSION}.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_SOURCE}:mozsrc USE_GNOME+= libidl .endif .if defined(WITH_KDE) USE_KDELIBS_VER= 3 .endif USE_XLIB= yes USE_GMAKE= yes USE_PERL5= yes USE_BZIP2= yes WITHOUT_CPU_CFLAGS= true .if !defined(WITH_GNUGCJ) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk JAVA_VENDOR= freebsd bsdjava .endif .include .include <${FILESDIR}/Makefile.localized> ONLY_FOR_ARCHS= i386 amd64 .if ${ARCH} == amd64 GCC_TARGET= x86_64-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDAMDEnv.Set .else GCC_TARGET= ${ARCH}-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDIntelEnv.Set .endif .if ${PERL_LEVEL} < 500600 IGNORE= install lang/perl5.8 then try again .endif CODELINE= 680 MILESTONE?= 6 OOOTAG?= OOE680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} SNAPDATE= 20061201 INSTALLATION_BASEDIR?= openoffice.org-${OOOTAG} EXECBASE?= openoffice.org-${OOOTAG} DIST_SUBDIR= openoffice.org2.0 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}X86_64 .else PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}Intel .endif LOCALIZED_LANG?= en-US # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX= -${LANG_SUFFIX} .endif RUN_DEPENDS+= ${LOCALBASE}/share/icons/hicolor/index.theme:${PORTSDIR}/misc/hicolor-icon-theme .if defined(WITH_GNUGCJ) GCCVER=41 BUILD_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt BUILD_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat RUN_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt RUN_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat .else .if ${ARCH} == amd64 GCCVER=41 BUILD_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 RUN_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 .else GCCVER=34 BUILD_DEPENDS+= gcc-ooo:${PORTSDIR}/lang/gcc-ooo .endif .endif .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CCACHE_PREFIX= ccache .else CCACHE_PREFIX= .endif .if (${GCCVER} == 41) CC= gcc41 CXX= g++41 .endif .if (${GCCVER} == 34) CC= gcc-ooo CXX= g++-ooo .endif CC:= ${CCACHE_PREFIX} ${CC} CXX:= ${CCACHE_PREFIX} ${CXX} BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ gpatch:${PORTSDIR}/devel/patch \ ${SITE_PERL}/Archive/Zip.pm:${PORTSDIR}/archivers/p5-Archive-Zip \ bison2:${PORTSDIR}/devel/bison2 \ imake:${X_IMAKE_PORT} .if defined(WITH_GNUGCJ) LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 ANT_DISTFILE= apache-ant-${ANT_VERSION}-bin.tar.bz2 ANT_VERSION= 1.6.5 .else BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant .endif .if !defined(WITH_GPC) LIB_DEPENDS+= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl .endif GNU_CONFIGURE= yes WRKSRC?= ${WRKDIR}/${OOOTAG} CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message NUMOFPROCESSES?= 1 .if defined(WITH_GNUGCJ) CONFIGURE_ENV+= PATH="${LOCALBASE}/lib/jvm/java-gcj41/bin:${PATH}" .endif CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ --enable-crashdump=yes \ --enable-symbols=SMALL .if ${ARCH} == amd64 || ${GCCVER} == 41 WITHOUT_MOZILLA= yes .endif .if (${GCCVER} == 41) LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .endif +.if (${OSVERSION} <= 700021) +EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 +.endif .if (${OSVERSION} <= 492000) EXTRA_PATCHES+= ${FILESDIR}/fbsd4-workaroundpatch .endif .if defined(WITH_GNUGCJ) EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround .endif .if defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif ICONS= ${WRKSRC}/sysui/desktop/icons .include <${FILESDIR}/Makefile.knobs> pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/ .if defined(WITH_GNUGCJ) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${ANT_DISTFILE} | ${BZIP2_CMD} -d | ${TAR} xf - .endif .if defined(WITH_GPC) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .endif .if !defined(WITHOUT_MOZILLA) @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download .endif do-build: @cd ${WRKSRC} ; ./bootstrap # PR:84786 #i53289# .if (${NUMOFPROCESSES}>1) @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl -P${NUMOFPROCESSES} --all" .else @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; dmake" .endif do-install: @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES @${RM} -Rf ${WRKDIR}/tmp @${MKDIR} ${WRKDIR}/tmp @for i in `${CAT} ${WRKDIR}/INSTALLFILES`; do \ ${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ${WRKDIR}/tmp ; \ cd ${WRKDIR}/tmp ; ${TAR} xfz ${WRKDIR}/tmp/$$i ; \ done @${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR} @cd ${WRKDIR}/tmp/opt/openoffice* ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR} post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice.org-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ ${WRKDIR}/openoffice.org-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice.org-wrapper \ ${PREFIX}/bin/${EXECBASE} @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sbase @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-scalc @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sdraw @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-setofficelang @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-smath @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter @${ECHO_CMD} "" > ${TMPPLIST} @${REINPLACE_CMD} -e '/^Exec/s/printeradmin/spadmin/' \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop @for app in base calc draw impress math printeradmin writer; do \ ${REINPLACE_CMD} -e "s/^Exec.*/Exec=${EXECBASE} -$${app} %U/" \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/$${app}.desktop ; \ done @${RM} ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop.bak @${RM} -f ${DESKTOPDIR}/${EXECBASE} @${MKDIR} ${DESKTOPDIR} @${LN} -sf ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg \ ${DESKTOPDIR}/${EXECBASE} @${ECHO_CMD} "share/applications/${EXECBASE}" >> ${TMPPLIST} @${ECHO_CMD} "@unexec ${RMDIR} %D/share/applications 2>/dev/null || ${TRUE}" >> ${TMPPLIST} @for dir in `ls ${ICONS}/hicolor | ${GREP} -v CVS`; do \ for app in base calc draw impress math printeradmin writer; do \ if [ -r ${ICONS}/hicolor/$${dir}/apps/$${app}.png ]; then \ ${CP} ${ICONS}/hicolor/$${dir}/apps/$${app}.png \ ${PREFIX}/share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png" >> ${TMPPLIST} ; \ fi \ done ; \ for file in `cd ${ICONS}/hicolor/$${dir}/mimetypes; ls *.png`; do \ ${CP} ${ICONS}/hicolor/$${dir}/mimetypes/$${file} \ ${PREFIX}/share/icons/hicolor/$${dir}/mimetypes/ ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/mimetypes/$${file}" >> ${TMPPLIST} ; \ done ; \ done @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} @${CP} ${FILESDIR}/pkg-message.in ${PKGMESSAGE} @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ -e 's#%%EXECBASE%%#${EXECBASE}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ ${PKGMESSAGE} @${ECHO_CMD} @${CAT} ${PKGMESSAGE} @${ECHO_CMD} .include <${FILESDIR}/Makefile.others> .include diff --git a/editors/openoffice.org-3-RC/files/patch-i66667 b/editors/openoffice.org-3-RC/files/patch-i66667 index b73949eee465..f60b55f79d73 100644 --- a/editors/openoffice.org-3-RC/files/patch-i66667 +++ b/editors/openoffice.org-3-RC/files/patch-i66667 @@ -1,55 +1,139 @@ -Index: vcl/unx/gtk/app/gtkinst.cxx -=================================================================== -RCS file: /cvs/gsl/vcl/unx/gtk/app/gtkinst.cxx,v -retrieving revision 1.14.88.1 -diff -u -r1.14.88.1 gtkinst.cxx ---- vcl/unx/gtk/app/gtkinst.cxx 10 Aug 2006 14:53:08 -0000 1.14.88.1 -+++ vcl/unx/gtk/app/gtkinst.cxx 21 Aug 2006 05:38:21 -0000 -@@ -43,6 +43,7 @@ - #include +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Tue May 2 08:01:08 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Fri Sep 8 17:25:05 2006 +@@ -120,6 +120,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -436,7 +439,7 @@ + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( + void ** slots, unsigned char * code, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, +- sal_Int32 functionCount, sal_Int32 vtableOffset) ++ sal_Int32 /*functionCount*/, sal_Int32 vtableOffset) + { + for (sal_Int32 i = 0; i < type->nMembers; ++i) { + typelib_TypeDescription * member = 0; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig Wed Sep 7 18:20:22 2005 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx Mon Sep 11 12:21:03 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include #include -+#include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) ++#endif + { + } + //__________________________________________________________________________________________________ +@@ -139,8 +144,8 @@ + OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName; + + MutexGuard guard( m_mutex ); +- t_rtti_map::const_iterator iFind( m_rttis.find( unoName ) ); +- if (iFind == m_rttis.end()) ++ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) ); ++ if (iRttiFind == m_rttis.end()) + { + // RTTI symbol + OStringBuffer buf( 64 ); +@@ -157,8 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); +-//#iZ 22253 ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { +@@ -205,7 +213,7 @@ + } + else + { +- rtti = iFind->second; ++ rtti = iRttiFind->second; + } - #if OSL_DEBUG_LEVEL > 1 - #include -@@ -111,13 +112,28 @@ - GtkHookedYieldMutex *pYieldMutex = GET_YIELD_MUTEX(); - pYieldMutex->ThreadsLeave(); + return rtti; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Mon Jun 19 19:43:09 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Fri Sep 8 17:25:05 2006 +@@ -142,6 +142,8 @@ + case typelib_TypeClass_DOUBLE: + asm ( "fstpl %0\n\t" : : "m"(*(char *)pRegisterReturn) ); + break; ++ default: ++ break; } -- static bool hookLocks( oslModule pModule ) -+ static bool hookLocks( void ) + } + +@@ -217,6 +219,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -329,7 +334,6 @@ + // is my surrogate + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis + = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI); +- typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr; + + switch (pMemberDescr->eTypeClass) { - typedef void (*GdkLockFn) (GCallback enter_fn, GCallback leave_fn); - rtl::OUString aSymbolName( RTL_CONSTASCII_USTRINGPARAM( "gdk_threads_set_lock_functions") ); - -+ /* XXX GDK library path should be set by configure. */ -+ OUStringBuffer aModName( 128 ); -+ aModName.appendAscii( SAL_DLLPREFIX"gdk-x11-2.0" ); -+ aModName.appendAscii( SAL_DLLEXTENSION ); -+ OUString aModule = aModName.makeStringAndClear(); -+ oslModule aMod = osl_loadModule( aModule.pData, SAL_LOADMODULE_DEFAULT ); -+ -+ if ( !aMod ) -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Failed to load "SAL_DLLPREFIX"gdk-x11-2.0"SAL_DLLEXTENSION"\n" ); +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig Wed Jul 19 05:30:01 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx Mon Sep 11 12:21:25 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) +#endif -+ return false; -+ } -+ - GdkLockFn gdk_threads_set_lock_functions = -- (GdkLockFn) osl_getFunctionSymbol( pModule, aSymbolName.pData ); -+ (GdkLockFn) osl_getFunctionSymbol( aMod, aSymbolName.pData ); - if ( !gdk_threads_set_lock_functions ) - { - #if OSL_DEBUG_LEVEL > 1 -@@ -150,7 +166,7 @@ - if ( !g_thread_supported() ) - g_thread_init( NULL ); - -- if ( hookLocks( pModule ) ) -+ if ( hookLocks() ) - pYieldMutex = new GtkHookedYieldMutex(); - else - pYieldMutex = new GtkYieldMutex(); + { + } + //__________________________________________________________________________________________________ +@@ -157,7 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { diff --git a/editors/openoffice-3/files/patch-i66667 b/editors/openoffice.org-3-RC/files/rtld-workaround-i66667 similarity index 100% copy from editors/openoffice-3/files/patch-i66667 copy to editors/openoffice.org-3-RC/files/rtld-workaround-i66667 diff --git a/editors/openoffice.org-3-devel/Makefile b/editors/openoffice.org-3-devel/Makefile index 6ecbdd5743c1..d4ce17161eb6 100644 --- a/editors/openoffice.org-3-devel/Makefile +++ b/editors/openoffice.org-3-devel/Makefile @@ -1,304 +1,307 @@ # New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME?= openoffice.org PORTVERSION?= 2.2.${SNAPDATE} CATEGORIES+= editors java MASTER_SITES+= ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/developer/680_m${MILESTONE}/&,} \ http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ ${MASTER_SITE_MOZILLA:S/$/:mozsrc/} \ http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg .if defined(WITH_GPC) DISTFILES+= gpc231.tar.Z:gpc .endif .if defined(WITH_GNUGCJ) DISTFILES+= ${ANT_DISTFILE}:antbin .endif EXTRACT_ONLY= ${OOOSRC} MAINTAINER= openoffice@FreeBSD.org COMMENT?= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser(developer version) NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_VERSION= 1.7.5 MOZILLA_SOURCE= mozilla-source-${MOZILLA_VERSION}.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_SOURCE}:mozsrc USE_GNOME+= libidl .endif .if defined(WITH_KDE) USE_KDELIBS_VER= 3 .endif USE_XLIB= yes USE_GMAKE= yes USE_PERL5= yes USE_BZIP2= yes WITHOUT_CPU_CFLAGS= true .if !defined(WITH_GNUGCJ) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk JAVA_VENDOR= freebsd bsdjava .endif .include .include <${FILESDIR}/Makefile.localized> ONLY_FOR_ARCHS= i386 amd64 .if ${ARCH} == amd64 GCC_TARGET= x86_64-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDAMDEnv.Set .else GCC_TARGET= ${ARCH}-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDIntelEnv.Set .endif .if ${PERL_LEVEL} < 500600 IGNORE= install lang/perl5.8 then try again .endif CODELINE= 680 MILESTONE?= 198 OOOTAG?= SRC680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} SNAPDATE= 20060103 INSTALLATION_BASEDIR?= openoffice.org-${OOOTAG} EXECBASE?= openoffice.org-${OOOTAG} DIST_SUBDIR= openoffice.org2.0 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}X86_64 .else PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}Intel .endif LOCALIZED_LANG?= en-US # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX= -${LANG_SUFFIX} .endif RUN_DEPENDS+= ${LOCALBASE}/share/icons/hicolor/index.theme:${PORTSDIR}/misc/hicolor-icon-theme .if defined(WITH_GNUGCJ) GCCVER=41 BUILD_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt BUILD_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat RUN_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt RUN_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat .else .if ${ARCH} == amd64 GCCVER=41 BUILD_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 RUN_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 .else GCCVER=34 BUILD_DEPENDS+= gcc-ooo:${PORTSDIR}/lang/gcc-ooo .endif .endif .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CCACHE_PREFIX= ccache .else CCACHE_PREFIX= .endif .if (${GCCVER} == 41) CC= gcc41 CXX= g++41 .endif .if (${GCCVER} == 34) CC= gcc-ooo CXX= g++-ooo .endif CC:= ${CCACHE_PREFIX} ${CC} CXX:= ${CCACHE_PREFIX} ${CXX} BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ gpatch:${PORTSDIR}/devel/patch \ ${SITE_PERL}/Archive/Zip.pm:${PORTSDIR}/archivers/p5-Archive-Zip \ bison2:${PORTSDIR}/devel/bison2 \ imake:${X_IMAKE_PORT} .if defined(WITH_GNUGCJ) LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 ANT_DISTFILE= apache-ant-${ANT_VERSION}-bin.tar.bz2 ANT_VERSION= 1.6.5 .else BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant .endif .if !defined(WITH_GPC) LIB_DEPENDS+= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl .endif GNU_CONFIGURE= yes WRKSRC?= ${WRKDIR}/${OOOTAG} CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message NUMOFPROCESSES?= 1 .if defined(WITH_GNUGCJ) CONFIGURE_ENV+= PATH="${LOCALBASE}/lib/jvm/java-gcj41/bin:${PATH}" .endif CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ --enable-crashdump=yes \ --enable-symbols=SMALL .if ${ARCH} == amd64 || ${GCCVER} == 41 WITHOUT_MOZILLA= yes .endif .if (${GCCVER} == 41) LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .endif +.if (${OSVERSION} <= 700021) +EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 +.endif .if (${OSVERSION} <= 492000) EXTRA_PATCHES+= ${FILESDIR}/fbsd4-workaroundpatch .endif .if defined(WITH_GNUGCJ) EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround .endif .if defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif ICONS= ${WRKSRC}/sysui/desktop/icons .include <${FILESDIR}/Makefile.knobs> pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/ .if defined(WITH_GNUGCJ) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${ANT_DISTFILE} | ${BZIP2_CMD} -d | ${TAR} xf - .endif .if defined(WITH_GPC) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .endif .if !defined(WITHOUT_MOZILLA) @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download .endif do-build: @cd ${WRKSRC} ; ./bootstrap # PR:84786 #i53289# .if (${NUMOFPROCESSES}>1) @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl -P${NUMOFPROCESSES} --all" .else @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; dmake" .endif do-install: @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES @${RM} -Rf ${WRKDIR}/tmp @${MKDIR} ${WRKDIR}/tmp @for i in `${CAT} ${WRKDIR}/INSTALLFILES`; do \ ${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ${WRKDIR}/tmp ; \ cd ${WRKDIR}/tmp ; ${TAR} xfz ${WRKDIR}/tmp/$$i ; \ done @${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR} @cd ${WRKDIR}/tmp/opt/openoffice* ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR} post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice.org-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ ${WRKDIR}/openoffice.org-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice.org-wrapper \ ${PREFIX}/bin/${EXECBASE} @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sbase @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-scalc @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sdraw @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-setofficelang @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-smath @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter @${ECHO_CMD} "" > ${TMPPLIST} @${REINPLACE_CMD} -e '/^Exec/s/printeradmin/spadmin/' \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop @for app in base calc draw impress math printeradmin writer; do \ ${REINPLACE_CMD} -e "s/^Exec.*/Exec=${EXECBASE} -$${app} %U/" \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/$${app}.desktop ; \ done @${RM} ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop.bak @${RM} -f ${DESKTOPDIR}/${EXECBASE} @${MKDIR} ${DESKTOPDIR} @${LN} -sf ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg \ ${DESKTOPDIR}/${EXECBASE} @${ECHO_CMD} "share/applications/${EXECBASE}" >> ${TMPPLIST} @${ECHO_CMD} "@unexec ${RMDIR} %D/share/applications 2>/dev/null || ${TRUE}" >> ${TMPPLIST} @for dir in `ls ${ICONS}/hicolor | ${GREP} -v CVS`; do \ for app in base calc draw impress math printeradmin writer; do \ if [ -r ${ICONS}/hicolor/$${dir}/apps/$${app}.png ]; then \ ${CP} ${ICONS}/hicolor/$${dir}/apps/$${app}.png \ ${PREFIX}/share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png" >> ${TMPPLIST} ; \ fi \ done ; \ for file in `cd ${ICONS}/hicolor/$${dir}/mimetypes; ls *.png`; do \ ${CP} ${ICONS}/hicolor/$${dir}/mimetypes/$${file} \ ${PREFIX}/share/icons/hicolor/$${dir}/mimetypes/ ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/mimetypes/$${file}" >> ${TMPPLIST} ; \ done ; \ done @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} @${CP} ${FILESDIR}/pkg-message.in ${PKGMESSAGE} @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ -e 's#%%EXECBASE%%#${EXECBASE}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ ${PKGMESSAGE} @${ECHO_CMD} @${CAT} ${PKGMESSAGE} @${ECHO_CMD} .include <${FILESDIR}/Makefile.others> .include diff --git a/editors/openoffice.org-3-devel/files/patch-i66667 b/editors/openoffice.org-3-devel/files/patch-i66667 index 26c0b1b4a88c..f60b55f79d73 100644 --- a/editors/openoffice.org-3-devel/files/patch-i66667 +++ b/editors/openoffice.org-3-devel/files/patch-i66667 @@ -1,55 +1,139 @@ -Index: vcl/unx/gtk/app/gtkinst.cxx -=================================================================== -RCS file: /cvs/gsl/vcl/unx/gtk/app/gtkinst.cxx,v -retrieving revision 1.14 -diff -u -r1.14 gtkinst.cxx ---- vcl/unx/gtk/app/gtkinst.cxx 19 Jun 2006 19:44:33 -0000 1.14 -+++ vcl/unx/gtk/app/gtkinst.cxx 27 Jun 2006 02:11:09 -0000 -@@ -43,6 +43,7 @@ - #include +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Tue May 2 08:01:08 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Fri Sep 8 17:25:05 2006 +@@ -120,6 +120,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -436,7 +439,7 @@ + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( + void ** slots, unsigned char * code, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, +- sal_Int32 functionCount, sal_Int32 vtableOffset) ++ sal_Int32 /*functionCount*/, sal_Int32 vtableOffset) + { + for (sal_Int32 i = 0; i < type->nMembers; ++i) { + typelib_TypeDescription * member = 0; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig Wed Sep 7 18:20:22 2005 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx Mon Sep 11 12:21:03 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include #include -+#include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) ++#endif + { + } + //__________________________________________________________________________________________________ +@@ -139,8 +144,8 @@ + OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName; + + MutexGuard guard( m_mutex ); +- t_rtti_map::const_iterator iFind( m_rttis.find( unoName ) ); +- if (iFind == m_rttis.end()) ++ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) ); ++ if (iRttiFind == m_rttis.end()) + { + // RTTI symbol + OStringBuffer buf( 64 ); +@@ -157,8 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); +-//#iZ 22253 ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { +@@ -205,7 +213,7 @@ + } + else + { +- rtti = iFind->second; ++ rtti = iRttiFind->second; + } - #if OSL_DEBUG_LEVEL > 1 - #include -@@ -111,13 +112,27 @@ - GtkHookedYieldMutex *pYieldMutex = GET_YIELD_MUTEX(); - pYieldMutex->ThreadsLeave(); + return rtti; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Mon Jun 19 19:43:09 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Fri Sep 8 17:25:05 2006 +@@ -142,6 +142,8 @@ + case typelib_TypeClass_DOUBLE: + asm ( "fstpl %0\n\t" : : "m"(*(char *)pRegisterReturn) ); + break; ++ default: ++ break; } -- static bool hookLocks( oslModule pModule ) -+ static bool hookLocks( void ) + } + +@@ -217,6 +219,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -329,7 +334,6 @@ + // is my surrogate + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis + = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI); +- typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr; + + switch (pMemberDescr->eTypeClass) { -- typedef void (*GdkLockFn) (GCallback enter_fn, GCallback leave_fn); -+ typedef void (*GdkLockFn) ( GCallback enter_fn, GCallback leave_fn ); - rtl::OUString aSymbolName( RTL_CONSTASCII_USTRINGPARAM( "gdk_threads_set_lock_functions") ); - -+ /* XXX GDK library path should be set by configure. */ -+ OUStringBuffer aModName( 128 ); -+ aModName.appendAscii( SAL_DLLPREFIX"gdk-x11-2.0" ); -+ aModName.appendAscii( SAL_DLLEXTENSION ); -+ OUString aModule = aModName.makeStringAndClear(); -+ oslModule aMod = osl_loadModule( aModule.pData, SAL_LOADMODULE_DEFAULT ); -+ -+ if ( !aMod ) -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Failed to load "SAL_DLLPREFIX"gdk-x11-2.0"SAL_DLLEXTENSION"\n" ); +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig Wed Jul 19 05:30:01 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx Mon Sep 11 12:21:25 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) +#endif -+ return false; -+ } - GdkLockFn gdk_threads_set_lock_functions = -- (GdkLockFn) osl_getFunctionSymbol( pModule, aSymbolName.pData ); -+ (GdkLockFn) osl_getFunctionSymbol( aMod, aSymbolName.pData ); - if ( !gdk_threads_set_lock_functions ) - { - #if OSL_DEBUG_LEVEL > 1 -@@ -150,7 +165,7 @@ - if ( !g_thread_supported() ) - g_thread_init( NULL ); - -- if ( hookLocks( pModule ) ) -+ if ( hookLocks() ) - pYieldMutex = new GtkHookedYieldMutex(); - else - pYieldMutex = new GtkYieldMutex(); + { + } + //__________________________________________________________________________________________________ +@@ -157,7 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { diff --git a/editors/openoffice-3-devel/files/patch-i66667 b/editors/openoffice.org-3-devel/files/rtld-workaround-i66667 similarity index 100% copy from editors/openoffice-3-devel/files/patch-i66667 copy to editors/openoffice.org-3-devel/files/rtld-workaround-i66667 diff --git a/editors/openoffice.org-3/Makefile b/editors/openoffice.org-3/Makefile index 91c3f47bd9db..d109abf5093c 100644 --- a/editors/openoffice.org-3/Makefile +++ b/editors/openoffice.org-3/Makefile @@ -1,304 +1,307 @@ # New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME?= openoffice.org PORTVERSION?= ${OOOVERSION} CATEGORIES+= editors java MASTER_SITES+= ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/stable/${OOOVERSION}/&,} \ http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ ${MASTER_SITE_MOZILLA:S/$/:mozsrc/} \ http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg .if defined(WITH_GPC) DISTFILES+= gpc231.tar.Z:gpc .endif .if defined(WITH_GNUGCJ) DISTFILES+= ${ANT_DISTFILE}:antbin .endif EXTRACT_ONLY= ${OOOSRC} MAINTAINER= openoffice@FreeBSD.org COMMENT?= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser OOOVERSION= 2.1.0 NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_VERSION= 1.7.5 MOZILLA_SOURCE= mozilla-source-${MOZILLA_VERSION}.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_SOURCE}:mozsrc USE_GNOME+= libidl .endif .if defined(WITH_KDE) USE_KDELIBS_VER= 3 .endif USE_XLIB= yes USE_GMAKE= yes USE_PERL5= yes USE_BZIP2= yes WITHOUT_CPU_CFLAGS= true .if !defined(WITH_GNUGCJ) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk JAVA_VENDOR= freebsd bsdjava .endif .include .include <${FILESDIR}/Makefile.localized> ONLY_FOR_ARCHS= i386 amd64 .if ${ARCH} == amd64 GCC_TARGET= x86_64-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDAMDEnv.Set .else GCC_TARGET= ${ARCH}-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDIntelEnv.Set .endif .if ${PERL_LEVEL} < 500600 IGNORE= install lang/perl5.8 then try again .endif CODELINE= 680 MILESTONE?= 6 OOOTAG?= OOE680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} INSTALLATION_BASEDIR?= openoffice.org-${OOOVERSION} EXECBASE?= openoffice.org-${OOOVERSION} DIST_SUBDIR= openoffice.org2.0 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOVERSION}_${OPSYS}${SIMPLEOSVER}X86_64 .else PACKAGE_BASENAME= OOo_${OOOVERSION}_${OPSYS}${SIMPLEOSVER}Intel .endif LOCALIZED_LANG?= en-US # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX= -${LANG_SUFFIX} .endif RUN_DEPENDS+= ${LOCALBASE}/share/icons/hicolor/index.theme:${PORTSDIR}/misc/hicolor-icon-theme .if defined(WITH_GNUGCJ) GCCVER=41 BUILD_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt BUILD_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat RUN_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt RUN_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat .else .if ${ARCH} == amd64 GCCVER=41 BUILD_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 RUN_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 .else GCCVER=34 BUILD_DEPENDS+= gcc-ooo:${PORTSDIR}/lang/gcc-ooo .endif .endif .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CCACHE_PREFIX= ccache .else CCACHE_PREFIX= .endif .if (${GCCVER} == 41) CC= gcc41 CXX= g++41 .endif .if (${GCCVER} == 34) CC= gcc-ooo CXX= g++-ooo .endif CC:= ${CCACHE_PREFIX} ${CC} CXX:= ${CCACHE_PREFIX} ${CXX} BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ gpatch:${PORTSDIR}/devel/patch \ ${SITE_PERL}/Archive/Zip.pm:${PORTSDIR}/archivers/p5-Archive-Zip \ bison2:${PORTSDIR}/devel/bison2 \ imake:${X_IMAKE_PORT} .if defined(WITH_GNUGCJ) LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 ANT_DISTFILE= apache-ant-${ANT_VERSION}-bin.tar.bz2 ANT_VERSION= 1.6.5 .else BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant .endif .if !defined(WITH_GPC) LIB_DEPENDS+= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl .endif GNU_CONFIGURE= yes WRKSRC?= ${WRKDIR}/${OOOTAG} CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message NUMOFPROCESSES?= 1 .if defined(WITH_GNUGCJ) CONFIGURE_ENV+= PATH="${LOCALBASE}/lib/jvm/java-gcj41/bin:${PATH}" .endif CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ --enable-crashdump=yes \ --enable-symbols=SMALL .if ${ARCH} == amd64 || ${GCCVER} == 41 WITHOUT_MOZILLA= yes .endif .if (${GCCVER} == 41) LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .endif +.if (${OSVERSION} <= 700021) +EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 +.endif .if (${OSVERSION} <= 492000) EXTRA_PATCHES+= ${FILESDIR}/fbsd4-workaroundpatch .endif .if defined(WITH_GNUGCJ) EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround .endif .if defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif ICONS= ${WRKSRC}/sysui/desktop/icons .include <${FILESDIR}/Makefile.knobs> pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/ .if defined(WITH_GNUGCJ) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${ANT_DISTFILE} | ${BZIP2_CMD} -d | ${TAR} xf - .endif .if defined(WITH_GPC) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .endif .if !defined(WITHOUT_MOZILLA) @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download .endif do-build: @cd ${WRKSRC} ; ./bootstrap # PR:84786 #i53289# .if (${NUMOFPROCESSES}>1) @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl -P${NUMOFPROCESSES} --all" .else @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; dmake" .endif do-install: @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES @${RM} -Rf ${WRKDIR}/tmp @${MKDIR} ${WRKDIR}/tmp @for i in `${CAT} ${WRKDIR}/INSTALLFILES`; do \ ${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ${WRKDIR}/tmp ; \ cd ${WRKDIR}/tmp ; ${TAR} xfz ${WRKDIR}/tmp/$$i ; \ done @${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR} @cd ${WRKDIR}/tmp/opt/openoffice* ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR} post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice.org-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ ${WRKDIR}/openoffice.org-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice.org-wrapper \ ${PREFIX}/bin/${EXECBASE} @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sbase @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-scalc @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sdraw @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-setofficelang @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-smath @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter @${ECHO_CMD} "" > ${TMPPLIST} @${REINPLACE_CMD} -e '/^Exec/s/printeradmin/spadmin/' \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop @for app in base calc draw impress math printeradmin writer; do \ ${REINPLACE_CMD} -e "s/^Exec.*/Exec=${EXECBASE} -$${app} %U/" \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/$${app}.desktop ; \ done @${RM} ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop.bak @${RM} -f ${DESKTOPDIR}/${EXECBASE} @${MKDIR} ${DESKTOPDIR} @${LN} -sf ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg \ ${DESKTOPDIR}/${EXECBASE} @${ECHO_CMD} "share/applications/${EXECBASE}" >> ${TMPPLIST} @${ECHO_CMD} "@unexec ${RMDIR} %D/share/applications 2>/dev/null || ${TRUE}" >> ${TMPPLIST} @for dir in `ls ${ICONS}/hicolor | ${GREP} -v CVS`; do \ for app in base calc draw impress math printeradmin writer; do \ if [ -r ${ICONS}/hicolor/$${dir}/apps/$${app}.png ]; then \ ${CP} ${ICONS}/hicolor/$${dir}/apps/$${app}.png \ ${PREFIX}/share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png" >> ${TMPPLIST} ; \ fi \ done ; \ for file in `cd ${ICONS}/hicolor/$${dir}/mimetypes; ls *.png`; do \ ${CP} ${ICONS}/hicolor/$${dir}/mimetypes/$${file} \ ${PREFIX}/share/icons/hicolor/$${dir}/mimetypes/ ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/mimetypes/$${file}" >> ${TMPPLIST} ; \ done ; \ done @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} @${CP} ${FILESDIR}/pkg-message.in ${PKGMESSAGE} @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ -e 's#%%EXECBASE%%#${EXECBASE}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ ${PKGMESSAGE} @${ECHO_CMD} @${CAT} ${PKGMESSAGE} @${ECHO_CMD} .include <${FILESDIR}/Makefile.others> .include diff --git a/editors/openoffice.org-3/files/patch-i66667 b/editors/openoffice.org-3/files/patch-i66667 index b73949eee465..f60b55f79d73 100644 --- a/editors/openoffice.org-3/files/patch-i66667 +++ b/editors/openoffice.org-3/files/patch-i66667 @@ -1,55 +1,139 @@ -Index: vcl/unx/gtk/app/gtkinst.cxx -=================================================================== -RCS file: /cvs/gsl/vcl/unx/gtk/app/gtkinst.cxx,v -retrieving revision 1.14.88.1 -diff -u -r1.14.88.1 gtkinst.cxx ---- vcl/unx/gtk/app/gtkinst.cxx 10 Aug 2006 14:53:08 -0000 1.14.88.1 -+++ vcl/unx/gtk/app/gtkinst.cxx 21 Aug 2006 05:38:21 -0000 -@@ -43,6 +43,7 @@ - #include +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Tue May 2 08:01:08 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Fri Sep 8 17:25:05 2006 +@@ -120,6 +120,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -436,7 +439,7 @@ + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( + void ** slots, unsigned char * code, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, +- sal_Int32 functionCount, sal_Int32 vtableOffset) ++ sal_Int32 /*functionCount*/, sal_Int32 vtableOffset) + { + for (sal_Int32 i = 0; i < type->nMembers; ++i) { + typelib_TypeDescription * member = 0; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig Wed Sep 7 18:20:22 2005 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx Mon Sep 11 12:21:03 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include #include -+#include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) ++#endif + { + } + //__________________________________________________________________________________________________ +@@ -139,8 +144,8 @@ + OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName; + + MutexGuard guard( m_mutex ); +- t_rtti_map::const_iterator iFind( m_rttis.find( unoName ) ); +- if (iFind == m_rttis.end()) ++ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) ); ++ if (iRttiFind == m_rttis.end()) + { + // RTTI symbol + OStringBuffer buf( 64 ); +@@ -157,8 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); +-//#iZ 22253 ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { +@@ -205,7 +213,7 @@ + } + else + { +- rtti = iFind->second; ++ rtti = iRttiFind->second; + } - #if OSL_DEBUG_LEVEL > 1 - #include -@@ -111,13 +112,28 @@ - GtkHookedYieldMutex *pYieldMutex = GET_YIELD_MUTEX(); - pYieldMutex->ThreadsLeave(); + return rtti; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Mon Jun 19 19:43:09 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Fri Sep 8 17:25:05 2006 +@@ -142,6 +142,8 @@ + case typelib_TypeClass_DOUBLE: + asm ( "fstpl %0\n\t" : : "m"(*(char *)pRegisterReturn) ); + break; ++ default: ++ break; } -- static bool hookLocks( oslModule pModule ) -+ static bool hookLocks( void ) + } + +@@ -217,6 +219,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -329,7 +334,6 @@ + // is my surrogate + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis + = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI); +- typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr; + + switch (pMemberDescr->eTypeClass) { - typedef void (*GdkLockFn) (GCallback enter_fn, GCallback leave_fn); - rtl::OUString aSymbolName( RTL_CONSTASCII_USTRINGPARAM( "gdk_threads_set_lock_functions") ); - -+ /* XXX GDK library path should be set by configure. */ -+ OUStringBuffer aModName( 128 ); -+ aModName.appendAscii( SAL_DLLPREFIX"gdk-x11-2.0" ); -+ aModName.appendAscii( SAL_DLLEXTENSION ); -+ OUString aModule = aModName.makeStringAndClear(); -+ oslModule aMod = osl_loadModule( aModule.pData, SAL_LOADMODULE_DEFAULT ); -+ -+ if ( !aMod ) -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Failed to load "SAL_DLLPREFIX"gdk-x11-2.0"SAL_DLLEXTENSION"\n" ); +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig Wed Jul 19 05:30:01 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx Mon Sep 11 12:21:25 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) +#endif -+ return false; -+ } -+ - GdkLockFn gdk_threads_set_lock_functions = -- (GdkLockFn) osl_getFunctionSymbol( pModule, aSymbolName.pData ); -+ (GdkLockFn) osl_getFunctionSymbol( aMod, aSymbolName.pData ); - if ( !gdk_threads_set_lock_functions ) - { - #if OSL_DEBUG_LEVEL > 1 -@@ -150,7 +166,7 @@ - if ( !g_thread_supported() ) - g_thread_init( NULL ); - -- if ( hookLocks( pModule ) ) -+ if ( hookLocks() ) - pYieldMutex = new GtkHookedYieldMutex(); - else - pYieldMutex = new GtkYieldMutex(); + { + } + //__________________________________________________________________________________________________ +@@ -157,7 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { diff --git a/editors/openoffice-3/files/patch-i66667 b/editors/openoffice.org-3/files/rtld-workaround-i66667 similarity index 100% copy from editors/openoffice-3/files/patch-i66667 copy to editors/openoffice.org-3/files/rtld-workaround-i66667 diff --git a/editors/openoffice.org-vcltesttool/Makefile b/editors/openoffice.org-vcltesttool/Makefile index 6ecbdd5743c1..d4ce17161eb6 100644 --- a/editors/openoffice.org-vcltesttool/Makefile +++ b/editors/openoffice.org-vcltesttool/Makefile @@ -1,304 +1,307 @@ # New ports collection makefile for: OpenOffice.org # Date created: 28 February 2002 # Whom: Martin Blapp # # $FreeBSD$ # PORTNAME?= openoffice.org PORTVERSION?= 2.2.${SNAPDATE} CATEGORIES+= editors java MASTER_SITES+= ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,misc/openoffice/developer/680_m${MILESTONE}/&,} \ http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ ${MASTER_SITE_MOZILLA:S/$/:mozsrc/} \ http://tools.openoffice.org/unowinreg_prebuild/680/:unowinreg MASTER_SITE_SUBDIR+= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc DISTFILES+= ${OOOSRC} unowinreg.dll:unowinreg .if defined(WITH_GPC) DISTFILES+= gpc231.tar.Z:gpc .endif .if defined(WITH_GNUGCJ) DISTFILES+= ${ANT_DISTFILE}:antbin .endif EXTRACT_ONLY= ${OOOSRC} MAINTAINER= openoffice@FreeBSD.org COMMENT?= Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser(developer version) NO_LATEST_LINK= yes USE_GNOME= gtk20 MOZILLA_VERSION= 1.7.5 MOZILLA_SOURCE= mozilla-source-${MOZILLA_VERSION}.tar.gz .if !defined(WITHOUT_MOZILLA) DISTFILES+= ${MOZILLA_SOURCE}:mozsrc USE_GNOME+= libidl .endif .if defined(WITH_KDE) USE_KDELIBS_VER= 3 .endif USE_XLIB= yes USE_GMAKE= yes USE_PERL5= yes USE_BZIP2= yes WITHOUT_CPU_CFLAGS= true .if !defined(WITH_GNUGCJ) USE_JAVA= yes JAVA_VERSION= 1.4+ JAVA_BUILD= jdk JAVA_VENDOR= freebsd bsdjava .endif .include .include <${FILESDIR}/Makefile.localized> ONLY_FOR_ARCHS= i386 amd64 .if ${ARCH} == amd64 GCC_TARGET= x86_64-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDAMDEnv.Set .else GCC_TARGET= ${ARCH}-portbld-freebsd${OSREL} FREEBSD_ENV_SET= FreeBSDIntelEnv.Set .endif .if ${PERL_LEVEL} < 500600 IGNORE= install lang/perl5.8 then try again .endif CODELINE= 680 MILESTONE?= 198 OOOTAG?= SRC680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} SNAPDATE= 20060103 INSTALLATION_BASEDIR?= openoffice.org-${OOOTAG} EXECBASE?= openoffice.org-${OOOTAG} DIST_SUBDIR= openoffice.org2.0 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}X86_64 .else PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}Intel .endif LOCALIZED_LANG?= en-US # FIXME (Somehow INDEX build fails) .if defined(LANG_PKGNAME) PKGNAMEPREFIX= ${LANG_PKGNAME}- .endif .if defined(LANG_SUFFIX) PKGNAMESUFFIX= -${LANG_SUFFIX} .endif RUN_DEPENDS+= ${LOCALBASE}/share/icons/hicolor/index.theme:${PORTSDIR}/misc/hicolor-icon-theme .if defined(WITH_GNUGCJ) GCCVER=41 BUILD_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt BUILD_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat RUN_DEPENDS+= ${LOCALBASE}/libdata/ldconfig/gcc41-withgcjawt:${PORTSDIR}/lang/gcc41-withgcjawt RUN_DEPENDS+= ${LOCALBASE}/lib/jvm/java-gcj41/bin/java:${PORTSDIR}/java/java-gcj-compat .else .if ${ARCH} == amd64 GCCVER=41 BUILD_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 RUN_DEPENDS+= gcc41:${PORTSDIR}/lang/gcc41 .else GCCVER=34 BUILD_DEPENDS+= gcc-ooo:${PORTSDIR}/lang/gcc-ooo .endif .endif .if defined(WITH_CCACHE) BUILD_DEPENDS+= ccache:${PORTSDIR}/devel/ccache CCACHE_PREFIX= ccache .else CCACHE_PREFIX= .endif .if (${GCCVER} == 41) CC= gcc41 CXX= g++41 .endif .if (${GCCVER} == 34) CC= gcc-ooo CXX= g++-ooo .endif CC:= ${CCACHE_PREFIX} ${CC} CXX:= ${CCACHE_PREFIX} ${CXX} BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ gcp:${PORTSDIR}/sysutils/coreutils \ gpatch:${PORTSDIR}/devel/patch \ ${SITE_PERL}/Archive/Zip.pm:${PORTSDIR}/archivers/p5-Archive-Zip \ bison2:${PORTSDIR}/devel/bison2 \ imake:${X_IMAKE_PORT} .if defined(WITH_GNUGCJ) LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 ANT_DISTFILE= apache-ant-${ANT_VERSION}-bin.tar.bz2 ANT_VERSION= 1.6.5 .else BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant .endif .if !defined(WITH_GPC) LIB_DEPENDS+= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl .endif GNU_CONFIGURE= yes WRKSRC?= ${WRKDIR}/${OOOTAG} CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message NUMOFPROCESSES?= 1 .if defined(WITH_GNUGCJ) CONFIGURE_ENV+= PATH="${LOCALBASE}/lib/jvm/java-gcj41/bin:${PATH}" .endif CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ --enable-crashdump=yes \ --enable-symbols=SMALL .if ${ARCH} == amd64 || ${GCCVER} == 41 WITHOUT_MOZILLA= yes .endif .if (${GCCVER} == 41) LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .endif +.if (${OSVERSION} <= 700021) +EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 +.endif .if (${OSVERSION} <= 492000) EXTRA_PATCHES+= ${FILESDIR}/fbsd4-workaroundpatch .endif .if defined(WITH_GNUGCJ) EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround .endif .if defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif ICONS= ${WRKSRC}/sysui/desktop/icons .include <${FILESDIR}/Makefile.knobs> pre-everything:: # really tweak, extremely useful when you build all localized language versions # needed after when you build with ALL_LOCALIZED_LANGS. .if defined(TWEAK_L10N) @${RM} -f ${WRKDIR}/.PLIST* @${RM} -f ${WRKDIR}/.install_done.* @${RM} -f ${WRKDIR}/.package_done.* @${RM} -f ${WRKDIR}/.extract_done.* @${RM} -f ${WRKDIR}/.patch_done.* @${RM} -f ${WRKDIR}/.configure_done.* @${RM} -f ${WRKDIR}/.build_done.* @${TOUCH} ${EXTRACT_COOKIE} @${TOUCH} ${PATCH_COOKIE} @${TOUCH} ${CONFIGURE_COOKIE} @${TOUCH} ${BUILD_COOKIE} .endif post-extract: @${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/ .if defined(WITH_GNUGCJ) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${ANT_DISTFILE} | ${BZIP2_CMD} -d | ${TAR} xf - .endif .if defined(WITH_GPC) @cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz - @${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/ @${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/ .endif .if !defined(WITHOUT_MOZILLA) @${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download .endif do-build: @cd ${WRKSRC} ; ./bootstrap # PR:84786 #i53289# .if (${NUMOFPROCESSES}>1) @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; cd instsetoo_native ; build.pl -P${NUMOFPROCESSES} --all" .else @cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; dmake" .endif do-install: @cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ${LS} *.t?z > ${WRKDIR}/INSTALLFILES @${RM} -Rf ${WRKDIR}/tmp @${MKDIR} ${WRKDIR}/tmp @for i in `${CAT} ${WRKDIR}/INSTALLFILES`; do \ ${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ${WRKDIR}/tmp ; \ cd ${WRKDIR}/tmp ; ${TAR} xfz ${WRKDIR}/tmp/$$i ; \ done @${MKDIR} ${PREFIX}/${INSTALLATION_BASEDIR} @cd ${WRKDIR}/tmp/opt/openoffice* ; ${TAR} cf - -C . . | ${TAR} xf - -C ${PREFIX}/${INSTALLATION_BASEDIR} post-install: @${ECHO_MSG} "===> Add wrapper scripts"; @${CP} ${FILESDIR}/openoffice.org-wrapper ${WRKDIR}/ @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ ${WRKDIR}/openoffice.org-wrapper @${INSTALL_SCRIPT} ${WRKDIR}/openoffice.org-wrapper \ ${PREFIX}/bin/${EXECBASE} @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sbase @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-scalc @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-sdraw @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-setofficelang @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-smath @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin @${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter @${ECHO_CMD} "" > ${TMPPLIST} @${REINPLACE_CMD} -e '/^Exec/s/printeradmin/spadmin/' \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop @for app in base calc draw impress math printeradmin writer; do \ ${REINPLACE_CMD} -e "s/^Exec.*/Exec=${EXECBASE} -$${app} %U/" \ ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/$${app}.desktop ; \ done @${RM} ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg/*.desktop.bak @${RM} -f ${DESKTOPDIR}/${EXECBASE} @${MKDIR} ${DESKTOPDIR} @${LN} -sf ${PREFIX}/${INSTALLATION_BASEDIR}/share/xdg \ ${DESKTOPDIR}/${EXECBASE} @${ECHO_CMD} "share/applications/${EXECBASE}" >> ${TMPPLIST} @${ECHO_CMD} "@unexec ${RMDIR} %D/share/applications 2>/dev/null || ${TRUE}" >> ${TMPPLIST} @for dir in `ls ${ICONS}/hicolor | ${GREP} -v CVS`; do \ for app in base calc draw impress math printeradmin writer; do \ if [ -r ${ICONS}/hicolor/$${dir}/apps/$${app}.png ]; then \ ${CP} ${ICONS}/hicolor/$${dir}/apps/$${app}.png \ ${PREFIX}/share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/apps/openofficeorg-21-$${app}.png" >> ${TMPPLIST} ; \ fi \ done ; \ for file in `cd ${ICONS}/hicolor/$${dir}/mimetypes; ls *.png`; do \ ${CP} ${ICONS}/hicolor/$${dir}/mimetypes/$${file} \ ${PREFIX}/share/icons/hicolor/$${dir}/mimetypes/ ; \ ${ECHO_CMD} "share/icons/hicolor/$${dir}/mimetypes/$${file}" >> ${TMPPLIST} ; \ done ; \ done @cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type f >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type l >> ${TMPPLIST} @cd ${PREFIX} ; ${FIND} -s ${INSTALLATION_BASEDIR} -type d > ${WRKDIR}/dir.tmp @${SORT} -r ${WRKDIR}/dir.tmp | ${XARGS} -n 1 ${ECHO_CMD} @dirrm >> ${TMPPLIST} @${CP} ${FILESDIR}/pkg-message.in ${PKGMESSAGE} @${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \ -e 's#%%INSTALLATION_BASEDIR%%#${INSTALLATION_BASEDIR}#g' \ -e 's#%%EXECBASE%%#${EXECBASE}#g' \ -e 's#%%OOOTAG%%#${OOOTAG}#g' \ -e 's#%%OOOVERSION%%#${OOOVERSION}#g' \ ${PKGMESSAGE} @${ECHO_CMD} @${CAT} ${PKGMESSAGE} @${ECHO_CMD} .include <${FILESDIR}/Makefile.others> .include diff --git a/editors/openoffice.org-vcltesttool/files/patch-i66667 b/editors/openoffice.org-vcltesttool/files/patch-i66667 index 26c0b1b4a88c..f60b55f79d73 100644 --- a/editors/openoffice.org-vcltesttool/files/patch-i66667 +++ b/editors/openoffice.org-vcltesttool/files/patch-i66667 @@ -1,55 +1,139 @@ -Index: vcl/unx/gtk/app/gtkinst.cxx -=================================================================== -RCS file: /cvs/gsl/vcl/unx/gtk/app/gtkinst.cxx,v -retrieving revision 1.14 -diff -u -r1.14 gtkinst.cxx ---- vcl/unx/gtk/app/gtkinst.cxx 19 Jun 2006 19:44:33 -0000 1.14 -+++ vcl/unx/gtk/app/gtkinst.cxx 27 Jun 2006 02:11:09 -0000 -@@ -43,6 +43,7 @@ - #include +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Tue May 2 08:01:08 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Fri Sep 8 17:25:05 2006 +@@ -120,6 +120,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -436,7 +439,7 @@ + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( + void ** slots, unsigned char * code, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, +- sal_Int32 functionCount, sal_Int32 vtableOffset) ++ sal_Int32 /*functionCount*/, sal_Int32 vtableOffset) + { + for (sal_Int32 i = 0; i < type->nMembers; ++i) { + typelib_TypeDescription * member = 0; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig Wed Sep 7 18:20:22 2005 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx Mon Sep 11 12:21:03 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include #include -+#include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) ++#endif + { + } + //__________________________________________________________________________________________________ +@@ -139,8 +144,8 @@ + OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName; + + MutexGuard guard( m_mutex ); +- t_rtti_map::const_iterator iFind( m_rttis.find( unoName ) ); +- if (iFind == m_rttis.end()) ++ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) ); ++ if (iRttiFind == m_rttis.end()) + { + // RTTI symbol + OStringBuffer buf( 64 ); +@@ -157,8 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); +-//#iZ 22253 ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { +@@ -205,7 +213,7 @@ + } + else + { +- rtti = iFind->second; ++ rtti = iRttiFind->second; + } - #if OSL_DEBUG_LEVEL > 1 - #include -@@ -111,13 +112,27 @@ - GtkHookedYieldMutex *pYieldMutex = GET_YIELD_MUTEX(); - pYieldMutex->ThreadsLeave(); + return rtti; +--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Mon Jun 19 19:43:09 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx Fri Sep 8 17:25:05 2006 +@@ -142,6 +142,8 @@ + case typelib_TypeClass_DOUBLE: + asm ( "fstpl %0\n\t" : : "m"(*(char *)pRegisterReturn) ); + break; ++ default: ++ break; } -- static bool hookLocks( oslModule pModule ) -+ static bool hookLocks( void ) + } + +@@ -217,6 +219,9 @@ + case typelib_TypeClass_UNSIGNED_HYPER: + case typelib_TypeClass_DOUBLE: + pCppStack += sizeof(sal_Int32); // extra long ++ break; ++ default: ++ break; + } + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); +@@ -329,7 +334,6 @@ + // is my surrogate + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis + = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy * >(pUnoI); +- typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr; + + switch (pMemberDescr->eTypeClass) { -- typedef void (*GdkLockFn) (GCallback enter_fn, GCallback leave_fn); -+ typedef void (*GdkLockFn) ( GCallback enter_fn, GCallback leave_fn ); - rtl::OUString aSymbolName( RTL_CONSTASCII_USTRINGPARAM( "gdk_threads_set_lock_functions") ); - -+ /* XXX GDK library path should be set by configure. */ -+ OUStringBuffer aModName( 128 ); -+ aModName.appendAscii( SAL_DLLPREFIX"gdk-x11-2.0" ); -+ aModName.appendAscii( SAL_DLLEXTENSION ); -+ OUString aModule = aModName.makeStringAndClear(); -+ oslModule aMod = osl_loadModule( aModule.pData, SAL_LOADMODULE_DEFAULT ); -+ -+ if ( !aMod ) -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Failed to load "SAL_DLLPREFIX"gdk-x11-2.0"SAL_DLLEXTENSION"\n" ); +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig Wed Jul 19 05:30:01 2006 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx Mon Sep 11 12:21:25 2006 +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -122,7 +123,11 @@ + }; + //__________________________________________________________________________________________________ + RTTI::RTTI() SAL_THROW( () ) ++#if __FreeBSD_version < 700022 + : m_hApp( dlopen( 0, RTLD_NOW | RTLD_GLOBAL ) ) ++#else ++ : m_hApp( dlopen( 0, RTLD_LAZY ) ) +#endif -+ return false; -+ } - GdkLockFn gdk_threads_set_lock_functions = -- (GdkLockFn) osl_getFunctionSymbol( pModule, aSymbolName.pData ); -+ (GdkLockFn) osl_getFunctionSymbol( aMod, aSymbolName.pData ); - if ( !gdk_threads_set_lock_functions ) - { - #if OSL_DEBUG_LEVEL > 1 -@@ -150,7 +165,7 @@ - if ( !g_thread_supported() ) - g_thread_init( NULL ); - -- if ( hookLocks( pModule ) ) -+ if ( hookLocks() ) - pYieldMutex = new GtkHookedYieldMutex(); - else - pYieldMutex = new GtkYieldMutex(); + { + } + //__________________________________________________________________________________________________ +@@ -157,7 +162,11 @@ + buf.append( 'E' ); + + OString symName( buf.makeStringAndClear() ); ++#if __FreeBSD_version < 700022 + rtti = (type_info *)dlsym( RTLD_DEFAULT, symName.getStr() ); ++#else ++ rtti = (type_info *)dlsym( m_hApp, symName.getStr() ); ++#endif + + if (rtti) + { diff --git a/editors/openoffice-3-devel/files/patch-i66667 b/editors/openoffice.org-vcltesttool/files/rtld-workaround-i66667 similarity index 100% copy from editors/openoffice-3-devel/files/patch-i66667 copy to editors/openoffice.org-vcltesttool/files/rtld-workaround-i66667