diff options
author | maho <maho@FreeBSD.org> | 2007-05-27 05:45:56 +0800 |
---|---|---|
committer | maho <maho@FreeBSD.org> | 2007-05-27 05:45:56 +0800 |
commit | f43fbde79f17326a98efaf8e3e53150ea7538b99 (patch) | |
tree | 62f783077ea79262a706d5afcc6b9031bdc58ade /editors/openoffice.org-2-devel | |
parent | 1e44ae056e992f1fb1daec58212c45d84d1d1d8c (diff) | |
download | freebsd-ports-gnome-f43fbde79f17326a98efaf8e3e53150ea7538b99.tar.gz freebsd-ports-gnome-f43fbde79f17326a98efaf8e3e53150ea7538b99.tar.zst freebsd-ports-gnome-f43fbde79f17326a98efaf8e3e53150ea7538b99.zip |
0. update to SRC680_m213.
1. A fix for patch-i76141, missing libxml2 patch. libxmlsec part
is now reordered correctly [1].
2. Remove patch-i65462 and add patch from i76159 instead [1].
3. DISTDIR is moved to openoffice.org2 instead of openoffice.org2.0 [1].
4. FreeBSD bridge part should sync with sixtyfour11. patch-i76969 [1].
5. unxfbsd.mk: sync with newer unxlngi6.mk. patch-i76969 [1].
6. Add a new knob WITH_VBA, enables VBA interop.
7. Use gcc4.2 for build.
8. Remove WITH_GNUGCJ knob for while.
9. Drop amd64 for while.
Submitted by: jkim [1]
Diffstat (limited to 'editors/openoffice.org-2-devel')
-rw-r--r-- | editors/openoffice.org-2-devel/Makefile | 74 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/distinfo | 27 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/Makefile.knobs | 17 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/cws-npower7.diff | 1833 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/patch-i65462 | 24 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/patch-i75708 | 16 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/patch-i76141 | 808 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/patch-i76320 | 17 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/patch-i76968 | 642 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/patch-i76969 | 40 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/patch-i77615 | 57 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/patch-i77793 | 11 | ||||
-rw-r--r-- | editors/openoffice.org-2-devel/files/patch-i77829 | 45 |
13 files changed, 2835 insertions, 776 deletions
diff --git a/editors/openoffice.org-2-devel/Makefile b/editors/openoffice.org-2-devel/Makefile index e89a244101ec..72f808b2d022 100644 --- a/editors/openoffice.org-2-devel/Makefile +++ b/editors/openoffice.org-2-devel/Makefile @@ -7,10 +7,9 @@ PORTNAME?= openoffice.org PORTVERSION?= 2.3.${SNAPDATE} -PORTREVISION= 1 CATEGORIES+= editors java -MASTER_SITES+= http://openoffice.lunarshells.com/sources/ \ - http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ +MASTER_SITES+= http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \ + http://openoffice.lunarshells.com/sources/ \ http://ooopackages.good-day.net/pub/OpenOffice.org/cws/:cws \ ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \ ${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:antbin,} \ @@ -21,9 +20,6 @@ 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 @@ -53,38 +49,34 @@ 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 <bsd.port.pre.mk> .include <${FILESDIR}/Makefile.localized> -ONLY_FOR_ARCHS= i386 amd64 +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= FreeBSDX86Env.Set .endif CODELINE= 680 -MILESTONE?= 211 +MILESTONE?= 213 OOOTAG?= SRC680_m${MILESTONE} OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX} -SNAPDATE= 20070428 +SNAPDATE= 20070525 INSTALLATION_BASEDIR?= openoffice.org-${OOOTAG} EXECBASE?= openoffice.org-${OOOTAG} .if defined(WITH_CWS) INSTALLATION_BASEDIR= openoffice.org-${OOOTAG}-${WITH_CWS} EXECBASE= openoffice.org-${OOOTAG}-${WITH_CWS} .endif -DIST_SUBDIR= openoffice.org2.0 +DIST_SUBDIR= openoffice.org2 SIMPLEOSVER= ${OSREL:C/\.//g} .if ${ARCH} == amd64 PACKAGE_BASENAME= OOo_${OOOTAG}_${OPSYS}${SIMPLEOSVER}X86_64 @@ -103,39 +95,13 @@ PKGNAMESUFFIX= -${LANG_SUFFIX} 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 - +USE_GCC= 4.2 .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} +.endif BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ @@ -144,14 +110,7 @@ BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ ${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 @@ -162,28 +121,20 @@ 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 +.if ${ARCH} == amd64 WITHOUT_MOZILLA= yes .endif -.if (${GCCVER} == 41) -LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost -CONFIGURE_ARGS+= --with-system-boost=yes #i58343# -.endif +#LIB_DEPENDS+= boost_regex:${PORTSDIR}/devel/boost +#CONFIGURE_ARGS+= --with-system-boost=yes #i58343# .if (${OSVERSION} <= 602102) EXTRA_PATCHES+= ${FILESDIR}/rtld-workaround-i66667 .endif -.if defined(WITH_GNUGCJ) -EXTRA_PATCHES+= ${FILESDIR}/gcj-fbsdworkaround -.endif .if !defined(WITH_SYSTEM_FREETYPE) && defined(WITH_TTF_BYTECODE_ENABLED) EXTRA_PATCHES+= ${FILESDIR}/optpatch-freetype .endif @@ -214,9 +165,6 @@ post-extract: .if defined(WITH_CWS) cd ${WRKSRC} ; ${TAR} xvfz ${DISTDIR}/${DIST_SUBDIR}/${CWSARCHIVE} .endif -.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/ diff --git a/editors/openoffice.org-2-devel/distinfo b/editors/openoffice.org-2-devel/distinfo index 66910c96a1a5..b95fc19e9a46 100644 --- a/editors/openoffice.org-2-devel/distinfo +++ b/editors/openoffice.org-2-devel/distinfo @@ -1,15 +1,12 @@ -MD5 (openoffice.org2.0/OOo_SRC680_m211_source.tar.bz2) = 1a45342987e7b9137da1fca8ec1a763a -SHA256 (openoffice.org2.0/OOo_SRC680_m211_source.tar.bz2) = 8321544ec8d9f74ec7a620dcbee6dbf447713c86548a539eb7ce05e8f1ddeaa6 -SIZE (openoffice.org2.0/OOo_SRC680_m211_source.tar.bz2) = 272054401 -MD5 (openoffice.org2.0/unowinreg.dll) = e3a0b76dcd876f3d721ee7183729153d -SHA256 (openoffice.org2.0/unowinreg.dll) = f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c -SIZE (openoffice.org2.0/unowinreg.dll) = 6144 -MD5 (openoffice.org2.0/gpc231.tar.Z) = fdb06fdb5a4670b172f9fb738b717be9 -SHA256 (openoffice.org2.0/gpc231.tar.Z) = c1265948554a9882fe8342ecc9ccbdb423321a572a5a6b56f7dfad389540da4e -SIZE (openoffice.org2.0/gpc231.tar.Z) = 27917 -MD5 (openoffice.org2.0/apache-ant-1.6.5-bin.tar.bz2) = 26031ee1a2fd248ad0cc2e7f17c44c39 -SHA256 (openoffice.org2.0/apache-ant-1.6.5-bin.tar.bz2) = d463b8259cb199cd26799c817756c73e4e7808b0cf915f86841ac9779e0f9936 -SIZE (openoffice.org2.0/apache-ant-1.6.5-bin.tar.bz2) = 6743024 -MD5 (openoffice.org2.0/mozilla-source-1.7.5.tar.gz) = d3f3528b6c5eade402ed058207cffa14 -SHA256 (openoffice.org2.0/mozilla-source-1.7.5.tar.gz) = 3e252bab95ecad3016b72fa594e0c44b9633d8c7b6af187e088a092019b56445 -SIZE (openoffice.org2.0/mozilla-source-1.7.5.tar.gz) = 38721366 +MD5 (openoffice.org2/OOo_SRC680_m213_source.tar.bz2) = 7120d049a1aa1801205d574abd1c77fd +SHA256 (openoffice.org2/OOo_SRC680_m213_source.tar.bz2) = 1f8edbecfa3e9c2122c2f3a0acbcd4c52620a86e5b1c06d93b04cce34b49ca7d +SIZE (openoffice.org2/OOo_SRC680_m213_source.tar.bz2) = 270389079 +MD5 (openoffice.org2/unowinreg.dll) = e3a0b76dcd876f3d721ee7183729153d +SHA256 (openoffice.org2/unowinreg.dll) = f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c +SIZE (openoffice.org2/unowinreg.dll) = 6144 +MD5 (openoffice.org2/gpc231.tar.Z) = fdb06fdb5a4670b172f9fb738b717be9 +SHA256 (openoffice.org2/gpc231.tar.Z) = c1265948554a9882fe8342ecc9ccbdb423321a572a5a6b56f7dfad389540da4e +SIZE (openoffice.org2/gpc231.tar.Z) = 27917 +MD5 (openoffice.org2/mozilla-source-1.7.5.tar.gz) = d3f3528b6c5eade402ed058207cffa14 +SHA256 (openoffice.org2/mozilla-source-1.7.5.tar.gz) = 3e252bab95ecad3016b72fa594e0c44b9633d8c7b6af187e088a092019b56445 +SIZE (openoffice.org2/mozilla-source-1.7.5.tar.gz) = 38721366 diff --git a/editors/openoffice.org-2-devel/files/Makefile.knobs b/editors/openoffice.org-2-devel/files/Makefile.knobs index 231af9477271..deb2059d1b29 100644 --- a/editors/openoffice.org-2-devel/files/Makefile.knobs +++ b/editors/openoffice.org-2-devel/files/Makefile.knobs @@ -2,10 +2,11 @@ # Whom: Maho Nakata <maho@FreeBSD.org> # $FreeBSD$ -.if !defined(WITH_GNUGCJ) CONFIGURE_ARGS+= --with-jdk-home="${JAVA_HOME}" --with-ant-home="${LOCALBASE}/share/java/apache-ant" -.else -CONFIGURE_ARGS+= --with-jdk-home="${LOCALBASE}/lib/jvm/java-gcj41" --with-java=gij --with-ant-home="${WRKDIR}/apache-ant-${ANT_VERSION}" + +.if defined(WITH_VBA) +CONFIGURE_ARGS+= --enable-vba --with-vba-package-format="builtin" +EXTRA_PATCHES+= ${FILESDIR}/cws-npower7.diff .endif .if defined(WITH_KDE) @@ -92,6 +93,11 @@ pre-fetch: @${ECHO} "You can compile OOo without gnome VFS support with" @${ECHO} "make -DWITHOUT_GNOMEVFS" .endif +.if !defined(WITH_VBA) + @${ECHO} + @${ECHO} "You can compile OOo with VBA support with" + @${ECHO} "make -DWITH_VBA" +.endif .if !defined(WITH_SYSTEM_FREETYPE) @${ECHO} @${ECHO} "You can compile OOo with freetype2 from ports with" @@ -120,11 +126,6 @@ pre-fetch: @${ECHO} "zh-CN zh-TW zu" @${ECHO} "Default: en-US" .endif -.if !defined(WITH_GNUGCJ) - @${ECHO} - @${ECHO} "You can compile OOo with GNU GCJ instead of SUN's JDK with" - @${ECHO} "make -DWITH_GNUGCJ" -.endif .if !defined(WITH_CUPS) @${ECHO} @${ECHO} "You can compile OOo with CUPS support with" diff --git a/editors/openoffice.org-2-devel/files/cws-npower7.diff b/editors/openoffice.org-2-devel/files/cws-npower7.diff new file mode 100644 index 000000000000..cf8ccac2d39e --- /dev/null +++ b/editors/openoffice.org-2-devel/files/cws-npower7.diff @@ -0,0 +1,1833 @@ +cvs diff: Diffing basic +cvs diff: Diffing basic/inc +cvs diff: Diffing basic/inc/basic +Index: basic/inc/basic/basmgr.hxx +=================================================================== +RCS file: /cvs/script/basic/inc/basic/basmgr.hxx,v +retrieving revision 1.2 +retrieving revision 1.2.12.1 +diff -u -p -r1.2 -r1.2.12.1 +--- basic/inc/basic/basmgr.hxx 11 Apr 2007 12:50:02 -0000 1.2 ++++ basic/inc/basic/basmgr.hxx 2 May 2007 09:44:21 -0000 1.2.12.1 +@@ -167,6 +167,7 @@ private: + String aName; + String maStorageName; + BOOL bBasMgrModified; ++ BOOL mbDocMgr; + + BasicManagerImpl* mpImpl; + +@@ -190,8 +191,8 @@ protected: + + public: + TYPEINFO(); +- BasicManager( SotStorage& rStorage, const String& rBaseURL, StarBASIC* pParentFromStdLib = NULL, String* pLibPath = NULL ); +- BasicManager( StarBASIC* pStdLib, String* pLibPath = NULL ); ++ BasicManager( SotStorage& rStorage, const String& rBaseURL, StarBASIC* pParentFromStdLib = NULL, String* pLibPath = NULL, BOOL bDocMgr = FALSE ); ++ BasicManager( StarBASIC* pStdLib, String* pLibPath = NULL, BOOL bDocMgr = FALSE ); + + /** deletes the given BasicManager instance + +Index: basic/inc/basic/sbstar.hxx +=================================================================== +RCS file: /cvs/script/basic/inc/basic/sbstar.hxx,v +retrieving revision 1.2 +retrieving revision 1.2.12.1 +diff -u -p -r1.2 -r1.2.12.1 +--- basic/inc/basic/sbstar.hxx 11 Apr 2007 12:52:47 -0000 1.2 ++++ basic/inc/basic/sbstar.hxx 2 May 2007 09:44:21 -0000 1.2.12.1 +@@ -81,6 +81,7 @@ class StarBASIC : public SbxObject + Link aBreakHdl; // Breakpoint-Handler + BOOL bNoRtl; // TRUE: RTL nicht durchsuchen + BOOL bBreak; // TRUE: Break, sonst Step ++ BOOL bDocBasic; + BasicLibInfo* pLibInfo; // Infoblock fuer Basic-Manager + SbLanguageMode eLanguageMode; // LanguageMode des Basic-Objekts + protected: +@@ -104,7 +105,7 @@ public: + SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_BASIC,1); + TYPEINFO(); + +- StarBASIC( StarBASIC* pParent = NULL ); ++ StarBASIC( StarBASIC* pParent = NULL, BOOL bIsDocBasic = FALSE ); + + // #51727 SetModified ueberladen, damit der Modified- + // Zustand nicht an den Parent weitergegeben wird. +@@ -203,6 +204,7 @@ public: + static void StaticEnableReschedule( BOOL bReschedule ); + + SbxObjectRef getRTL( void ) { return pRtl; } ++ BOOL IsDocBasic() { return bDocBasic; } + }; + + #ifndef __SB_SBSTARBASICREF_HXX +Index: basic/inc/basic/sbx.hxx +=================================================================== +RCS file: /cvs/script/basic/inc/basic/sbx.hxx,v +retrieving revision 1.2 +retrieving revision 1.2.12.1 +diff -u -p -r1.2 -r1.2.12.1 +--- basic/inc/basic/sbx.hxx 11 Apr 2007 12:53:21 -0000 1.2 ++++ basic/inc/basic/sbx.hxx 2 May 2007 09:44:42 -0000 1.2.12.1 +@@ -263,6 +263,7 @@ class SbxDimArray : public SbxArray + SbxDim* pFirst, *pLast; // Links fuer Dimension-Tabelle + short nDim; // Anzahl Dimensionen + void AddDimImpl32( INT32, INT32, BOOL bAllowSize0 ); ++ bool mbHasFixedSize; + protected: + USHORT Offset( const short* ); + UINT32 Offset32( const INT32* ); +@@ -302,6 +303,8 @@ public: + void AddDim32( INT32, INT32 ); + void unoAddDim32( INT32, INT32 ); + BOOL GetDim32( INT32, INT32&, INT32& ) const; ++ bool hasFixedSize() { return mbHasFixedSize; }; ++ void setHasFixedSize( bool bHasFixedSize ) {mbHasFixedSize = bHasFixedSize; }; + }; + + #endif +cvs diff: Diffing basic/inc/pch +cvs diff: Diffing basic/prj +cvs diff: Diffing basic/source +cvs diff: Diffing basic/source/app +cvs diff: Diffing basic/source/basmgr +Index: basic/source/basmgr/basicmanagerrepository.cxx +=================================================================== +RCS file: /cvs/script/basic/source/basmgr/basicmanagerrepository.cxx,v +retrieving revision 1.4 +retrieving revision 1.4.14.1 +diff -u -p -r1.4 -r1.4.14.1 +--- basic/source/basmgr/basicmanagerrepository.cxx 15 Mar 2007 15:37:48 -0000 1.4 ++++ basic/source/basmgr/basicmanagerrepository.cxx 2 May 2007 09:44:21 -0000 1.4.14.1 +@@ -491,7 +491,7 @@ namespace basic + SotStorageRef xDummyStor = new SotStorage( ::rtl::OUString() ); + pBasicManager = new BasicManager( *xDummyStor, String() /* TODO/LATER: xStorage */, + pAppBasic, +- &aAppBasicDir ); ++ &aAppBasicDir, TRUE ); + if ( pBasicManager->HasErrors() ) + { + // handle errors +@@ -517,7 +517,7 @@ namespace basic + // create new BASIC-manager + StarBASIC* pBasic = new StarBASIC( pAppBasic ); + pBasic->SetFlag( SBX_EXTSEARCH ); +- pBasicManager = new BasicManager( pBasic ); ++ pBasicManager = new BasicManager( pBasic, NULL, TRUE ); + } + + // knit the containers with the BasicManager +Index: basic/source/basmgr/basmgr.cxx +=================================================================== +RCS file: /cvs/script/basic/source/basmgr/basmgr.cxx,v +retrieving revision 1.39 +retrieving revision 1.39.2.1 +diff -u -p -r1.39 -r1.39.2.1 +--- basic/source/basmgr/basmgr.cxx 26 Apr 2007 08:32:47 -0000 1.39 ++++ basic/source/basmgr/basmgr.cxx 2 May 2007 09:44:21 -0000 1.39.2.1 +@@ -685,7 +685,7 @@ void BasicLibInfo::CalcRelStorageName( c + else + SetRelStorageName( String() ); + } +-BasicManager::BasicManager( SotStorage& rStorage, const String& rBaseURL, StarBASIC* pParentFromStdLib, String* pLibPath ) ++BasicManager::BasicManager( SotStorage& rStorage, const String& rBaseURL, StarBASIC* pParentFromStdLib, String* pLibPath, BOOL bDocMgr ) : mbDocMgr( bDocMgr ) + { + DBG_CTOR( BasicManager, 0 ); + +@@ -714,7 +714,7 @@ BasicManager::BasicManager( SotStorage& + if ( !pStdLib ) + { + // Sollte eigentlich nie passieren, aber dann wenigstens nicht abstuerzen... +- pStdLib = new StarBASIC; ++ pStdLib = new StarBASIC( NULL, mbDocMgr ); + BasicLibInfo* pStdLibInfo = pLibs->GetObject( 0 ); + if ( !pStdLibInfo ) + pStdLibInfo = CreateLibInfo(); +@@ -895,7 +895,7 @@ void BasicManager::SetLibraryContainerIn + InsertGlobalUNOConstant( "DialogLibraries", makeAny( mpImpl->maContainerInfo.mxDialogCont ) ); + } + +-BasicManager::BasicManager( StarBASIC* pSLib, String* pLibPath ) ++BasicManager::BasicManager( StarBASIC* pSLib, String* pLibPath, BOOL bDocMgr ) : mbDocMgr( bDocMgr ) + { + DBG_CTOR( BasicManager, 0 ); + Init(); +@@ -936,7 +936,7 @@ void BasicManager::ImpMgrNotLoaded( cons + + // Eine STD-Lib erzeugen, sonst macht es Peng! + BasicLibInfo* pStdLibInfo = CreateLibInfo(); +- pStdLibInfo->SetLib( new StarBASIC ); ++ pStdLibInfo->SetLib( new StarBASIC( NULL, mbDocMgr ) ); + StarBASICRef xStdLib = pStdLibInfo->GetLib(); + xStdLib->SetName( String::CreateFromAscii(szStdLibName) ); + pStdLibInfo->SetLibName( String::CreateFromAscii(szStdLibName) ); +@@ -948,7 +948,7 @@ void BasicManager::ImpMgrNotLoaded( cons + void BasicManager::ImpCreateStdLib( StarBASIC* pParentFromStdLib ) + { + BasicLibInfo* pStdLibInfo = CreateLibInfo(); +- StarBASIC* pStdLib = new StarBASIC( pParentFromStdLib ); ++ StarBASIC* pStdLib = new StarBASIC( pParentFromStdLib, mbDocMgr ); + pStdLibInfo->SetLib( pStdLib ); + pStdLib->SetName( String::CreateFromAscii(szStdLibName) ); + pStdLibInfo->SetLibName( String::CreateFromAscii(szStdLibName) ); +@@ -1237,7 +1237,7 @@ BOOL BasicManager::ImpLoadLibary( BasicL + if ( !bInfosOnly ) + { + if ( !pLibInfo->GetLib().Is() ) +- pLibInfo->SetLib( new StarBASIC( GetStdLib() ) ); ++ pLibInfo->SetLib( new StarBASIC( GetStdLib(), mbDocMgr ) ); + xBasicStream->SetBufferSize( 1024 ); + xBasicStream->Seek( STREAM_SEEK_TO_BEGIN ); + bLoaded = ImplLoadBasic( *xBasicStream, pLibInfo->GetLibRef() ); +@@ -1660,7 +1660,7 @@ StarBASIC* BasicManager::CreateLib( cons + return 0; + + BasicLibInfo* pLibInfo = CreateLibInfo(); +- StarBASIC* pNew = new StarBASIC( GetStdLib() ); ++ StarBASIC* pNew = new StarBASIC( GetStdLib(), mbDocMgr ); + GetStdLib()->Insert( pNew ); + pNew->SetFlag( SBX_EXTSEARCH | SBX_DONTSTORE ); + pLibInfo->SetLib( pNew ); +@@ -1718,7 +1718,7 @@ StarBASIC* BasicManager::CreateLibForLib + return 0; + + BasicLibInfo* pLibInfo = CreateLibInfo(); +- StarBASIC* pNew = new StarBASIC( GetStdLib() ); ++ StarBASIC* pNew = new StarBASIC( GetStdLib(), mbDocMgr ); + GetStdLib()->Insert( pNew ); + pNew->SetFlag( SBX_EXTSEARCH | SBX_DONTSTORE ); + pLibInfo->SetLib( pNew ); +cvs diff: Diffing basic/source/classes +Index: basic/source/classes/sb.cxx +=================================================================== +RCS file: /cvs/script/basic/source/classes/sb.cxx,v +retrieving revision 1.31 +retrieving revision 1.31.2.1 +diff -u -p -r1.31 -r1.31.2.1 +--- basic/source/classes/sb.cxx 26 Apr 2007 08:33:02 -0000 1.31 ++++ basic/source/classes/sb.cxx 2 May 2007 09:44:21 -0000 1.31.2.1 +@@ -660,8 +660,8 @@ SbModule* SbClassFactory::FindClass( con + + //////////////////////////////////////////////////////////////////////////// + +-StarBASIC::StarBASIC( StarBASIC* p ) +- : SbxObject( String( RTL_CONSTASCII_USTRINGPARAM("StarBASIC") ) ) ++StarBASIC::StarBASIC( StarBASIC* p, BOOL bIsDocBasic ) ++ : SbxObject( String( RTL_CONSTASCII_USTRINGPARAM("StarBASIC") ) ), bDocBasic( bIsDocBasic ) + { + SetParent( p ); + pLibInfo = NULL; +Index: basic/source/classes/sbunoobj.cxx +=================================================================== +RCS file: /cvs/script/basic/source/classes/sbunoobj.cxx,v +retrieving revision 1.46 +retrieving revision 1.46.6.5 +diff -u -p -r1.46 -r1.46.6.5 +--- basic/source/classes/sbunoobj.cxx 29 Jan 2007 15:05:07 -0000 1.46 ++++ basic/source/classes/sbunoobj.cxx 9 May 2007 15:49:15 -0000 1.46.6.5 +@@ -110,6 +110,9 @@ using namespace rtl; + #include<runtime.hxx> + + #include<math.h> ++#include <hash_map> ++#include <com/sun/star/reflection/XTypeDescriptionEnumerationAccess.hpp> ++#include <com/sun/star/reflection/XConstantsTypeDescription.hpp> + + TYPEINIT1(SbUnoMethod,SbxMethod) + TYPEINIT1(SbUnoProperty,SbxProperty) +@@ -130,6 +133,7 @@ static String ID_DBG_METHODS( RTL_CONSTA + static String aIllegalArgumentExceptionName + ( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.lang.IllegalArgumentException" ) ); + static OUString aSeqLevelStr( RTL_CONSTASCII_USTRINGPARAM("[]") ); ++static OUString defaultNameSpace( RTL_CONSTASCII_USTRINGPARAM("org.openoffice") ); + + // Gets the default property for an uno object. Note: There is some + // redirection built in. The property name specifies the name +@@ -1510,6 +1514,50 @@ String getBasicObjectTypeName( SbxObject + return aName; + } + ++bool checkUnoObjectType( SbUnoObject* pUnoObj, ++ const String& aClass ) ++{ ++ bool result = false; ++ Any aToInspectObj = pUnoObj->getUnoAny(); ++ TypeClass eType = aToInspectObj.getValueType().getTypeClass(); ++ if( eType != TypeClass_INTERFACE ) ++ return false; ++ const Reference< XInterface > x = *(Reference< XInterface >*)aToInspectObj.getValue(); ++ Reference< XTypeProvider > xTypeProvider( x, UNO_QUERY ); ++ if( xTypeProvider.is() ) ++ { ++ Sequence< Type > aTypeSeq = xTypeProvider->getTypes(); ++ const Type* pTypeArray = aTypeSeq.getConstArray(); ++ UINT32 nIfaceCount = aTypeSeq.getLength(); ++ for( UINT32 j = 0 ; j < nIfaceCount ; j++ ) ++ { ++ const Type& rType = pTypeArray[j]; ++ ++ Reference<XIdlClass> xClass = TypeToIdlClass( rType ); ++ if( !xClass.is() ) ++ { ++ DBG_ERROR("failed to get XIdlClass for type"); ++ break; ++ } ++ OUString sClassName = xClass->getName(); ++ OSL_TRACE("Checking if object implements %s", ++ OUStringToOString( defaultNameSpace + aClass, ++ RTL_TEXTENCODING_UTF8 ).getStr() ); ++ // although interfaces in the org.openoffice.vba namespace ++ // obey the idl rules and have a leading X, in basic we ++ // want to be able to do something like ++ // 'dim wrkbooks as WorkBooks' ++ // so test assumes the 'X' has been dropped ++ sal_Int32 indexLastDot = sClassName.lastIndexOf('.'); ++ if ( indexLastDot > -1 && sClassName.copy( indexLastDot + 1).equalsIgnoreAsciiCase( OUString( RTL_CONSTASCII_USTRINGPARAM("X") ) + aClass ) ) ++ { ++ result = true; ++ break; ++ } ++ } ++ } ++ return result; ++} + + // Dbg-Hilfsmethode zum Auslesen der in einem Object implementierten Interfaces + String Impl_GetSupportedInterfaces( SbUnoObject* pUnoObj ) +@@ -3066,6 +3114,83 @@ void RTL_Impl_EqualUnoObjects( StarBASIC + refVar->PutBool( TRUE ); + } + ++typedef std::hash_map< OUString, std::vector< OUString >, OUStringHash, ::std::equal_to< OUString > > ModuleHash; ++ ++ ++// helper wrapper function to interact with TypeProvider and ++// XTypeDescriptionEnumerationAccess. ++// if it fails for whatever reason ++// returned Reference<> be null e.g. .is() will be false ++ ++Reference< XTypeDescriptionEnumeration > ++getTypeDescriptorEnumeration( const OUString& sSearchRoot, ++ const Sequence< TypeClass >& types, TypeDescriptionSearchDepth depth ) ++{ ++ Reference< XTypeDescriptionEnumeration > xEnum; ++ Reference< XTypeDescriptionEnumerationAccess> xTypeEnumAccess( getTypeProvider_Impl(), UNO_QUERY ); ++ if ( xTypeEnumAccess.is() ) ++ { ++ try ++ { ++ xEnum = xTypeEnumAccess->createTypeDescriptionEnumeration( ++ sSearchRoot, types, depth ); ++ } ++ catch( NoSuchTypeNameException& /*nstne*/ ) {} ++ catch( InvalidTypeNameException& /*nstne*/ ) {} ++ } ++ return xEnum; ++} ++ ++typedef std::hash_map< OUString, Any, OUStringHash, ::std::equal_to< OUString > > VBAConstantsHash; ++ ++SbxVariable* getVBAConstant( const String& rName ) ++{ ++ SbxVariable* pConst = NULL; ++ static VBAConstantsHash aConstCache; ++ static bool isInited = false; ++ if ( !isInited ) ++ { ++ Sequence< TypeClass > types(1); ++ types[ 0 ] = TypeClass_CONSTANTS; ++ Reference< XTypeDescriptionEnumeration > xEnum = getTypeDescriptorEnumeration( defaultNameSpace, types, TypeDescriptionSearchDepth_INFINITE ); ++ ++ if ( !xEnum.is() ) ++ return NULL; ++ ++ while ( xEnum->hasMoreElements() ) ++ { ++ Reference< XConstantsTypeDescription > xConstants( xEnum->nextElement(), UNO_QUERY ); ++ if ( xConstants.is() ) ++ { ++ Sequence< Reference< XConstantTypeDescription > > aConsts = xConstants->getConstants(); ++ Reference< XConstantTypeDescription >* pSrc = aConsts.getArray(); ++ sal_Int32 nLen = aConsts.getLength(); ++ for ( sal_Int32 index =0; index<nLen; ++pSrc, ++index ) ++ { ++ Reference< XConstantTypeDescription >& rXConst = ++ *pSrc; ++ OUString sFullName = rXConst->getName(); ++ sal_Int32 indexLastDot = sFullName.lastIndexOf('.'); ++ OUString sLeafName; ++ if ( indexLastDot > -1 ) ++ sLeafName = sFullName.copy( indexLastDot + 1); ++ aConstCache[ sLeafName.toAsciiLowerCase() ] = rXConst->getConstantValue(); ++ } ++ } ++ } ++ isInited = true; ++ } ++ OUString sKey( rName ); ++ VBAConstantsHash::const_iterator it = aConstCache.find( sKey.toAsciiLowerCase() ); ++ if ( it != aConstCache.end() ) ++ { ++ pConst = new SbxVariable( SbxVARIANT ); ++ pConst->SetName( rName ); ++ unoToSbxValue( pConst, it->second ); ++ } ++ return pConst; ++} ++ + // Funktion, um einen globalen Bezeichner im + // UnoScope zu suchen und fuer Sbx zu wrappen + SbxVariable* findUnoClass( const String& rName ) +Index: basic/source/classes/sbxmod.cxx +=================================================================== +RCS file: /cvs/script/basic/source/classes/sbxmod.cxx,v +retrieving revision 1.36 +retrieving revision 1.36.42.3 +diff -u -p -r1.36 -r1.36.42.3 +--- basic/source/classes/sbxmod.cxx 3 Nov 2006 15:10:25 -0000 1.36 ++++ basic/source/classes/sbxmod.cxx 2 May 2007 09:44:42 -0000 1.36.42.3 +@@ -166,7 +166,8 @@ static const char* strListBasicKeyWords[ + "integer", + "is", + "let", +- "lib" ++ "lib", ++ "like", + "line", + "line input", + "local", +@@ -544,7 +545,8 @@ void SbModule::SetSource32( const ::rtl: + if( eCurTok == OPTION ) + { + eCurTok = aTok.Next(); +- if( eCurTok == COMPATIBLE ) ++ if( eCurTok == COMPATIBLE ++ || ( ( eCurTok == VBASUPPORT ) && ( aTok.Next() == NUMBER ) && ( aTok.GetDbl()== 1 ) ) ) + aTok.SetCompatible( true ); + } + } +@@ -756,7 +758,10 @@ USHORT SbModule::Run( SbMethod* pMeth ) + pRt->pNext->block(); + pINST->pRun = pRt; + if ( SbiRuntime ::isVBAEnabled() ) ++ { + pINST->EnableCompatibility( TRUE ); ++ pRt->SetVBAEnabled( true ); ++ } + while( pRt->Step() ) {} + if( pRt->pNext ) + pRt->pNext->unblock(); +cvs diff: Diffing basic/source/comp +Index: basic/source/comp/codegen.cxx +=================================================================== +RCS file: /cvs/script/basic/source/comp/codegen.cxx,v +retrieving revision 1.16 +retrieving revision 1.16.42.1 +diff -u -p -r1.16 -r1.16.42.1 +--- basic/source/comp/codegen.cxx 3 Nov 2006 15:11:02 -0000 1.16 ++++ basic/source/comp/codegen.cxx 2 May 2007 09:45:21 -0000 1.16.42.1 +@@ -135,7 +135,7 @@ void SbiCodeGen::Save() + // OPTION EXPLICIT-Flag uebernehmen + if( pParser->bExplicit ) + p->SetFlag( SBIMG_EXPLICIT ); +- if( pParser->bVBASupportOn ) ++ if( pParser->IsVBASupportOn() ) + p->SetFlag( SBIMG_VBASUPPORT ); + + int nIfaceCount = 0; +Index: basic/source/comp/dim.cxx +=================================================================== +RCS file: /cvs/script/basic/source/comp/dim.cxx,v +retrieving revision 1.26 +retrieving revision 1.26.42.2 +diff -u -p -r1.26 -r1.26.42.2 +--- basic/source/comp/dim.cxx 1 Nov 2006 16:13:55 -0000 1.26 ++++ basic/source/comp/dim.cxx 2 May 2007 09:44:56 -0000 1.26.42.2 +@@ -203,6 +203,10 @@ void SbiParser::DefVar( SbiOpcode eOp, B + if( eCurTok == GLOBAL ) + bPersistantGlobal = TRUE; + } ++ // behavior in VBA is that a module scope variable's lifetime is ++ // tied to the document. e.g. a module scope variable is global ++ if( GetBasic()->IsDocBasic() && bVBASupportOn && !pProc ) ++ bPersistantGlobal = TRUE; + // PRIVATE ist Synonym fuer DIM + // _CONST_? + BOOL bConst = FALSE; +@@ -334,7 +338,7 @@ void SbiParser::DefVar( SbiOpcode eOp, B + { + case SbGLOBAL: eOp2 = bPersistantGlobal ? _GLOBAL_P : _GLOBAL; + goto global; +- case SbPUBLIC: eOp2 = _PUBLIC; ++ case SbPUBLIC: eOp2 = bPersistantGlobal ? _PUBLIC_P : _PUBLIC; + // AB 9.7.97, #40689, kein eigener Opcode mehr + /* + if( bStatic ) +@@ -439,7 +443,14 @@ void SbiParser::DefVar( SbiOpcode eOp, B + { + SbiExpression aExpr( this, *pDef, NULL ); + aExpr.Gen(); +- aGen.Gen( _ERASE ); ++ if ( bVBASupportOn ) ++ // delete the array but ++ // clear the variable ( this ++ // allows the processing of ++ // the param to happen as normal without errors ( ordinary ERASE just clears the array ) ++ aGen.Gen( _ERASE_CLEAR ); ++ else ++ aGen.Gen( _ERASE ); + } + else if( eOp == _REDIMP ) + { +Index: basic/source/comp/exprnode.cxx +=================================================================== +RCS file: /cvs/script/basic/source/comp/exprnode.cxx,v +retrieving revision 1.16 +retrieving revision 1.16.48.1 +diff -u -p -r1.16 -r1.16.48.1 +--- basic/source/comp/exprnode.cxx 12 Oct 2006 14:34:58 -0000 1.16 ++++ basic/source/comp/exprnode.cxx 16 Feb 2007 17:14:15 -0000 1.16.48.1 +@@ -244,7 +244,7 @@ void SbiExprNode::CollectBits() + + void SbiExprNode::FoldConstants() + { +- if( IsOperand() ) return; ++ if( IsOperand() || eTok == LIKE ) return; + pLeft->FoldConstants(); + if( pRight ) + { +Index: basic/source/comp/parser.cxx +=================================================================== +RCS file: /cvs/script/basic/source/comp/parser.cxx,v +retrieving revision 1.19 +retrieving revision 1.19.42.2 +diff -u -p -r1.19 -r1.19.42.2 +--- basic/source/comp/parser.cxx 2 Nov 2006 16:32:13 -0000 1.19 ++++ basic/source/comp/parser.cxx 2 May 2007 09:45:21 -0000 1.19.42.2 +@@ -152,7 +152,6 @@ SbiParser::SbiParser( StarBASIC* pb, SbM + bSingleLineIf = + bExplicit = FALSE; + bClassModule = FALSE; +- bVBASupportOn = FALSE; + pPool = &aPublics; + for( short i = 0; i < 26; i++ ) + eDefTypes[ i ] = SbxVARIANT; // Kein expliziter Defaulttyp +@@ -609,7 +608,12 @@ void SbiParser::Set() + // ( its necessary for vba objects where set is object + // specific and also doesn't involve processing default params ) + if( pDef->GetTypeId() ) +- aGen.Gen( _SETCLASS, pDef->GetTypeId() ); ++ { ++ if ( bVBASupportOn ) ++ aGen.Gen( _VBASETCLASS, pDef->GetTypeId() ); ++ else ++ aGen.Gen( _SETCLASS, pDef->GetTypeId() ); ++ } + else + { + if ( bVBASupportOn ) +Index: basic/source/comp/scanner.cxx +=================================================================== +RCS file: /cvs/script/basic/source/comp/scanner.cxx,v +retrieving revision 1.23 +retrieving revision 1.23.42.1 +diff -u -p -r1.23 -r1.23.42.1 +--- basic/source/comp/scanner.cxx 2 Nov 2006 11:02:47 -0000 1.23 ++++ basic/source/comp/scanner.cxx 2 May 2007 09:45:21 -0000 1.23.42.1 +@@ -53,6 +53,7 @@ + #include <unotools/charclass.hxx> + #endif + ++#include <runtime.hxx> + + SbiScanner::SbiScanner( const ::rtl::OUString& rBuf, StarBASIC* p ) : aBuf( rBuf ) + { +@@ -76,6 +77,7 @@ SbiScanner::SbiScanner( const ::rtl::OUS + bSymbol = + bUsedForHilite = + bCompatible = ++ bVBASupportOn = + bPrevLineExtentsComment = FALSE; + bHash = + bErrors = TRUE; +@@ -424,7 +426,11 @@ BOOL SbiScanner::NextSym() + if( *pLine != cSep || cSep == ']' ) break; + } else aError = cSep, GenError( SbERR_EXPECTED ); + } +- aSym = aLine.copy( n, nCol - n - 1 ); ++ // If VBA Interop then doen't eat the [] chars ++ if ( cSep == ']' && bVBASupportOn ) ++ aSym = aLine.copy( n - 1, nCol - n + 1); ++ else ++ aSym = aLine.copy( n, nCol - n - 1 ); + // Doppelte Stringbegrenzer raus + String s( cSep ); + s += cSep; +Index: basic/source/comp/token.cxx +=================================================================== +RCS file: /cvs/script/basic/source/comp/token.cxx,v +retrieving revision 1.21 +retrieving revision 1.21.48.1 +diff -u -p -r1.21 -r1.21.48.1 +--- basic/source/comp/token.cxx 12 Oct 2006 14:28:11 -0000 1.21 ++++ basic/source/comp/token.cxx 16 Feb 2007 17:14:15 -0000 1.21.48.1 +@@ -130,6 +130,7 @@ static TokenTable aTokTable_Basic [] = { + { IS, "Is" }, + { LET, "Let" }, + { LIB, "Lib" }, ++ { LIKE, "Like" }, + { LINE, "Line" }, + { LINEINPUT,"Line Input" }, + { LOCAL, "Local" }, +cvs diff: Diffing basic/source/inc +Index: basic/source/inc/opcodes.hxx +=================================================================== +RCS file: /cvs/script/basic/source/inc/opcodes.hxx,v +retrieving revision 1.11 +retrieving revision 1.11.42.3 +diff -u -p -r1.11 -r1.11.42.3 +--- basic/source/inc/opcodes.hxx 2 Nov 2006 16:32:24 -0000 1.11 ++++ basic/source/inc/opcodes.hxx 2 May 2007 09:45:22 -0000 1.11.42.3 +@@ -99,6 +99,7 @@ enum SbiOpcode { + _REDIMP_ERASE, // Copies array to be later used by REDIM PRESERVE before erasing it + _INITFOREACH, + _VBASET, // VBA-like Set ++ _ERASE_CLEAR, // Erase array and clear variable + SbOP0_END, + + // Alle Opcodes mit einem Operanden +@@ -132,6 +133,7 @@ enum SbiOpcode { + _BASED, // TOS wird um BASE erhoeht, BASE davor gepusht (+base) + // Typanpassung im Argv + _ARGTYP, // Letzten Parameter in Argv konvertieren (+Typ) ++ _VBASETCLASS, // VBA-like Set + SbOP1_END, + + // Alle Opcodes mit zwei Operanden +@@ -164,6 +166,7 @@ enum SbiOpcode { + _FIND_G, // Sucht globale Variable mit Spezialbehandlung wegen _GLOBAL_P + _DCREATE_REDIMP, // Objekt-Array redimensionieren (+StringId+StringID) + _FIND_CM, // Search inside a class module (CM) to enable global search in time ++ _PUBLIC_P, // Module global Variable (persisted between calls)(+StringID+Typ) + SbOP2_END + + }; +Index: basic/source/inc/parser.hxx +=================================================================== +RCS file: /cvs/script/basic/source/inc/parser.hxx,v +retrieving revision 1.10 +retrieving revision 1.10.42.1 +diff -u -p -r1.10 -r1.10.42.1 +--- basic/source/inc/parser.hxx 1 Nov 2006 16:15:58 -0000 1.10 ++++ basic/source/inc/parser.hxx 2 May 2007 09:45:22 -0000 1.10.42.1 +@@ -94,7 +94,6 @@ public: + BOOL bText; // OPTION COMPARE TEXT + BOOL bExplicit; // TRUE: OPTION EXPLICIT + BOOL bClassModule; // TRUE: OPTION ClassModule +- BOOL bVBASupportOn; // TRUE: OPTION VBASupport 1 otherwise default False + IfaceVector aIfaceVector; // Holds all interfaces implemented by a class module + SbxDataType eDefTypes[26]; // DEFxxx-Datentypen + +Index: basic/source/inc/runtime.hxx +=================================================================== +RCS file: /cvs/script/basic/source/inc/runtime.hxx,v +retrieving revision 1.33 +retrieving revision 1.33.42.4 +diff -u -p -r1.33 -r1.33.42.4 +--- basic/source/inc/runtime.hxx 2 Nov 2006 16:32:35 -0000 1.33 ++++ basic/source/inc/runtime.hxx 2 May 2007 09:44:56 -0000 1.33.42.4 +@@ -360,6 +360,7 @@ class SbiRuntime + BOOL bError; // TRUE: Fehler behandeln + BOOL bInError; // TRUE: in einem Fehler-Handler + BOOL bBlocked; // TRUE: blocked by next call level, #i48868 ++ BOOL bVBAEnabled; + USHORT nFlags; // Debugging-Flags + SbError nError; // letzter Fehler + USHORT nOps; // Opcode-Zaehler +@@ -429,6 +430,8 @@ class SbiRuntime + // #115829 + bool implIsClass( SbxObject* pObj, const String& aClass ); + ++ void StepSETCLASS_impl( UINT32 nOp1, bool bHandleDflt = false ); ++ + // Die nachfolgenden Routinen werden vom Single Stepper + // gerufen und implementieren die einzelnen Opcodes + void StepNOP(), StepEXP(), StepMUL(), StepDIV(); +@@ -447,7 +450,7 @@ class SbiRuntime + void StepNOERROR(), StepCHANNEL(), StepCHANNEL0(), StepPRINT(); + void StepPRINTF(), StepWRITE(), StepRENAME(), StepPROMPT(); + void StepRESTART(), StepEMPTY(), StepLEAVE(); +- void StepLSET(), StepRSET(), StepREDIMP_ERASE(); ++ void StepLSET(), StepRSET(), StepREDIMP_ERASE(), StepERASE_CLEAR(); + // Alle Opcodes mit einem Operanden + void StepLOADNC( UINT32 ), StepLOADSC( UINT32 ), StepLOADI( UINT32 ); + void StepARGN( UINT32 ), StepBASED( UINT32 ), StepPAD( UINT32 ); +@@ -455,11 +458,11 @@ class SbiRuntime + void StepJUMPF( UINT32 ), StepONJUMP( UINT32 ); + void StepGOSUB( UINT32 ), StepRETURN( UINT32 ); + void StepTESTFOR( UINT32 ), StepCASETO( UINT32 ), StepERRHDL( UINT32 ); +- void StepRESUME( UINT32 ), StepSETCLASS( UINT32 ), StepTESTCLASS( UINT32 ), StepLIB( UINT32 ); ++ void StepRESUME( UINT32 ), StepSETCLASS( UINT32 ), StepVBASETCLASS( UINT32 ), StepTESTCLASS( UINT32 ), StepLIB( UINT32 ); + bool checkClass_Impl( const SbxVariableRef& refVal, const String& aClass, bool bRaiseErrors ); + void StepCLOSE( UINT32 ), StepPRCHAR( UINT32 ), StepARGTYP( UINT32 ); + // Alle Opcodes mit zwei Operanden +- void StepRTL( UINT32, UINT32 ), StepPUBLIC( UINT32, UINT32 ); ++ void StepRTL( UINT32, UINT32 ), StepPUBLIC( UINT32, UINT32 ), StepPUBLIC_P( UINT32, UINT32 ); + void StepPUBLIC_Impl( UINT32, UINT32, bool bUsedForClassModule ); + void StepFIND( UINT32, UINT32 ), StepELEM( UINT32, UINT32 ); + void StepGLOBAL( UINT32, UINT32 ), StepLOCAL( UINT32, UINT32 ); +@@ -472,6 +475,7 @@ class SbiRuntime + void StepDCREATE_REDIMP(UINT32,UINT32), StepDCREATE_IMPL(UINT32,UINT32); + void StepFIND_CM( UINT32, UINT32 ); + public: ++ void SetVBAEnabled( bool bEnabled ) { bVBAEnabled = bEnabled; }; + USHORT GetImageFlag( USHORT n ) const; + USHORT GetBase(); + xub_StrLen nLine,nCol1,nCol2; // aktuelle Zeile, Spaltenbereich +Index: basic/source/inc/scanner.hxx +=================================================================== +RCS file: /cvs/script/basic/source/inc/scanner.hxx,v +retrieving revision 1.10 +retrieving revision 1.10.176.1 +diff -u -p -r1.10 -r1.10.176.1 +--- basic/source/inc/scanner.hxx 29 Sep 2005 18:41:38 -0000 1.10 ++++ basic/source/inc/scanner.hxx 2 May 2007 09:45:22 -0000 1.10.176.1 +@@ -79,7 +79,8 @@ protected: + BOOL bHash; // TRUE: # eingelesen + BOOL bError; // TRUE: Fehler generieren + BOOL bUsedForHilite; // TRUE: Nutzung fuer Highlighting +- BOOL bCompatible; // TRUE: OPTION Compatible ++ BOOL bCompatible; // TRUE: OPTION Compatibl ++ BOOL bVBASupportOn; // TRUE: OPTION VBASupport 1 otherwise default False + BOOL bPrevLineExtentsComment; // TRUE: Previous line is comment and ends on "... _" + + void GenError( SbError ); +@@ -91,6 +92,8 @@ public: + BOOL IsHash() { return bHash; } + BOOL IsCompatible() { return bCompatible; } + void SetCompatible( bool b ) { bCompatible = b; } // #118206 ++ BOOL IsVBASupportOn() { return bVBASupportOn; } ++ void SetVBASupportOn( bool b ) { bVBASupportOn = b; } + BOOL WhiteSpace() { return bSpaces; } + short GetErrors() { return nErrors; } + short GetLine() { return nLine; } +cvs diff: Diffing basic/source/runtime +Index: basic/source/runtime/runtime.cxx +=================================================================== +RCS file: /cvs/script/basic/source/runtime/runtime.cxx,v +retrieving revision 1.35 +retrieving revision 1.35.6.4 +diff -u -p -r1.35 -r1.35.6.4 +--- basic/source/runtime/runtime.cxx 29 Jan 2007 15:05:41 -0000 1.35 ++++ basic/source/runtime/runtime.cxx 2 May 2007 09:44:22 -0000 1.35.6.4 +@@ -153,6 +153,7 @@ SbiRuntime::pStep0 SbiRuntime::aStep0[] + &SbiRuntime::StepREDIMP_ERASE,// Copy array object for REDIMP + &SbiRuntime::StepINITFOREACH,// Init for each loop + &SbiRuntime::StepVBASET,// vba-like set statement ++ &SbiRuntime::StepERASE_CLEAR,// vba-like set statement + }; + + SbiRuntime::pStep1 SbiRuntime::aStep1[] = { // Alle Opcodes mit einem Operanden +@@ -181,6 +182,7 @@ SbiRuntime::pStep1 SbiRuntime::aStep1[] + &SbiRuntime::StepLIB, // Lib fuer Declare-Call (+StringId) + &SbiRuntime::StepBASED, // TOS wird um BASE erhoeht, BASE davor gepusht + &SbiRuntime::StepARGTYP, // Letzten Parameter in Argv konvertieren (+Typ) ++ &SbiRuntime::StepVBASETCLASS,// vba-like set statement + }; + + SbiRuntime::pStep2 SbiRuntime::aStep2[] = {// Alle Opcodes mit zwei Operanden +@@ -209,6 +211,7 @@ SbiRuntime::pStep2 SbiRuntime::aStep2[] + &SbiRuntime::StepFIND_G, // Sucht globale Variable mit Spezialbehandlung wegen _GLOBAL_P + &SbiRuntime::StepDCREATE_REDIMP, // Objekt-Array redimensionieren (+StringID+StringID) + &SbiRuntime::StepFIND_CM, // Search inside a class module (CM) to enable global search in time ++ &SbiRuntime::StepPUBLIC_P, // Search inside a class module (CM) to enable global search in time + }; + + +@@ -538,6 +541,7 @@ SbiRuntime::SbiRuntime( SbModule* pm, Sb + #endif + pRefSaveList = NULL; + pItemStoreList = NULL; ++ bVBAEnabled = isVBAEnabled(); + } + + SbiRuntime::~SbiRuntime() +Index: basic/source/runtime/step0.cxx +=================================================================== +RCS file: /cvs/script/basic/source/runtime/step0.cxx,v +retrieving revision 1.28 +retrieving revision 1.27.42.7 +diff -u -p -r1.28 -r1.27.42.7 +--- basic/source/runtime/step0.cxx 26 Apr 2007 08:33:37 -0000 1.28 ++++ basic/source/runtime/step0.cxx 2 May 2007 09:45:35 -0000 1.27.42.7 +@@ -49,7 +49,11 @@ + #include <sb.hrc> + #include <basrid.hxx> + #include "sbunoobj.hxx" ++#include "image.hxx" + #include <com/sun/star/uno/Any.hxx> ++#include <com/sun/star/util/SearchOptions.hdl> ++#include <vcl/svapp.hxx> ++#include <unotools/textsearch.hxx> + + #include <algorithm> + +@@ -64,7 +68,6 @@ void SbiRuntime::StepArith( SbxOperator + TOSMakeTemp(); + SbxVariable* p2 = GetTOS(); + +- bool bVBAInterop = SbiRuntime::isVBAEnabled(); + + // This could & should be moved to the MakeTempTOS() method in runtime.cxx + // In the code which this is cut'npaste from there is a check for a ref +@@ -74,7 +77,7 @@ void SbiRuntime::StepArith( SbxOperator + // here we alway seem to have a refcount of 1. Also it seems that + // MakeTempTOS is called for other operation, so I hold off for now + // until I have a better idea +- if ( bVBAInterop ++ if ( bVBAEnabled + && ( p2->GetType() == SbxOBJECT || p2->GetType() == SbxVARIANT ) + ) + { +@@ -110,6 +113,40 @@ void SbiRuntime::StepCompare( SbxOperato + { + SbxVariableRef p1 = PopVar(); + SbxVariableRef p2 = PopVar(); ++ ++ // Make sure objects with default params have ++ // values ( and type ) set as appropriate ++ SbxDataType p1Type = p1->GetType(); ++ SbxDataType p2Type = p2->GetType(); ++ if ( p1Type == p2Type ) ++ { ++ if ( p1Type == SbxEMPTY ) ++ { ++ p1->Broadcast( SBX_HINT_DATAWANTED ); ++ p2->Broadcast( SBX_HINT_DATAWANTED ); ++ } ++ // if both sides are an object and have default props ++ // then we need to use the default props ++ // we don't need to worry if only one side ( lhs, rhs ) is an ++ // object ( object side will get coerced to correct type in ++ // Compare ) ++ else if ( p1Type == SbxOBJECT ) ++ { ++ SbxVariable* pDflt = getDefaultProp( p1 ); ++ if ( pDflt ) ++ { ++ p1 = pDflt; ++ p1->Broadcast( SBX_HINT_DATAWANTED ); ++ } ++ pDflt = getDefaultProp( p2 ); ++ if ( pDflt ) ++ { ++ p2 = pDflt; ++ p2->Broadcast( SBX_HINT_DATAWANTED ); ++ } ++ } ++ ++ } + #ifndef WIN + static SbxVariable* pTRUE = NULL; + static SbxVariable* pFALSE = NULL; +@@ -166,9 +203,116 @@ void SbiRuntime::StepGT() { StepCompare + void SbiRuntime::StepLE() { StepCompare( SbxLE ); } + void SbiRuntime::StepGE() { StepCompare( SbxGE ); } + ++namespace ++{ ++ bool NeedEsc(sal_Unicode cCode) ++ { ++ String sEsc(RTL_CONSTASCII_USTRINGPARAM(".^$+\\|{}()")); ++ return (STRING_NOTFOUND != sEsc.Search(cCode)); ++ } ++ ++ String VBALikeToRegexp(const String &rIn) ++ { ++ String sResult; ++ const sal_Unicode *start = rIn.GetBuffer(); ++ const sal_Unicode *end = start + rIn.Len(); ++ ++ int seenright = 0; ++ ++ sResult.Append('^'); ++ ++ while (start < end) ++ { ++ switch (*start) ++ { ++ case '?': ++ sResult.Append('.'); ++ start++; ++ break; ++ case '*': ++ sResult.Append(String(RTL_CONSTASCII_USTRINGPARAM(".*"))); ++ start++; ++ break; ++ case '#': ++ sResult.Append(String(RTL_CONSTASCII_USTRINGPARAM("[0-9]"))); ++ start++; ++ break; ++ case ']': ++ sResult.Append('\\'); ++ sResult.Append(*start++); ++ break; ++ case '[': ++ sResult.Append(*start++); ++ seenright = 0; ++ while (start < end && !seenright) ++ { ++ switch (*start) ++ { ++ case '[': ++ case '?': ++ case '*': ++ sResult.Append('\\'); ++ sResult.Append(*start); ++ break; ++ case ']': ++ sResult.Append(*start); ++ seenright = 1; ++ break; ++ case '!': ++ sResult.Append('^'); ++ break; ++ default: ++ if (NeedEsc(*start)) ++ sResult.Append('\\'); ++ sResult.Append(*start); ++ break; ++ } ++ start++; ++ } ++ break; ++ default: ++ if (NeedEsc(*start)) ++ sResult.Append('\\'); ++ sResult.Append(*start++); ++ } ++ } ++ ++ sResult.Append('$'); ++ ++ return sResult; ++ } ++} ++ + void SbiRuntime::StepLIKE() + { +- StarBASIC::FatalError( SbERR_NOT_IMPLEMENTED ); ++ SbxVariableRef refVar1 = PopVar(); ++ SbxVariableRef refVar2 = PopVar(); ++ ++ String pattern = VBALikeToRegexp(refVar1->GetString()); ++ String value = refVar2->GetString(); ++ ++ com::sun::star::util::SearchOptions aSearchOpt; ++ ++ aSearchOpt.algorithmType = com::sun::star::util::SearchAlgorithms_REGEXP; ++ ++ aSearchOpt.Locale = Application::GetSettings().GetLocale(); ++ aSearchOpt.searchString = pattern; ++ ++ int bTextMode(1); ++ bool bCompatibility = ( pINST && pINST->IsCompatibility() ); ++ if( bCompatibility ) ++ bTextMode = GetImageFlag( SBIMG_COMPARETEXT ); ++ ++ if( bTextMode ) ++ aSearchOpt.transliterateFlags |= com::sun::star::i18n::TransliterationModules_IGNORE_CASE; ++ ++ SbxVariable* pRes = new SbxVariable; ++ utl::TextSearch aSearch(aSearchOpt); ++ xub_StrLen nStart=0, nEnd=value.Len(); ++ int bRes = aSearch.SearchFrwrd(value, &nStart, &nEnd); ++ pRes->PutBool( bRes != 0 ); ++ ++ PushVar( pRes ); + } + + // TOS und TOS-1 sind beides Objektvariable und enthalten den selben Pointer +@@ -244,14 +388,13 @@ void SbiRuntime::StepPUT() + n = refVar->GetFlags(); + refVar->SetFlag( SBX_WRITE ); + } +- bool bVBAInterop = SbiRuntime::isVBAEnabled(); + + // if left side arg is an object or variant and right handside isn't + // either an object or a variant then try and see if a default + // property exists. + // to use e.g. Range{"A1") = 34 + // could equate to Range("A1").Value = 34 +- if ( bVBAInterop ) ++ if ( bVBAEnabled ) + { + if ( refVar->GetType() == SbxOBJECT ) + { +@@ -269,7 +412,7 @@ void SbiRuntime::StepPUT() + + *refVar = *refVal; + // lhs is a property who's value is currently null +- if ( !bVBAInterop || ( bVBAInterop && refVar->GetType() != SbxEMPTY ) ) ++ if ( !bVBAEnabled || ( bVBAEnabled && refVar->GetType() != SbxEMPTY ) ) + // #67607 Uno-Structs kopieren + checkUnoStructCopy( refVal, refVar ); + if( bFlagsChanged ) +@@ -402,7 +545,7 @@ void SbiRuntime::StepSET() + { + SbxVariableRef refVal = PopVar(); + SbxVariableRef refVar = PopVar(); +- StepSET_Impl( refVal, refVar, SbiRuntime::isVBAEnabled() ); // this is really assigment ++ StepSET_Impl( refVal, refVar, bVBAEnabled ); // this is really assigment + } + + void SbiRuntime::StepVBASET() +@@ -525,6 +668,8 @@ void SbiRuntime::DimImpl( SbxVariableRef + if( ub < lb ) + Error( SbERR_OUT_OF_RANGE ), ub = lb; + pArray->AddDim32( lb, ub ); ++ if ( lb != ub ) ++ pArray->setHasFixedSize( true ); + } + } + else +@@ -693,27 +838,51 @@ void SbiRuntime::StepREDIMP_ERASE() + refVar->SetType( SbxEMPTY ); + } + ++void lcl_clearImpl( SbxVariableRef& refVar, SbxDataType& eType ) ++{ ++ USHORT nSavFlags = refVar->GetFlags(); ++ refVar->ResetFlag( SBX_FIXED ); ++ refVar->SetType( SbxDataType(eType & 0x0FFF) ); ++ refVar->SetFlags( nSavFlags ); ++ refVar->Clear(); ++} + +-// Variable loeschen +-// TOS = Variable +- +-void SbiRuntime::StepERASE() ++void lcl_eraseImpl( SbxVariableRef& refVar, bool bVBAEnabled ) + { +- SbxVariableRef refVar = PopVar(); + SbxDataType eType = refVar->GetType(); + if( eType & SbxARRAY ) + { ++ if ( bVBAEnabled ) ++ { ++ SbxBase* pElemObj = refVar->GetObject(); ++ SbxDimArray* pDimArray = PTR_CAST(SbxDimArray,pElemObj); ++ bool bClearValues = true; ++ if( pDimArray ) ++ { ++ if ( pDimArray->hasFixedSize() ) ++ { ++ // Clear all Value(s) ++ pDimArray->SbxArray::Clear(); ++ bClearValues = false; ++ } ++ else ++ pDimArray->Clear(); // clear Dims ++ } ++ if ( bClearValues ) ++ { ++ SbxArray* pArray = PTR_CAST(SbxArray,pElemObj); ++ if ( pArray ) ++ pArray->Clear(); ++ } ++ } ++ else + // AB 2.4.1996 + // Arrays haben bei Erase nach VB ein recht komplexes Verhalten. Hier + // werden zunaechst nur die Typ-Probleme bei REDIM (#26295) beseitigt: + // Typ hart auf den Array-Typ setzen, da eine Variable mit Array + // SbxOBJECT ist. Bei REDIM entsteht dann ein SbxOBJECT-Array und + // der ursruengliche Typ geht verloren -> Laufzeitfehler +- USHORT nSavFlags = refVar->GetFlags(); +- refVar->ResetFlag( SBX_FIXED ); +- refVar->SetType( SbxDataType(eType & 0x0FFF) ); +- refVar->SetFlags( nSavFlags ); +- refVar->Clear(); ++ lcl_clearImpl( refVar, eType ); + } + else + if( refVar->IsFixed() ) +@@ -722,6 +891,23 @@ void SbiRuntime::StepERASE() + refVar->SetType( SbxEMPTY ); + } + ++// Variable loeschen ++// TOS = Variable ++ ++void SbiRuntime::StepERASE() ++{ ++ SbxVariableRef refVar = PopVar(); ++ lcl_eraseImpl( refVar, bVBAEnabled ); ++} ++ ++void SbiRuntime::StepERASE_CLEAR() ++{ ++ SbxVariableRef refVar = PopVar(); ++ lcl_eraseImpl( refVar, bVBAEnabled ); ++ SbxDataType eType = refVar->GetType(); ++ lcl_clearImpl( refVar, eType ); ++} ++ + // Einrichten eines Argvs + // nOp1 bleibt so -> 1. Element ist Returnwert + +Index: basic/source/runtime/step1.cxx +=================================================================== +RCS file: /cvs/script/basic/source/runtime/step1.cxx,v +retrieving revision 1.16 +retrieving revision 1.16.42.1 +diff -u -p -r1.16 -r1.16.42.1 +--- basic/source/runtime/step1.cxx 3 Nov 2006 15:10:48 -0000 1.16 ++++ basic/source/runtime/step1.cxx 27 Feb 2007 18:29:10 -0000 1.16.42.1 +@@ -44,6 +44,9 @@ + #include "image.hxx" + #include "sbunoobj.hxx" + ++bool checkUnoObjectType( SbUnoObject* refVal, ++ const String& aClass ); ++ + // Laden einer numerischen Konstanten (+ID) + + void SbiRuntime::StepLOADNC( UINT32 nOp1 ) +@@ -476,9 +479,18 @@ bool SbiRuntime::checkClass_Impl( const + { + if( !implIsClass( pObj, aClass ) ) + { +- if( bRaiseErrors ) +- Error( SbERR_INVALID_USAGE_OBJECT ); +- bOk = false; ++ if ( bVBAEnabled && pObj->IsA( TYPE(SbUnoObject) ) ) ++ { ++ SbUnoObject* pUnoObj = PTR_CAST(SbUnoObject,pObj); ++ bOk = checkUnoObjectType( pUnoObj, aClass ); ++ } ++ else ++ bOk = false; ++ if ( !bOk ) ++ { ++ if( bRaiseErrors ) ++ Error( SbERR_INVALID_USAGE_OBJECT ); ++ } + } + else + { +@@ -490,14 +502,17 @@ bool SbiRuntime::checkClass_Impl( const + } + else + { +- if( bRaiseErrors ) +- Error( SbERR_NEEDS_OBJECT ); +- bOk = false; ++ if ( !bVBAEnabled ) ++ { ++ if( bRaiseErrors ) ++ Error( SbERR_NEEDS_OBJECT ); ++ bOk = false; ++ } + } + return bOk; + } + +-void SbiRuntime::StepSETCLASS( UINT32 nOp1 ) ++void SbiRuntime::StepSETCLASS_impl( UINT32 nOp1, bool bHandleDflt ) + { + SbxVariableRef refVal = PopVar(); + SbxVariableRef refVar = PopVar(); +@@ -505,7 +520,17 @@ void SbiRuntime::StepSETCLASS( UINT32 nO + + bool bOk = checkClass_Impl( refVal, aClass, true ); + if( bOk ) +- StepSET_Impl( refVal, refVar ); ++ StepSET_Impl( refVal, refVar, bHandleDflt ); // don't do handle dflt prop for a "proper" set ++} ++ ++void SbiRuntime::StepVBASETCLASS( UINT32 nOp1 ) ++{ ++ StepSETCLASS_impl( nOp1, false ); ++} ++ ++void SbiRuntime::StepSETCLASS( UINT32 nOp1 ) ++{ ++ StepSETCLASS_impl( nOp1, true ); + } + + void SbiRuntime::StepTESTCLASS( UINT32 nOp1 ) +Index: basic/source/runtime/step2.cxx +=================================================================== +RCS file: /cvs/script/basic/source/runtime/step2.cxx,v +retrieving revision 1.29 +retrieving revision 1.27.42.5 +diff -u -p -r1.29 -r1.27.42.5 +--- basic/source/runtime/step2.cxx 27 Apr 2007 09:16:12 -0000 1.29 ++++ basic/source/runtime/step2.cxx 2 May 2007 09:44:56 -0000 1.27.42.5 +@@ -54,6 +54,8 @@ + using namespace com::sun::star::container; + using namespace com::sun::star::lang; + ++SbxVariable* getVBAConstant( const String& rName ); ++ + const static String aThisComponent( RTL_CONSTASCII_USTRINGPARAM("ThisComponent") ); + const static String aVBAHook( RTL_CONSTASCII_USTRINGPARAM( "VBAGlobals" ) ); + // i#i68894# +@@ -113,8 +115,6 @@ SbxVariable* SbiRuntime::FindElement + ( SbxObject* pObj, UINT32 nOp1, UINT32 nOp2, SbError nNotFound, BOOL bLocal ) + { + +- bool bIsVBAInterOp = SbiRuntime::isVBAEnabled(); +- + SbxVariable* pElem = NULL; + if( !pObj ) + { +@@ -126,6 +126,24 @@ SbxVariable* SbiRuntime::FindElement + BOOL bFatalError = FALSE; + SbxDataType t = (SbxDataType) nOp2; + String aName( pImg->GetString( static_cast<short>( nOp1 & 0x7FFF ) ) ); ++ bool bIsVBAInterOp = SbiRuntime::isVBAEnabled(); ++ // Hacky capture of Evaluate [] syntax ++ // this should be tackled I feel at the pcode level ++ if ( bIsVBAInterOp && aName.Search('[') == 0 ) ++ { ++ // emulate pcode here ++ StepARGC(); ++ // psuedo StepLOADSC ++ String sArg = aName.Copy( 1, aName.Len() - 2 ); ++ SbxVariable* p = new SbxVariable; ++ p->PutString( sArg ); ++ PushVar( p ); ++ // ++ StepARGV(); ++ nOp1 = nOp1 | 0x8000; // indicate params are present ++ aName = String::CreateFromAscii("Evaluate"); ++ } ++ + if( bLocal ) + pElem = refLocals->Find( aName, SbxCLASS_DONTCARE ); + if( !pElem ) +@@ -156,25 +174,24 @@ SbxVariable* SbiRuntime::FindElement + + // i#i68894# if VBAInterOp favour searching vba globals + // over searching for uno classess +- if ( bIsVBAInterOp ) ++ if ( bVBAEnabled ) + { + // Try Find in VBA symbols space + pElem = VBAFind( aName, SbxCLASS_DONTCARE ); + if ( pElem ) + bSetName = false; // don't overwrite uno name ++ else ++ pElem = getVBAConstant( aName ); + } +- else +- { +- // #72382 VORSICHT! Liefert jetzt wegen unbekannten +- // Modulen IMMER ein Ergebnis! +- SbxVariable* pUnoClass = findUnoClass( aName ); +- if( pUnoClass ) +- { +- pElem = new SbxVariable( t ); +- SbxValues aRes( SbxOBJECT ); +- aRes.pObj = pUnoClass; +- pElem->SbxVariable::Put( aRes ); +- } ++ // #72382 VORSICHT! Liefert jetzt wegen unbekannten ++ // Modulen IMMER ein Ergebnis! ++ SbxVariable* pUnoClass = findUnoClass( aName ); ++ if( pUnoClass ) ++ { ++ pElem = new SbxVariable( t ); ++ SbxValues aRes( SbxOBJECT ); ++ aRes.pObj = pUnoClass; ++ pElem->SbxVariable::Put( aRes ); + } + + // #62939 Wenn eine Uno-Klasse gefunden wurde, muss +@@ -523,7 +540,7 @@ SbxVariable* SbiRuntime::CheckArray( Sbx + { + Reference< XInterface > x = *(Reference< XInterface >*)aAny.getValue(); + Reference< XIndexAccess > xIndexAccess( x, UNO_QUERY ); +- if ( !SbiRuntime::isVBAEnabled() ) ++ if ( !bVBAEnabled ) + { + // Haben wir Index-Access? + if( xIndexAccess.is() ) +@@ -1121,6 +1138,14 @@ void SbiRuntime::StepPUBLIC( UINT32 nOp1 + StepPUBLIC_Impl( nOp1, nOp2, false ); + } + ++void SbiRuntime::StepPUBLIC_P( UINT32 nOp1, UINT32 nOp2 ) ++{ ++ // Creates module variable that isn't reinitialised when ++ // between invocations ( for VBASupport & document basic only ) ++ if( pMod->pImage->bFirstInit ) ++ StepPUBLIC( nOp1, nOp2 ); ++} ++ + // Einrichten einer globalen Variablen (+StringID+Typ) + + void SbiRuntime::StepGLOBAL( UINT32 nOp1, UINT32 nOp2 ) +cvs diff: Diffing basic/source/sample +cvs diff: Diffing basic/source/sbx +Index: basic/source/sbx/sbxarray.cxx +=================================================================== +RCS file: /cvs/script/basic/source/sbx/sbxarray.cxx,v +retrieving revision 1.6 +retrieving revision 1.6.48.3 +diff -u -p -r1.6 -r1.6.48.3 +--- basic/source/sbx/sbxarray.cxx 12 Oct 2006 14:31:56 -0000 1.6 ++++ basic/source/sbx/sbxarray.cxx 27 Apr 2007 14:32:16 -0000 1.6.48.3 +@@ -40,6 +40,7 @@ + #include <tools/stream.hxx> + #endif + #include "sbx.hxx" ++#include "runtime.hxx" + #include <vector> + using namespace std; + +@@ -593,7 +594,7 @@ void SbxArray::PutDirect( SbxVariable* p + // + ////////////////////////////////////////////////////////////////////////// + +-SbxDimArray::SbxDimArray( SbxDataType t ) : SbxArray( t ) ++SbxDimArray::SbxDimArray( SbxDataType t ) : SbxArray( t ), mbHasFixedSize( false ) + { + pFirst = pLast = NULL; + nDim = 0; +@@ -618,6 +619,7 @@ SbxDimArray& SbxDimArray::operator=( con + AddDim32( p->nLbound, p->nUbound ); + p = p->pNext; + } ++ this->mbHasFixedSize = rArray.mbHasFixedSize; + } + return *this; + } +@@ -793,7 +795,7 @@ void SbxDimArray::Put32( SbxVariable* p, + + UINT32 SbxDimArray::Offset32( SbxArray* pPar ) + { +- if( nDim == 0 || !pPar ) ++ if( nDim == 0 || !pPar || ( ( nDim != ( pPar->Count() - 1 ) ) && SbiRuntime::isVBAEnabled() ) ) + { + SetError( SbxERR_BOUNDS ); return 0; + } +Index: basic/source/sbx/sbxvalue.cxx +=================================================================== +RCS file: /cvs/script/basic/source/sbx/sbxvalue.cxx,v +retrieving revision 1.8 +retrieving revision 1.8.48.1 +diff -u -p -r1.8 -r1.8.48.1 +--- basic/source/sbx/sbxvalue.cxx 12 Oct 2006 14:34:49 -0000 1.8 ++++ basic/source/sbx/sbxvalue.cxx 16 Feb 2007 17:08:55 -0000 1.8.48.1 +@@ -64,7 +64,7 @@ + #include "sbx.hxx" + #include "sbxconv.hxx" + #include <math.h> +- ++#include "runtime.hxx" + // AB 29.10.99 Unicode + #ifndef _USE_NO_NAMESPACE + using namespace rtl; +@@ -1125,6 +1125,8 @@ BOOL SbxValue::Convert( SbxDataType eTo + + BOOL SbxValue::Compute( SbxOperator eOp, const SbxValue& rOp ) + { ++ bool bVBAInterop = SbiRuntime::isVBAEnabled(); ++ + SbxDataType eThisType = GetType(); + SbxDataType eOpType = rOp.GetType(); + SbxError eOld = GetError(); +@@ -1138,14 +1140,16 @@ BOOL SbxValue::Compute( SbxOperator eOp, + else if( eThisType == SbxNULL || eOpType == SbxNULL ) + SetType( SbxNULL ); + // Sonderregel 2: Ist ein Operand Empty, ist das Ergebnis der 2. Operand +- else if( eThisType == SbxEMPTY ) ++ else if( eThisType == SbxEMPTY ++ && !bVBAInterop ++ ) + *this = rOp; + // 13.2.96: Nicht schon vor Get auf SbxEMPTY pruefen + else + { + SbxValues aL, aR; + bool bDecimal = false; +- if( eThisType == SbxSTRING || eOp == SbxCAT ) ++ if( eThisType == SbxSTRING || eOp == SbxCAT || ( bVBAInterop && ( eOpType == SbxSTRING ) && ( eOp == SbxPLUS ) ) ) + { + if( eOp == SbxCAT || eOp == SbxPLUS ) + { +@@ -1203,7 +1207,10 @@ BOOL SbxValue::Compute( SbxOperator eOp, + if( rOp.Get( aR ) ) + { + if( rOp.GetType() == SbxEMPTY ) +- goto Lbl_OpIsEmpty; ++ { ++ if ( !bVBAInterop || ( bVBAInterop && ( eOp != SbxNOT ) ) ) ++ goto Lbl_OpIsEmpty; ++ } + if( Get( aL ) ) switch( eOp ) + { + case SbxIDIV: +@@ -1392,7 +1399,10 @@ BOOL SbxValue::Compute( SbxOperator eOp, + if( rOp.Get( aR ) ) + { + if( rOp.GetType() == SbxEMPTY ) +- goto Lbl_OpIsEmpty; ++ { ++ if ( !bVBAInterop || ( bVBAInterop && ( eOp != SbxNEG ) ) ) ++ goto Lbl_OpIsEmpty; ++ } + if( Get( aL ) ) + { + switch( eOp ) +@@ -1442,6 +1452,8 @@ Lbl_OpIsEmpty: + + BOOL SbxValue::Compare( SbxOperator eOp, const SbxValue& rOp ) const + { ++ bool bVBAInterop = SbiRuntime::isVBAEnabled(); ++ + BOOL bRes = FALSE; + SbxError eOld = GetError(); + if( eOld != SbxERR_OK ) +@@ -1458,10 +1470,13 @@ BOOL SbxValue::Compare( SbxOperator eOp, + // Sonderregel 2: Wenn beide Variant sind und einer ist numerisch, + // und der andere ein String, ist num < str + else if( !IsFixed() && !rOp.IsFixed() +- && ( rOp.GetType() == SbxSTRING && GetType() != SbxSTRING && IsNumeric() ) ) ++ && ( rOp.GetType() == SbxSTRING && GetType() != SbxSTRING && IsNumeric() ) && !bVBAInterop ++ ) + bRes = BOOL( eOp == SbxLT || eOp == SbxLE || eOp == SbxNE ); + else if( !IsFixed() && !rOp.IsFixed() +- && ( GetType() == SbxSTRING && rOp.GetType() != SbxSTRING && rOp.IsNumeric() ) ) ++ && ( GetType() == SbxSTRING && rOp.GetType() != SbxSTRING && rOp.IsNumeric() ) ++&& !bVBAInterop ++ ) + bRes = BOOL( eOp == SbxGT || eOp == SbxGE || eOp == SbxNE ); + else + { +cvs diff: Diffing basic/source/uno +cvs diff: Diffing basic/util +cvs diff: Diffing basic/util/defs +cvs diff: Diffing basic/win +cvs diff: Diffing basic/win/res +cvs diff: Diffing basic/workben +cvs diff: Diffing config_office +Index: config_office/configure.in +=================================================================== +RCS file: /cvs/tools/config_office/configure.in,v +retrieving revision 1.201 +retrieving revision 1.201.2.1 +diff -u -p -r1.201 -r1.201.2.1 +--- config_office/configure.in 25 Apr 2007 15:53:53 -0000 1.201 ++++ config_office/configure.in 3 May 2007 11:09:38 -0000 1.201.2.1 +@@ -41,20 +41,21 @@ AC_ARG_ENABLE(lockdown, + [ --enable-lockdown Enables the gconf integration work in OOo + ],,) + AC_ARG_ENABLE(vba, +-[ --enable-vba Enables the vba compatibility feature ++[ --disable-vba disables the vba compatibility feature + ],,) + AC_ARG_WITH(vba-package-format, + [ --with-vba-package-format specify package format for vba compatibility api. +- Default "builtin" means the api component and ++ Specifying "builtin" means the api component and + associated type library are part of the installation set. +- Specifying "extsn" creates an uno extension that is ++ Specifying "extn" creates an uno extension that is + part of the installation set ( located in the program + directory ) that MUST be optionly registered using + either the unopkg executeable or the extension manager + gui. +- +- Usage: --with-package-format="builtin" or +- --with-package-format="extsn" ++ ++ Note: "extn" is the defualt. ++ Usage: --with-vba-package-format="builtin" or ++ --with-vba-package-format="extn" + ],,) + AC_ARG_ENABLE(pch, + [ --enable-pch Enables the use of precompiledr C/C++ header files +@@ -1605,13 +1606,13 @@ fi + dnl =================================================================== + dnl Check if we are to enable vba macro interoperability feature + dnl =================================================================== +-AC_MSG_CHECKING([whether to enable vba feature]) +-if test -n "$enable_vba" && test "$enable_vba" = "yes"; then ++AC_MSG_CHECKING([whether to disable vba feature]) ++if test -n "$enable_vba" && test "$enable_vba" = "no"; then + AC_MSG_RESULT([yes]) +- ENABLE_VBA=YES +-else + ENABLE_VBA=NO ++else + AC_MSG_RESULT([no]) ++ ENABLE_VBA=YES + fi + AC_SUBST(ENABLE_VBA) + +@@ -1630,11 +1631,14 @@ if test "$ENABLE_VBA" = "YES"; then + fi + + else +- VBA_EXTENSION=NO +- AC_MSG_RESULT([build into installset]) ++ VBA_EXTENSION=YES ++ AC_MSG_RESULT([defaulting to build as uno extension]) + fi +- AC_SUBST(VBA_EXTENSION) ++else ++ VBA_EXTENSION=NO + fi ++AC_SUBST(VBA_EXTENSION) ++ + dnl =================================================================== + dnl Check the whether vba need to be delivered as an uno package or part + dnl of the install +cvs diff: Diffing config_office/guw +cvs diff: Diffing sc +cvs diff: Diffing sc/addin +cvs diff: Diffing sc/addin/datefunc +cvs diff: Diffing sc/addin/inc +cvs diff: Diffing sc/addin/rot13 +cvs diff: Diffing sc/addin/util +cvs diff: Diffing sc/inc +cvs diff: Diffing sc/inc/pch +cvs diff: Diffing sc/prj +cvs diff: Diffing sc/qa +cvs diff: Diffing sc/qa/complex +cvs diff: Diffing sc/qa/complex/dataPilot +cvs diff: Diffing sc/qa/complex/dataPilot/interfaceTests +cvs diff: Diffing sc/qa/complex/dataPilot/interfaceTests/beans +cvs diff: Diffing sc/qa/complex/dataPilot/interfaceTests/container +cvs diff: Diffing sc/qa/complex/dataPilot/interfaceTests/sheet +cvs diff: Diffing sc/qa/complex/sc +cvs diff: Diffing sc/qa/unoapi +cvs diff: Diffing sc/qa/unoapi/testdocuments +cvs diff: Diffing sc/sdi +cvs diff: Diffing sc/source +cvs diff: Diffing sc/source/core +cvs diff: Diffing sc/source/core/data +cvs diff: Diffing sc/source/core/inc +cvs diff: Diffing sc/source/core/src +cvs diff: Diffing sc/source/core/tool +cvs diff: Diffing sc/source/filter +cvs diff: Diffing sc/source/filter/dif +cvs diff: Diffing sc/source/filter/excel +cvs diff: Diffing sc/source/filter/ftools +cvs diff: Diffing sc/source/filter/html +cvs diff: Diffing sc/source/filter/inc +cvs diff: Diffing sc/source/filter/lotus +cvs diff: Diffing sc/source/filter/qpro +cvs diff: Diffing sc/source/filter/rtf +cvs diff: Diffing sc/source/filter/starcalc +cvs diff: Diffing sc/source/filter/xcl97 +cvs diff: Diffing sc/source/filter/xml +cvs diff: Diffing sc/source/ui +cvs diff: Diffing sc/source/ui/Accessibility +cvs diff: Diffing sc/source/ui/app +cvs diff: Diffing sc/source/ui/attrdlg +cvs diff: Diffing sc/source/ui/cctrl +cvs diff: Diffing sc/source/ui/dbgui +cvs diff: Diffing sc/source/ui/docshell +cvs diff: Diffing sc/source/ui/drawfunc +cvs diff: Diffing sc/source/ui/formdlg +cvs diff: Diffing sc/source/ui/inc +cvs diff: Diffing sc/source/ui/miscdlgs +cvs diff: Diffing sc/source/ui/namedlg +cvs diff: Diffing sc/source/ui/navipi +cvs diff: Diffing sc/source/ui/optdlg +cvs diff: Diffing sc/source/ui/pagedlg +cvs diff: Diffing sc/source/ui/src +cvs diff: Diffing sc/source/ui/styleui +cvs diff: Diffing sc/source/ui/undo +cvs diff: Diffing sc/source/ui/unoobj +cvs diff: Diffing sc/source/ui/vba +Index: sc/source/ui/vba/vbaapplication.cxx +=================================================================== +RCS file: /cvs/sc/sc/source/ui/vba/vbaapplication.cxx,v +retrieving revision 1.2 +retrieving revision 1.2.2.1 +diff -u -p -r1.2 -r1.2.2.1 +--- sc/source/ui/vba/vbaapplication.cxx 25 Apr 2007 16:00:39 -0000 1.2 ++++ sc/source/ui/vba/vbaapplication.cxx 18 May 2007 12:38:29 -0000 1.2.2.1 +@@ -293,7 +293,7 @@ void SAL_CALL + ScVbaApplication::setStatusBar( const uno::Any& _statusbar ) throw (uno::RuntimeException) + { + rtl::OUString sText; +- sal_Bool bDefault; ++ sal_Bool bDefault = sal_False; + uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW ); + uno::Reference< task::XStatusIndicatorSupplier > xStatusIndicatorSupplier( xModel->getCurrentController(), uno::UNO_QUERY_THROW ); + uno::Reference< task::XStatusIndicator > xStatusIndicator( xStatusIndicatorSupplier->getStatusIndicator(), uno::UNO_QUERY_THROW ); +@@ -426,7 +426,7 @@ ScVbaApplication::GoTo( const uno::Any& + + if( Scroll.hasValue() ) + { +- sal_Bool aScroll; ++ sal_Bool aScroll = sal_False; + if( Scroll >>= aScroll ) + { + bScroll = aScroll; +Index: sc/source/ui/vba/vbahelper.hxx +=================================================================== +RCS file: /cvs/sc/sc/source/ui/vba/vbahelper.hxx,v +retrieving revision 1.2 +retrieving revision 1.2.2.1 +diff -u -p -r1.2 -r1.2.2.1 +--- sc/source/ui/vba/vbahelper.hxx 25 Apr 2007 16:07:33 -0000 1.2 ++++ sc/source/ui/vba/vbahelper.hxx 3 May 2007 11:16:34 -0000 1.2.2.1 +@@ -38,8 +38,8 @@ + #include <com/sun/star/frame/XModel.hpp> + #include <docsh.hxx> + +-#define css com::sun::star +-#define oo org::openoffice ++namespace css = ::com::sun::star; ++ + namespace org + { + namespace openoffice +@@ -69,6 +69,8 @@ namespace org + } + } + ++namespace oo = org::openoffice; ++ + #ifdef DEBUG + # define SC_VBA_FIXME(a) OSL_TRACE( a ) + # define SC_VBA_STUB() SC_VBA_FIXME(( "%s - stubbed\n", __FUNCTION__ )) +Index: sc/source/ui/vba/vbarange.cxx +=================================================================== +RCS file: /cvs/sc/sc/source/ui/vba/vbarange.cxx,v +retrieving revision 1.2 +retrieving revision 1.2.2.1 +diff -u -p -r1.2 -r1.2.2.1 +--- sc/source/ui/vba/vbarange.cxx 25 Apr 2007 16:10:29 -0000 1.2 ++++ sc/source/ui/vba/vbarange.cxx 18 May 2007 12:38:29 -0000 1.2.2.1 +@@ -487,7 +487,7 @@ CellValueSetter::processValue( const uno + { + case uno::TypeClass_BOOLEAN: + { +- sal_Bool bState; ++ sal_Bool bState = sal_False; + if ( aValue >>= bState ) + { + uno::Reference< table::XCellRange > xRange( xCell, uno::UNO_QUERY_THROW ); +@@ -2318,7 +2318,7 @@ ScVbaRange::setHidden( const uno::Any& _ + return; + } + +- sal_Bool bHidden; ++ sal_Bool bHidden = sal_False; + if ( !(_hidden >>= bHidden) ) + throw uno::RuntimeException( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Failed to extract param for Hidden property" ) ), uno::Reference< uno::XInterface >() ); + +Index: sc/source/ui/vba/vbaworksheets.cxx +=================================================================== +RCS file: /cvs/sc/sc/source/ui/vba/vbaworksheets.cxx,v +retrieving revision 1.2 +retrieving revision 1.2.2.1 +diff -u -p -r1.2 -r1.2.2.1 +--- sc/source/ui/vba/vbaworksheets.cxx 25 Apr 2007 16:14:08 -0000 1.2 ++++ sc/source/ui/vba/vbaworksheets.cxx 17 May 2007 16:12:07 -0000 1.2.2.1 +@@ -227,7 +227,7 @@ ScVbaWorksheets::getVisible() throw (uno + void SAL_CALL + ScVbaWorksheets::setVisible( const uno::Any& _visible ) throw (uno::RuntimeException) + { +- sal_Bool bState; ++ sal_Bool bState = sal_False; + if ( _visible >>= bState ) + { + uno::Reference< container::XEnumeration > xEnum( createEnumeration(), uno::UNO_QUERY_THROW ); +cvs diff: Diffing sc/source/ui/view +cvs diff: Diffing sc/uiconfig +cvs diff: Diffing sc/uiconfig/scalc +cvs diff: Diffing sc/uiconfig/scalc/accelerator +cvs diff: Diffing sc/uiconfig/scalc/accelerator/de +cvs diff: Diffing sc/uiconfig/scalc/accelerator/en-GB +cvs diff: Diffing sc/uiconfig/scalc/accelerator/en-US +cvs diff: Diffing sc/uiconfig/scalc/accelerator/es +cvs diff: Diffing sc/uiconfig/scalc/accelerator/fr +cvs diff: Diffing sc/uiconfig/scalc/menubar +cvs diff: Diffing sc/uiconfig/scalc/statusbar +cvs diff: Diffing sc/uiconfig/scalc/toolbar +cvs diff: Diffing sc/util +Index: sc/util/makefile.mk +=================================================================== +RCS file: /cvs/sc/sc/util/makefile.mk,v +retrieving revision 1.39 +retrieving revision 1.39.2.1 +diff -u -p -r1.39 -r1.39.2.1 +--- sc/util/makefile.mk 25 Apr 2007 16:15:20 -0000 1.39 ++++ sc/util/makefile.mk 3 May 2007 09:00:47 -0000 1.39.2.1 +@@ -278,6 +278,7 @@ DEF9NAME=$(SHL9TARGET) + + SHL9STDLIBS= \ + $(CPPUHELPERLIB) \ ++ $(VCLLIB) \ + $(CPPULIB) \ + $(COMPHELPERLIB) \ + $(SVLIB) \ +@@ -294,6 +295,12 @@ SHL9STDLIBS= \ + SHL9DEPN=$(SHL1TARGETN) $(SHL8TARGETN) + SHL9LIBS=$(SLB)$/$(TARGET_VBA).lib + ++.IF "$(GUI)"=="UNX" || "$(GUI)"=="MAC" ++ LIBCOMPNAME=$(LOCAL_COMMON_OUT)$/lib/lib$(SHL9TARGET)$(DLLPOST) ++.ELSE ++ LIBCOMPNAME=$(COMMONBIN)$/$(SHL9TARGET)$(DLLPOST) ++.ENDIF ++ + .ENDIF + + +cvs diff: Diffing sc/util/defs +cvs diff: Diffing sc/workben +cvs diff: Diffing sc/xml +cvs diff: Diffing svx +cvs diff: Diffing svx/doc +cvs diff: Diffing svx/doc/UML +cvs diff: Diffing svx/inc +cvs diff: Diffing svx/inc/pch +cvs diff: Diffing svx/inc/svx +cvs diff: Diffing svx/inc/svx/sdr +cvs diff: Diffing svx/inc/svx/sdr/animation +cvs diff: Diffing svx/inc/svx/sdr/contact +cvs diff: Diffing svx/inc/svx/sdr/event +cvs diff: Diffing svx/inc/svx/sdr/mixer +cvs diff: Diffing svx/inc/svx/sdr/overlay +cvs diff: Diffing svx/inc/svx/sdr/properties +cvs diff: Diffing svx/prj +cvs diff: Diffing svx/qa +cvs diff: Diffing svx/qa/unoapi +cvs diff: Diffing svx/qa/unoapi/testdocuments +cvs diff: Diffing svx/res +cvs diff: Diffing svx/sdi +cvs diff: Diffing svx/source +cvs diff: Diffing svx/source/accessibility +cvs diff: Diffing svx/source/customshapes +cvs diff: Diffing svx/source/dialog +cvs diff: Diffing svx/source/editeng +cvs diff: Diffing svx/source/engine3d +cvs diff: Diffing svx/source/fmcomp +cvs diff: Diffing svx/source/form +cvs diff: Diffing svx/source/gallery2 +cvs diff: Diffing svx/source/gengal +cvs diff: Diffing svx/source/inc +cvs diff: Diffing svx/source/init +cvs diff: Diffing svx/source/intro +cvs diff: Diffing svx/source/items +cvs diff: Diffing svx/source/mnuctrls +cvs diff: Diffing svx/source/msfilter +Index: svx/source/msfilter/svxmsbas.cxx +=================================================================== +RCS file: /cvs/graphics/svx/source/msfilter/svxmsbas.cxx,v +retrieving revision 1.20 +retrieving revision 1.20.4.1 +diff -u -p -r1.20 -r1.20.4.1 +--- svx/source/msfilter/svxmsbas.cxx 25 Apr 2007 16:18:00 -0000 1.20 ++++ svx/source/msfilter/svxmsbas.cxx 2 May 2007 09:16:56 -0000 1.20.4.1 +@@ -368,8 +368,14 @@ BOOL SvxImportMSVBasic::ImportCode_Impl( + break; + } + static ::rtl::OUString sVBAOption( RTL_CONSTASCII_USTRINGPARAM( "Option VBASupport 1\n" ) ); ++ static ::rtl::OUString sClassOption( RTL_CONSTASCII_USTRINGPARAM( "Option ClassModule\n" ) ); + if ( !bAsComment ) ++ { + modeTypeComment = modeTypeComment + sVBAOption; ++ if ( mType == Class ) ++ modeTypeComment = modeTypeComment + sClassOption; ++ ++ } + + String sModule(sBasicModule); //#i52606# no need to split Macros in 64KB blocks any more! + String sTemp; +cvs diff: Diffing svx/source/options +cvs diff: Diffing svx/source/outliner +cvs diff: Diffing svx/source/sdr +cvs diff: Diffing svx/source/sdr/animation +cvs diff: Diffing svx/source/sdr/contact +cvs diff: Diffing svx/source/sdr/event +cvs diff: Diffing svx/source/sdr/mixer +cvs diff: Diffing svx/source/sdr/overlay +cvs diff: Diffing svx/source/sdr/properties +cvs diff: Diffing svx/source/src +cvs diff: Diffing svx/source/stbctrls +cvs diff: Diffing svx/source/svdraw +cvs diff: Diffing svx/source/svrtf +cvs diff: Diffing svx/source/svxlink +cvs diff: Diffing svx/source/tbxctrls +cvs diff: Diffing svx/source/toolbars +cvs diff: Diffing svx/source/unodialogs +cvs diff: Diffing svx/source/unodialogs/inc +cvs diff: Diffing svx/source/unodialogs/textconversiondlgs +cvs diff: Diffing svx/source/unodraw +cvs diff: Diffing svx/source/unoedit +cvs diff: Diffing svx/source/unogallery +cvs diff: Diffing svx/source/xml +cvs diff: Diffing svx/source/xoutdev +cvs diff: Diffing svx/uiconfig +cvs diff: Diffing svx/uiconfig/accelerator +cvs diff: Diffing svx/uiconfig/accelerator/en-US +cvs diff: Diffing svx/uiconfig/accelerator/es +cvs diff: Diffing svx/util +cvs diff: Diffing svx/util/defs +cvs diff: Diffing svx/workben +cvs diff: Diffing svx/workben/msview +cvs diff: Diffing svx/xml +cvs diff: Diffing scp2 +cvs diff: Diffing scp2/inc +cvs diff: Diffing scp2/macros +cvs diff: Diffing scp2/prj +cvs diff: Diffing scp2/source +cvs diff: Diffing scp2/source/activex +cvs diff: Diffing scp2/source/base +cvs diff: Diffing scp2/source/calc +cvs diff: Diffing scp2/source/canvas +cvs diff: Diffing scp2/source/crashrep +cvs diff: Diffing scp2/source/draw +cvs diff: Diffing scp2/source/gnome +cvs diff: Diffing scp2/source/graphicfilter +cvs diff: Diffing scp2/source/impress +cvs diff: Diffing scp2/source/javafilter +cvs diff: Diffing scp2/source/kde +cvs diff: Diffing scp2/source/lingu +cvs diff: Diffing scp2/source/math +cvs diff: Diffing scp2/source/onlineupdate +cvs diff: Diffing scp2/source/ooo +Index: scp2/source/ooo/file_ooo.scp +=================================================================== +RCS file: /cvs/installation/scp2/source/ooo/file_ooo.scp,v +retrieving revision 1.188 +retrieving revision 1.188.2.1 +diff -u -p -r1.188 -r1.188.2.1 +--- scp2/source/ooo/file_ooo.scp 25 Apr 2007 16:18:52 -0000 1.188 ++++ scp2/source/ooo/file_ooo.scp 3 May 2007 11:09:39 -0000 1.188.2.1 +@@ -1830,6 +1830,13 @@ File gid_File_Rdb_TypesVba + Styles = (PACKED, OVERWRITE, PATCH); + Name = "oovbaapi.rdb"; + End ++#else ++File gid_File_ExtnVba ++ TXT_FILE_BODY; ++ Dir = gid_Dir_Program; ++ Styles = (PACKED, OVERWRITE, PATCH); ++ Name = "vbaapi.oxt"; ++End + #endif + #endif + +cvs diff: Diffing scp2/source/python +cvs diff: Diffing scp2/source/quickstart +cvs diff: Diffing scp2/source/sdkoo +cvs diff: Diffing scp2/source/testtool +cvs diff: Diffing scp2/source/ure +cvs diff: Diffing scp2/source/winexplorerext +cvs diff: Diffing scp2/source/writer +cvs diff: Diffing scp2/source/xsltfilter +cvs diff: Diffing scp2/util diff --git a/editors/openoffice.org-2-devel/files/patch-i65462 b/editors/openoffice.org-2-devel/files/patch-i65462 deleted file mode 100644 index 34a8a569562a..000000000000 --- a/editors/openoffice.org-2-devel/files/patch-i65462 +++ /dev/null @@ -1,24 +0,0 @@ -Re-add #i64906# workaround. The root cause of the crash is #i65462#. -Also see #i65004# for more information. - ---- sal/osl/unx/security.c 14 Mar 2007 08:28:11 -0000 1.24 -+++ sal/osl/unx/security.c 6 Apr 2007 05:59:15 -0000 -@@ -76,6 +76,10 @@ - static sal_Bool SAL_CALL osl_psz_getConfigDir(oslSecurity Security, sal_Char* pszDirectory, sal_uInt32 nMax); - - static oslSecurityImpl * newSecurityImpl(size_t * bufSize) { -+#if defined (MACOSX) || defined (FREEBSD) -+ /* #i64906#: sysconf(_SC_GETPW_R_SIZE_MAX) returns -1 on Mac OS X and FreeBSD */ -+ size_t n = 1024; -+#else - long m; - size_t n; - errno = 0; -@@ -95,6 +99,7 @@ - OSL_ASSERT(m >= 0 && (unsigned long) m < SIZE_MAX); - n = (size_t) m; - } -+#endif - if (n <= SIZE_MAX - offsetof(oslSecurityImpl, m_buffer)) { - *bufSize = n; - n += offsetof(oslSecurityImpl, m_buffer); diff --git a/editors/openoffice.org-2-devel/files/patch-i75708 b/editors/openoffice.org-2-devel/files/patch-i75708 deleted file mode 100644 index 1fc8565c4fd4..000000000000 --- a/editors/openoffice.org-2-devel/files/patch-i75708 +++ /dev/null @@ -1,16 +0,0 @@ -Index: basctl/source/basicide/scriptdocument.cxx -=================================================================== -RCS file: /cvs/script/basctl/source/basicide/scriptdocument.cxx,v -retrieving revision 1.2 -diff -u -r1.2 scriptdocument.cxx ---- basctl/source/basicide/scriptdocument.cxx 15 Mar 2007 15:59:30 -0000 1.2 -+++ basctl/source/basicide/scriptdocument.cxx 25 Mar 2007 21:09:03 -0000 -@@ -921,7 +921,7 @@ - //-------------------------------------------------------------------- - sal_Int32 ScriptDocument::hashCode() const - { -- return reinterpret_cast< sal_Int32 >( m_pImpl->getObjectShell() ); -+ return reinterpret_cast< sal_IntPtr >( m_pImpl->getObjectShell() ); - } - - //-------------------------------------------------------------------- diff --git a/editors/openoffice.org-2-devel/files/patch-i76141 b/editors/openoffice.org-2-devel/files/patch-i76141 index 1698b377a94f..6b1bfcaf860b 100644 --- a/editors/openoffice.org-2-devel/files/patch-i76141 +++ b/editors/openoffice.org-2-devel/files/patch-i76141 @@ -316,6 +316,181 @@ --- misc/build/libwpd-0.8.8/src/lib/WP1Part.cpp 2007-01-13 00:18:52.000000000 +0100 *************** +--- libxml2/libxml2-2.6.17.patch 26 Mar 2007 12:25:19 -0000 1.5 ++++ libxml2/libxml2-2.6.17.patch 3 May 2007 17:31:33 -0000 +@@ -34,6 +34,74 @@ + fi + echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 + *************** ++*** 8547,8553 **** ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++--- 8547,8553 ---- ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++*************** ++*** 12266,12272 **** ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++--- 12266,12272 ---- ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++*************** ++*** 15436,15442 **** ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++--- 15436,15442 ---- ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++*************** ++*** 17804,17810 **** ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++--- 17804,17810 ---- ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++*************** + *** 26339,26347 **** + + echo "$as_me:$LINENO: checking for setsockopt" >&5 +--- libxmlsec/xmlsec1-1.2.6.patch 27 Mar 2007 09:36:38 -0000 1.19 ++++ libxmlsec/xmlsec1-1.2.6.patch 3 May 2007 18:12:52 -0000 +@@ -158,6 +158,23 @@ + # is EXPORTS), use it as is; otherwise, prepend... + archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + *************** ++*** 7778,7784 **** ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++--- 7779,7785 ---- ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++*************** + *** 9046,9052 **** + ;; + esac +@@ -215,6 +232,23 @@ + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic_CXX='-DDLL_EXPORT' + *************** ++*** 11497,11503 **** ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++--- 11498,11504 ---- ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++*************** + *** 13259,13269 **** + lt_prog_compiler_pic_F77='-m68020 -resident32 -malways-restore-a4' + ;; +@@ -257,6 +291,23 @@ + # is EXPORTS), use it as is; otherwise, prepend... + archive_expsym_cmds_F77='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + *************** ++*** 14667,14673 **** ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++--- 14668,14674 ---- ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++*************** + *** 15607,15617 **** + lt_prog_compiler_pic_GCJ='-m68020 -resident32 -malways-restore-a4' + ;; +@@ -316,6 +367,23 @@ + # is EXPORTS), use it as is; otherwise, prepend... + archive_expsym_cmds_GCJ='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + *************** ++*** 17035,17041 **** ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++--- 17036,17042 ---- ++ ;; ++ ++ freebsd*) ++! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` ++ version_type=freebsd-$objformat ++ case $version_type in ++ freebsd-elf*) ++*************** + *** 24598,24604 **** + fi + --- moz/mozilla-source-1.7.5.patch.orig Fri Apr 27 15:23:29 2007 +++ moz/mozilla-source-1.7.5.patch Fri Apr 27 15:32:07 2007 @@ -266,6 +266,23 @@ @@ -540,31 +715,6 @@ *************** *** 1 **** ! dummy ---- sablot/Sablot-0.52.patch 19 Jun 2006 17:27:11 -0000 1.20 -+++ sablot/Sablot-0.52.patch 5 Apr 2007 00:24:32 -0000 -@@ -632,3 +632,22 @@ - }; - return cnt; - } -+*** misc/Sablot-0.52/tools/ltconfig Fri Apr 13 05:50:59 2001 -+--- misc/build/Sablot-0.52/tools/ltconfig Wed Apr 4 20:22:37 2007 -+*************** -+*** 1887,1893 **** -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` -+ version_type=freebsd-$objformat -+ case "$version_type" in -+ freebsd-elf*) -+--- 1887,1893 ---- -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` -+ version_type=freebsd-$objformat -+ case "$version_type" in -+ freebsd-elf*) --- sndfile/libsndfile-1.0.9.patch 3 Feb 2006 17:31:46 -0000 1.3 +++ sndfile/libsndfile-1.0.9.patch 5 Apr 2007 00:31:26 -0000 @@ -83,6 +83,23 @@ @@ -708,611 +858,3 @@ diff -uprN misc/vigra1.4.0/include/vigra/array_vector.hxx misc/build/vigra1.4.0/include/vigra/array_vector.hxx --- misc/vigra1.4.0/include/vigra/array_vector.hxx 2005-12-21 05:53:30.000000000 +0100 +++ misc/build/vigra1.4.0/include/vigra/array_vector.hxx 2006-08-31 12:08:15.172679000 +0200 - - -Index: libxmlsec/xmlsec1-1.2.6.patch -=================================================================== -RCS file: /cvs/external/libxmlsec/xmlsec1-1.2.6.patch,v -retrieving revision 1.19 -diff -u -r1.19 xmlsec1-1.2.6.patch ---- libxmlsec/xmlsec1-1.2.6.patch 27 Mar 2007 09:36:38 -0000 1.19 -+++ libxmlsec/xmlsec1-1.2.6.patch 28 Apr 2007 23:12:51 -0000 -@@ -1,5 +1,5 @@ --*** misc/xmlsec1-1.2.6/apps/Makefile.in Thu Aug 26 08:00:30 2004 ----- misc/build/xmlsec1-1.2.6/apps/Makefile.in Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/apps/Makefile.in Thu Aug 26 15:00:30 2004 -+--- misc/build/xmlsec1-1.2.6/apps/Makefile.in Sun Apr 29 08:10:05 2007 - *************** - *** 370,376 **** - $(CRYPTO_DEPS) \ -@@ -17,8 +17,8 @@ - - .SUFFIXES: - .SUFFIXES: .c .lo .o .obj --*** misc/xmlsec1-1.2.6/configure Thu Aug 26 08:00:34 2004 ----- misc/build/xmlsec1-1.2.6/configure Tue Mar 27 11:26:19 2007 -+*** misc/xmlsec1-1.2.6/configure Thu Aug 26 15:00:34 2004 -+--- misc/build/xmlsec1-1.2.6/configure Sun Apr 29 08:10:06 2007 - *************** - *** 463,469 **** - # include <unistd.h> -@@ -158,6 +158,23 @@ - # is EXPORTS), use it as is; otherwise, prepend... - archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - *************** -+*** 7778,7784 **** -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+--- 7779,7785 ---- -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+*************** - *** 9046,9052 **** - ;; - esac -@@ -215,6 +232,23 @@ - # built for inclusion in a dll (and should export symbols for example). - lt_prog_compiler_pic_CXX='-DDLL_EXPORT' - *************** -+*** 11497,11503 **** -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+--- 11498,11504 ---- -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+*************** - *** 13259,13269 **** - lt_prog_compiler_pic_F77='-m68020 -resident32 -malways-restore-a4' - ;; -@@ -257,6 +291,23 @@ - # is EXPORTS), use it as is; otherwise, prepend... - archive_expsym_cmds_F77='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - *************** -+*** 14667,14673 **** -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+--- 14668,14674 ---- -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+*************** - *** 15607,15617 **** - lt_prog_compiler_pic_GCJ='-m68020 -resident32 -malways-restore-a4' - ;; -@@ -316,6 +367,23 @@ - # is EXPORTS), use it as is; otherwise, prepend... - archive_expsym_cmds_GCJ='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - *************** -+*** 17035,17041 **** -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+--- 17036,17042 ---- -+ ;; -+ -+ freebsd*) -+! objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+*************** - *** 24598,24604 **** - fi - -@@ -2379,8 +2447,8 @@ - s,@XMLSEC_NO_SHA1_TRUE@,$XMLSEC_NO_SHA1_TRUE,;t t - s,@XMLSEC_NO_SHA1_FALSE@,$XMLSEC_NO_SHA1_FALSE,;t t - s,@XMLSEC_NO_SHA1@,$XMLSEC_NO_SHA1,;t t --*** misc/xmlsec1-1.2.6/configure.in Thu Aug 26 04:49:24 2004 ----- misc/build/xmlsec1-1.2.6/configure.in Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/configure.in Thu Aug 26 11:49:24 2004 -+--- misc/build/xmlsec1-1.2.6/configure.in Sun Apr 29 08:10:06 2007 - *************** - *** 143,149 **** - dnl find libxml -@@ -2496,8 +2564,8 @@ - dnl do not add -L/usr/lib because compiler does it anyway - if test "z$dir" = "z/usr/lib" ; then - NSS_LIBS="$NSS_LIBS_LIST" --*** misc/xmlsec1-1.2.6/include/xmlsec/mscrypto/Makefile.in Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/mscrypto/Makefile.in Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/mscrypto/Makefile.in Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/mscrypto/Makefile.in Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -2560,8 +2628,8 @@ - ! # Tell versions [3.59,3.63) of GNU make to not export all variables. - ! # Otherwise a system limit (for SysV at least) may be exceeded. - ! .NOEXPORT: --*** misc/xmlsec1-1.2.6/include/xmlsec/mscrypto/akmngr.h Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/mscrypto/akmngr.h Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/mscrypto/akmngr.h Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/mscrypto/akmngr.h Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -2637,8 +2705,8 @@ - ! #endif /* __XMLSEC_MSCRYPTO_AKMNGR_H__ */ - ! - ! --*** misc/xmlsec1-1.2.6/include/xmlsec/mscrypto/x509.h Fri Sep 26 08:12:46 2003 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/mscrypto/x509.h Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/mscrypto/x509.h Fri Sep 26 15:12:46 2003 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/mscrypto/x509.h Sun Apr 29 08:10:06 2007 - *************** - *** 77,82 **** - --- 77,97 ---- -@@ -2663,8 +2731,8 @@ - - #endif /* XMLSEC_NO_X509 */ - --*** misc/xmlsec1-1.2.6/include/xmlsec/nss/Makefile.am Wed Jul 30 04:46:35 2003 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/Makefile.am Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/nss/Makefile.am Wed Jul 30 11:46:35 2003 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/Makefile.am Sun Apr 29 08:10:06 2007 - *************** - *** 3,8 **** - --- 3,9 ---- -@@ -2686,8 +2754,8 @@ - $(NULL) - - install-exec-hook: --*** misc/xmlsec1-1.2.6/include/xmlsec/nss/Makefile.in Thu Aug 26 08:00:31 2004 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/Makefile.in Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/nss/Makefile.in Thu Aug 26 15:00:31 2004 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/Makefile.in Sun Apr 29 08:10:06 2007 - *************** - *** 273,278 **** - --- 273,279 ---- -@@ -2709,8 +2777,8 @@ - $(NULL) - - all: all-am --*** misc/xmlsec1-1.2.6/include/xmlsec/nss/akmngr.h Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/akmngr.h Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/nss/akmngr.h Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/akmngr.h Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -2771,8 +2839,8 @@ - ! #endif /* __XMLSEC_NSS_AKMNGR_H__ */ - ! - ! --*** misc/xmlsec1-1.2.6/include/xmlsec/nss/app.h Mon Jan 12 22:06:14 2004 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/app.h Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/nss/app.h Tue Jan 13 06:06:14 2004 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/app.h Sun Apr 29 08:10:06 2007 - *************** - *** 22,27 **** - --- 22,30 ---- -@@ -2796,8 +2864,8 @@ - XMLSEC_CRYPTO_EXPORT int xmlSecNssAppDefaultKeysMngrLoad (xmlSecKeysMngrPtr mngr, - const char* uri); - XMLSEC_CRYPTO_EXPORT int xmlSecNssAppDefaultKeysMngrSave (xmlSecKeysMngrPtr mngr, --*** misc/xmlsec1-1.2.6/include/xmlsec/nss/ciphers.h Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/ciphers.h Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/nss/ciphers.h Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/ciphers.h Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -2837,8 +2905,8 @@ - ! #endif /* __XMLSEC_NSS_CIPHERS_H__ */ - ! - ! --*** misc/xmlsec1-1.2.6/include/xmlsec/nss/crypto.h Mon Jan 12 22:06:14 2004 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/crypto.h Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/nss/crypto.h Tue Jan 13 06:06:14 2004 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/crypto.h Sun Apr 29 08:10:06 2007 - *************** - *** 264,269 **** - --- 264,278 ---- -@@ -2857,8 +2925,8 @@ - #endif /* XMLSEC_NO_RSA */ - - --*** misc/xmlsec1-1.2.6/include/xmlsec/nss/keysstore.h Wed Jul 30 04:46:35 2003 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/keysstore.h Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/nss/keysstore.h Wed Jul 30 11:46:35 2003 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/keysstore.h Sun Apr 29 08:10:06 2007 - *************** - *** 16,21 **** - --- 16,23 ---- -@@ -2881,8 +2949,8 @@ - XMLSEC_CRYPTO_EXPORT int xmlSecNssKeysStoreLoad (xmlSecKeyStorePtr store, - const char *uri, - xmlSecKeysMngrPtr keysMngr); --*** misc/xmlsec1-1.2.6/include/xmlsec/nss/tokens.h Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/tokens.h Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/include/xmlsec/nss/tokens.h Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/include/xmlsec/nss/tokens.h Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -3069,8 +3137,8 @@ - ! - ! #endif /* __XMLSEC_NSS_TOKENS_H__ */ - ! --*** misc/xmlsec1-1.2.6/libxml2-config Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/libxml2-config Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/libxml2-config Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/libxml2-config Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -3123,8 +3191,8 @@ - ! done - ! - ! exit 0 --*** misc/xmlsec1-1.2.6/ltmain.sh Thu Aug 26 08:00:15 2004 ----- misc/build/xmlsec1-1.2.6/ltmain.sh Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/ltmain.sh Thu Aug 26 15:00:15 2004 -+--- misc/build/xmlsec1-1.2.6/ltmain.sh Sun Apr 29 08:10:06 2007 - *************** - *** 1661,1666 **** - --- 1661,1671 ---- -@@ -3199,8 +3267,8 @@ - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in --*** misc/xmlsec1-1.2.6/src/bn.c Mon Jun 21 20:33:27 2004 ----- misc/build/xmlsec1-1.2.6/src/bn.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/bn.c Tue Jun 22 03:33:27 2004 -+--- misc/build/xmlsec1-1.2.6/src/bn.c Sun Apr 29 08:10:06 2007 - *************** - *** 170,177 **** - */ -@@ -3766,8 +3834,8 @@ - } - - return(0); --*** misc/xmlsec1-1.2.6/src/dl.c Wed Oct 29 16:57:20 2003 ----- misc/build/xmlsec1-1.2.6/src/dl.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/dl.c Thu Oct 30 00:57:20 2003 -+--- misc/build/xmlsec1-1.2.6/src/dl.c Sun Apr 29 08:10:06 2007 - *************** - *** 329,334 **** - --- 329,338 ---- -@@ -3793,8 +3861,8 @@ - } - - --- 354,359 ---- --*** misc/xmlsec1-1.2.6/src/mscrypto/Makefile.in Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/Makefile.in Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/Makefile.in Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/Makefile.in Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -3977,8 +4045,8 @@ - ! # Tell versions [3.59,3.63) of GNU make to not export all variables. - ! # Otherwise a system limit (for SysV at least) may be exceeded. - ! .NOEXPORT: --*** misc/xmlsec1-1.2.6/src/mscrypto/akmngr.c Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/akmngr.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/akmngr.c Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/akmngr.c Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -4218,8 +4286,8 @@ - ! return( 0 ) ; - ! } - ! --*** misc/xmlsec1-1.2.6/src/mscrypto/certkeys.c Wed Mar 17 06:06:43 2004 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/certkeys.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/certkeys.c Wed Mar 17 14:06:43 2004 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/certkeys.c Sun Apr 29 08:10:06 2007 - *************** - *** 41,46 **** - --- 41,47 ---- -@@ -4896,8 +4964,8 @@ - } - - static xmlSecKeyDataType --*** misc/xmlsec1-1.2.6/src/mscrypto/ciphers.c Fri Sep 26 08:12:51 2003 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/ciphers.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/ciphers.c Fri Sep 26 15:12:51 2003 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/ciphers.c Sun Apr 29 08:10:06 2007 - *************** - *** 785,791 **** - * AES CBC cipher transforms -@@ -4966,8 +5034,8 @@ - /* klass/object sizes */ - sizeof(xmlSecTransformKlass), /* size_t klassSize */ - xmlSecMSCryptoBlockCipherSize, /* size_t objSize */ --*** misc/xmlsec1-1.2.6/src/mscrypto/crypto.c Wed Nov 12 03:38:51 2003 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/crypto.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/crypto.c Wed Nov 12 11:38:51 2003 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/crypto.c Sun Apr 29 08:10:06 2007 - *************** - *** 330,342 **** - BYTE* -@@ -4999,8 +5067,8 @@ - return(NULL); - } - --*** misc/xmlsec1-1.2.6/src/mscrypto/digests.c Tue Sep 30 04:09:51 2003 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/digests.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/digests.c Tue Sep 30 11:09:51 2003 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/digests.c Sun Apr 29 08:10:06 2007 - *************** - *** 96,107 **** - -@@ -5031,8 +5099,8 @@ - } - - return(0); --*** misc/xmlsec1-1.2.6/src/mscrypto/kt_rsa.c Fri Sep 26 22:29:25 2003 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/kt_rsa.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/kt_rsa.c Sat Sep 27 05:29:25 2003 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/kt_rsa.c Sun Apr 29 08:10:06 2007 - *************** - *** 66,72 **** - static int xmlSecMSCryptoRsaPkcs1Process (xmlSecTransformPtr transform, -@@ -5050,8 +5118,8 @@ - /* klass/object sizes */ - sizeof(xmlSecTransformKlass), /* xmlSecSize klassSize */ - xmlSecMSCryptoRsaPkcs1Size, /* xmlSecSize objSize */ --*** misc/xmlsec1-1.2.6/src/mscrypto/signatures.c Fri Sep 26 22:29:25 2003 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/signatures.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/signatures.c Sat Sep 27 05:29:25 2003 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/signatures.c Sun Apr 29 08:10:06 2007 - *************** - *** 483,489 **** - * RSA-SHA1 signature transform -@@ -5086,8 +5154,8 @@ - /* klass/object sizes */ - sizeof(xmlSecTransformKlass), /* xmlSecSize klassSize */ - xmlSecMSCryptoSignatureSize, /* xmlSecSize objSize */ --*** misc/xmlsec1-1.2.6/src/mscrypto/symkeys.c Fri Sep 26 02:58:13 2003 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/symkeys.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/symkeys.c Fri Sep 26 09:58:13 2003 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/symkeys.c Sun Apr 29 08:10:06 2007 - *************** - *** 72,78 **** - * <xmlsec:AESKeyValue> processing -@@ -5122,8 +5190,8 @@ - sizeof(xmlSecKeyDataKlass), - xmlSecKeyDataBinarySize, - --*** misc/xmlsec1-1.2.6/src/mscrypto/x509.c Fri Sep 26 02:58:13 2003 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/x509.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/x509.c Fri Sep 26 09:58:13 2003 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/x509.c Sun Apr 29 08:10:06 2007 - *************** - *** 240,246 **** - -@@ -5369,8 +5437,8 @@ - sizeof(xmlSecKeyDataKlass), - sizeof(xmlSecKeyData), - --*** misc/xmlsec1-1.2.6/src/mscrypto/x509vfy.c Sat Sep 27 05:12:22 2003 ----- misc/build/xmlsec1-1.2.6/src/mscrypto/x509vfy.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/mscrypto/x509vfy.c Sat Sep 27 12:12:22 2003 -+--- misc/build/xmlsec1-1.2.6/src/mscrypto/x509vfy.c Sun Apr 29 08:10:06 2007 - *************** - *** 70,76 **** - static xmlSecByte * xmlSecMSCryptoX509NameRead (xmlSecByte *str, -@@ -6115,8 +6183,8 @@ - } - } - xmlFree(cName); --*** misc/xmlsec1-1.2.6/src/nss/Makefile.am Tue Sep 16 11:43:03 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/Makefile.am Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/Makefile.am Tue Sep 16 18:43:03 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/Makefile.am Sun Apr 29 08:10:06 2007 - *************** - *** 20,40 **** - $(NULL) -@@ -6163,8 +6231,8 @@ - $(NULL) - - libxmlsec1_nss_la_LIBADD = \ --*** misc/xmlsec1-1.2.6/src/nss/Makefile.in Thu Aug 26 08:00:32 2004 ----- misc/build/xmlsec1-1.2.6/src/nss/Makefile.in Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/Makefile.in Thu Aug 26 15:00:32 2004 -+--- misc/build/xmlsec1-1.2.6/src/nss/Makefile.in Sun Apr 29 08:10:06 2007 - *************** - *** 54,62 **** - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ -@@ -6288,8 +6356,8 @@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pkikeys.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/signatures.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/symkeys.Plo@am__quote@ --*** misc/xmlsec1-1.2.6/src/nss/akmngr.c Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/src/nss/akmngr.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/akmngr.c Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/src/nss/akmngr.c Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -6678,8 +6746,8 @@ - ! return(0) ; - ! } - ! --*** misc/xmlsec1-1.2.6/src/nss/ciphers.c Fri Sep 26 02:58:15 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/ciphers.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/ciphers.c Fri Sep 26 09:58:15 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/ciphers.c Sun Apr 29 08:10:06 2007 - *************** - *** 1,838 **** - ! /** -@@ -8472,8 +8540,8 @@ - } - ! - --*** misc/xmlsec1-1.2.6/src/nss/crypto.c Wed Oct 29 16:57:25 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/crypto.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/crypto.c Thu Oct 30 00:57:25 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/crypto.c Sun Apr 29 08:10:06 2007 - *************** - *** 130,135 **** - --- 130,136 ---- -@@ -8526,8 +8594,8 @@ - - return(gXmlSecNssFunctions); - } --*** misc/xmlsec1-1.2.6/src/nss/digests.c Fri Sep 26 02:58:15 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/digests.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/digests.c Fri Sep 26 09:58:15 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/digests.c Sun Apr 29 08:10:06 2007 - *************** - *** 21,27 **** - #include <xmlsec/transforms.h> -@@ -8623,8 +8691,8 @@ - return(-1); - } - xmlSecAssert2(ctx->dgstSize > 0, -1); --*** misc/xmlsec1-1.2.6/src/nss/hmac.c Fri Sep 26 02:58:15 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/hmac.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/hmac.c Fri Sep 26 09:58:15 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/hmac.c Sun Apr 29 08:10:06 2007 - *************** - *** 23,30 **** - #include <xmlsec/transforms.h> -@@ -8758,8 +8826,8 @@ - return(-1); - } - xmlSecAssert2(dgstSize > 0, -1); --*** misc/xmlsec1-1.2.6/src/nss/keysstore.c Fri Sep 26 02:58:15 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/keysstore.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/keysstore.c Fri Sep 26 09:58:15 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/keysstore.c Sun Apr 29 08:10:06 2007 - *************** - *** 1,119 **** - /** -@@ -9826,8 +9894,8 @@ - ! return(0); - } - + --*** misc/xmlsec1-1.2.6/src/nss/keytrans.c Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/src/nss/keytrans.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/keytrans.c Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/src/nss/keytrans.c Sun Apr 29 08:10:06 2007 - *************** - *** 1 **** - ! dummy -@@ -10576,8 +10644,8 @@ - ! - ! #endif /* XMLSEC_NO_RSA */ - ! --*** misc/xmlsec1-1.2.6/src/nss/keywrapers.c Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/src/nss/keywrapers.c Tue Mar 27 11:21:29 2007 -+*** misc/xmlsec1-1.2.6/src/nss/keywrapers.c Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/src/nss/keywrapers.c Sun Apr 29 08:10:07 2007 - *************** - *** 1 **** - ! dummy -@@ -11779,8 +11847,8 @@ - ! - ! #endif /* XMLSEC_NO_DES */ - ! --*** misc/xmlsec1-1.2.6/src/nss/pkikeys.c Wed Mar 17 06:06:45 2004 ----- misc/build/xmlsec1-1.2.6/src/nss/pkikeys.c Tue Mar 27 11:21:30 2007 -+*** misc/xmlsec1-1.2.6/src/nss/pkikeys.c Wed Mar 17 14:06:45 2004 -+--- misc/build/xmlsec1-1.2.6/src/nss/pkikeys.c Sun Apr 29 08:10:07 2007 - *************** - *** 5,10 **** - --- 5,11 ---- -@@ -12579,8 +12647,8 @@ - - return(8 * SECKEY_PublicKeyStrength(ctx->pubkey)); - } --*** misc/xmlsec1-1.2.6/src/nss/signatures.c Fri Sep 26 02:58:15 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/signatures.c Tue Mar 27 11:21:30 2007 -+*** misc/xmlsec1-1.2.6/src/nss/signatures.c Fri Sep 26 09:58:15 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/signatures.c Sun Apr 29 08:10:07 2007 - *************** - *** 199,205 **** - xmlSecErrorsSafeString(xmlSecTransformGetName(transform)), -@@ -12717,8 +12785,8 @@ - return(-1); - } - --*** misc/xmlsec1-1.2.6/src/nss/symkeys.c Mon Jul 21 05:12:52 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/symkeys.c Tue Mar 27 11:21:30 2007 -+*** misc/xmlsec1-1.2.6/src/nss/symkeys.c Mon Jul 21 12:12:52 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/symkeys.c Sun Apr 29 08:10:07 2007 - *************** - *** 15,192 **** - #include <stdio.h> -@@ -14049,8 +14117,8 @@ - * - * Sets the value of HMAC key data. - * --*** misc/xmlsec1-1.2.6/src/nss/tokens.c Tue Mar 27 11:34:32 2007 ----- misc/build/xmlsec1-1.2.6/src/nss/tokens.c Tue Mar 27 11:21:30 2007 -+*** misc/xmlsec1-1.2.6/src/nss/tokens.c Sun Apr 29 08:10:41 2007 -+--- misc/build/xmlsec1-1.2.6/src/nss/tokens.c Sun Apr 29 08:10:07 2007 - *************** - *** 1 **** - ! dummy -@@ -14599,8 +14667,8 @@ - ! return(0); - ! } - ! --*** misc/xmlsec1-1.2.6/src/nss/x509.c Fri Sep 26 05:53:09 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/x509.c Tue Mar 27 11:21:30 2007 -+*** misc/xmlsec1-1.2.6/src/nss/x509.c Fri Sep 26 12:53:09 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/x509.c Sun Apr 29 08:10:07 2007 - *************** - *** 34,40 **** - #include <xmlsec/keys.h> -@@ -15708,8 +15776,8 @@ - static void - xmlSecNssX509CertDebugDump(CERTCertificate* cert, FILE* output) { - --- 1700,1705 ---- --*** misc/xmlsec1-1.2.6/src/nss/x509vfy.c Fri Sep 26 02:58:15 2003 ----- misc/build/xmlsec1-1.2.6/src/nss/x509vfy.c Tue Mar 27 11:21:30 2007 -+*** misc/xmlsec1-1.2.6/src/nss/x509vfy.c Fri Sep 26 09:58:15 2003 -+--- misc/build/xmlsec1-1.2.6/src/nss/x509vfy.c Sun Apr 29 08:10:07 2007 - *************** - *** 30,35 **** - --- 30,36 ---- -@@ -16851,8 +16919,8 @@ - - + #endif /* XMLSEC_NO_X509 */ - --*** misc/xmlsec1-1.2.6/win32/Makefile.msvc Wed Jun 9 16:35:12 2004 ----- misc/build/xmlsec1-1.2.6/win32/Makefile.msvc Tue Mar 27 11:21:30 2007 -+*** misc/xmlsec1-1.2.6/win32/Makefile.msvc Wed Jun 9 23:35:12 2004 -+--- misc/build/xmlsec1-1.2.6/win32/Makefile.msvc Sun Apr 29 08:10:07 2007 - *************** - *** 223,228 **** - --- 223,232 ---- diff --git a/editors/openoffice.org-2-devel/files/patch-i76320 b/editors/openoffice.org-2-devel/files/patch-i76320 deleted file mode 100644 index bd4639171dde..000000000000 --- a/editors/openoffice.org-2-devel/files/patch-i76320 +++ /dev/null @@ -1,17 +0,0 @@ -Index: sd/source/ui/inc/tools/ConfigurationAccess.hxx -=================================================================== -RCS file: /cvs/graphics/sd/source/ui/inc/tools/ConfigurationAccess.hxx,v -retrieving revision 1.2.8.1 -retrieving revision 1.2 -diff -u -r1.2.8.1 -r1.2 ---- sd/source/ui/inc/tools/ConfigurationAccess.hxx 12 Apr 2007 20:30:02 -0000 1.2.8.1 -+++ sd/source/ui/inc/tools/ConfigurationAccess.hxx 3 Apr 2007 16:14:52 -0000 1.2 -@@ -110,7 +110,7 @@ - @param rList - The list to be filled. - */ -- static void FillList( -+ static void ConfigurationAccess::FillList( - const com::sun::star::uno::Reference<com::sun::star::container::XNameAccess>& rxContainer, - const ::rtl::OUString& rsArgument, - ::std::vector<rtl::OUString>& rList); diff --git a/editors/openoffice.org-2-devel/files/patch-i76968 b/editors/openoffice.org-2-devel/files/patch-i76968 new file mode 100644 index 000000000000..8bf3e43d703d --- /dev/null +++ b/editors/openoffice.org-2-devel/files/patch-i76968 @@ -0,0 +1,642 @@ +Sync FreeBSD-specific files with CWS sixtyfour11. + +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/makefile.mk Thu Jan 25 08:27:35 2007 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/makefile.mk Wed Apr 25 10:57:20 2007 +@@ -52,11 +52,6 @@ + CFLAGS += -DLEAK_STATIC_DATA + .ENDIF + +-NOOPTFILES= \ +- $(SLO)$/uno2cpp.obj +- +- +-CFLAGSNOOPT=-O0 + + SLOFILES= \ + $(SLO)$/abi.obj \ +--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx Thu May 3 21:45:19 2007 ++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx Wed Apr 25 10:57:33 2007 +@@ -38,6 +38,7 @@ + + #include <stdio.h> + #include <stdlib.h> ++#include <string.h> + #include <rtl/alloc.h> + + #include <com/sun/star/uno/genfunc.hxx> +@@ -55,265 +56,188 @@ + using namespace ::rtl; + using namespace ::com::sun::star::uno; + +-void dummy_can_throw_anything( char const * ); +- +-// 6 integral parameters are passed in registers +-const sal_uInt32 GPR_COUNT = 6; +- +-// 8 floating point parameters are passed in SSE registers +-const sal_uInt32 FPR_COUNT = 8; +- +-static inline void +-invoke_count_words(char * pPT, // Parameter Types +- sal_uInt32 & nr_gpr, // Number of arguments in GPRs +- sal_uInt32 & nr_fpr, // Number of arguments in FPRs +- sal_uInt32 & nr_stack) // Number of arguments in stack +-{ +- nr_gpr = 0; +- nr_fpr = 0; +- nr_stack = 0; +- char c; +- +- while ((c = *pPT++) != 'X') +- { +- if (c == 'F' || c == 'D') +- { +- if (nr_fpr < FPR_COUNT) +- nr_fpr++; +- else +- nr_stack++; +- } +- else +- { +- if (nr_gpr < GPR_COUNT) +- nr_gpr++; +- else +- nr_stack++; +- } +- } +-} +- +-static void +-invoke_copy_to_stack(sal_uInt64 * pDS, // Stack Storage +- char * pPT, // Parameter Types +- sal_uInt64 * pSV, // Source Values +- sal_uInt64 * pGPR, // General Purpose Registers +- double * pFPR) // Floating-Point Registers +-{ +- sal_uInt32 nr_gpr = 0; +- sal_uInt32 nr_fpr = 0; +- sal_uInt64 value; +- char c; +- +- while ((c = *pPT++) != 'X') +- { +- switch (c) +- { +- case 'D': // Double +- if (nr_fpr < FPR_COUNT) +- pFPR[nr_fpr++] = *reinterpret_cast<double *>( pSV++ ); +- else +- *pDS++ = *pSV++; +- break; +- +- case 'F': // Float +- if (nr_fpr < FPR_COUNT) +- // The value in %xmm register is already prepared to +- // be retrieved as a float. Therefore, we pass the +- // value verbatim, as a double without conversion. +- pFPR[nr_fpr++] = *reinterpret_cast<double *>( pSV++ ); +- else +- *pDS++ = *pSV++; +- break; +- +- case 'H': // 64-bit Word +- if (nr_gpr < GPR_COUNT) +- pGPR[nr_gpr++] = *pSV++; +- else +- *pDS++ = *pSV++; +- break; +- +- case 'I': // 32-bit Word +- if (nr_gpr < GPR_COUNT) +- pGPR[nr_gpr++] = *reinterpret_cast<sal_uInt32 *>( pSV++ ); +- else +- *pDS++ = *reinterpret_cast<sal_uInt32 *>( pSV++ ); +- break; +- +- case 'S': // 16-bit Word +- if (nr_gpr < GPR_COUNT) +- pGPR[nr_gpr++] = *reinterpret_cast<sal_uInt16 *>( pSV++ ); +- else +- *pDS++ = *reinterpret_cast<sal_uInt16 *>( pSV++ ); +- break; +- +- case 'B': // Byte +- if (nr_gpr < GPR_COUNT) +- pGPR[nr_gpr++] = *reinterpret_cast<sal_uInt8 *>( pSV++ ); +- else +- *pDS++ = *reinterpret_cast<sal_uInt8 *>( pSV++ ); +- break; +- +- default: // Default, assume 64-bit values +- if (nr_gpr < GPR_COUNT) +- pGPR[nr_gpr++] = *pSV++; +- else +- *pDS++ = *pSV++; +- break; +- } +- } +-} +- + //================================================================================================== + static void callVirtualMethod(void * pThis, sal_uInt32 nVtableIndex, +- void * pRegisterReturn, typelib_TypeDescription * pReturnTypeDescr, bool bSimpleReturn, +- char * pPT, sal_uInt64 * pStackLongs, sal_uInt32 nStackLongs) +-{ +- sal_uInt32 nr_gpr, nr_fpr, nr_stack; +- invoke_count_words(pPT, nr_gpr, nr_fpr, nr_stack); ++ void * pRegisterReturn, typelib_TypeDescription * pReturnTypeDescr, bool bSimpleReturn, ++ sal_uInt64 *pStack, sal_uInt32 nStack, ++ sal_uInt64 *pGPR, sal_uInt32 nGPR, ++ double *pFPR, sal_uInt32 nFPR) __attribute__((noinline)); + +- // Stack, if used, must be 16-bytes aligned +- if (nr_stack) +- nr_stack = (nr_stack + 1) & ~1; +- ++static void callVirtualMethod(void * pThis, sal_uInt32 nVtableIndex, ++ void * pRegisterReturn, typelib_TypeDescription * pReturnTypeDescr, bool bSimpleReturn, ++ sal_uInt64 *pStack, sal_uInt32 nStack, ++ sal_uInt64 *pGPR, sal_uInt32 nGPR, ++ double *pFPR, sal_uInt32 nFPR) ++{ + #if OSL_DEBUG_LEVEL > 1 +- // Let's figure out what is really going on here +- fprintf(stderr,"callVirtualMethod() parameters string is %s\n", pPT); +- { +- sal_uInt32 k = nStackLongs; +- sal_uInt64 *q = pStackLongs; +- while (k > 0) +- { +- fprintf(stderr, "uno stack is: %lx\n", *q); +- k--; +- q++; +- } +- } +-#endif +- +- // Load parameters to stack, if necessary +- sal_uInt64 *stack = (sal_uInt64 *) __builtin_alloca(nr_stack * 8); +- sal_uInt64 gpregs[GPR_COUNT]; +- double fpregs[FPR_COUNT]; +- invoke_copy_to_stack(stack, pPT, pStackLongs, gpregs, fpregs); +- +- // Load FPR registers from fpregs[] +- register double d0 asm("xmm0"); +- register double d1 asm("xmm1"); +- register double d2 asm("xmm2"); +- register double d3 asm("xmm3"); +- register double d4 asm("xmm4"); +- register double d5 asm("xmm5"); +- register double d6 asm("xmm6"); +- register double d7 asm("xmm7"); +- +- switch (nr_fpr) { +-#define ARG_FPR(N) \ +- case N+1: d##N = fpregs[N]; +- ARG_FPR(7); +- ARG_FPR(6); +- ARG_FPR(5); +- ARG_FPR(4); +- ARG_FPR(3); +- ARG_FPR(2); +- ARG_FPR(1); +- ARG_FPR(0); +- case 0:; +-#undef ARG_FPR +- } +- +- // Load GPR registers from gpregs[] +- register sal_uInt64 a0 asm("rdi"); +- register sal_uInt64 a1 asm("rsi"); +- register sal_uInt64 a2 asm("rdx"); +- register sal_uInt64 a3 asm("rcx"); +- register sal_uInt64 a4 asm("r8"); +- register sal_uInt64 a5 asm("r9"); +- +- switch (nr_gpr) { +-#define ARG_GPR(N) \ +- case N+1: a##N = gpregs[N]; +- ARG_GPR(5); +- ARG_GPR(4); +- ARG_GPR(3); +- ARG_GPR(2); +- ARG_GPR(1); +- ARG_GPR(0); +- case 0:; +-#undef ARG_GPR ++ // Let's figure out what is really going on here ++ { ++ fprintf( stderr, "= callVirtualMethod() =\nGPR's (%d): ", nGPR ); ++ for ( int i = 0; i < nGPR; ++i ) ++ fprintf( stderr, "0x%lx, ", pGPR[i] ); ++ fprintf( stderr, "\nFPR's (%d): ", nFPR ); ++ for ( int i = 0; i < nFPR; ++i ) ++ fprintf( stderr, "%f, ", pFPR[i] ); ++ fprintf( stderr, "\nStack (%d): ", nStack ); ++ for ( int i = 0; i < nStack; ++i ) ++ fprintf( stderr, "0x%lx, ", pStack[i] ); ++ fprintf( stderr, "\n" ); + } ++#endif + +- if ( bSimpleReturn ) +- a0 = (sal_uInt64) pThis; +- else +- a1 = (sal_uInt64) pThis; +- +- // Ensure that assignments to SSE registers won't be optimized away +- asm("" :: +- "x" (d0), "x" (d1), "x" (d2), "x" (d3), +- "x" (d4), "x" (d5), "x" (d6), "x" (d7)); ++ // The call instruction within the asm section of callVirtualMethod may throw ++ // exceptions. So that the compiler handles this correctly, it is important ++ // that (a) callVirtualMethod might call dummy_can_throw_anything (although this ++ // never happens at runtime), which in turn can throw exceptions, and (b) ++ // callVirtualMethod is not inlined at its call site (so that any exceptions are ++ // caught which are thrown from the instruction calling callVirtualMethod): ++ if ( !pThis ) ++ CPPU_CURRENT_NAMESPACE::dummy_can_throw_anything( "xxx" ); // address something ++ ++ // Should not happen, but... ++ if ( nFPR > x86_64::MAX_SSE_REGS ) ++ nFPR = x86_64::MAX_SSE_REGS; ++ if ( nGPR > x86_64::MAX_GPR_REGS ) ++ nGPR = x86_64::MAX_GPR_REGS; + + // Get pointer to method + sal_uInt64 pMethod = *((sal_uInt64 *)pThis); + pMethod += 8 * nVtableIndex; + pMethod = *((sal_uInt64 *)pMethod); + +- union ReturnValue { +- struct { +- sal_uInt64 rax; +- sal_uInt64 rdx; +- } i; +- struct { +- double xmm0; +- double xmm1; +- } f; +- }; ++ // Load parameters to stack, if necessary ++ if ( nStack ) ++ { ++ // 16-bytes aligned ++ sal_uInt32 nStackBytes = ( ( nStack + 1 ) >> 1 ) * 16; ++ sal_uInt64 *pCallStack = (sal_uInt64 *) __builtin_alloca( nStackBytes ); ++ memcpy( pCallStack, pStack, nStackBytes ); ++ } + +- typedef ReturnValue (* FunctionCall )( sal_uInt64, sal_uInt64, sal_uInt64, sal_uInt64, sal_uInt64, sal_uInt64 ); ++ // Return values ++ sal_uInt64 rax; ++ sal_uInt64 rdx; ++ double xmm0; + +- // Perform the call +- ReturnValue aRet = ( ( FunctionCall ) pMethod )( a0, a1, a2, a3, a4, a5 ); ++ asm volatile ( ++ ++ // Fill the xmm registers ++ "movq %2, %%rax\n\t" + +- switch (pReturnTypeDescr->eTypeClass) +- { +- case typelib_TypeClass_HYPER: +- case typelib_TypeClass_UNSIGNED_HYPER: +- *reinterpret_cast<sal_uInt64 *>( pRegisterReturn ) = aRet.i.rax; +- break; +- case typelib_TypeClass_LONG: +- case typelib_TypeClass_UNSIGNED_LONG: +- case typelib_TypeClass_ENUM: +- *reinterpret_cast<sal_uInt32 *>( pRegisterReturn ) = *reinterpret_cast<sal_uInt32*>( &aRet.i.rax ); +- break; +- case typelib_TypeClass_CHAR: +- case typelib_TypeClass_SHORT: +- case typelib_TypeClass_UNSIGNED_SHORT: +- *reinterpret_cast<sal_uInt16 *>( pRegisterReturn ) = *reinterpret_cast<sal_uInt16*>( &aRet.i.rax ); +- break; +- case typelib_TypeClass_BOOLEAN: +- case typelib_TypeClass_BYTE: +- *reinterpret_cast<sal_uInt8 *>( pRegisterReturn ) = *reinterpret_cast<sal_uInt8*>( &aRet.i.rax ); +- break; +- case typelib_TypeClass_FLOAT: +- *reinterpret_cast<float *>( pRegisterReturn ) = *reinterpret_cast<float*>( &aRet.f.xmm0 ); +- break; +- case typelib_TypeClass_DOUBLE: +- *reinterpret_cast<double *>( pRegisterReturn ) = *reinterpret_cast<double*>( &aRet.f.xmm0 ); +- break; +- default: { +- sal_Int32 const nRetSize = pReturnTypeDescr->nSize; +- if (bSimpleReturn && nRetSize <= 16 && nRetSize > 0) { +- if (nRetSize > 8) +- static_cast<sal_uInt64 *>(pRegisterReturn)[1] = aRet.i.rdx; +- static_cast<sal_uInt64 *>(pRegisterReturn)[0] = aRet.i.rax; +- } ++ "movsd (%%rax), %%xmm0\n\t" ++ "movsd 8(%%rax), %%xmm1\n\t" ++ "movsd 16(%%rax), %%xmm2\n\t" ++ "movsd 24(%%rax), %%xmm3\n\t" ++ "movsd 32(%%rax), %%xmm4\n\t" ++ "movsd 40(%%rax), %%xmm5\n\t" ++ "movsd 48(%%rax), %%xmm6\n\t" ++ "movsd 56(%%rax), %%xmm7\n\t" ++ ++ // Fill the general purpose registers ++ "movq %1, %%rax\n\t" ++ ++ "movq (%%rax), %%rdi\n\t" ++ "movq 8(%%rax), %%rsi\n\t" ++ "movq 16(%%rax), %%rdx\n\t" ++ "movq 24(%%rax), %%rcx\n\t" ++ "movq 32(%%rax), %%r8\n\t" ++ "movq 40(%%rax), %%r9\n\t" ++ ++ // Perform the call ++ "movq %0, %%r11\n\t" ++ "movq %3, %%rax\n\t" ++ "call *%%r11\n\t" ++ ++ // Fill the return values ++ "movq %%rax, %4\n\t" ++ "movq %%rdx, %5\n\t" ++ "movsd %%xmm0, %6\n\t" ++ : ++ : "m" ( pMethod ), "m" ( pGPR ), "m" ( pFPR ), "m" ( nFPR ), ++ "m" ( rax ), "m" ( rdx ), "m" ( xmm0 ) ++ : "rax", "rdi", "rsi", "rdx", "rcx", "r8", "r9", "r11" ++ ); ++ ++ switch (pReturnTypeDescr->eTypeClass) ++ { ++ case typelib_TypeClass_HYPER: ++ case typelib_TypeClass_UNSIGNED_HYPER: ++ *reinterpret_cast<sal_uInt64 *>( pRegisterReturn ) = rax; + break; ++ case typelib_TypeClass_LONG: ++ case typelib_TypeClass_UNSIGNED_LONG: ++ case typelib_TypeClass_ENUM: ++ *reinterpret_cast<sal_uInt32 *>( pRegisterReturn ) = *reinterpret_cast<sal_uInt32*>( &rax ); ++ break; ++ case typelib_TypeClass_CHAR: ++ case typelib_TypeClass_SHORT: ++ case typelib_TypeClass_UNSIGNED_SHORT: ++ *reinterpret_cast<sal_uInt16 *>( pRegisterReturn ) = *reinterpret_cast<sal_uInt16*>( &rax ); ++ break; ++ case typelib_TypeClass_BOOLEAN: ++ case typelib_TypeClass_BYTE: ++ *reinterpret_cast<sal_uInt8 *>( pRegisterReturn ) = *reinterpret_cast<sal_uInt8*>( &rax ); ++ break; ++ case typelib_TypeClass_FLOAT: ++ case typelib_TypeClass_DOUBLE: ++ *reinterpret_cast<double *>( pRegisterReturn ) = xmm0; ++ break; ++ default: ++ { ++ sal_Int32 const nRetSize = pReturnTypeDescr->nSize; ++ if (bSimpleReturn && nRetSize <= 16 && nRetSize > 0) ++ { ++ if (nRetSize > 8) ++ static_cast<sal_uInt64 *>(pRegisterReturn)[1] = rdx; ++ static_cast<sal_uInt64 *>(pRegisterReturn)[0] = rax; ++ } ++ break; ++ } + } +- } + } + ++//================================================================================================== ++ ++// Macros for easier insertion of values to registers or stack ++// pSV - pointer to the source ++// nr - order of the value [will be increased if stored to register] ++// pFPR, pGPR - pointer to the registers ++// pDS - pointer to the stack [will be increased if stored here] ++ ++// The value in %xmm register is already prepared to be retrieved as a float, ++// thus we treat float and double the same ++#define INSERT_FLOAT_DOUBLE( pSV, nr, pFPR, pDS ) \ ++ if ( nr < x86_64::MAX_SSE_REGS ) \ ++ pFPR[nr++] = *reinterpret_cast<double *>( pSV ); \ ++ else \ ++ *pDS++ = *reinterpret_cast<sal_uInt64 *>( pSV ); // verbatim! ++ ++#define INSERT_INT64( pSV, nr, pGPR, pDS ) \ ++ if ( nr < x86_64::MAX_GPR_REGS ) \ ++ pGPR[nr++] = *reinterpret_cast<sal_uInt64 *>( pSV ); \ ++ else \ ++ *pDS++ = *reinterpret_cast<sal_uInt64 *>( pSV ); ++ ++#define INSERT_INT32( pSV, nr, pGPR, pDS ) \ ++ if ( nr < x86_64::MAX_GPR_REGS ) \ ++ pGPR[nr++] = *reinterpret_cast<sal_uInt32 *>( pSV ); \ ++ else \ ++ *pDS++ = *reinterpret_cast<sal_uInt32 *>( pSV ); ++ ++#define INSERT_INT16( pSV, nr, pGPR, pDS ) \ ++ if ( nr < x86_64::MAX_GPR_REGS ) \ ++ pGPR[nr++] = *reinterpret_cast<sal_uInt16 *>( pSV ); \ ++ else \ ++ *pDS++ = *reinterpret_cast<sal_uInt16 *>( pSV ); ++ ++#define INSERT_INT8( pSV, nr, pGPR, pDS ) \ ++ if ( nr < x86_64::MAX_GPR_REGS ) \ ++ pGPR[nr++] = *reinterpret_cast<sal_uInt8 *>( pSV ); \ ++ else \ ++ *pDS++ = *reinterpret_cast<sal_uInt8 *>( pSV ); + + //================================================================================================== ++ + static void cpp_call( + bridges::cpp_uno::shared::UnoInterfaceProxy * pThis, + bridges::cpp_uno::shared::VtableSlot aVtableSlot, +@@ -322,54 +246,52 @@ + void * pUnoReturn, void * pUnoArgs[], uno_Any ** ppUnoExc ) + { + // Maxium space for [complex ret ptr], values | ptr ... +- char * pCppStack = (char *)__builtin_alloca( (nParams + 3) * sizeof(sal_uInt64) ); +- char * pCppStackStart = pCppStack; ++ // (but will be used less - some of the values will be in pGPR and pFPR) ++ sal_uInt64 *pStack = (sal_uInt64 *)__builtin_alloca( (nParams + 3) * sizeof(sal_uInt64) ); ++ sal_uInt64 *pStackStart = pStack; + +- // We need to know parameter types for callVirtualMethod() so generate a signature string +- char * pParamType = (char *)__builtin_alloca( nParams + 3 ); +- char * pPT = pParamType; ++ sal_uInt64 pGPR[x86_64::MAX_GPR_REGS]; ++ sal_uInt32 nGPR = 0; ++ ++ double pFPR[x86_64::MAX_SSE_REGS]; ++ sal_uInt32 nFPR = 0; + + // Return + typelib_TypeDescription * pReturnTypeDescr = 0; + TYPELIB_DANGER_GET( &pReturnTypeDescr, pReturnTypeRef ); + OSL_ENSURE( pReturnTypeDescr, "### expected return type description!" ); + +- void * pCppReturn = 0; // if != 0 && != pUnoReturn, needs reconversion ++ void * pCppReturn = 0; // if != 0 && != pUnoReturn, needs reconversion (see below) + + bool bSimpleReturn = true; +- if (pReturnTypeDescr) ++ if ( pReturnTypeDescr ) + { + if ( x86_64::return_in_hidden_param( pReturnTypeRef ) ) + bSimpleReturn = false; + +- if (bSimpleReturn) ++ if ( bSimpleReturn ) + pCppReturn = pUnoReturn; // direct way for simple types + else + { + // complex return via ptr +- pCppReturn = *(void **)pCppStack = (bridges::cpp_uno::shared::relatesToInterfaceType( pReturnTypeDescr ) +- ? __builtin_alloca( pReturnTypeDescr->nSize ) +- : pUnoReturn); // direct way +- *pPT++ = 'H'; +- pCppStack += sizeof(void *); ++ pCppReturn = bridges::cpp_uno::shared::relatesToInterfaceType( pReturnTypeDescr )? ++ __builtin_alloca( pReturnTypeDescr->nSize ) : pUnoReturn; ++ INSERT_INT64( &pCppReturn, nGPR, pGPR, pStack ); + } + } + + // Push "this" pointer + void * pAdjustedThisPtr = reinterpret_cast< void ** >( pThis->getCppI() ) + aVtableSlot.offset; +- *(void **)pCppStack = pAdjustedThisPtr; +- *pPT++ = 'H'; +- pCppStack += sizeof(void *); ++ INSERT_INT64( &pAdjustedThisPtr, nGPR, pGPR, pStack ); + +- // stack space + // Args +- void ** pCppArgs = (void **)alloca( 3 * sizeof(void *) * nParams ); ++ void ** pCppArgs = (void **)alloca( 3 * sizeof(void *) * nParams ); + // Indizes of values this have to be converted (interface conversion cpp<=>uno) + sal_Int32 * pTempIndizes = (sal_Int32 *)(pCppArgs + nParams); + // Type descriptions for reconversions + typelib_TypeDescription ** ppTempParamTypeDescr = (typelib_TypeDescription **)(pCppArgs + (2 * nParams)); + +- sal_Int32 nTempIndizes = 0; ++ sal_Int32 nTempIndizes = 0; + + for ( sal_Int32 nPos = 0; nPos < nParams; ++nPos ) + { +@@ -379,45 +301,32 @@ + + if (!rParam.bOut && bridges::cpp_uno::shared::isSimpleType( pParamTypeDescr )) + { +- uno_copyAndConvertData( pCppArgs[nPos] = pCppStack, pUnoArgs[nPos], pParamTypeDescr, ++ uno_copyAndConvertData( pCppArgs[nPos] = alloca( 8 ), pUnoArgs[nPos], pParamTypeDescr, + pThis->getBridge()->getUno2Cpp() ); + + switch (pParamTypeDescr->eTypeClass) + { +- +- // we need to know type of each param so that we know whether to use +- // gpr or fpr to pass in parameters: +- // Key: I - 32-bit value passed in gpr +- // B - byte value passed in gpr +- // S - short value passed in gpr +- // F - float value pass in fpr +- // D - double value pass in fpr +- // H - long value passed in gpr +- // X - indicates end of parameter description string +- ++ case typelib_TypeClass_HYPER: ++ case typelib_TypeClass_UNSIGNED_HYPER: ++ INSERT_INT64( pCppArgs[nPos], nGPR, pGPR, pStack ); ++ break; + case typelib_TypeClass_LONG: + case typelib_TypeClass_UNSIGNED_LONG: + case typelib_TypeClass_ENUM: +- *pPT++ = 'I'; ++ INSERT_INT32( pCppArgs[nPos], nGPR, pGPR, pStack ); + break; + case typelib_TypeClass_SHORT: + case typelib_TypeClass_CHAR: + case typelib_TypeClass_UNSIGNED_SHORT: +- *pPT++ = 'S'; ++ INSERT_INT16( pCppArgs[nPos], nGPR, pGPR, pStack ); + break; + case typelib_TypeClass_BOOLEAN: + case typelib_TypeClass_BYTE: +- *pPT++ = 'B'; ++ INSERT_INT8( pCppArgs[nPos], nGPR, pGPR, pStack ); + break; + case typelib_TypeClass_FLOAT: +- *pPT++ = 'F'; +- break; + case typelib_TypeClass_DOUBLE: +- *pPT++ = 'D'; +- break; +- case typelib_TypeClass_HYPER: +- case typelib_TypeClass_UNSIGNED_HYPER: +- *pPT++ = 'H'; ++ INSERT_FLOAT_DOUBLE( pCppArgs[nPos], nFPR, pFPR, pStack ); + break; + } + +@@ -430,7 +339,7 @@ + { + // cpp out is constructed mem, uno out is not! + uno_constructData( +- *(void **)pCppStack = pCppArgs[nPos] = alloca( pParamTypeDescr->nSize ), ++ pCppArgs[nPos] = alloca( pParamTypeDescr->nSize ), + pParamTypeDescr ); + pTempIndizes[nTempIndizes] = nPos; // default constructed for cpp call + // will be released at reconversion +@@ -440,7 +349,7 @@ + else if (bridges::cpp_uno::shared::relatesToInterfaceType( pParamTypeDescr )) + { + uno_copyAndConvertData( +- *(void **)pCppStack = pCppArgs[nPos] = alloca( pParamTypeDescr->nSize ), ++ pCppArgs[nPos] = alloca( pParamTypeDescr->nSize ), + pUnoArgs[nPos], pParamTypeDescr, pThis->getBridge()->getUno2Cpp() ); + + pTempIndizes[nTempIndizes] = nPos; // has to be reconverted +@@ -449,27 +358,22 @@ + } + else // direct way + { +- *(void **)pCppStack = pCppArgs[nPos] = pUnoArgs[nPos]; ++ pCppArgs[nPos] = pUnoArgs[nPos]; + // no longer needed + TYPELIB_DANGER_RELEASE( pParamTypeDescr ); + } +- // FIXME: is this the right way to pass these? +- *pPT++='H'; ++ INSERT_INT64( &(pCppArgs[nPos]), nGPR, pGPR, pStack ); + } +- pCppStack += sizeof(sal_uInt64); // standard parameter length + } + +- // terminate the signature string +- *pPT++ = 'X'; +- *pPT = 0; +- + try + { +- OSL_ENSURE( !( (pCppStack - pCppStackStart ) & 7), "UNALIGNED STACK !!! (Please DO panic)" ); + callVirtualMethod( + pAdjustedThisPtr, aVtableSlot.index, +- pCppReturn, pReturnTypeDescr, bSimpleReturn, pParamType, +- (sal_uInt64 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_uInt64) ); ++ pCppReturn, pReturnTypeDescr, bSimpleReturn, ++ pStackStart, ( pStack - pStackStart ), ++ pGPR, nGPR, ++ pFPR, nFPR ); + // NO exception occured... + *ppUnoExc = 0; + +@@ -525,8 +429,8 @@ + } + } + +- + //================================================================================================== ++ + namespace bridges { namespace cpp_uno { namespace shared { + + void unoInterfaceProxyDispatch( diff --git a/editors/openoffice.org-2-devel/files/patch-i76969 b/editors/openoffice.org-2-devel/files/patch-i76969 new file mode 100644 index 000000000000..123402727290 --- /dev/null +++ b/editors/openoffice.org-2-devel/files/patch-i76969 @@ -0,0 +1,40 @@ +Index: solenv/inc/unxfbsd.mk +=================================================================== +RCS file: /cvs/tools/solenv/inc/unxfbsd.mk,v +retrieving revision 1.3 +diff -u -r1.3 unxfbsd.mk +--- solenv/inc/unxfbsd.mk 9 Mar 2007 09:07:55 -0000 1.3 ++++ solenv/inc/unxfbsd.mk 4 May 2007 16:22:53 -0000 +@@ -121,12 +121,6 @@ + # Compiler flags for debugging + CFLAGSDEBUG=-g + CFLAGSDBGUTIL= +-# Compiler flags for enabling optimizations +-.IF "$(PRODUCT)"!="" +-CFLAGSOPT=-Os -fno-strict-aliasing # optimizing for products +-.ELSE # "$(PRODUCT)"!="" +-CFLAGSOPT= # no optimizing for non products +-.ENDIF # "$(PRODUCT)"!="" + # Compiler flags for disabling optimizations + CFLAGSNOOPT=-O0 + # Compiler flags for describing the output path +Index: solenv/inc/unxfbsdi.mk +=================================================================== +RCS file: /cvs/tools/solenv/inc/unxfbsdi.mk,v +retrieving revision 1.24 +diff -u -r1.24 unxfbsdi.mk +--- solenv/inc/unxfbsdi.mk 19 Jul 2006 09:27:04 -0000 1.24 ++++ solenv/inc/unxfbsdi.mk 4 May 2007 16:22:53 -0000 +@@ -43,5 +43,12 @@ + # exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build + ARCH_FLAGS*=-mtune=pentiumpro + ++# Compiler flags for enabling optimizations ++.IF "$(PRODUCT)"!="" ++CFLAGSOPT=-Os -fno-strict-aliasing # optimizing for products ++.ELSE # "$(PRODUCT)"!="" ++CFLAGSOPT= # no optimizing for non products ++.ENDIF # "$(PRODUCT)"!="" ++ + # platform specific identifier for shared libs + DLLPOSTFIX=fi diff --git a/editors/openoffice.org-2-devel/files/patch-i77615 b/editors/openoffice.org-2-devel/files/patch-i77615 new file mode 100644 index 000000000000..89fe1aaee7c8 --- /dev/null +++ b/editors/openoffice.org-2-devel/files/patch-i77615 @@ -0,0 +1,57 @@ +For FreeBSD, libxslt builds libraries as libxslt.so.2 or something +like that. Following patch fixes this. + +Index: libxslt/libxslt-1.1.16.patch +=================================================================== +RCS file: /cvs/external/libxslt/libxslt-1.1.16.patch,v +retrieving revision 1.2 +diff -u -r1.2 libxslt-1.1.16.patch +--- libxslt/libxslt-1.1.16.patch 10 May 2007 13:10:07 -0000 1.2 ++++ libxslt/libxslt-1.1.16.patch 20 May 2007 02:35:31 -0000 +@@ -108,3 +108,46 @@ + ! + ! exit 0 + ++*** misc/libxslt-1.1.16/ltmain.sh Sun Feb 12 09:50:49 2006 ++--- misc/build/libxslt-1.1.16/ltmain.sh Sun May 20 11:34:29 2007 ++*************** ++*** 3192,3200 **** ++ revision="$number_revision" ++ ;; ++ freebsd-aout|freebsd-elf|sunos) ++! current="$number_major" ++! revision="$number_minor" ++! age="0" ++ ;; ++ irix|nonstopux) ++ current=`expr $number_major + $number_minor - 1` ++--- 3192,3200 ---- ++ revision="$number_revision" ++ ;; ++ freebsd-aout|freebsd-elf|sunos) ++! current=`expr $number_major + $number_minor` ++! age="$number_minor" ++! revision="$number_revision" ++ ;; ++ irix|nonstopux) ++ current=`expr $number_major + $number_minor - 1` ++*************** ++*** 3267,3274 **** ++ ;; ++ ++ freebsd-elf) ++! major=".$current" ++! versuffix=".$current"; ++ ;; ++ ++ irix | nonstopux) ++--- 3267,3274 ---- ++ ;; ++ ++ freebsd-elf) ++! major=.`expr $current - $age` ++! versuffix="$major.$age.$revision" ++ ;; ++ ++ irix | nonstopux) ++ diff --git a/editors/openoffice.org-2-devel/files/patch-i77793 b/editors/openoffice.org-2-devel/files/patch-i77793 new file mode 100644 index 000000000000..e182b8727409 --- /dev/null +++ b/editors/openoffice.org-2-devel/files/patch-i77793 @@ -0,0 +1,11 @@ +--- sw/source/core/unocore/unotbl.cxx 2007-05-25 13:02:05.000000000 +0200 ++++ sw/source/core/unocore/unotbl.cxx 2007-05-25 13:09:00.000000000 +0200 +@@ -4455,7 +4455,7 @@ + // now we'll try to get a useful numerical value + // from the text in the cell... + +- ULONG nFIndex; ++ sal_uInt32 nFIndex; + SvNumberFormatter* pNumFormatter = pTblCrsr->GetDoc()->GetNumberFormatter(); + + // look for SwTblBoxNumFormat value in parents as well diff --git a/editors/openoffice.org-2-devel/files/patch-i77829 b/editors/openoffice.org-2-devel/files/patch-i77829 new file mode 100644 index 000000000000..c7be6ab14215 --- /dev/null +++ b/editors/openoffice.org-2-devel/files/patch-i77829 @@ -0,0 +1,45 @@ +g++42 -fmessage-length=0 -c -Os -fno-strict-aliasing -ftemplate-depth-128 -I. -I../../../unxfbsdi.pro/inc/chcdialogs -I../inc -I../../../source/inc -I../../../inc/pch -I../../../inc/chart2 -I../../../inc -I../../../unx/inc -I../../../unxfbsdi.pro/inc -I. -I/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/stl -I/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/external -I/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc -I/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solenv/unxfbsdi/inc -I/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solenv/inc -I/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/res -I/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/stl -I/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solenv/inc/Xp31 -I/usr/local/diablo-jdk1.5.0/include -I/usr/local/diablo-jdk1.5.0/include/freebsd -I/usr/local/diablo-jdk1.5.0/include/bsd -I/usr/local/diablo-jdk1.5.0/include/linux -I/usr/local/diablo-jdk1.5.0/include/native_threads/include -I/usr/local/include -I/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/offuh -I. -I../../../res -I. -pipe -mtune=pentiumpro -fvisibility-inlines-hidden -g1 -Wall -Wextra -Wendif-labels -Wshadow -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -fpic -DFREEBSD -DUNX -DVCL -DGCC -DC341 -DINTEL -DCVER=C341 -DX86 -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=450 -DHAVE_GCC_VISIBILITY_FEATURE -D__DMAKE -DUNIX -DCPPU_ENV=gcc3 -DGXX_INCLUDE_PATH=/usr/local/lib/gcc-4.2.0/include/c++ -DSUPD=680 -DPRODUCT -DNDEBUG -DPRODUCT_FULL -DOSL_DEBUG_LEVEL=0 -DOPTIMIZE -DCUI -DSOLAR_JAVA -DSRC680=SRC680 -DSHAREDLIB -D_DLL_ -fexceptions -fno-enforce-eh-specs -DEXCEPTIONS_ON -o ../../../unxfbsdi.pro/slo/DataBrowser.o /work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowser.cxx +In file included from /work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/cppuhelper/implbase1.hxx:42, + from /work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/svtools/transfer.hxx:54, + from /work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/svtools/brwbox.hxx:56, + from /work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/svtools/editbrowsebox.hxx:69, + from /work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowser.hxx:40, + from /work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowser.cxx:51: +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/rtl/instance.hxx: In static member function 'static Inst*<unnamed>::rtl_Instance<Inst, InstCtor, Guard, GuardCtor, Data, DataCtor>::create(InstCtor, GuardCtor)': +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/rtl/instance.hxx:305: warning: empty body in an else-statement +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/rtl/instance.hxx: In static member function 'static Inst*<unnamed>::rtl_Instance<Inst, InstCtor, Guard, GuardCtor, Data, DataCtor>::create(InstCtor, GuardCtor, DataCtor)': +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/solver/680/unxfbsdi.pro/inc/rtl/instance.hxx:329: warning: empty body in an else-statement +In file included from /work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowser.cxx:52: +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowserModel.hxx: At global scope: +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowserModel.hxx:110: error: extra qualification 'chart::DataBrowserModel::' on member 'setCellAny' +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowser.cxx: In member function 'bool chart::DataBrowser::MaySwapColumns() const': +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowser.cxx:574: warning: declaration of 'bHasFocus' shadows a member of 'this' +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowser.cxx: In member function 'void chart::DataBrowser::RenewTable()': +/work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs/DataBrowser.cxx:634: warning: declaration of 'nRowCount' shadows a member of 'this' +dmake: Error code 1, while making '../../../unxfbsdi.pro/slo/DataBrowser.obj' +---* tg_merge.mk *--- + +ERROR: Error 65280 occurred while making /work/ports/editors/openoffice.org-2-devel/work/SRC680_m213/chart2/source/controller/dialogs +dmake: Error code 1, while making 'build_instsetoo_native' +---* *--- +*** Error code 255 + +Stop in /work/ports/editors/openoffice.org-2-devel. + +Index: chart2/source/controller/dialogs/DataBrowserModel.hxx +=================================================================== +RCS file: /cvs/graphics/chart2/source/controller/dialogs/DataBrowserModel.hxx,v +retrieving revision 1.2 +diff -u -r1.2 DataBrowserModel.hxx +--- chart2/source/controller/dialogs/DataBrowserModel.hxx 22 May 2007 17:27:59 -0000 1.2 ++++ chart2/source/controller/dialogs/DataBrowserModel.hxx 26 May 2007 10:47:37 -0000 +@@ -106,8 +106,7 @@ + bool setCellNumber( sal_Int32 nAtColumn, sal_Int32 nAtRow, double fValue ); + /// returns </TRUE> if the text could successfully be set at the given position + bool setCellText( sal_Int32 nAtColumn, sal_Int32 nAtRow, const ::rtl::OUString & rText ); +- bool DataBrowserModel::setCellAny( sal_Int32 nAtColumn, sal_Int32 nAtRow, +- const ::com::sun::star::uno::Any & aValue ); ++ bool setCellAny( sal_Int32 nAtColumn, sal_Int32 nAtRow, const ::com::sun::star::uno::Any & aValue ); + + sal_Int32 getColumnCount() const; + sal_Int32 getMaxRowCount() const; |