diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/basicrt.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/basicrt.hxx
--- basic/inc/basicrt.hxx	2004-01-19 09:53:19.000000000 -0800
+++ basic/inc/basicrt.hxx	2005-09-19 14:10:39.000000000 -0700
@@ -35,7 +35,9 @@
 #ifndef _BASICRT_HXX
 #define _BASICRT_HXX
 
-
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
 #ifndef _STRING_HXX //autogen
 #include <tools/string.hxx>
 #endif
@@ -46,7 +46,7 @@
 class SbiRuntime;
 class SbErrorStackEntry;
 
-class BasicRuntime
+class SB_DLLPRIVATE BasicRuntime
 {
 	SbiRuntime* pRun;
 public:
@@ -82,7 +85,7 @@
 	BasicRuntime GetNextRuntime();
 };
 
-class BasicErrorStackEntry
+class SB_DLLPRIVATE BasicErrorStackEntry
 {
 	SbErrorStackEntry *pEntry;
 public:
@@ -95,7 +98,7 @@
 	xub_StrLen GetCol2();
 };
 
-class BasicRuntimeAccess
+class SB_DLLPRIVATE BasicRuntimeAccess
 {
 public:
 	static BasicRuntime GetRuntime();
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/basmgr.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/basmgr.hxx
--- basic/inc/basmgr.hxx	2005-01-11 04:04:16.000000000 -0800
+++ basic/inc/basmgr.hxx	2005-09-29 10:24:54.173446992 -0700
@@ -80,6 +80,9 @@
 #include <com/sun/star/script/XStarBasicAccess.hpp>
 #endif
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
 
 // Basic XML Import/Export
 com::sun::star::uno::Reference< com::sun::star::script::XStarBasicAccess >
@@ -111,7 +114,7 @@
 
 #define BASERR_REASON_STDLIB			0x0100
 
-class BasicError
+class SB_DLLPUBLIC BasicError
 {
 private:
 	ULONG	nErrorId;
@@ -144,7 +147,7 @@
 
 
 // Library password handling for 5.0 documents
-class OldBasicPassword
+class SB_DLLPUBLIC OldBasicPassword
 {
 public:
     virtual void setLibraryPassword( const String& rLibraryName, const String& rPassword ) = 0;
@@ -176,7 +179,7 @@
 
 #define LIB_NOTFOUND	0xFFFF
 
-class BasicManager : public SfxBroadcaster
+class SB_DLLPUBLIC BasicManager : public SfxBroadcaster
 {
     friend class LibraryContainer_Impl;
     friend class BasMgrContainerListenerImpl;
@@ -191,24 +194,24 @@
 
 	BasicManagerImpl*	mpImpl;
 
-	void				Init();
+	SB_DLLPRIVATE void				Init();
 
 protected:
-	BOOL			ImpStoreLibary( StarBASIC* pLib, SotStorage& rStorage ) const;
-	BOOL			ImpLoadLibary( BasicLibInfo* pLibInfo ) const;
-	BOOL			ImpLoadLibary( BasicLibInfo* pLibInfo, SotStorage* pCurStorage, BOOL bInfosOnly = FALSE ) const;
-	void			ImpCreateStdLib( StarBASIC* pParentFromStdLib );
-	void			ImpMgrNotLoaded(  const String& rStorageName  );
-	BasicLibInfo*	CreateLibInfo();
-    void            LoadBasicManager( SotStorage& rStorage, const String& rBaseURL, BOOL bLoadBasics = TRUE );
-	void			LoadOldBasicManager( SotStorage& rStorage );
-	BOOL 			ImplLoadBasic( SvStream& rStrm, StarBASICRef& rOldBasic ) const;
-	void			ImplGetPassword( USHORT nLib ) const;
-	BOOL			ImplEncryptStream( SvStream& rStream ) const;
-	BasicLibInfo*	FindLibInfo( StarBASIC* pBasic ) const;
-	void			CheckModules( StarBASIC* pBasic, BOOL bReference ) const;
-	void			SetFlagToAllLibs( short nFlag, BOOL bSet ) const;
-					BasicManager();	// Nur zum anpassen von Pfaden bei 'Speichern unter'.
+	SB_DLLPRIVATE BOOL			ImpStoreLibary( StarBASIC* pLib, SotStorage& rStorage ) const;
+	SB_DLLPRIVATE BOOL			ImpLoadLibary( BasicLibInfo* pLibInfo ) const;
+	SB_DLLPRIVATE BOOL			ImpLoadLibary( BasicLibInfo* pLibInfo, SotStorage* pCurStorage, BOOL bInfosOnly = FALSE ) const;
+	SB_DLLPRIVATE void			ImpCreateStdLib( StarBASIC* pParentFromStdLib );
+	SB_DLLPRIVATE void			ImpMgrNotLoaded(  const String& rStorageName  );
+	SB_DLLPRIVATE BasicLibInfo*	CreateLibInfo();
+    SB_DLLPRIVATE void            LoadBasicManager( SotStorage& rStorage, const String& rBaseURL, BOOL bLoadBasics = TRUE );
+	SB_DLLPRIVATE void			LoadOldBasicManager( SotStorage& rStorage );
+	SB_DLLPRIVATE BOOL 			ImplLoadBasic( SvStream& rStrm, StarBASICRef& rOldBasic ) const;
+	SB_DLLPRIVATE void			ImplGetPassword( USHORT nLib ) const;
+	SB_DLLPRIVATE BOOL			ImplEncryptStream( SvStream& rStream ) const;
+	SB_DLLPRIVATE BasicLibInfo*	FindLibInfo( StarBASIC* pBasic ) const;
+	SB_DLLPRIVATE void			CheckModules( StarBASIC* pBasic, BOOL bReference ) const;
+	SB_DLLPRIVATE void			SetFlagToAllLibs( short nFlag, BOOL bSet ) const;
+				BasicManager();	// Nur zum anpassen von Pfaden bei 'Speichern unter'.
 
 public:
 					TYPEINFO();
@@ -249,7 +252,7 @@
 	String		    GetRelLibStorageName( USHORT nLib );
 
 	BOOL		    IsLibLoaded( USHORT nLib ) const;
-	BOOL		    LoadLib( USHORT nLib );
+	BOOL	        LoadLib( USHORT nLib );
 	BOOL		    UnloadLib( USHORT nLib );
 	BOOL		    StoreLib( USHORT nLib ) const;
 	BOOL		    RemoveLib( USHORT nLib );
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/basrdll.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/basrdll.hxx
--- basic/inc/basrdll.hxx	2000-09-18 09:12:07.000000000 -0700
+++ basic/inc/basrdll.hxx	2005-09-29 11:39:50.297932176 -0700
@@ -68,7 +68,11 @@
 #include <vcl/accel.hxx>
 #endif
 
-class BasicDLL
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
+class SB_DLLPUBLIC BasicDLL
 {
 private:
 	ResMgr*		pResMgr;
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/basrid.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/basrid.hxx
--- basic/inc/basrid.hxx	2000-09-18 09:12:07.000000000 -0700
+++ basic/inc/basrid.hxx	2005-09-19 15:09:25.000000000 -0700
@@ -66,7 +66,11 @@
 #include <tools/resid.hxx>
 #endif
 
-class BasicResId: public ResId
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
+class SB_DLLPRIVATE BasicResId: public ResId
 {
 public:
 	BasicResId( USHORT nId );
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/hilight.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/hilight.hxx
--- basic/inc/hilight.hxx	2000-09-18 09:12:07.000000000 -0700
+++ basic/inc/hilight.hxx	2005-09-29 10:25:30.453931520 -0700
@@ -110,7 +110,7 @@
 // aufgrund dieser Aenderung neu gehighlighted werden muss.
 // Dazu merkt sich Highlighter intern fuer jede Zeile, ob dort
 // C-Kommentare beginnen oder enden.
-class SyntaxHighlighter
+class SB_DLLPUBLIC SyntaxHighlighter
 {
 	HighlighterLanguage eLanguage;
 	SimpleTokenizer_Impl* m_pSimpleTokenizer;
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/mybasic.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/mybasic.hxx
--- basic/inc/mybasic.hxx	2003-03-18 08:28:14.000000000 -0800
+++ basic/inc/mybasic.hxx	2005-09-29 10:25:43.521944880 -0700
@@ -66,11 +66,15 @@
 #include <sbstar.hxx>
 #endif
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class BasicApp;
 class AppBasEd;
 class ErrorEntry;
 
-class BasicError {
+class SB_DLLPUBLIC BasicError {
 	AppBasEd* pWin;
 	USHORT  nLine, nCol1, nCol2;
 	String aText;
@@ -84,21 +88,21 @@
 #define SBXID_MYBASIC	0x594D		// MyBasic: MY
 #define	SBXCR_TEST		0x54534554	// TEST
 
-class MyBasic : public StarBASIC
+class SB_DLLPUBLIC MyBasic : public StarBASIC
 {
 	SbError nError;
-	virtual BOOL ErrorHdl();
-	virtual USHORT BreakHdl();
+	SB_DLLPRIVATE virtual BOOL ErrorHdl();
+	SB_DLLPRIVATE virtual USHORT BreakHdl();
 
 protected:
-	Link GenLogHdl();
-	Link GenWinInfoHdl();
-	Link GenModuleWinExistsHdl();
-    Link GenWriteStringHdl();
+	SB_DLLPRIVATE Link GenLogHdl();
+	SB_DLLPRIVATE Link GenWinInfoHdl();
+	SB_DLLPRIVATE Link GenModuleWinExistsHdl();
+    SB_DLLPRIVATE Link GenWriteStringHdl();
 
-	virtual void StartListeningTT( SfxBroadcaster &rBroadcaster );
+	SB_DLLPRIVATE virtual void StartListeningTT( SfxBroadcaster &rBroadcaster );
 
-	String GenRealString( const String &aResString );
+	SB_DLLPRIVATE String GenRealString( const String &aResString );
 
 public:
 	SBX_DECL_PERSIST_NODATA(SBXCR_TEST,SBXID_MYBASIC,1);
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/process.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/process.hxx
--- basic/inc/process.hxx	2004-09-20 05:28:25.000000000 -0700
+++ basic/inc/process.hxx	2005-09-29 10:25:52.961509848 -0700
@@ -68,17 +68,21 @@
 
 #include <map>
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 typedef std::map< String, String > Environment;
 typedef Environment::value_type EnvironmentVariable;
 
-class Process
+class SB_DLLPUBLIC Process
 {
 	// Interne Member und Methoden
 	NAMESPACE_VOS(OArgumentList) *pArgumentList;
 	NAMESPACE_VOS(OEnvironment) *pEnvList;
 	NAMESPACE_VOS(OProcess) *pProcess;
-	BOOL ImplIsRunning();
-	long ImplGetExitCode();
+	SB_DLLPRIVATE BOOL ImplIsRunning();
+	SB_DLLPRIVATE long ImplGetExitCode();
 	BOOL bWasGPF;
 	BOOL bHasBeenStarted;
 
diff -ru /dev/null /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sb/sbdllapi.h
--- /dev/null	2005-09-28 14:12:59.000000000 -0700
+++ basic/inc/sb/sbdllapi.h	2005-09-19 11:42:57.000000000 -0700
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ *  $RCSfile: libsb_gcc4_visibility_markup.diff,v $
+ *
+ *  $Revision: 1.3 $
+ *
+ *  last change: $Author: jholesovsky $ $Date: 2006/07/04 15:55:55 $
+ *
+ *  The Contents of this file are made available subject to the terms of
+ *  either of the following licenses
+ *
+ *         - GNU Lesser General Public License Version 2.1
+ *         - Sun Industry Standards Source License Version 1.1
+ *
+ *  Sun Microsystems Inc., October, 2000
+ *
+ *  GNU Lesser General Public License Version 2.1
+ *  =============================================
+ *  Copyright 2000 by Sun Microsystems, Inc.
+ *  901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser General Public
+ *  License version 2.1, as published by the Free Software Foundation.
+ *
+ *  This library is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *  MA  02111-1307  USA
+ *
+ *
+ *  Sun Industry Standards Source License Version 1.1
+ *  =================================================
+ *  The contents of this file are subject to the Sun Industry Standards
+ *  Source License Version 1.1 (the "License"); You may not use this file
+ *  except in compliance with the License. You may obtain a copy of the
+ *  License at http://www.openoffice.org/license.html.
+ *
+ *
+ *  Software provided under this License is provided on an "AS IS" basis,
+ *  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ *  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ *  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ *  See the License for the specific provisions governing your rights and
+ *  obligations concerning the Software.
+ *
+ *  The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ *  Copyright: 2000 by Sun Microsystems, Inc.
+ *  Copyright: 2004 by Novell, Inc.
+ *  Copyright: 2005 by Intel Corporation.
+ *
+ *  All Rights Reserved.
+ *
+ *  Contributor(s): ndevaiah____________________________
+ *
+ *
+ ************************************************************************/
+
+#ifndef INCLUDED_SBDLLAPI_H
+#define INCLUDED_SBDLLAPI_H
+                                                                                                                             
+#ifndef _SAL_TYPES_H_
+#include "sal/types.h"
+#endif
+                                                                                                                             
+#if defined(SB_DLLIMPLEMENTATION)
+#define SB_DLLPUBLIC  SAL_DLLPUBLIC_EXPORT
+#else
+#define SB_DLLPUBLIC  SAL_DLLPUBLIC_IMPORT
+#endif
+#define SB_DLLPRIVATE SAL_DLLPRIVATE
+                                                                                                                             
+#endif /* INCLUDED_SBDLLAPI_H */
+
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbmeth.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbmeth.hxx
--- basic/inc/sbmeth.hxx	2005-04-13 01:59:10.000000000 -0700
+++ basic/inc/sbmeth.hxx	2005-09-29 10:33:11.968770600 -0700
@@ -70,10 +70,14 @@
 #endif
 #include <sbdef.hxx>
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class SbModule;
 class SbMethodImpl;
 
-class SbMethod : public SbxMethod
+class SB_DLLPUBLIC SbMethod : public SbxMethod
 {
 	friend class SbiRuntime;
 	friend class SbiFactory;
@@ -90,7 +94,7 @@
 	SbMethod( const SbMethod& );
 	virtual BOOL LoadData( SvStream&, USHORT );
 	virtual BOOL StoreData( SvStream& ) const;
-	virtual ~SbMethod();
+	SB_DLLPRIVATE virtual ~SbMethod();
 
 public:
 	SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_BASICMETHOD,2);
@@ -115,7 +119,7 @@
 #endif
 
 
-class SbIfaceMapperMethod : public SbMethod
+class SB_DLLPUBLIC SbIfaceMapperMethod : public SbMethod
 {
 	friend class SbiRuntime;
 
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbmod.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbmod.hxx
--- basic/inc/sbmod.hxx	2005-04-13 01:59:23.000000000 -0700
+++ basic/inc/sbmod.hxx	2005-09-29 10:34:07.155380960 -0700
@@ -47,6 +47,10 @@
 #include <rtl/ustring.hxx>
 #endif
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class SbMethod;
 class SbProperty;
 class SbiRuntime;
@@ -57,7 +61,7 @@
 
 struct SbClassData;
 
-class SbModule : public SbxObject
+class SB_DLLPUBLIC SbModule : public SbxObject
 {
 	friend class	TestToolObj;	// somit können Module nach laden zur Laufzeit initialisiert werden
 	friend class	SbiCodeGen;
@@ -72,26 +76,26 @@
 	SbiBreakpoints*	pBreaks;			// Breakpoints
 	SbClassData*	pClassData;
 
-	void			StartDefinitions();
-	SbMethod*		GetMethod( const String&, SbxDataType );
-	SbProperty*		GetProperty( const String&, SbxDataType );
-	SbProcedureProperty* GetProcedureProperty( const String&, SbxDataType );
-	SbIfaceMapperMethod* GetIfaceMapperMethod( const String&, SbMethod* );
-	void			EndDefinitions( BOOL=FALSE );
-	USHORT 			Run( SbMethod* );
+	SB_DLLPRIVATE void			StartDefinitions();
+	SB_DLLPRIVATE SbMethod*		GetMethod( const String&, SbxDataType );
+	SB_DLLPRIVATE SbProperty*		GetProperty( const String&, SbxDataType );
+	SB_DLLPRIVATE SbProcedureProperty* GetProcedureProperty( const String&, SbxDataType );
+	SB_DLLPRIVATE SbIfaceMapperMethod* GetIfaceMapperMethod( const String&, SbMethod* );
+	SB_DLLPRIVATE void			EndDefinitions( BOOL=FALSE );
+	SB_DLLPRIVATE USHORT 			Run( SbMethod* );
 	void			RunInit();
-	void 			ClearPrivateVars();
-	void			GlobalRunInit( BOOL bBasicStart );	// fuer alle Module
-	void			GlobalRunDeInit( void );
-	const BYTE* 	FindNextStmnt( const BYTE*, USHORT&, USHORT& ) const;
-	const BYTE* 	FindNextStmnt( const BYTE*, USHORT&, USHORT&, 
+	SB_DLLPRIVATE void 			ClearPrivateVars();
+	SB_DLLPRIVATE void			GlobalRunInit( BOOL bBasicStart );	// fuer alle Module
+	SB_DLLPRIVATE void			GlobalRunDeInit( void );
+	SB_DLLPRIVATE const BYTE* 	FindNextStmnt( const BYTE*, USHORT&, USHORT& ) const;
+	SB_DLLPRIVATE const BYTE* 	FindNextStmnt( const BYTE*, USHORT&, USHORT&, 
 						BOOL bFollowJumps, const SbiImage* pImg=NULL ) const;
 	virtual BOOL LoadData( SvStream&, USHORT );
 	virtual BOOL StoreData( SvStream& ) const;
-	virtual BOOL LoadCompleted();
-	virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
+	SB_DLLPRIVATE virtual BOOL LoadCompleted();
+	SB_DLLPRIVATE virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
 							 const SfxHint& rHint, const TypeId& rHintType );
-	virtual ~SbModule();
+	SB_DLLPRIVATE virtual ~SbModule();
 public:
 	SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_BASICMOD,2);
 	TYPEINFO();
@@ -138,7 +142,7 @@
 
 
 // Object class for instances of class modules
-class SbClassModuleObject : public SbModule
+class SB_DLLPUBLIC SbClassModuleObject : public SbModule
 {
 	SbModule*	mpClassModule;
 	bool		mbInitializeEventDone;
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbprop.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbprop.hxx
--- basic/inc/sbprop.hxx	2005-04-13 01:59:40.000000000 -0700
+++ basic/inc/sbprop.hxx	2005-09-29 10:34:21.796155224 -0700
@@ -68,17 +68,21 @@
 #endif
 #include <sbdef.hxx>
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class SbModule;
 
-class SbProperty : public SbxProperty
+class SB_DLLPUBLIC SbProperty : public SbxProperty
 {
 	friend class SbiFactory;
 	friend class SbModule;
 	friend class SbProcedureProperty;
 	SbModule* pMod;
 	BOOL	 bInvalid;
-	SbProperty( const String&, SbxDataType, SbModule* );
-	virtual ~SbProperty();
+	SB_DLLPRIVATE SbProperty( const String&, SbxDataType, SbModule* );
+	SB_DLLPRIVATE virtual ~SbProperty();
 public:
 	SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_BASICPROP,1);
 	TYPEINFO();
@@ -91,11 +95,11 @@
 #endif
 
 
-class SbProcedureProperty : public SbxProperty
+class SB_DLLPUBLIC SbProcedureProperty : public SbxProperty
 {
 	bool mbSet;		// Flag for set command
 
-	virtual ~SbProcedureProperty();
+	SB_DLLPRIVATE virtual ~SbProcedureProperty();
 
 public:
 	SbProcedureProperty::SbProcedureProperty( const String& r, SbxDataType t )
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbstar.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbstar.hxx
--- basic/inc/sbstar.hxx	2005-04-13 01:59:55.000000000 -0700
+++ basic/inc/sbstar.hxx	2005-09-29 10:35:35.505949632 -0700
@@ -47,6 +47,10 @@
 #include <osl/mutex.hxx>
 #endif
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 #include <sbdef.hxx>
 #include <sberrors.hxx>
 
@@ -60,7 +64,7 @@
 class SbMethod;
 class BasicManager;
 
-class StarBASIC : public SbxObject
+class SB_DLLPUBLIC StarBASIC : public SbxObject
 {
 	friend class SbiScanner;
 	friend class SbiExpression;			// Zugriff auf RTL
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbxcore.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbxcore.hxx
--- basic/inc/sbxcore.hxx	2005-04-13 02:00:52.000000000 -0700
+++ basic/inc/sbxcore.hxx	2005-09-29 10:36:05.830339624 -0700
@@ -75,6 +75,10 @@
 
 #include "sbxdef.hxx"
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class SvStream;
 class String;
 class UniString;
@@ -88,14 +92,14 @@
 // Diese Version des Makros definiert keine Load/StorePrivateData()-Methoden
 
 #define SBX_DECL_PERSIST_NODATA( nCre, nSbxId, nVer )		\
-	virtual UINT32 GetCreator() const { return nCre;   }	\
-	virtual UINT16 GetVersion() const { return nVer;   }	\
-	virtual UINT16 GetSbxId() const	  { return nSbxId; }
+	SB_DLLPRIVATE virtual UINT32 GetCreator() const { return nCre;   }	\
+	SB_DLLPRIVATE virtual UINT16 GetVersion() const { return nVer;   }	\
+	SB_DLLPRIVATE virtual UINT16 GetSbxId() const	  { return nSbxId; }
 
 #define SBX_DECL_PERSIST_NODATA_()							\
-	virtual UINT32 GetCreator() const;						\
-	virtual UINT16 GetVersion() const;						\
-	virtual UINT16 GetSbxId() const;
+	SB_DLLPRIVATE virtual UINT32 GetCreator() const;						\
+	SB_DLLPRIVATE virtual UINT16 GetVersion() const;						\
+	SB_DLLPRIVATE virtual UINT16 GetSbxId() const;
 
 // Diese Version des Makros definiert Load/StorePrivateData()-Methoden
 
@@ -110,9 +114,9 @@
 	SBX_DECL_PERSIST_NODATA_()
 
 #define SBX_IMPL_PERSIST( C, nCre, nSbxId, nVer )			\
-	UINT32 C::GetCreator() const { return nCre;   }			\
-	UINT16 C::GetVersion() const { return nVer;   }			\
-	UINT16 C::GetSbxId() const	 { return nSbxId; }
+	SB_DLLPRIVATE UINT32 C::GetCreator() const { return nCre;   }			\
+	SB_DLLPRIVATE UINT16 C::GetVersion() const { return nVer;   }			\
+	SB_DLLPRIVATE UINT16 C::GetSbxId() const	 { return nSbxId; }
 
 class SbxBase;
 class SbxFactory;
@@ -120,7 +124,7 @@
 
 DBG_NAMEEX(SbxBase);
 
-class SbxBase : virtual public SvRefBase
+class SB_DLLPUBLIC SbxBase : virtual public SvRefBase
 {
 	virtual BOOL LoadData( SvStream&, USHORT );
 	virtual BOOL StoreData( SvStream& ) const;
@@ -129,7 +133,7 @@
 
 	SbxBase();
 	SbxBase( const SbxBase& );
-	SbxBase& operator=( const SbxBase& );
+	SB_DLLPRIVATE SbxBase& operator=( const SbxBase& );
 	virtual ~SbxBase();
 	SBX_DECL_PERSIST(0,0,0);
 public:
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbxfac.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbxfac.hxx
--- basic/inc/sbxfac.hxx	2005-04-13 02:01:34.000000000 -0700
+++ basic/inc/sbxfac.hxx	2005-09-29 11:31:02.996094240 -0700
@@ -67,12 +67,17 @@
 #include "sbxdef.hxx"
 #endif
 
+
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class SbxBase;
 class SbxObject;
 class String;
 class UniString;
 
-class SbxFactory
+class SB_DLLPUBLIC SbxFactory
 {
 	BOOL bHandleLast;	// TRUE: Factory soll zuletzt gefragt werden, da teuer
 public:
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbxform.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbxform.hxx
--- basic/inc/sbxform.hxx	2005-04-13 02:01:51.000000000 -0700
+++ basic/inc/sbxform.hxx	2005-09-29 10:36:43.251650720 -0700
@@ -124,7 +124,11 @@
 #include <tools/string.hxx>
 #endif
 
-class SbxBasicFormater {
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
+class SB_DLLPUBLIC SbxBasicFormater {
   public:
 	// der Konstruktor, nimmt die Zeichen f"ur den Dezimal-Punkt,
 	// das Tausender-Trenn-Zeichen sowie die notwendigen Resource
@@ -154,33 +158,33 @@
   private:
 	//*** einige Hilfsmethoden ***
 	//void	ShowError( char *sErrMsg );
-	inline void	ShiftString( String& sStrg, USHORT nStartPos );
-	inline void	StrAppendChar( String& sStrg, sal_Unicode ch );
-	void	AppendDigit( String& sStrg, short nDigit );
-	void	LeftShiftDecimalPoint( String& sStrg );
-	void	StrRoundDigit( String& sStrg, short nPos, BOOL& bOverflow );
-	void	StrRoundDigit( String& sStrg, short nPos );
-	void	ParseBack( String& sStrg, const String& sFormatStrg,
+	SB_DLLPRIVATE inline void	ShiftString( String& sStrg, USHORT nStartPos );
+	SB_DLLPRIVATE inline void	StrAppendChar( String& sStrg, sal_Unicode ch );
+	SB_DLLPRIVATE void	AppendDigit( String& sStrg, short nDigit );
+	SB_DLLPRIVATE void	LeftShiftDecimalPoint( String& sStrg );
+	SB_DLLPRIVATE void	StrRoundDigit( String& sStrg, short nPos, BOOL& bOverflow );
+	SB_DLLPRIVATE void	StrRoundDigit( String& sStrg, short nPos );
+	SB_DLLPRIVATE void	ParseBack( String& sStrg, const String& sFormatStrg,
 				short nFormatPos );
 #ifdef _with_sprintf
 	// Methoden "uber String-Konvertierung mit sprintf():
-	void	InitScan( double _dNum );
-	void	InitExp( double _dNewExp );
-	short	GetDigitAtPosScan( short nPos, BOOL& bFoundFirstDigit );
-	short	GetDigitAtPosExpScan( double dNewExponent, short nPos,
+	SB_DLLPRIVATE void	InitScan( double _dNum );
+	SB_DLLPRIVATE void	InitExp( double _dNewExp );
+	SB_DLLPRIVATE short	GetDigitAtPosScan( short nPos, BOOL& bFoundFirstDigit );
+	SB_DLLPRIVATE short	GetDigitAtPosExpScan( double dNewExponent, short nPos,
 				BOOL& bFoundFirstDigit );
-	short	GetDigitAtPosExpScan( short nPos, BOOL& bFoundFirstDigit );
+	SB_DLLPRIVATE short	GetDigitAtPosExpScan( short nPos, BOOL& bFoundFirstDigit );
 #else
 	// Methoden "uber direktes 'ausrechen' mit log10() und pow():
-	short	GetDigitAtPos( double dNumber, short nPos, double& dNextNumber,
+	SB_DLLPRIVATE short	GetDigitAtPos( double dNumber, short nPos, double& dNextNumber,
 				BOOL& bFoundFirstDigit );
-	short	RoundDigit( double dNumber );
+	SB_DLLPRIVATE short	RoundDigit( double dNumber );
 #endif
-	String	GetPosFormatString( const String& sFormatStrg, BOOL & bFound );
-	String	GetNegFormatString( const String& sFormatStrg, BOOL & bFound );
-	String	Get0FormatString( const String& sFormatStrg, BOOL & bFound );
-	String	GetNullFormatString( const String& sFormatStrg, BOOL & bFound );
-	short	AnalyseFormatString( const String& sFormatStrg,
+	SB_DLLPRIVATE String	GetPosFormatString( const String& sFormatStrg, BOOL & bFound );
+	SB_DLLPRIVATE String	GetNegFormatString( const String& sFormatStrg, BOOL & bFound );
+	SB_DLLPRIVATE String	Get0FormatString( const String& sFormatStrg, BOOL & bFound );
+	SB_DLLPRIVATE String	GetNullFormatString( const String& sFormatStrg, BOOL & bFound );
+	SB_DLLPRIVATE short	AnalyseFormatString( const String& sFormatStrg,
 				short& nNoOfDigitsLeft, short& nNoOfDigitsRight,
 				short& nNoOfOptionalDigitsLeft,
 				short& nNoOfExponentDigits,
@@ -188,7 +192,7 @@
 				BOOL& bPercent, BOOL& bCurrency, BOOL& bScientific,
 				BOOL& bGenerateThousandSeparator,
 				short& nMultipleThousandSeparators );
-	void	ScanFormatString( double dNumber, const String& sFormatStrg,
+	SB_DLLPRIVATE void	ScanFormatString( double dNumber, const String& sFormatStrg,
 				String& sReturnStrg, BOOL bCreateSign );
 
 	//*** Daten ***
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbx.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbx.hxx
--- basic/inc/sbx.hxx	2005-04-13 02:00:23.000000000 -0700
+++ basic/inc/sbx.hxx	2005-09-29 10:37:22.129740352 -0700
@@ -94,6 +94,10 @@
 #include "sbxmeth.hxx"
 #endif
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class BigInt;
 class String;
 class UniString;
@@ -145,7 +149,7 @@
 #ifndef __SBX_SBXINFO
 #define __SBX_SBXINFO
 
-class SbxInfo : public SvRefBase
+class SB_DLLPUBLIC SbxInfo : public SvRefBase
 {
 	friend class SbxVariable;
 	friend class SbMethod;
@@ -199,9 +203,9 @@
 class SbxAlias : public SbxVariable, public SfxListener
 {
 	SbxVariableRef xAlias;
-	virtual ~SbxAlias();
-	virtual void Broadcast( ULONG );
-	virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
+	SB_DLLPRIVATE virtual ~SbxAlias();
+	SB_DLLPRIVATE virtual void Broadcast( ULONG );
+	SB_DLLPRIVATE virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
 							 const SfxHint& rHint, const TypeId& rHintType );
 public:
 	SbxAlias( const String& rName, SbxVariable* pOriginal );
@@ -222,20 +226,20 @@
 class SbxVarRefs;
 class SbxVariableRef;
 
-class SbxArray : public SbxBase
+class SB_DLLPUBLIC SbxArray : public SbxBase
 {
 // #100883 Method to set method directly to parameter array
     friend class SbMethod;
     friend class SbTypeFactory;
 	friend class SbClassModuleObject;
-	void PutDirect( SbxVariable* pVar, UINT32 nIdx );
+	SB_DLLPRIVATE void PutDirect( SbxVariable* pVar, UINT32 nIdx );
 
 	SbxArrayImpl* mpSbxArrayImpl;	// Impl data
 	SbxVarRefs* pData;				// Die Variablen
 
 protected:
 	SbxDataType eType;              // Datentyp des Arrays
-	virtual ~SbxArray();
+	SB_DLLPRIVATE virtual ~SbxArray();
 	virtual BOOL LoadData( SvStream&, USHORT );
 	virtual BOOL StoreData( SvStream& ) const;
 
@@ -279,21 +283,21 @@
 
 class SbxDimArrayImpl;
 
-class SbxDimArray : public SbxArray
+class SB_DLLPUBLIC SbxDimArray : public SbxArray
 {
 	SbxDimArrayImpl* mpSbxDimArrayImpl;		// Impl data
 
 	SbxDim* pFirst, *pLast;         // Links fuer Dimension-Tabelle
 	short   nDim;                   // Anzahl Dimensionen
-	void   AddDimImpl32( INT32, INT32, BOOL bAllowSize0 );
+	SB_DLLPRIVATE void   AddDimImpl32( INT32, INT32, BOOL bAllowSize0 );
 protected:
-	USHORT  Offset( const short* );
-	UINT32  Offset32( const INT32* );
-	USHORT  Offset( SbxArray* );
-	UINT32  Offset32( SbxArray* );
+	SB_DLLPRIVATE USHORT  Offset( const short* );
+	SB_DLLPRIVATE UINT32  Offset32( const INT32* );
+	SB_DLLPRIVATE USHORT  Offset( SbxArray* );
+	SB_DLLPRIVATE UINT32  Offset32( SbxArray* );
 	virtual BOOL LoadData( SvStream&, USHORT );
 	virtual BOOL StoreData( SvStream& ) const;
-	virtual ~SbxDimArray();
+	SB_DLLPRIVATE virtual ~SbxDimArray();
 public:
 	SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_DIMARRAY,1);
 	TYPEINFO();
@@ -324,18 +328,18 @@
 #ifndef __SBX_SBXCOLLECTION_HXX
 #define __SBX_SBXCOLLECTION_HXX
 
-class SbxCollection : public SbxObject
+class SB_DLLPUBLIC SbxCollection : public SbxObject
 {
-	void Initialize();
+	SB_DLLPRIVATE void Initialize();
 protected:
-	virtual ~SbxCollection();
+	SB_DLLPRIVATE virtual ~SbxCollection();
 	virtual BOOL LoadData( SvStream&, USHORT );
-	virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
+	SB_DLLPRIVATE virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
 							 const SfxHint& rHint, const TypeId& rHintType );
 	// ueberladbare Methoden:
-	virtual void CollAdd( SbxArray* pPar );
-	virtual void CollItem( SbxArray* pPar );
-	virtual void CollRemove( SbxArray* pPar );
+	SB_DLLPRIVATE virtual void CollAdd( SbxArray* pPar );
+	SB_DLLPRIVATE virtual void CollItem( SbxArray* pPar );
+	SB_DLLPRIVATE virtual void CollRemove( SbxArray* pPar );
 
 public:
 	SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_COLLECTION,1);
@@ -353,16 +357,16 @@
 #ifndef __SBX_SBXSTDCOLLECTION_HXX
 #define __SBX_SBXSTDCOLLECTION_HXX
 
-class SbxStdCollection : public SbxCollection
+class SB_DLLPUBLIC SbxStdCollection : public SbxCollection
 {
 protected:
 	String aElemClass;
 	BOOL   bAddRemoveOk;
-	virtual ~SbxStdCollection();
+	SB_DLLPRIVATE virtual ~SbxStdCollection();
 	virtual BOOL LoadData( SvStream&, USHORT );
 	virtual BOOL StoreData( SvStream& ) const;
-	virtual void CollAdd( SbxArray* pPar );
-	virtual void CollRemove( SbxArray* pPar );
+	SB_DLLPRIVATE virtual void CollAdd( SbxArray* pPar );
+	SB_DLLPRIVATE virtual void CollRemove( SbxArray* pPar );
 public:
 	SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_FIXCOLLECTION,1);
 	TYPEINFO();
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbxmeth.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbxmeth.hxx
--- basic/inc/sbxmeth.hxx	2005-04-13 02:02:07.000000000 -0700
+++ basic/inc/sbxmeth.hxx	2005-09-29 11:20:26.718823088 -0700
@@ -67,9 +67,13 @@
 #include "sbxvar.hxx"
 #endif
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class SbxMethodImpl;
 
-class SbxMethod : public SbxVariable
+class SB_DLLPUBLIC SbxMethod : public SbxVariable
 {
 	SbxMethodImpl* mpSbxMethodImpl;	// Impl data
 
@@ -75,7 +79,7 @@
 	SbxMethod( const String& r, SbxDataType t )
 	: SbxVariable( t ) { SetName( r ); }
 	SbxMethod( const SbxMethod& r ) : SvRefBase( r ), SbxVariable( r ) {}
-	SbxMethod& operator=( const SbxMethod& r )
+	SB_DLLPRIVATE SbxMethod& operator=( const SbxMethod& r )
 	{ SbxVariable::operator=( r ); return *this; }
 	BOOL Run( SbxValues* pValues = NULL );
 	virtual SbxClassType GetClass() const;
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbxmstrm.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbxmstrm.hxx
--- basic/inc/sbxmstrm.hxx	2005-04-13 02:02:24.000000000 -0700
+++ basic/inc/sbxmstrm.hxx	2005-09-29 11:20:36.625317072 -0700
@@ -75,7 +75,7 @@
 
 SV_DECL_REF(SbxMemoryStream)
 
-class SbxMemoryStream : public SbxBase, public SvMemoryStream
+class SB_DLLPUBLIC SbxMemoryStream : public SbxBase, public SvMemoryStream
 {
   public:
 	SbxMemoryStream(ULONG nInitSize=512, ULONG nResize=64) :
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbxobj.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbxobj.hxx
--- basic/inc/sbxobj.hxx	2005-04-13 02:02:43.000000000 -0700
+++ basic/inc/sbxobj.hxx	2005-09-29 11:20:46.030887208 -0700
@@ -44,20 +44,24 @@
 #include "sbxvar.hxx"
 #endif
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include <basic/sb/sbdllapi.h>
+#endif
+
 ///////////////////////////////////////////////////////////////////////////
 
 class SbxProperty;
 class SvDispatch;
 
 class SbxObjectImpl;
 
-class SbxObject : public SbxVariable, public SfxListener
+class SB_DLLPUBLIC SbxObject : public SbxVariable, public SfxListener
 {
 	SbxObjectImpl* mpSbxObjectImpl;	// Impl data
 
-	SbxArray* FindVar( SbxVariable*, USHORT& );
+	SB_DLLPRIVATE SbxArray* FindVar( SbxVariable*, USHORT& );
 	// AB 23.3.1997, Spezial-Methode fuer VCPtrRemove (s.u.)
-	SbxArray* VCPtrFindVar( SbxVariable*, USHORT& );
+	SB_DLLPRIVATE SbxArray* VCPtrFindVar( SbxVariable*, USHORT& );
 protected:
 	SbxArrayRef  pMethods;			// Methoden
 	SbxArrayRef  pProps;			// Properties
@@ -70,7 +74,7 @@
 	TYPEINFO();
 	SbxObject( const String& rClassname );
 	SbxObject( const SbxObject& );
-	SbxObject& operator=( const SbxObject& );
+	SB_DLLPRIVATE SbxObject& operator=( const SbxObject& );
 	virtual SbxDataType GetType() const;
 	virtual SbxClassType GetClass() const;
 	virtual void Clear();
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbxprop.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbxprop.hxx
--- basic/inc/sbxprop.hxx	2005-04-13 02:03:08.000000000 -0700
+++ basic/inc/sbxprop.hxx	2005-09-29 11:20:56.588282240 -0700
@@ -66,9 +66,13 @@
 #include "sbxvar.hxx"
 #endif
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class SbxPropertyImpl;
 
-class SbxProperty : public SbxVariable
+class SB_DLLPUBLIC SbxProperty : public SbxVariable
 {
 public:
 	SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_PROPERTY,1);
@@ -74,7 +78,7 @@
 	SbxProperty( const String& r, SbxDataType t )
 	: SbxVariable( t ) { SetName( r ); }
 	SbxProperty( const SbxProperty& r ) : SvRefBase( r ), SbxVariable( r ) {}
-	SbxProperty& operator=( const SbxProperty& r )
+	SB_DLLPRIVATE SbxProperty& operator=( const SbxProperty& r )
 	{ SbxVariable::operator=( r ); return *this; }
 	virtual SbxClassType GetClass() const;
 };
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/sbxvar.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/sbxvar.hxx
--- basic/inc/sbxvar.hxx	2005-04-13 02:03:34.000000000 -0700
+++ basic/inc/sbxvar.hxx	2005-09-29 11:21:09.709287544 -0700
@@ -276,7 +276,7 @@
 
 struct SbxValues;
 
-class SbxValue : public SbxBase
+class SB_DLLPUBLIC SbxValue : public SbxBase
 {
 	friend class SbiDllMgr;					// BASIC-Runtime, muss an aData ran
 
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/stdobj1.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/stdobj1.hxx
--- basic/inc/stdobj1.hxx	2005-04-13 02:03:56.000000000 -0700
+++ basic/inc/stdobj1.hxx	2005-09-29 11:21:28.303460800 -0700
@@ -71,13 +71,18 @@
 #ifndef __SBX_SBX_FACTORY_HXX //autogen
 #include <sbxfac.hxx>
 #endif
+
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
+
 class StarBASIC;
 class SbStdFactory;
 
 //--------------------
 // class SbStdFactory
 //--------------------
-class SbStdFactory : public SbxFactory
+class SB_DLLPUBLIC SbStdFactory : public SbxFactory
 {
 public:
 	SbStdFactory();
@@ -88,18 +93,18 @@
 //--------------------
 // class SbStdPicture
 //--------------------
-class SbStdPicture : public SbxObject
+class SB_DLLPUBLIC SbStdPicture : public SbxObject
 {
 protected:
 	Graphic		aGraphic;
 
-   ~SbStdPicture();
-	virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
+    SB_DLLPRIVATE ~SbStdPicture();
+	SB_DLLPRIVATE virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
 							 const SfxHint& rHint, const TypeId& rHintType );
 
-	void 	PropType( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
-	void	PropWidth( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
-	void	PropHeight( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
+	SB_DLLPRIVATE void 	PropType( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
+    SB_DLLPRIVATE void	PropWidth( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
+	SB_DLLPRIVATE void	PropHeight( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
 
 public:
 	TYPEINFO();
@@ -115,7 +120,7 @@
 //-----------------
 // class SbStdFont
 //-----------------
-class SbStdFont : public SbxObject
+class SB_DLLPUBLIC SbStdFont : public SbxObject
 {
 protected:
 	BOOL	bBold;
@@ -125,16 +130,16 @@
 	USHORT	nSize;
 	String	aName;
 
-   ~SbStdFont();
-	virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
+    SB_DLLPRIVATE ~SbStdFont();
+	SB_DLLPRIVATE virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
 							 const SfxHint& rHint, const TypeId& rHintType );
 
-	void 	PropBold( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
-	void	PropItalic( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
-	void	PropStrikeThrough( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
-	void	PropUnderline( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
-	void	PropSize( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
-	void	PropName( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
+	SB_DLLPRIVATE void 	PropBold( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
+	SB_DLLPRIVATE void	PropItalic( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
+	SB_DLLPRIVATE void	PropStrikeThrough( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
+	SB_DLLPRIVATE void	PropUnderline( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
+	SB_DLLPRIVATE void	PropSize( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
+	SB_DLLPRIVATE void	PropName( SbxVariable* pVar, SbxArray* pPar, BOOL bWrite );
 
 public:
 	TYPEINFO();
@@ -160,20 +165,20 @@
 //----------------------
 // class SbStdClipboard
 //----------------------
-class SbStdClipboard : public SbxObject
+class SB_DLLPUBLIC SbStdClipboard : public SbxObject
 {
 protected:
 
-   ~SbStdClipboard();
-	virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
+    SB_DLLPRIVATE ~SbStdClipboard();
+	SB_DLLPRIVATE virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
 							 const SfxHint& rHint, const TypeId& rHintType );
 
-	void 	MethClear( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
-	void	MethGetData( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
-	void	MethGetFormat( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
-	void	MethGetText( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
-	void	MethSetData( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
-	void	MethSetText( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
+	SB_DLLPRIVATE void 	MethClear( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
+	SB_DLLPRIVATE void	MethGetData( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
+	SB_DLLPRIVATE void	MethGetFormat( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
+	SB_DLLPRIVATE void	MethGetText( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
+	SB_DLLPRIVATE void	MethSetData( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
+	SB_DLLPRIVATE void	MethSetText( SbxVariable* pVar, SbxArray* pPar_, BOOL bWrite );
 
 public:
 	TYPEINFO();
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/inc/testtool.hxx /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/inc/testtool.hxx
--- basic/inc/testtool.hxx	2004-07-06 06:22:55.000000000 -0700
+++ basic/inc/testtool.hxx	2005-09-29 11:35:20.325974152 -0700
@@ -65,6 +65,9 @@
 #include <svtools/smplhint.hxx>
 #endif
 
+#ifndef INCLUDED_SBDLLAPI_H
+#include "sb/sbdllapi.h"
+#endif
 
 #define TESTTOOL_DEFAULT_PORT 12479
 #define UNO_DEFAULT_PORT 12480
@@ -167,7 +170,7 @@
 #define TT_EXECUTION_SHOW_ACTION	0x03
 #define TT_EXECUTION_HIDE_ACTION	0x04
 
-class TTExecutionStatusHint : public SfxSimpleHint
+class SB_DLLPUBLIC TTExecutionStatusHint : public SfxSimpleHint
 {
 private:
 	String maExecutionStatus;
diff -ru /home/naren/work/builds/ooo-build-1.9.125.1.pristine/build/src680-m125/basic/prj/d.lst /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/prj/d.lst
--- basic/prj/d.lst	2005-04-13 02:04:50.000000000 -0700
+++ basic/prj/d.lst	2005-09-21 10:25:56.000000000 -0700
@@ -51,3 +51,7 @@
 hedabu: ..\inc\sbxbase.hxx %_DEST%\inc%_EXT%\basic\sbxbase.hxx
 hedabu: ..\inc\sbxfac.hxx %_DEST%\inc%_EXT%\basic\sbxfac.hxx
 hedabu: ..\inc\sbxmstrm.hxx %_DEST%\inc%_EXT%\basic\sbxmstrm.hxx
+
+mkdir: %_DEST%\inc%_EXT%\basic\sb
+hedabu: ..\inc\sb\sbdllapi.h %_DEST%\inc%_EXT%\basic\sb\sbdllapi.h
+
diff -ru /dev/null /home/naren/work/builds/ooo-build-1.9.125.1/build/src680-m125/basic/util/makefile.pmk
--- /dev/null	2005-09-28 14:11:54.000000000 -0700
+++ basic/util/makefile.pmk	2005-09-20 14:23:43.000000000 -0700
@@ -0,0 +1,68 @@
+#*************************************************************************
+#
+#   $RCSfile: libsb_gcc4_visibility_markup.diff,v $
+#
+#   $Revision: 1.3 $
+#
+#   last change: $Author: jholesovsky $ $Date: 2006/07/04 15:55:55 $
+#
+#   The Contents of this file are made available subject to the terms of
+#   either of the following licenses
+#
+#          - GNU Lesser General Public License Version 2.1
+#          - Sun Industry Standards Source License Version 1.1
+#
+#   Sun Microsystems Inc., October, 2000
+#
+#   GNU Lesser General Public License Version 2.1
+#   =============================================
+#   Copyright 2000 by Sun Microsystems, Inc.
+#   901 San Antonio Road, Palo Alto, CA 94303, USA
+#
+#   This library is free software; you can redistribute it and/or
+#   modify it under the terms of the GNU Lesser General Public
+#   License version 2.1, as published by the Free Software Foundation.
+#
+#   This library is distributed in the hope that it will be useful,
+#   but WITHOUT ANY WARRANTY; without even the implied warranty of
+#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#   Lesser General Public License for more details.
+#
+#   You should have received a copy of the GNU Lesser General Public
+#   License along with this library; if not, write to the Free Software
+#   Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+#   MA  02111-1307  USA
+#
+#
+#   Sun Industry Standards Source License Version 1.1
+#   =================================================
+#   The contents of this file are subject to the Sun Industry Standards
+#   Source License Version 1.1 (the "License"); You may not use this file
+#   except in compliance with the License. You may obtain a copy of the
+#   License at http://www.openoffice.org/license.html.
+#
+#   Software provided under this License is provided on an "AS IS" basis,
+#   WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+#   WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+#   MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+#   See the License for the specific provisions governing your rights and
+#   obligations concerning the Software.
+#
+#   The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+#
+#   Copyright: 2000 by Sun Microsystems, Inc.
+#
+#   All Rights Reserved.
+#
+#   Contributor(s): _______________________________________
+#
+#
+#*************************************************************************
+
+# Reduction of exported symbols:
+CDEFS += -DSB_DLLIMPLEMENTATION
+.IF "$(COMNAME)" == "gcc3" && "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CFLAGS += -fvisibility=hidden
+.ELIF "$(COMNAME)" == "sunpro5" && "$(CCNUMVER)" >= "00050005"
+CFLAGS += -xldscope=hidden
+.ENDIF
