--- ./icu/makefile.mk.arkopts~	2008-04-11 09:26:27.000000000 +0200
+++ ./icu/makefile.mk	2008-07-17 11:52:18.870043577 +0200
@@ -82,7 +82,7 @@ CC:=gcc $(EXTRA_CFLAGS)
 icu_LDFLAGS+=-Wl,-z,noexecstack
 .ENDIF
 
-icu_CFLAGS+=-O $(ARCH_FLAGS) $(EXTRA_CDEFS)
+icu_CFLAGS+=$(CFLAGSOPT) $(ARCH_FLAGS) $(EXTRA_CDEFS)
 icu_LDFLAGS+=$(EXTRA_LINKFLAGS)
-icu_CXXFLAGS+=-O $(ARCH_FLAGS) $(EXTRA_CDEFS)
+icu_CXXFLAGS+=$(CFLAGSOPT) $(ARCH_FLAGS) $(EXTRA_CDEFS)
 
--- ./registry/inc/registry/registry.h.arkopts~	2008-07-17 11:49:18.777288611 +0200
+++ ./registry/inc/registry/registry.h	2008-07-17 11:54:21.532038669 +0200
@@ -50,7 +50,7 @@ extern "C" {
                      reg_closeKey. If the function fails, phNewKey is NULL.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_createKey(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_createKey(RegKeyHandle hKey, 
 										 rtl_uString* keyName, 
 										 RegKeyHandle* phNewKey);
 
@@ -65,7 +65,7 @@ RegError REGISTRY_CALLTYPE reg_createKey
                      reg_closeKey. If the function fails, phNewKey is NULL.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_openKey(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_openKey(RegKeyHandle hKey, 
 					  				   rtl_uString* keyName, 
 					  				   RegKeyHandle* phOpenKey);
 					  
@@ -83,7 +83,7 @@ RegError REGISTRY_CALLTYPE reg_openKey(R
 	@param	pnSubKeys specifies the length of the array (the number of open subkeys).
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_openSubKeys(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_openSubKeys(RegKeyHandle hKey, 
 						  				   rtl_uString* keyName, 
 						  				   RegKeyHandle** pphSubKeys, 
 						  				   sal_uInt32* pnSubKeys);
@@ -96,7 +96,7 @@ RegError REGISTRY_CALLTYPE reg_openSubKe
 	@param	nSubKeys specifies the length of the array (the number of subkeys to closed).
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_closeSubKeys(RegKeyHandle* phSubKeys, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_closeSubKeys(RegKeyHandle* phSubKeys, 
 						   					sal_uInt32 nSubKeys);
 
 
@@ -108,7 +108,7 @@ RegError REGISTRY_CALLTYPE reg_closeSubK
                     be deleted.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_deleteKey(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_deleteKey(RegKeyHandle hKey, 
 										 rtl_uString* keyName);
 
 
@@ -118,7 +118,7 @@ RegError REGISTRY_CALLTYPE reg_deleteKey
                  The memory of the variable specifying the key will be freed.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_closeKey(RegKeyHandle hKey);
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_closeKey(RegKeyHandle hKey);
 
 
 /**	This function returns the name of a key.
@@ -126,7 +126,7 @@ RegError REGISTRY_CALLTYPE reg_closeKey(
 	@param	hKey identifies a currently open key which name will be returned.
 	@param	pKeyName contains the keyname if succeeds else an empty string. 
 */
-RegError REGISTRY_CALLTYPE reg_getKeyName(RegKeyHandle hKey, rtl_uString** pKeyName);
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getKeyName(RegKeyHandle hKey, rtl_uString** pKeyName);
 
 
 /**	This function sets a value of a key.
@@ -141,7 +141,7 @@ const RegError REGISTRY_CALLTYPE reg_get
 	@param	valueSize specifies the size of pData in bytes
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_setValue(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_setValue(RegKeyHandle hKey, 
 					   					rtl_uString* keyName, 
 					   					RegValueType valueType, 
 					   					RegValue pData, 
@@ -157,7 +157,7 @@ RegError REGISTRY_CALLTYPE reg_setValue(
 	@param	len specifies the len of pValueList.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_setLongListValue(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_setLongListValue(RegKeyHandle hKey, 
 					   		 	  				rtl_uString* keyName, 
 			   			 		  				sal_Int32* pValueList, 
 			   			 		  				sal_uInt32 len);
@@ -172,7 +172,7 @@ RegError REGISTRY_CALLTYPE reg_setLongLi
 	@param	len specifies the len of pValueList.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_setStringListValue(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_setStringListValue(RegKeyHandle hKey, 
 					   		 	  			  	  rtl_uString* keyName, 
 			   			 		  			  	  sal_Char** pValueList, 
 			   			 		  			  	  sal_uInt32 len);
@@ -187,7 +187,7 @@ RegError REGISTRY_CALLTYPE reg_setString
 	@param	len	specifies the len of pValueList.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_setUnicodeListValue(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_setUnicodeListValue(RegKeyHandle hKey, 
 					   		 	  			   	   rtl_uString* keyName, 
 			   			 		  			   	   sal_Unicode** pValueList, 
 			   			 		  			   	   sal_uInt32 len);
@@ -204,7 +204,7 @@ RegError REGISTRY_CALLTYPE reg_setUnicod
 	@param	pValueSize returns the size of the value in bytes
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_getValueInfo(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getValueInfo(RegKeyHandle hKey, 
 						   					rtl_uString* keyName, 
 						   					RegValueType* pValueType, 
 						   					sal_uInt32* pValueSize);
@@ -220,7 +220,7 @@ RegError REGISTRY_CALLTYPE reg_getValueI
 	@param	pData points to an allocated memory block receiving the data of the value. 
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_getValue(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getValue(RegKeyHandle hKey, 
 					   					rtl_uString* keyName, 
 					   					RegValue pData);
 
@@ -234,7 +234,7 @@ RegError REGISTRY_CALLTYPE reg_getValue(
 	@param	pLen returns the length of the value list.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_getLongListValue(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getLongListValue(RegKeyHandle hKey, 
 					   		 	  				rtl_uString* keyName, 
 			   			 		  				sal_Int32** pValueList, 
 			   			 		  				sal_uInt32* pLen);
@@ -249,7 +249,7 @@ RegError REGISTRY_CALLTYPE reg_getLongLi
 	@param	pLen returns the length of the value list.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_getStringListValue(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getStringListValue(RegKeyHandle hKey, 
 				   			  					  rtl_uString* keyName, 
 				   			  					  sal_Char*** pValueList,
 				   			  					  sal_uInt32* pLen);
@@ -264,7 +264,7 @@ RegError REGISTRY_CALLTYPE reg_getString
 	@param	pLen returns the length of the value list.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_getUnicodeListValue(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getUnicodeListValue(RegKeyHandle hKey, 
 					   		 	  				   rtl_uString* keyName, 
 			   			 		  				   sal_Unicode*** pValueList, 
 			   			 		  				   sal_uInt32* pLen);
@@ -277,7 +277,7 @@ RegError REGISTRY_CALLTYPE reg_getUnicod
 	@param	len specifies the length of the value list.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_freeValueList(RegValueType valueType, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_freeValueList(RegValueType valueType, 
 				   			  				 RegValue pValueList, 
 				   			  				 sal_uInt32 len);
 
@@ -294,7 +294,7 @@ RegError REGISTRY_CALLTYPE reg_freeValue
                        link will be opened.
 	@return	REG_NO_ERROR if succeeds else an error code.    
 */
-RegError REGISTRY_CALLTYPE reg_createLink(RegKeyHandle hKey,
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_createLink(RegKeyHandle hKey,
 				  			   		      rtl_uString* linkName, 
 										  rtl_uString* linkTarget);
 
@@ -305,7 +305,7 @@ RegError REGISTRY_CALLTYPE reg_createLin
 	@param	linkName points to a null terminated string specifying the name of the link.
 	@return	REG_NO_ERROR if succeeds else an error code.    
 */
-RegError REGISTRY_CALLTYPE reg_deleteLink(RegKeyHandle hKey,
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_deleteLink(RegKeyHandle hKey,
 								  		  rtl_uString* linkName);
 
 /** This function returns the type of a key.
@@ -318,7 +318,7 @@ RegError REGISTRY_CALLTYPE reg_deleteLin
     @param  pKeyType returns the type of the key.   
 	@return	REG_NO_ERROR if succeeds else an error code.    
 */
-RegError REGISTRY_CALLTYPE reg_getKeyType(RegKeyHandle hKey,
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getKeyType(RegKeyHandle hKey,
 										  rtl_uString* keyName,
 					   					  RegKeyType* pKeyType);
 
@@ -329,7 +329,7 @@ RegError REGISTRY_CALLTYPE reg_getKeyTyp
 	@param	pLinkTarget contains the linktarget if succeeds else an empty string.
 	@return	REG_NO_ERROR if succeeds else an error code.    
 */
-RegError REGISTRY_CALLTYPE reg_getLinkTarget(RegKeyHandle hKey,
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getLinkTarget(RegKeyHandle hKey,
 											 rtl_uString* linkName,
 						  					 rtl_uString** pLinkTarget);
 
@@ -342,7 +342,7 @@ RegError REGISTRY_CALLTYPE reg_getLinkTa
                     The name of hKey together with keyName will be resolved from links.
 	@return	REG_NO_ERROR if succeeds else an error code. 
  */
-RegError REGISTRY_CALLTYPE reg_getResolvedKeyName(RegKeyHandle hKey,
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getResolvedKeyName(RegKeyHandle hKey,
 											  	  rtl_uString* keyName,
 											 	  sal_Bool firstLinkOnly,
 							  				  	  rtl_uString** pResolvedName);
@@ -359,7 +359,7 @@ RegError REGISTRY_CALLTYPE reg_getResolv
 			            registry information.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_loadKey(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_loadKey(RegKeyHandle hKey, 
 					  				   rtl_uString* keyName, 
 					  				   rtl_uString* regFileName);
 
@@ -376,7 +376,7 @@ RegError REGISTRY_CALLTYPE reg_loadKey(R
 			            registry information.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_saveKey(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_saveKey(RegKeyHandle hKey, 
 					  				   rtl_uString* keyName, 
 					  				   rtl_uString* regFileName);
 
@@ -396,7 +396,7 @@ RegError REGISTRY_CALLTYPE reg_saveKey(R
 	@param	bReport if TRUE the function reports warnings on stdout if a key already exists. 
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_mergeKey(RegKeyHandle hKey, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_mergeKey(RegKeyHandle hKey, 
 					   					rtl_uString* keyName, 
 					   					rtl_uString* regFileName,
 					   					sal_Bool bWarnings,
@@ -419,7 +419,7 @@ RegError REGISTRY_CALLTYPE reg_createReg
 	@param 	phRootKey points to a handle of the open root key if the function succeeds otherwise NULL.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_openRootKey(RegHandle hRegistry, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_openRootKey(RegHandle hRegistry, 
 						  				   RegKeyHandle* phRootKey);
 
 
@@ -429,7 +429,7 @@ RegError REGISTRY_CALLTYPE reg_openRootK
 	@param  pName returns the name of the registry if the function succeeds otherwise an empty string. 
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_getName(RegHandle hRegistry, rtl_uString** pName);
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_getName(RegHandle hRegistry, rtl_uString** pName);
 
 
 /**	This function returns the access mode of the registry.
@@ -437,7 +437,7 @@ const RegError REGISTRY_CALLTYPE reg_get
 	@param	hReg identifies a currently open registry.
 	@return	TRUE if accessmode is read only else FALSE. 
 */
-sal_Bool REGISTRY_CALLTYPE reg_isReadOnly(RegHandle hReg);
+sal_Bool REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_isReadOnly(RegHandle hReg);
 
 
 /**	This function opens a registry with the specified name.
@@ -447,7 +447,7 @@ sal_Bool REGISTRY_CALLTYPE reg_isReadOnl
 	@param 	accessMode specifies the accessmode of the registry, REG_READONLY or REG_READWRITE.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_openRegistry(rtl_uString* registryName, 
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_openRegistry(rtl_uString* registryName, 
 						   					RegHandle* phRegistry,
 						   					RegAccessMode accessMode);
 
@@ -457,7 +457,7 @@ RegError REGISTRY_CALLTYPE reg_openRegis
 	@param	hRegistry identifies a currently open registry which should be closed.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_closeRegistry(RegHandle hRegistry);
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_closeRegistry(RegHandle hRegistry);
 
 
 /**	This function destroys a registry.
@@ -467,7 +467,7 @@ RegError REGISTRY_CALLTYPE reg_closeRegi
                          name is NULL the registry itselfs will be destroyed.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_destroyRegistry(RegHandle hRegistry,
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_destroyRegistry(RegHandle hRegistry,
 											   rtl_uString* registryName);
 
 
@@ -478,7 +478,7 @@ RegError REGISTRY_CALLTYPE reg_destroyRe
 	@param	hKey identifies a currently open key which content will be reported.
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
-RegError REGISTRY_CALLTYPE reg_dumpRegistry(RegKeyHandle hKey);
+RegError REGISTRY_CALLTYPE SAL_DLLPUBLIC_EXPORT reg_dumpRegistry(RegKeyHandle hKey);
 
 #ifdef __cplusplus
 }
--- ./registry/inc/registry/writer.h.arkopts~	2008-04-11 12:46:39.000000000 +0200
+++ ./registry/inc/registry/writer.h	2008-07-17 11:52:18.919326086 +0200
@@ -79,7 +79,7 @@ void * SAL_CALL typereg_writer_create(
     rtl_uString const * fileName, RTTypeClass typeClass, sal_Bool published,
     rtl_uString const * typeName, sal_uInt16 superTypeCount,
     sal_uInt16 fieldCount, sal_uInt16 methodCount, sal_uInt16 referenceCount)
-    SAL_THROW_EXTERN_C();
+    SAL_THROW_EXTERN_C() SAL_DLLPUBLIC_EXPORT;
 
 /**
    Destroys a type writer.
@@ -89,7 +89,7 @@ void * SAL_CALL typereg_writer_create(
 
    @since UDK 3.2.0
  */
-void SAL_CALL typereg_writer_destroy(void * handle) SAL_THROW_EXTERN_C();
+void SAL_CALL SAL_DLLPUBLIC_EXPORT typereg_writer_destroy(void * handle) SAL_THROW_EXTERN_C();
 
 /**
    Sets the type name of a super type of a type writer.
@@ -106,7 +106,7 @@ void SAL_CALL typereg_writer_destroy(voi
 
    @since UDK 3.2.0
  */
-sal_Bool SAL_CALL typereg_writer_setSuperTypeName(
+sal_Bool SAL_CALL SAL_DLLPUBLIC_EXPORT typereg_writer_setSuperTypeName(
     void * handle, sal_uInt16 index, rtl_uString const * typeName)
         SAL_THROW_EXTERN_C();
 
@@ -136,7 +136,7 @@ sal_Bool SAL_CALL typereg_writer_setSupe
 
    @since UDK 3.2.0
  */
-sal_Bool SAL_CALL typereg_writer_setFieldData(
+sal_Bool SAL_CALL SAL_DLLPUBLIC_EXPORT typereg_writer_setFieldData(
     void * handle, sal_uInt16 index, rtl_uString const * documentation,
     rtl_uString const * fileName, RTFieldAccess flags, rtl_uString const * name,
     rtl_uString const * typeName, RTValueType valueType,
@@ -167,7 +167,7 @@ sal_Bool SAL_CALL typereg_writer_setFiel
 
    @since UDK 3.2.0
  */
-sal_Bool SAL_CALL typereg_writer_setMethodData(
+sal_Bool SAL_CALL SAL_DLLPUBLIC_EXPORT typereg_writer_setMethodData(
     void * handle, sal_uInt16 index, rtl_uString const * documentation,
     RTMethodMode flags, rtl_uString const * name,
     rtl_uString const * returnTypeName, sal_uInt16 parameterCount,
@@ -196,7 +196,7 @@ sal_Bool SAL_CALL typereg_writer_setMeth
 
    @since UDK 3.2.0
  */
-sal_Bool SAL_CALL typereg_writer_setMethodParameterData(
+sal_Bool SAL_CALL SAL_DLLPUBLIC_EXPORT typereg_writer_setMethodParameterData(
     void * handle, sal_uInt16 methodIndex, sal_uInt16 parameterIndex,
     RTParamMode flags, rtl_uString const * name, rtl_uString const * typeName)
     SAL_THROW_EXTERN_C();
@@ -219,7 +219,7 @@ sal_Bool SAL_CALL typereg_writer_setMeth
 
    @since UDK 3.2.0
  */
-sal_Bool SAL_CALL typereg_writer_setMethodExceptionTypeName(
+sal_Bool SAL_CALL SAL_DLLPUBLIC_EXPORT typereg_writer_setMethodExceptionTypeName(
     void * handle, sal_uInt16 methodIndex, sal_uInt16 exceptionIndex,
     rtl_uString const * typeName)
     SAL_THROW_EXTERN_C();
@@ -245,7 +245,7 @@ sal_Bool SAL_CALL typereg_writer_setMeth
 
    @since UDK 3.2.0
  */
-sal_Bool SAL_CALL typereg_writer_setReferenceData(
+sal_Bool SAL_CALL SAL_DLLPUBLIC_EXPORT typereg_writer_setReferenceData(
     void * handle, sal_uInt16 index, rtl_uString const * documentation,
     RTReferenceType sort, RTFieldAccess flags, rtl_uString const * typeName)
     SAL_THROW_EXTERN_C();
@@ -263,7 +263,7 @@ sal_Bool SAL_CALL typereg_writer_setRefe
    and <code>size</code> is not modified
  */
 void const * SAL_CALL typereg_writer_getBlob(void * handle, sal_uInt32 * size)
-    SAL_THROW_EXTERN_C();
+    SAL_THROW_EXTERN_C() SAL_DLLPUBLIC_EXPORT;
 
 #ifdef __cplusplus
 }
--- ./salhelper/inc/salhelper/dynload.hxx.arkopts~	2008-04-11 13:21:25.000000000 +0200
+++ ./salhelper/inc/salhelper/dynload.hxx	2008-07-17 11:52:18.919326086 +0200
@@ -40,7 +40,7 @@ namespace salhelper
 
 /** The ORealDynamicLoader is an implementation helper class for the template loader ODynamicLoader.
  */   
-class ORealDynamicLoader
+class SAL_DLLPUBLIC_EXPORT ORealDynamicLoader
 {
 public:
     /** initializes the loader, loads the library and call the initialization fucntion.
--- ./sal/inc/osl/file.h.arkopts~	2008-04-15 16:25:23.000000000 +0200
+++ ./sal/inc/osl/file.h	2008-07-17 11:52:19.021268860 +0200
@@ -174,7 +174,7 @@ typedef void *oslDirectoryItem;
 	@see osl_closeDirectory()
 */
 
-oslFileError SAL_CALL osl_openDirectory( rtl_uString *pustrDirectoryURL, oslDirectory *pDirectory);
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_openDirectory( rtl_uString *pustrDirectoryURL, oslDirectory *pDirectory);
 
 
 /**	Retrieve the next item of a previously opened directory. 
@@ -208,7 +208,7 @@ oslFileError SAL_CALL osl_openDirectory(
 	@see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_getNextDirectoryItem(
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getNextDirectoryItem(
 	oslDirectory Directory,
 	oslDirectoryItem *pItem,
 	sal_uInt32	 uHint
@@ -230,7 +230,7 @@ oslFileError SAL_CALL osl_getNextDirecto
 	@see osl_openDirectory()
 */
 
-oslFileError SAL_CALL osl_closeDirectory(oslDirectory Directory);
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_closeDirectory(oslDirectory Directory);
 
 
 /**	Retrieve a single directory item. 
@@ -269,7 +269,7 @@ oslFileError SAL_CALL osl_closeDirectory
 	@see osl_getNextDirectoryItem()
 */
 
-oslFileError SAL_CALL osl_getDirectoryItem(
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getDirectoryItem(
 	rtl_uString *pustrFileURL, 
 	oslDirectoryItem *pItem
 	);
@@ -292,7 +292,7 @@ oslFileError SAL_CALL osl_getDirectoryIt
     @see osl_releaseDirectoryItem()
 */
 
-oslFileError SAL_CALL osl_acquireDirectoryItem( oslDirectoryItem Item );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_acquireDirectoryItem( oslDirectoryItem Item );
 
 
 /**	Decrease the refcount of a directory item handle. 
@@ -314,7 +314,7 @@ oslFileError SAL_CALL osl_acquireDirecto
 	@see osl_acquireDirectoryItem()
 */
 
-oslFileError SAL_CALL osl_releaseDirectoryItem( oslDirectoryItem Item ); 
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_releaseDirectoryItem( oslDirectoryItem Item ); 
 
 /* File types */
 
@@ -437,7 +437,7 @@ struct _oslFileStatus {
 	@see oslFileStatus
 */
 
-oslFileError SAL_CALL osl_getFileStatus( oslDirectoryItem Item, oslFileStatus *pStatus, sal_uInt32 uFieldMask );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getFileStatus( oslDirectoryItem Item, oslFileStatus *pStatus, sal_uInt32 uFieldMask );
 
 
 typedef void *oslVolumeDeviceHandle;
@@ -459,7 +459,7 @@ typedef void *oslVolumeDeviceHandle;
     @see osl_getVolumeInformation()
 */
 
-oslFileError SAL_CALL osl_unmountVolumeDevice( oslVolumeDeviceHandle Handle );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_unmountVolumeDevice( oslVolumeDeviceHandle Handle );
 
 
 /** Automount a volume device.
@@ -478,7 +478,7 @@ oslFileError SAL_CALL osl_unmountVolumeD
     @see osl_getVolumeInformation()
 */
 
-oslFileError SAL_CALL osl_automountVolumeDevice( oslVolumeDeviceHandle Handle );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_automountVolumeDevice( oslVolumeDeviceHandle Handle );
 
 
 /** Release a volume device handle.
@@ -499,7 +499,7 @@ oslFileError SAL_CALL osl_automountVolum
     @see osl_getVolumeInformation()    
 */
 
-oslFileError SAL_CALL osl_releaseVolumeDeviceHandle( oslVolumeDeviceHandle Handle );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_releaseVolumeDeviceHandle( oslVolumeDeviceHandle Handle );
 
 /** Acquire a volume device handle.
 
@@ -519,7 +519,7 @@ oslFileError SAL_CALL osl_releaseVolumeD
     @see osl_getVolumeInformation()
 */
 
-oslFileError SAL_CALL osl_acquireVolumeDeviceHandle( oslVolumeDeviceHandle Handle );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_acquireVolumeDeviceHandle( oslVolumeDeviceHandle Handle );
 
 
 /** Get the full qualified URL where a device is mounted to.
@@ -550,7 +550,7 @@ oslFileError SAL_CALL osl_acquireVolumeD
 	@see	osl_unmountVolumeDevice()
 */
 
-oslFileError SAL_CALL osl_getVolumeDeviceMountPath( oslVolumeDeviceHandle Handle, rtl_uString **ppustrDirectoryURL);
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getVolumeDeviceMountPath( oslVolumeDeviceHandle Handle, rtl_uString **ppustrDirectoryURL);
 
 /* Volume attributes */
 
@@ -645,7 +645,7 @@ struct _oslVolumeInfo {
 	@see	oslVolumeInfo
 */	
 
-oslFileError SAL_CALL osl_getVolumeInformation(
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getVolumeInformation(
     rtl_uString *pustrDirectoryURL, 
     oslVolumeInfo *pInfo, 
     sal_uInt32 uFieldMask );
@@ -708,7 +708,7 @@ typedef	void *oslFileHandle;
 	@see osl_getFileSize()
 */
 
-oslFileError SAL_CALL osl_openFile( rtl_uString *pustrFileURL, oslFileHandle *pHandle, sal_uInt32 uFlags );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_openFile( rtl_uString *pustrFileURL, oslFileHandle *pHandle, sal_uInt32 uFlags );
 
 #define osl_Pos_Absolut 1
 #define osl_Pos_Current 2
@@ -734,7 +734,7 @@ oslFileError SAL_CALL osl_openFile( rtl_
 	@see	osl_getFilePos()
 */
 
-oslFileError SAL_CALL osl_setFilePos( oslFileHandle Handle, sal_uInt32 uHow, sal_Int64 uPos );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_setFilePos( oslFileHandle Handle, sal_uInt32 uHow, sal_Int64 uPos );
 
 
 /**	Retrieve the current position of the internal pointer of an open file.
@@ -756,7 +756,7 @@ oslFileError SAL_CALL osl_setFilePos( os
 	@see osl_writeFile()
 */
 
-oslFileError SAL_CALL osl_getFilePos( oslFileHandle Handle, sal_uInt64 *pPos );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getFilePos( oslFileHandle Handle, sal_uInt64 *pPos );
 
 
 /**	Set the file size of an open file. 
@@ -781,7 +781,7 @@ oslFileError SAL_CALL osl_getFilePos( os
 	@see osl_getFileSize()
 */
 
-oslFileError SAL_CALL osl_setFileSize( oslFileHandle Handle, sal_uInt64 uSize );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_setFileSize( oslFileHandle Handle, sal_uInt64 uSize );
 
 
 /**	Get the file size of an open file. 
@@ -805,7 +805,7 @@ oslFileError SAL_CALL osl_setFileSize( o
 	@see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_getFileSize( oslFileHandle Handle, sal_uInt64 *pSize );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getFileSize( oslFileHandle Handle, sal_uInt64 *pSize );
 
 
 /**	Read a number of bytes from a file. 
@@ -843,7 +843,7 @@ oslFileError SAL_CALL osl_getFileSize( o
 	@see osl_setFilePos()
 */
 
-oslFileError SAL_CALL osl_readFile( oslFileHandle Handle, void *pBuffer, sal_uInt64 uBytesRequested, sal_uInt64 *pBytesRead );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_readFile( oslFileHandle Handle, void *pBuffer, sal_uInt64 uBytesRequested, sal_uInt64 *pBytesRead );
 
 
 /**	Test if the end of a file is reached.
@@ -871,7 +871,7 @@ oslFileError SAL_CALL osl_readFile( oslF
 	@see osl_setFilePos()
 */
 
-oslFileError SAL_CALL osl_isEndOfFile( oslFileHandle Handle, sal_Bool *pIsEOF );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_isEndOfFile( oslFileHandle Handle, sal_Bool *pIsEOF );
 
 
 /** Write a number of bytes to a file. 
@@ -911,7 +911,7 @@ oslFileError SAL_CALL osl_isEndOfFile( o
 	@see osl_setFilePos()
 */
 
-oslFileError SAL_CALL osl_writeFile( oslFileHandle Handle, const void *pBuffer, sal_uInt64 uBytesToWrite, sal_uInt64 *pBytesWritten );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_writeFile( oslFileHandle Handle, const void *pBuffer, sal_uInt64 uBytesToWrite, sal_uInt64 *pBytesWritten );
 
 
 /** Read a line from a file. 
@@ -941,7 +941,7 @@ oslFileError SAL_CALL osl_writeFile( osl
 	@see osl_setFilePos()
 */
 
-oslFileError SAL_CALL osl_readLine( oslFileHandle Handle, sal_Sequence** ppSequence );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_readLine( oslFileHandle Handle, sal_Sequence** ppSequence );
 
 /** Synchronize the memory representation of a file with that on the physical medium.
 
@@ -977,7 +977,7 @@ oslFileError SAL_CALL osl_readLine( oslF
       @see osl_openFile()
       @see osl_writeFile()      
 */
-oslFileError SAL_CALL osl_syncFile(oslFileHandle Handle);
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_syncFile(oslFileHandle Handle);
 
 /**	Close an open file.
 
@@ -996,7 +996,7 @@ oslFileError SAL_CALL osl_syncFile(oslFi
 	@see osl_openFile()
 */
 
-oslFileError SAL_CALL osl_closeFile( oslFileHandle Handle );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_closeFile( oslFileHandle Handle );
 
 	
 /**	Create a directory.
@@ -1026,7 +1026,7 @@ oslFileError SAL_CALL osl_closeFile( osl
 	@see osl_removeDirectory()
 */
 
-oslFileError SAL_CALL osl_createDirectory( rtl_uString* pustrDirectoryURL );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_createDirectory( rtl_uString* pustrDirectoryURL );
 
 
 /**	Remove an empty directory.
@@ -1057,7 +1057,7 @@ oslFileError SAL_CALL osl_createDirector
 	@see osl_createDirectory()
 */
 	
-oslFileError SAL_CALL osl_removeDirectory( rtl_uString* pustrDirectoryURL );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_removeDirectory( rtl_uString* pustrDirectoryURL );
 
 /** Function pointer representing a function that will be called by osl_createDirectoryPath
     if a directory has been created.
@@ -1135,7 +1135,7 @@ typedef void (SAL_CALL *oslDirectoryCrea
 	@see oslFileError
 	@see osl_createDirectory
 */
-oslFileError SAL_CALL osl_createDirectoryPath(
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_createDirectoryPath(
     rtl_uString* aDirectoryUrl, 
     oslDirectoryCreationCallbackFunc aDirectoryCreationCallbackFunc, 
     void* pData);
@@ -1168,7 +1168,7 @@ oslFileError SAL_CALL osl_createDirector
 	@see osl_openFile()
 */
 
-oslFileError SAL_CALL osl_removeFile( rtl_uString* pustrFileURL );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_removeFile( rtl_uString* pustrFileURL );
 
 
 /** Copy a file to a new destination. 
@@ -1197,7 +1197,7 @@ oslFileError SAL_CALL osl_removeFile( rt
 	@see	osl_removeFile()
 */
 
-oslFileError SAL_CALL osl_copyFile( rtl_uString* pustrSourceFileURL, rtl_uString *pustrDestFileURL );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_copyFile( rtl_uString* pustrSourceFileURL, rtl_uString *pustrDestFileURL );
 
 
 /** Move a file or directory to a new destination or renames it. 
@@ -1224,7 +1224,7 @@ oslFileError SAL_CALL osl_copyFile( rtl_
 	@see osl_copyFile()
 */
 
-oslFileError SAL_CALL osl_moveFile( rtl_uString* pustrSourceFileURL, rtl_uString *pustrDestFileURL );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_moveFile( rtl_uString* pustrSourceFileURL, rtl_uString *pustrDestFileURL );
 
 
 /**	Determine a valid unused canonical name for a requested name. 
@@ -1248,7 +1248,7 @@ oslFileError SAL_CALL osl_moveFile( rtl_
 	@see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_getCanonicalName( rtl_uString *pustrRequestedURL, rtl_uString **ppustrValidURL);
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getCanonicalName( rtl_uString *pustrRequestedURL, rtl_uString **ppustrValidURL);
 
 
 /**	Convert a path relative to a given directory into an full qualified file URL.
@@ -1286,7 +1286,7 @@ oslFileError SAL_CALL osl_getCanonicalNa
 	@see	osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_getAbsoluteFileURL( 
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getAbsoluteFileURL( 
     rtl_uString* pustrBaseDirectoryURL, 
     rtl_uString *pustrRelativeFileURL, 
     rtl_uString **ppustrAbsoluteFileURL );
@@ -1307,7 +1307,7 @@ oslFileError SAL_CALL osl_getAbsoluteFil
 	@see osl_getSystemPathFromFileURL()
 */
 
-oslFileError SAL_CALL osl_getFileURLFromSystemPath( rtl_uString *pustrSystemPath, rtl_uString **ppustrFileURL);
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getFileURLFromSystemPath( rtl_uString *pustrSystemPath, rtl_uString **ppustrFileURL);
 
 
 /**	Searche a full qualified system path or a file URL.
@@ -1338,7 +1338,7 @@ oslFileError SAL_CALL osl_getFileURLFrom
 	@see osl_getSystemPathFromFileURL()
 */
 
-oslFileError SAL_CALL osl_searchFileURL( rtl_uString *pustrFileName, rtl_uString *pustrSearchPath, rtl_uString **ppustrFileURL ); 
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_searchFileURL( rtl_uString *pustrFileName, rtl_uString *pustrSearchPath, rtl_uString **ppustrFileURL ); 
 
 
 /**	Convert a file URL into a system dependend path.
@@ -1356,7 +1356,7 @@ oslFileError SAL_CALL osl_searchFileURL(
 	@see osl_getFileURLFromSystemPath()
 */
 
-oslFileError SAL_CALL osl_getSystemPathFromFileURL( rtl_uString *pustrFileURL, rtl_uString **ppustrSystemPath);
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getSystemPathFromFileURL( rtl_uString *pustrFileURL, rtl_uString **ppustrSystemPath);
 
 
 /** Function pointer representing the function called back from osl_abbreviateSystemPath
@@ -1395,7 +1395,7 @@ typedef sal_uInt32 (SAL_CALL *oslCalcTex
 	@see	oslCalcTextWidthFunc
 */
 
-oslFileError SAL_CALL osl_abbreviateSystemPath( 
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_abbreviateSystemPath( 
     rtl_uString *ustrSystemPath, 
     rtl_uString **pustrCompacted, 
     sal_uInt32 uMaxWidth, 
@@ -1417,7 +1417,7 @@ oslFileError SAL_CALL osl_abbreviateSyst
 	@see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_setFileAttributes( rtl_uString *pustrFileURL, sal_uInt64 uAttributes ); 
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_setFileAttributes( rtl_uString *pustrFileURL, sal_uInt64 uAttributes ); 
 
 
 /**	Set the file time.
@@ -1442,7 +1442,7 @@ oslFileError SAL_CALL osl_setFileAttribu
 	@see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_setFileTime( 
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_setFileTime( 
     rtl_uString *pustrFileURL,	
     const TimeValue *aCreationTime,
 	const TimeValue *aLastAccessTime,
@@ -1459,7 +1459,7 @@ oslFileError SAL_CALL osl_setFileTime( 
 	osl_File_E_NOENT no such file or directory not found
 */
 
-oslFileError SAL_CALL osl_getTempDirURL( rtl_uString **pustrTempDirURL );
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getTempDirURL( rtl_uString **pustrTempDirURL );
 
 
 /** Creates a temporary file in the directory provided by the caller or the
@@ -1514,7 +1514,7 @@ oslFileError SAL_CALL osl_getTempDirURL(
 	@see    osl_getTempDirURL()	
 */
 
-oslFileError SAL_CALL osl_createTempFile(
+oslFileError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_createTempFile(
     rtl_uString*   pustrDirectoryURL, 
     oslFileHandle* pHandle, 
     rtl_uString**  ppustrTempFileURL);
@@ -1524,5 +1524,3 @@ oslFileError SAL_CALL osl_createTempFile
 #endif
 
 #endif	/* _OSL_FILE_H_ */
-
-
--- ./sal/inc/osl/process.h.arkopts~	2008-04-10 12:31:04.000000000 +0200
+++ ./sal/inc/osl/process.h	2008-07-17 11:52:19.072043379 +0200
@@ -180,7 +180,7 @@ typedef void* oslProcess;
 	@see osl_freeProcessHandle
 	@see osl_loginUser
 */
-oslProcessError SAL_CALL osl_executeProcess(
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_executeProcess(
     rtl_uString* ustrImageName,
 	rtl_uString* ustrArguments[],
     sal_uInt32  nArguments,
@@ -266,7 +266,7 @@ oslProcessError SAL_CALL osl_executeProc
 	@see osl_loginUser
 	@see osl_closeFile
 */
-oslProcessError SAL_CALL osl_executeProcess_WithRedirectedIO(
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_executeProcess_WithRedirectedIO(
     rtl_uString* strImageName,
 	rtl_uString* ustrArguments[],
     sal_uInt32 nArguments,
@@ -287,7 +287,7 @@ oslProcessError SAL_CALL osl_executeProc
     @see osl_getProcess
     @see osl_joinProcess
  */
-oslProcessError SAL_CALL osl_terminateProcess(oslProcess Process);
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_terminateProcess(oslProcess Process);
 
 
 /** @deprecated
@@ -296,13 +296,13 @@ oslProcessError SAL_CALL osl_terminatePr
 
     @return the process handle on success, NULL in all other cases
  */
-oslProcess SAL_CALL osl_getProcess(oslProcessIdentifier Ident);
+oslProcess SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getProcess(oslProcessIdentifier Ident);
 
 
 /** Free the specified proces-handle.
 	@param Process [in]
 */
-void SAL_CALL osl_freeProcessHandle(oslProcess Process);
+void SAL_CALL SAL_DLLPUBLIC_EXPORT osl_freeProcessHandle(oslProcess Process);
 
 
 /** Wait for completation of the specified childprocess.
@@ -310,7 +310,7 @@ void SAL_CALL osl_freeProcessHandle(oslP
 	@return ols_Process_E_None
 	@see osl_executeProcess
 */
-oslProcessError SAL_CALL osl_joinProcess(oslProcess Process);
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_joinProcess(oslProcess Process);
 
 /** Wait with a timeout for the completion of the specified child
     process.
@@ -329,7 +329,7 @@ oslProcessError SAL_CALL osl_joinProcess
 
     @see osl_executeProcess
 */
-oslProcessError SAL_CALL osl_joinProcessWithTimeout(oslProcess Process, const TimeValue* pTimeout);
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_joinProcessWithTimeout(oslProcess Process, const TimeValue* pTimeout);
 
 /** Retrieves information about a Process
     @param Process [in] the process handle of the process
@@ -346,7 +346,7 @@ oslProcessError SAL_CALL osl_joinProcess
                         retrieved valid information fields.
     @return osl_Process_E_None on success, osl_Process_E_Unknown on failure.
  */
-oslProcessError SAL_CALL osl_getProcessInfo(oslProcess Process, oslProcessData Fields, 
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getProcessInfo(oslProcess Process, oslProcessData Fields, 
                                    oslProcessInfo* pInfo);
 
 /** Get the filename of the executable. 
@@ -354,13 +354,13 @@ oslProcessError SAL_CALL osl_getProcessI
 	@return osl_Process_E_None or does not return. 	
 	@see osl_executeProcess 
 */
-oslProcessError SAL_CALL osl_getExecutableFile(rtl_uString **strFile);
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getExecutableFile(rtl_uString **strFile);
 
 /** @return the number of commandline arguments passed to the main-function of
     this process
     @see osl_getCommandArg
 */
-sal_uInt32 SAL_CALL osl_getCommandArgCount(void);
+sal_uInt32 SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getCommandArgCount(void);
 
 /** Get the nArg-th command-line argument passed to the main-function of this process.
     @param nArg [in] The number of the argument to return.
@@ -368,7 +368,7 @@ sal_uInt32 SAL_CALL osl_getCommandArgCou
 	@return osl_Process_E_None or does not return. 	
 	@see osl_executeProcess
 */
-oslProcessError SAL_CALL osl_getCommandArg(sal_uInt32 nArg, rtl_uString **strCommandArg);
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getCommandArg(sal_uInt32 nArg, rtl_uString **strCommandArg);
 
 /** Set the command-line arguments as passed to the main-function of this process.
 
@@ -383,13 +383,13 @@ oslProcessError SAL_CALL osl_getCommandA
 	@see osl_getCommandArgCount
 	@see osl_getCommandArg
 */
-void SAL_CALL osl_setCommandArgs (int argc, char **argv);
+void SAL_CALL SAL_DLLPUBLIC_EXPORT osl_setCommandArgs (int argc, char **argv);
 
 /** Get the value of one enviroment variable.
 	@param strVar [in] denotes the name of the variable to get.
 	@param strValue [out] string that receives the value of environment variable.
 */
-oslProcessError SAL_CALL osl_getEnvironment(rtl_uString *strVar, rtl_uString **strValue);
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getEnvironment(rtl_uString *strVar, rtl_uString **strValue);
 
 /** Get the working directory of the current process as a file URL. 
 
@@ -397,7 +397,7 @@ oslProcessError SAL_CALL osl_getEnvironm
 	@param	pustrWorkingDir [out] string that receives the working directory file URL.
 */
 
-oslProcessError SAL_CALL osl_getProcessWorkingDir( rtl_uString **pustrWorkingDir );
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getProcessWorkingDir( rtl_uString **pustrWorkingDir );
 
 /** Get the locale the process is currently running in. 
 
@@ -408,7 +408,7 @@ oslProcessError SAL_CALL osl_getProcessW
     @see osl_setProcessLocale
 */
 
-oslProcessError SAL_CALL osl_getProcessLocale( rtl_Locale ** ppLocale );
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_getProcessLocale( rtl_Locale ** ppLocale );
 
 /** Change the locale of the process. 
 
@@ -416,12 +416,12 @@ oslProcessError SAL_CALL osl_getProcessL
     @see osl_getProcessLocale
 */
 
-oslProcessError SAL_CALL osl_setProcessLocale( rtl_Locale * pLocale );
+oslProcessError SAL_CALL SAL_DLLPUBLIC_EXPORT osl_setProcessLocale( rtl_Locale * pLocale );
  
 
-sal_Bool SAL_CALL osl_sendResourcePipe(oslPipe Pipe, oslSocket Socket);
+sal_Bool SAL_CALL SAL_DLLPUBLIC_EXPORT osl_sendResourcePipe(oslPipe Pipe, oslSocket Socket);
  
-oslSocket SAL_CALL osl_receiveResourcePipe(oslPipe Pipe);
+oslSocket SAL_CALL SAL_DLLPUBLIC_EXPORT osl_receiveResourcePipe(oslPipe Pipe);
 
 #ifdef __cplusplus
 }
--- ./sal/inc/rtl/unload.h.arkopts~	2008-04-10 12:43:36.000000000 +0200
+++ ./sal/inc/rtl/unload.h	2008-07-17 11:52:19.072043379 +0200
@@ -166,7 +166,7 @@ have to bother about registering.
 @param module a module handle as is obtained by osl_loadModule 
 @return sal_True - the module could be registered for unloading, sal_False otherwise 
 */
-sal_Bool SAL_CALL rtl_registerModuleForUnloading( oslModule module);
+sal_Bool SAL_CALL SAL_DLLPUBLIC_EXPORT rtl_registerModuleForUnloading( oslModule module);
 
 /**
 The function revokes the registration of a module. By calling the function for 
@@ -179,7 +179,7 @@ there is no need to call this function u
 
 @param module a module handle as is obtained by osl_loadModule
 */
-void SAL_CALL rtl_unregisterModuleForUnloading( oslModule module);
+void SAL_CALL SAL_DLLPUBLIC_EXPORT rtl_unregisterModuleForUnloading( oslModule module);
 /**
 This function sets off the unloading mechanism. At first it notifies the 
 unloading listeners in order to give them a chance to do cleanup and get 
@@ -205,7 +205,7 @@ registered listeners and release the ref
 @param libUnused span of time that a module must be unused to be unloaded. the 
 argument is optional.
 */
-void SAL_CALL rtl_unloadUnusedModules( TimeValue* libUnused);
+void SAL_CALL SAL_DLLPUBLIC_EXPORT rtl_unloadUnusedModules( TimeValue* libUnused);
 
 /** 
 rtl_addUnloadingListener takes an argument of this type.
@@ -227,7 +227,7 @@ as it has been registered.
 @param this  - a value to distinguish different listener instances
 @return identifier which is used in rtl_removeUnloadingListener
 */
-sal_Int32 SAL_CALL rtl_addUnloadingListener( rtl_unloadingListenerFunc callback, void* _this);
+sal_Int32 SAL_CALL SAL_DLLPUBLIC_EXPORT rtl_addUnloadingListener( rtl_unloadingListenerFunc callback, void* _this);
 
 /**
 Listeners (the callback functions) must be unregistered before the listener code 
@@ -237,7 +237,7 @@ registered when <code>component_canUnloa
 
 @param cookie is an identifier as returned by <code>rtl_addUnloadingListener</code> function.
 */
-void SAL_CALL rtl_removeUnloadingListener( sal_Int32 cookie );
+void SAL_CALL SAL_DLLPUBLIC_EXPORT rtl_removeUnloadingListener( sal_Int32 cookie );
 
 
 /** 
@@ -297,17 +297,17 @@ typedef struct _rtl_StandardModuleCount
 /** Default implementation for <code>rtl_ModuleCount.acquire</code>. Use this function along with 
 <code>rtl_StandardModuleCount</code>.
 */
-void rtl_moduleCount_acquire(rtl_ModuleCount * that );
+void SAL_DLLPUBLIC_EXPORT rtl_moduleCount_acquire(rtl_ModuleCount * that );
 /** Default implementation for <code>rtl_ModuleCount.release</code>.
 Use this function along with 
 <code>rtl_StandardModuleCount</code>.
 */
-void rtl_moduleCount_release( rtl_ModuleCount * that );
+void SAL_DLLPUBLIC_EXPORT rtl_moduleCount_release( rtl_ModuleCount * that );
 
 /** Default implementation for <code>component_canUnload</code>. Use this function along with 
 <code>rtl_StandardModuleCount</code>.
 */
-sal_Bool rtl_moduleCount_canUnload( rtl_StandardModuleCount * that, TimeValue* libUnused);
+sal_Bool SAL_DLLPUBLIC_EXPORT rtl_moduleCount_canUnload( rtl_StandardModuleCount * that, TimeValue* libUnused);
 
 
 #ifdef __cplusplus
Index: unxlng.mk
===================================================================
--- solenv/inc/unxlng.mk	(Revision 276754)
+++ solenv/inc/unxlng.mk	(Arbeitskopie)
@@ -86,12 +86,12 @@
 # flags for the C++ Compiler
-CFLAGSCC= -pipe $(ARCH_FLAGS)
+CFLAGSCC= -O2 -Os -fno-omit-frame-pointer -fweb -frename-registers -pipe $(ARCH_FLAGS)
 # Flags for enabling exception handling
 CFLAGSEXCEPTIONS=-fexceptions -fno-enforce-eh-specs
 # Flags for disabling exception handling
 CFLAGS_NO_EXCEPTIONS=-fno-exceptions
 
 # -fpermissive should be removed as soon as possible
-CFLAGSCXX= -pipe $(ARCH_FLAGS)
+CFLAGSCXX= -O2 -Os -fno-omit-frame-pointer -fweb -frename-registers -pipe $(ARCH_FLAGS)
 .IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE" && "$(HAVE_GCC_VISIBILITY_BROKEN)" != "TRUE"
 CFLAGSCXX += -fvisibility-inlines-hidden
 .ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
@@ -111,13 +111,13 @@
 # Compiler flags for profiling
 CFLAGSPROF=
 # Compiler flags for debugging
-CFLAGSDEBUG=-g
+CFLAGSDEBUG=
 CFLAGSDBGUTIL=
 # Compiler flags for enabling optimizations
 .IF "$(PRODUCT)"!=""
-CFLAGSOPT=$(CDEFAULTOPT) -fno-strict-aliasing		# optimizing for products
+CFLAGSOPT=-O2 -Os -fno-omit-frame-pointer -fweb -frename-registers -fno-strict-aliasing		# optimizing for products
 .ELSE 	# "$(PRODUCT)"!=""
-CFLAGSOPT=   							# no optimizing for non products
+CFLAGSOPT=-O2 -Os -fno-omit-frame-pointer -fweb -frename-registers -fno-strict-aliasing   							# no optimizing for non products
 .ENDIF	# "$(PRODUCT)"!=""
 # Compiler flags for disabling optimizations
 CFLAGSNOOPT=-O0
@@ -174,12 +174,12 @@
 
 LINKFLAGSTACK=
 LINKFLAGSPROF=
-LINKFLAGSDEBUG=-g
+LINKFLAGSDEBUG=
 LINKFLAGSOPT=
 
 # linker flags for optimization (symbol hashtable)
 # for now, applied to symbol scoped libraries, only
-LINKFLAGSOPTIMIZE*=-Wl,-O1
+LINKFLAGSOPTIMIZE*=-Wl,-O2
 LINKVERSIONMAPFLAG=$(LINKFLAGSOPTIMIZE) -Wl,--version-script
 
 SONAME_SWITCH=-Wl,-h
Index: unxlngi.mk
===================================================================
--- solenv/inc/unxlngi.mk	(Revision 276754)
+++ solenv/inc/unxlngi.mk	(Arbeitskopie)
@@ -31,7 +31,7 @@
 
 # mk file for Unix Linux Intel (X86) using GCC, please make generic modifications to unxlng.mk
 CDEFAULTOPT=-Os
-ARCH_FLAGS*=-mtune=pentiumpro
+ARCH_FLAGS*=-march=i686 -mtune=i686
 .INCLUDE : unxlng.mk
 CDEFS+=-DX86
 DLLPOST=.so
--- ./store/inc/store/store.h.arkopts~	2008-07-17 11:49:18.057038431 +0200
+++ ./store/inc/store/store.h	2008-07-17 11:52:19.076064554 +0200
@@ -46,7 +46,7 @@ typedef void* storeHandle;
     @param  Handle [in] the Handle.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_acquireHandle (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_acquireHandle (
 	storeHandle Handle
 ) SAL_THROW_EXTERN_C();
 
@@ -56,7 +56,7 @@ storeError SAL_CALL store_acquireHandle 
     @return store_E_None          upon success,
             store_E_InvalidHandle otherwise.
  */
-storeError SAL_CALL store_releaseHandle (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_releaseHandle (
 	storeHandle Handle
 ) SAL_THROW_EXTERN_C();
 
@@ -73,7 +73,7 @@ typedef void* storeFileHandle;
     @param  phFile [out] the File Handle.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_createMemoryFile (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_createMemoryFile (
 	sal_uInt16       nPageSize,
 	storeFileHandle *phFile
 ) SAL_THROW_EXTERN_C();
@@ -91,7 +91,7 @@ storeError SAL_CALL store_createMemoryFi
 	@param  phFile [out] the File Handle.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_openFile (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_openFile (
 	rtl_uString     *pFilename,
 	storeAccessMode  eAccessMode,
 	sal_uInt16       nPageSize,
@@ -105,7 +105,7 @@ storeError SAL_CALL store_openFile (
     @return store_E_None upon     success,
             store_E_InvalidHandle otherwise.
  */
-storeError SAL_CALL store_closeFile (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_closeFile (
 	storeFileHandle hFile
 ) SAL_THROW_EXTERN_C();
 
@@ -114,7 +114,7 @@ storeError SAL_CALL store_closeFile (
     @param  hFile [in] the File Handle.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_flushFile (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_flushFile (
 	storeFileHandle hFile
 ) SAL_THROW_EXTERN_C();
 
@@ -124,7 +124,7 @@ storeError SAL_CALL store_flushFile (
     @param  pnRefCount [out] number of open directories and streams.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_getFileRefererCount (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_getFileRefererCount (
 	storeFileHandle  hFile,
 	sal_uInt32      *pnRefCount
 ) SAL_THROW_EXTERN_C();
@@ -135,7 +135,7 @@ storeError SAL_CALL store_getFileReferer
     @param  pnSize [out] the file size in bytes.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_getFileSize (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_getFileSize (
 	storeFileHandle  hFile,
 	sal_uInt32      *pnSize
 ) SAL_THROW_EXTERN_C();
@@ -148,7 +148,7 @@ storeError SAL_CALL store_getFileSize (
     @param  pDstFilename [in] created with store_AccessCreate.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_rebuildFile (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_rebuildFile (
 	rtl_uString *pSrcFilename,
 	rtl_uString *pDstFilename
 ) SAL_THROW_EXTERN_C();
@@ -170,7 +170,7 @@ typedef void* storeDirectoryHandle;
     @param  phDirectory [out] the Directory Handle.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_openDirectory (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_openDirectory (
 	storeFileHandle       hFile,
 	rtl_uString          *pPath,
 	rtl_uString          *pName,
@@ -184,7 +184,7 @@ storeError SAL_CALL store_openDirectory 
     @return store_E_None          upon success,
             store_E_InvalidHandle otherwise.
  */
-storeError SAL_CALL store_closeDirectory (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_closeDirectory (
 	storeDirectoryHandle hDirectory
 ) SAL_THROW_EXTERN_C();
 
@@ -195,7 +195,7 @@ storeError SAL_CALL store_closeDirectory
     @return store_E_None       upon success,
             store_E_NoMoreFile upon end of iteration.
  */
-storeError SAL_CALL store_findFirst (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_findFirst (
 	storeDirectoryHandle  hDirectory,
 	storeFindData        *pFindData
 ) SAL_THROW_EXTERN_C();
@@ -207,7 +207,7 @@ storeError SAL_CALL store_findFirst (
     @return store_E_None       upon success,
             store_E_NoMoreFile upon end of iteration.
  */
-storeError SAL_CALL store_findNext (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_findNext (
 	storeDirectoryHandle  hDirectory,
 	storeFindData        *pFindData
 ) SAL_THROW_EXTERN_C();
@@ -229,7 +229,7 @@ typedef void* storeStreamHandle;
     @param  phStrm [out] the Stream Handle.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_openStream (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_openStream (
 	storeFileHandle    hFile,
 	rtl_uString       *pPath,
 	rtl_uString       *pName,
@@ -243,7 +243,7 @@ storeError SAL_CALL store_openStream (
     @return store_E_None          upon success,
             store_E_InvalidHandle otherwise.
  */
-storeError SAL_CALL store_closeStream (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_closeStream (
 	storeStreamHandle hStrm
 ) SAL_THROW_EXTERN_C();
 
@@ -256,7 +256,7 @@ storeError SAL_CALL store_closeStream (
     @param  pnDone [out] the number of bytes actually read.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_readStream (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_readStream (
 	storeStreamHandle  hStrm,
 	sal_uInt32         nOffset,
 	void              *pBuffer,
@@ -273,7 +273,7 @@ storeError SAL_CALL store_readStream (
     @param  pnDone [out] the number of bytes actually written.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_writeStream (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_writeStream (
 	storeStreamHandle  hStrm,
 	sal_uInt32         nOffset,
 	const void        *pBuffer,
@@ -286,7 +286,7 @@ storeError SAL_CALL store_writeStream (
     @param  hStrm [in] the Stream Handle.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_flushStream (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_flushStream (
 	storeStreamHandle hStrm
 ) SAL_THROW_EXTERN_C();
 
@@ -296,7 +296,7 @@ storeError SAL_CALL store_flushStream (
     @param  pnSize [out] the stream size in bytes.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_getStreamSize (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_getStreamSize (
 	storeStreamHandle  hStrm,
 	sal_uInt32        *pnSize
 ) SAL_THROW_EXTERN_C();
@@ -307,7 +307,7 @@ storeError SAL_CALL store_getStreamSize 
     @param  nSize [in] the new stream size in bytes.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_setStreamSize (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_setStreamSize (
 	storeStreamHandle hStrm,
 	sal_uInt32        nSize
 ) SAL_THROW_EXTERN_C();
@@ -323,7 +323,7 @@ storeError SAL_CALL store_setStreamSize 
     @param  pnAttrib [out] the resulting attributes, may be NULL.
     @return store_E_None upon success
  */
-storeError SAL_CALL store_attrib (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_attrib (
 	storeFileHandle hFile,
 	rtl_uString    *pPath,
 	rtl_uString    *pName,
@@ -345,7 +345,7 @@ storeError SAL_CALL store_attrib (
     @param  pDstName [in] the Destination name
     @return store_E_None upon success
  */
-storeError SAL_CALL store_link (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_link (
 	storeFileHandle hFile,
 	rtl_uString *pSrcPath, rtl_uString *pSrcName,
 	rtl_uString *pDstPath, rtl_uString *pDstName
@@ -364,7 +364,7 @@ storeError SAL_CALL store_link (
     @param  pDstName [in] the Destination name
     @return store_E_None upon success
  */
-storeError SAL_CALL store_symlink (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_symlink (
 	storeFileHandle hFile,
 	rtl_uString *pSrcPath, rtl_uString *pSrcName,
 	rtl_uString *pDstPath, rtl_uString *pDstName
@@ -379,7 +379,7 @@ storeError SAL_CALL store_symlink (
     @param  pDstName [in] the Destination name
     @return store_E_None upon success
  */
-storeError SAL_CALL store_rename (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_rename (
 	storeFileHandle hFile,
 	rtl_uString *pSrcPath, rtl_uString *pSrcName,
 	rtl_uString *pDstPath, rtl_uString *pDstName
@@ -392,7 +392,7 @@ storeError SAL_CALL store_rename (
     @param  pName [in] the entry name
     @return store_E_None upon success
  */
-storeError SAL_CALL store_remove (
+storeError SAL_CALL SAL_DLLPUBLIC_EXPORT store_remove (
 	storeFileHandle hFile,
 	rtl_uString    *pPath,
 	rtl_uString    *pName
