[Libreoffice-commits] .: 6 commits - cppu/CppunitTest_cppu_qa_any.mk cppu/CppunitTest_cppu_qa_recursion.mk cppu/CppunitTest_cppu_qa_reference.mk cppu/CppunitTest_cppu_qa_unotype.mk cppu/CppunitTest_cppu_test_cppumaker.mk cppu/inc cppu/Library_affine_uno.mk cppu/Library_cppu.mk cppu/Library_log_uno.mk cppu/Library_purpenvhelper.mk cppu/Library_unsafe_uno.mk cppu/Makefile cppu/Module_cppu.mk cppu/Package_generated.mk cppu/Package_inc.mk cppu/prj cppu/qa cppu/source cppu/util RepositoryFixes.mk Repository.mk RepositoryModule_ooo.mk sal/android sal/cpprt sal/cppunittester sal/CppunitTest_sal_bytesequence.mk sal/CppunitTest_sal_osl_condition.mk sal/CppunitTest_sal_osl_file.mk sal/CppunitTest_sal_osl_getsystempathfromfileurl.mk sal/CppunitTest_sal_osl_module.mk sal/CppunitTest_sal_osl_process.mk sal/CppunitTest_sal_osl_security.mk sal/CppunitTest_sal_rtl_alloc.mk sal/CppunitTest_sal_rtl_cipher.mk sal/CppunitTest_sal_rtl_crc32.mk sal/CppunitTest_sal_rtl_doublelock.mk sal/CppunitTest_sal_rtl_loca le.mk sal/CppunitTest_sal_rtl_ostringbuffer.mk sal/CppunitTest_sal_rtl_oustringbuffer.mk sal/CppunitTest_sal_rtl_strings.mk sal/CppunitTest_sal_types.mk sal/Executable_cppunittester.mk sal/Executable_typesconfig.mk sal/inc sal/Library_lo-bootstrap.mk sal/Library_sal.mk sal/Library_sal_textenc.mk sal/Library_uwinapi.mk sal/Module_sal.mk sal/osl sal/Package_generated.mk sal/Package_inc.mk sal/prj sal/qa sal/rtl sal/StaticLibrary_salcpprt.mk sal/systools sal/textenc sal/typesconfig sal/unosdk.mk sal/util sal/version.mk scp2/inc scp2/source solenv/gbuild

Matus Kukan mkukan at kemper.freedesktop.org
Mon Dec 19 01:16:38 PST 2011


 Repository.mk                                       |   12 
 RepositoryFixes.mk                                  |    8 
 RepositoryModule_ooo.mk                             |    3 
 cppu/CppunitTest_cppu_qa_any.mk                     |   46 +++
 cppu/CppunitTest_cppu_qa_recursion.mk               |   46 +++
 cppu/CppunitTest_cppu_qa_reference.mk               |   46 +++
 cppu/CppunitTest_cppu_qa_unotype.mk                 |   46 +++
 cppu/CppunitTest_cppu_test_cppumaker.mk             |   46 +++
 cppu/Library_affine_uno.mk                          |   50 ++++
 cppu/Library_cppu.mk                                |   79 ++++++
 cppu/Library_log_uno.mk                             |   51 ++++
 cppu/Library_purpenvhelper.mk                       |   58 ++++
 cppu/Library_unsafe_uno.mk                          |   50 ++++
 cppu/Makefile                                       |   41 +++
 cppu/Module_cppu.mk                                 |   48 +++
 cppu/Package_generated.mk                           |   39 +++
 cppu/Package_inc.mk                                 |   72 +++++
 cppu/inc/cppu/cppudllapi.h                          |   21 +
 cppu/inc/cppu/helper/purpenv/Environment.hxx        |    4 
 cppu/inc/cppu/helper/purpenv/Mapping.hxx            |    3 
 cppu/inc/makefile.mk                                |   40 ---
 cppu/inc/typelib/typedescription.h                  |   76 +++---
 cppu/inc/uno/EnvDcp.h                               |    5 
 cppu/inc/uno/any2.h                                 |   18 -
 cppu/inc/uno/current_context.h                      |    5 
 cppu/inc/uno/data.h                                 |   28 +-
 cppu/inc/uno/environment.h                          |   22 -
 cppu/inc/uno/mapping.h                              |   14 -
 cppu/inc/uno/sequence2.h                            |   18 -
 cppu/inc/uno/threadpool.h                           |   22 -
 cppu/prj/build.lst                                  |   14 -
 cppu/prj/d.lst                                      |   76 ------
 cppu/prj/makefile.mk                                |    1 
 cppu/qa/Makefile                                    |   48 +++
 cppu/qa/cppumaker/makefile.mk                       |   80 ------
 cppu/qa/makefile.mk                                 |  113 ---------
 cppu/source/AffineBridge/makefile.mk                |   43 ---
 cppu/source/LogBridge/makefile.mk                   |   43 ---
 cppu/source/UnsafeBridge/makefile.mk                |   43 ---
 cppu/source/cppu/cppu_opt.cxx                       |    6 
 cppu/source/cppu/makefile.mk                        |   45 ---
 cppu/source/helper/purpenv/export.mk                |    8 
 cppu/source/helper/purpenv/makefile.mk              |   45 ---
 cppu/source/threadpool/current.cxx                  |    4 
 cppu/source/threadpool/makefile.mk                  |   49 ----
 cppu/source/threadpool/threadident.cxx              |    6 
 cppu/source/threadpool/threadpool.cxx               |   14 -
 cppu/source/typelib/makefile.mk                     |   45 ---
 cppu/source/typelib/static_types.cxx                |   18 -
 cppu/source/typelib/typelib.cxx                     |   56 ++--
 cppu/source/uno/EnvDcp.c                            |    4 
 cppu/source/uno/EnvStack.cxx                        |   10 
 cppu/source/uno/any.cxx                             |   16 -
 cppu/source/uno/data.cxx                            |   26 +-
 cppu/source/uno/env_subst.cxx                       |    2 
 cppu/source/uno/lbenv.cxx                           |    8 
 cppu/source/uno/lbmap.cxx                           |   12 
 cppu/source/uno/makefile.mk                         |   55 ----
 cppu/source/uno/sequence.cxx                        |   16 -
 cppu/util/empty.def                                 |    6 
 cppu/util/extra.mk                                  |   81 ------
 cppu/util/makefile.mk                               |  103 --------
 cppu/util/makefile.pmk                              |   27 --
 cppu/util/purpenvhelper3MSC.map                     |    8 
 cppu/util/purpenvhelper3MSCX.map                    |    8 
 cppu/util/target.pmk                                |   57 ----
 cppu/util/uno_purpenvhelperC52.map                  |    9 
 cppu/util/uno_purpenvhelperwntgcc.map               |    8 
 cppu/util/unsafe_os2.map                            |    7 
 sal/CppunitTest_sal_bytesequence.mk                 |   39 +++
 sal/CppunitTest_sal_osl_condition.mk                |   39 +++
 sal/CppunitTest_sal_osl_file.mk                     |   64 +++++
 sal/CppunitTest_sal_osl_getsystempathfromfileurl.mk |   39 +++
 sal/CppunitTest_sal_osl_module.mk                   |   52 ++++
 sal/CppunitTest_sal_osl_process.mk                  |   52 ++++
 sal/CppunitTest_sal_osl_security.mk                 |   39 +++
 sal/CppunitTest_sal_rtl_alloc.mk                    |   39 +++
 sal/CppunitTest_sal_rtl_cipher.mk                   |   39 +++
 sal/CppunitTest_sal_rtl_crc32.mk                    |   39 +++
 sal/CppunitTest_sal_rtl_doublelock.mk               |   39 +++
 sal/CppunitTest_sal_rtl_locale.mk                   |   39 +++
 sal/CppunitTest_sal_rtl_ostringbuffer.mk            |   40 +++
 sal/CppunitTest_sal_rtl_oustringbuffer.mk           |   43 +++
 sal/CppunitTest_sal_rtl_strings.mk                  |   42 +++
 sal/CppunitTest_sal_types.mk                        |   39 +++
 sal/Executable_cppunittester.mk                     |   46 +++
 sal/Executable_typesconfig.mk                       |   38 +++
 sal/Library_lo-bootstrap.mk                         |   46 +++
 sal/Library_sal.mk                                  |  243 ++++++++++++++++++++
 sal/Library_sal_textenc.mk                          |   63 +++++
 sal/Library_uwinapi.mk                              |   52 ++++
 sal/Module_sal.mk                                   |   42 +++
 sal/Package_generated.mk                            |   45 +++
 sal/Package_inc.mk                                  |  119 +++++++++
 sal/StaticLibrary_salcpprt.mk                       |   40 +++
 sal/android/makefile.mk                             |   59 ----
 sal/cpprt/makefile.mk                               |   71 -----
 sal/cppunittester/makefile.mk                       |   49 ----
 sal/inc/makefile.mk                                 |   39 ---
 sal/inc/osl/conditn.h                               |   12 
 sal/inc/osl/diagnose.h                              |   12 
 sal/inc/osl/diagnose.hxx                            |   11 
 sal/inc/osl/file.h                                  |  118 +++++----
 sal/inc/osl/interlck.h                              |    4 
 sal/inc/osl/module.h                                |   24 +
 sal/inc/osl/mutex.h                                 |   12 
 sal/inc/osl/nlsupport.h                             |    3 
 sal/inc/osl/pipe.h                                  |   21 -
 sal/inc/osl/process.h                               |   57 ++--
 sal/inc/osl/profile.h                               |   40 ++-
 sal/inc/osl/security.h                              |   30 +-
 sal/inc/osl/semaphor.h                              |   10 
 sal/inc/osl/signal.h                                |   12 
 sal/inc/osl/socket.h                                |  149 +++++++-----
 sal/inc/osl/thread.h                                |   42 +--
 sal/inc/osl/time.h                                  |   17 -
 sal/inc/osl/util.h                                  |    2 
 sal/inc/rtl/alloc.h                                 |   34 +-
 sal/inc/rtl/bootstrap.h                             |   24 +
 sal/inc/rtl/byteseq.h                               |   22 -
 sal/inc/rtl/cipher.h                                |   30 +-
 sal/inc/rtl/crc.h                                   |    2 
 sal/inc/rtl/digest.h                                |   82 +++---
 sal/inc/rtl/locale.h                                |   18 -
 sal/inc/rtl/logfile.h                               |    6 
 sal/inc/rtl/math.h                                  |   28 +-
 sal/inc/rtl/memory.h                                |   12 
 sal/inc/rtl/process.h                               |    6 
 sal/inc/rtl/random.h                                |    8 
 sal/inc/rtl/strbuf.h                                |   15 -
 sal/inc/rtl/string.h                                |  157 ++++++++----
 sal/inc/rtl/tencinfo.h                              |   31 +-
 sal/inc/rtl/textcvt.h                               |   26 +-
 sal/inc/rtl/unload.h                                |   16 -
 sal/inc/rtl/uri.h                                   |   11 
 sal/inc/rtl/ustrbuf.h                               |   20 +
 sal/inc/rtl/ustring.h                               |  211 +++++++++++------
 sal/inc/rtl/uuid.h                                  |    8 
 sal/inc/sal/detail/log.h                            |    2 
 sal/inc/sal/log.hxx                                 |    2 
 sal/inc/sal/main.h                                  |    4 
 sal/inc/sal/saldllapi.h                             |   15 +
 sal/inc/sal/types.h                                 |    2 
 sal/osl/all/log.cxx                                 |    4 
 sal/osl/all/makefile.mk                             |   64 -----
 sal/osl/unx/makefile.mk                             |  175 --------------
 sal/osl/unx/salinit.cxx                             |    4 
 sal/osl/w32/makefile.mk                             |  110 ---------
 sal/osl/w32/salinit.cxx                             |    4 
 sal/prj/build.lst                                   |   34 --
 sal/prj/d.lst                                       |   47 ---
 sal/prj/makefile.mk                                 |    1 
 sal/qa/ByteSequence/makefile.mk                     |   54 ----
 sal/qa/osl/condition/makefile.mk                    |   64 -----
 sal/qa/osl/file/makefile.mk                         |   86 -------
 sal/qa/osl/getsystempathfromfileurl/makefile.mk     |   62 -----
 sal/qa/osl/module/makefile.mk                       |   84 ------
 sal/qa/osl/process/makefile.mk                      |   82 ------
 sal/qa/osl/security/makefile.mk                     |   67 -----
 sal/qa/rtl/alloc/makefile.mk                        |   64 -----
 sal/qa/rtl/cipher/makefile.mk                       |   69 -----
 sal/qa/rtl/crc32/makefile.mk                        |   67 -----
 sal/qa/rtl/doublelock/makefile.mk                   |   68 -----
 sal/qa/rtl/locale/makefile.mk                       |   67 -----
 sal/qa/rtl/oustringbuffer/makefile.mk               |   59 ----
 sal/qa/sal/makefile.mk                              |   51 ----
 sal/rtl/source/makefile.mk                          |  126 ----------
 sal/systools/win32/uwinapi/makefile.mk              |   86 -------
 sal/textenc/makefile.mk                             |  111 ---------
 sal/textenc/tables.cxx                              |    4 
 sal/typesconfig/makefile.mk                         |   91 -------
 sal/unosdk.mk                                       |   47 ---
 sal/util/Makefile                                   |   78 ++++++
 sal/util/makefile.mk                                |  177 --------------
 sal/util/sal_textenc/makefile.mk                    |   46 ---
 sal/version.mk                                      |   40 ---
 scp2/inc/macros.inc                                 |   12 
 scp2/source/ooo/file_library_ooo.scp                |    9 
 scp2/source/ooo/module_hidden_ooo.scp               |    1 
 scp2/source/ooo/ure.scp                             |    8 
 solenv/gbuild/platform/WNT_INTEL_GCC.mk             |    2 
 solenv/gbuild/platform/WNT_INTEL_MSC.mk             |    2 
 solenv/gbuild/platform/macosx.mk                    |    1 
 183 files changed, 3343 insertions(+), 4125 deletions(-)

New commits:
commit ad4c61397da8fee3b341eec9d4ca7df574dfe60f
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Mon Dec 19 10:13:24 2011 +0100

    fix names of libraries for MinGW, also remove onlinecheck.dll

diff --git a/RepositoryFixes.mk b/RepositoryFixes.mk
index 55d2ced..901f7b8 100644
--- a/RepositoryFixes.mk
+++ b/RepositoryFixes.mk
@@ -46,11 +46,14 @@ gb_Library_FILENAMES := $(patsubst unsafe_uno:libunsafe_uno%,unsafe_uno:libunsaf
 endif
 
 ifeq ($(OS),WNT)
+gb_Library_DLLFILENAMES := $(patsubst affine_uno:affine_uno%,affine_uno:affine_uno_uno%,$(gb_Library_DLLFILENAMES))
 gb_Library_DLLFILENAMES := $(patsubst comphelper:comphelper%,comphelper:comphelp%,$(gb_Library_DLLFILENAMES))
 gb_Library_DLLFILENAMES := $(patsubst icuuc:icuuc%,icuuc:icuuc40%,$(gb_Library_DLLFILENAMES))
+gb_Library_DLLFILENAMES := $(patsubst log_uno:log_uno%,log_uno:log_uno_uno%,$(gb_Library_DLLFILENAMES))
 gb_Library_DLLFILENAMES := $(patsubst ucbhelper:ucbhelper%,ucbhelper:ucbhelper4%,$(gb_Library_DLLFILENAMES))
 gb_Library_DLLFILENAMES := $(patsubst ucb:libucb%,ucb:libucb1%,$(gb_Library_DLLFILENAMES))
 gb_Library_DLLFILENAMES := $(patsubst ucpfile:libucpfile%,ucpfile:libucpfile1%,$(gb_Library_DLLFILENAMES))
+gb_Library_DLLFILENAMES := $(patsubst unsafe_uno:unsafe_uno%,unsafe_uno:unsafe_uno_uno%,$(gb_Library_DLLFILENAMES))
 gb_Library_DLLFILENAMES := $(patsubst z:z%,z:zlib%,$(gb_Library_DLLFILENAMES))
 
 gb_Library_FILENAMES := $(patsubst exttextcat:libexttextcat%,exttextcat:libilibexttextcat%,$(gb_Library_FILENAMES))
diff --git a/scp2/inc/macros.inc b/scp2/inc/macros.inc
index 4f23947..c0f2eff 100755
--- a/scp2/inc/macros.inc
+++ b/scp2/inc/macros.inc
@@ -511,26 +511,20 @@ End
 #define SCP2_URE_DL_DIR gid_Dir_Ure_Bin
 #define SCP2_URE_DL_NORMAL(n) n ".dll"
 #define SCP2_URE_DL_BARE(n) n ".dll"
-#if defined _MSC
 #define SCP2_URE_DL_VER(n, v) n v ".dll"
 #define SCP2_URE_DL_COMID_VER(n, v) n v STRING(COMID) ".dll"
 #define SCP2_URE_DL_COMID_NORMAL(n) n STRING(COMID) ".dll"
 #define SCP2_URE_DL_UNO_VER(n, v) n v ".dll"
-#define SCP2_URE_DL_UNO_COMID_VER(n, v) n v STRING(COMID) ".dll"
 #define SCP2_URE_SHARE_DIR gid_Dir_Common_Ure
+#if defined _MSC
+#define SCP2_URE_DL_UNO_COMID_VER(n, v) n v STRING(COMID) ".dll"
 #if defined _DEBUG_RUNTIME
 #define SCP2_STDLP_DEBUG "d"
 #else
 #define SCP2_STDLP_DEBUG ""
 #endif
 #else // GCC
-#define SCP2_URE_DL_VER(n, v) n v ".dll"
-#define SCP2_URE_DL_COMID_VER(n, v) n v STRING(COMID) ".dll"
-#define SCP2_URE_DL_COMID_NORMAL(n) n STRING(COMID) ".dll"
-#define SCP2_URE_DL_UNO_VER(n, v) "uno_" n v ".dll"
-#define SCP2_URE_DL_UNO_COMID_VER(n, v)	\
-    "uno_" n STRING(COMID) v ".dll"
-#define SCP2_URE_SHARE_DIR gid_Dir_Common_Ure
+#define SCP2_URE_DL_UNO_COMID_VER(n, v) n STRING(COMID) ".dll"
 #define SCP2_STDLP_DEBUG ""
 #endif
 #else
diff --git a/scp2/source/ooo/file_library_ooo.scp b/scp2/source/ooo/file_library_ooo.scp
index 7b20c24..74c83f9 100644
--- a/scp2/source/ooo/file_library_ooo.scp
+++ b/scp2/source/ooo/file_library_ooo.scp
@@ -1479,15 +1479,6 @@ STD_LIB_FILE( gid_File_Lib_Updchkui , updchk )
 
 SPECIAL_COMPONENT_LIB_FILE( gid_File_Lib_Updatefeed , updatefeed.uno )
 
-#ifdef WNT
-File gid_File_Lib_Onlinecheck
-    LIB_FILE_BODY;
-    Styles = (PACKED);
-    Dir = SCP2_OOO_BIN_DIR;
-    Name = "onlinecheck.dll";
-End
-#endif
-
 #ifndef SYSTEM_OPENSSL
 File gid_File_Lib_Openssl
     LIB_FILE_BODY;
diff --git a/scp2/source/ooo/module_hidden_ooo.scp b/scp2/source/ooo/module_hidden_ooo.scp
index 024ec68..8a3889f 100644
--- a/scp2/source/ooo/module_hidden_ooo.scp
+++ b/scp2/source/ooo/module_hidden_ooo.scp
@@ -482,7 +482,6 @@ Module gid_Module_Root_Files_5
 	gid_File_Lib_Svtmisc,
     gid_File_Lib_Updchkui,
     gid_File_Lib_Updatefeed,
-	gid_File_Lib_Onlinecheck,
 	gid_File_Lib_Cli_Oootypes_Assembly,
 	gid_File_Lib_Policy_Cli_Oootypes_Assembly,
 	gid_File_Lib_Policy_Cli_Oootypes_Config);
diff --git a/scp2/source/ooo/ure.scp b/scp2/source/ooo/ure.scp
index 18df366..09d27aa 100644
--- a/scp2/source/ooo/ure.scp
+++ b/scp2/source/ooo/ure.scp
@@ -191,7 +191,11 @@ End
 File gid_File_Dl_Cppuhelper
     LIB_FILE_BODY;
     Dir = SCP2_URE_DL_DIR;
+#if defined WNT && !defined _MSC // Hack for not gbuild'ified cppuhelper on MinGW:
+    Name = "uno_cppuhelpergcc33.dll"
+#else
     Name = SCP2_URE_DL_UNO_COMID_VER("cppuhelper", "3");
+#endif
     Styles = (PACKED, VERSION_INDEPENDENT_COMP_ID);
     // CompID = "D2A191E6-2023-41F5-9032-B98C50C37964";
 End
@@ -252,11 +256,7 @@ End
 File gid_File_Dl_Salhelper
     LIB_FILE_BODY;
     Dir = SCP2_URE_DL_DIR;
-#if defined WNT && !defined _MSC // Hack for gbuild'ified salhelper on MinGW:
-    Name = "uno_salhelpergcc3.dll"
-#else
     Name = SCP2_URE_DL_UNO_COMID_VER("salhelper", "3");
-#endif
     Styles = (PACKED, VERSION_INDEPENDENT_COMP_ID);
     // CompID = "879B80E0-F6E1-4931-8EE6-7CF867CB6AA5";
 End
commit 91609fe9d83aed2547ebb3c4aa48202f56c54dbc
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Sat Dec 17 14:18:58 2011 +0100

    sal: add more unit tests

diff --git a/sal/CppunitTest_sal_bytesequence.mk b/sal/CppunitTest_sal_bytesequence.mk
new file mode 100644
index 0000000..3de4fbc
--- /dev/null
+++ b/sal/CppunitTest_sal_bytesequence.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_bytesequence))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_bytesequence,\
+    sal/qa/ByteSequence/ByteSequence \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_bytesequence,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_osl_condition.mk b/sal/CppunitTest_sal_osl_condition.mk
new file mode 100644
index 0000000..09af305
--- /dev/null
+++ b/sal/CppunitTest_sal_osl_condition.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_osl_condition))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_osl_condition,\
+    sal/qa/osl/condition/osl_Condition \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_osl_condition,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_osl_file.mk b/sal/CppunitTest_sal_osl_file.mk
new file mode 100644
index 0000000..464a153
--- /dev/null
+++ b/sal/CppunitTest_sal_osl_file.mk
@@ -0,0 +1,64 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+# sal_osl_file
+$(eval $(call gb_CppunitTest_CppunitTest,sal_osl_file))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_osl_file,\
+    sal/qa/osl/file/osl_File \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_osl_file,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# sal_osl_old_test_file
+$(eval $(call gb_CppunitTest_CppunitTest,sal_osl_old_test_file))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_osl_old_test_file,\
+    sal/qa/osl/file/osl_old_test_file \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_osl_old_test_file,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# sal_tcwf
+$(eval $(call gb_CppunitTest_CppunitTest,sal_tcwf))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_tcwf,\
+    sal/qa/osl/file/test_cpy_wrt_file \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_tcwf,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_osl_getsystempathfromfileurl.mk b/sal/CppunitTest_sal_osl_getsystempathfromfileurl.mk
new file mode 100644
index 0000000..59bffe5
--- /dev/null
+++ b/sal/CppunitTest_sal_osl_getsystempathfromfileurl.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_osl_getsystempathfromfileurl))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_osl_getsystempathfromfileurl,\
+    sal/qa/osl/getsystempathfromfileurl/test-getsystempathfromfileurl \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_osl_getsystempathfromfileurl,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_osl_module.mk b/sal/CppunitTest_sal_osl_module.mk
new file mode 100644
index 0000000..288a442
--- /dev/null
+++ b/sal/CppunitTest_sal_osl_module.mk
@@ -0,0 +1,52 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+# sal_osl_module
+$(eval $(call gb_CppunitTest_CppunitTest,sal_osl_module))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_osl_module,\
+    sal/qa/osl/module/osl_Module \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_osl_module,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# sal_osl_module_dll
+$(eval $(call gb_CppunitTest_CppunitTest,sal_osl_module_dll))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_osl_module_dll,\
+    sal/qa/osl/module/osl_Module_DLL \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_osl_module_dll,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_osl_process.mk b/sal/CppunitTest_sal_osl_process.mk
new file mode 100644
index 0000000..c7b13ab
--- /dev/null
+++ b/sal/CppunitTest_sal_osl_process.mk
@@ -0,0 +1,52 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+# osl_process
+$(eval $(call gb_CppunitTest_CppunitTest,sal_osl_process))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_osl_process,\
+    sal/qa/osl/process/osl_process \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_osl_process,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# osl_Thread
+$(eval $(call gb_CppunitTest_CppunitTest,sal_osl_thread))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_osl_thread,\
+    sal/qa/osl/process/osl_Thread \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_osl_thread,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_osl_security.mk b/sal/CppunitTest_sal_osl_security.mk
new file mode 100644
index 0000000..a2495dd
--- /dev/null
+++ b/sal/CppunitTest_sal_osl_security.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_osl_security))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_osl_security,\
+    sal/qa/osl/security/osl_Security \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_osl_security,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_rtl_alloc.mk b/sal/CppunitTest_sal_rtl_alloc.mk
new file mode 100644
index 0000000..da93337
--- /dev/null
+++ b/sal/CppunitTest_sal_rtl_alloc.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_rtl_alloc))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_rtl_alloc,\
+    sal/qa/rtl/alloc/rtl_alloc \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_rtl_alloc,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_rtl_cipher.mk b/sal/CppunitTest_sal_rtl_cipher.mk
new file mode 100644
index 0000000..05bb8d6
--- /dev/null
+++ b/sal/CppunitTest_sal_rtl_cipher.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_rtl_cipher))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_rtl_cipher,\
+    sal/qa/rtl/cipher/rtl_cipher \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_rtl_cipher,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_rtl_crc32.mk b/sal/CppunitTest_sal_rtl_crc32.mk
new file mode 100644
index 0000000..ecbfa54
--- /dev/null
+++ b/sal/CppunitTest_sal_rtl_crc32.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_rtl_crc32))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_rtl_crc32,\
+    sal/qa/rtl/crc32/rtl_crc32 \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_rtl_crc32,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_rtl_doublelock.mk b/sal/CppunitTest_sal_rtl_doublelock.mk
new file mode 100644
index 0000000..9d789f2
--- /dev/null
+++ b/sal/CppunitTest_sal_rtl_doublelock.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_rtl_doublelock))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_rtl_doublelock,\
+    sal/qa/rtl/doublelock/rtl_doublelocking \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_rtl_doublelock,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_rtl_locale.mk b/sal/CppunitTest_sal_rtl_locale.mk
new file mode 100644
index 0000000..e6f3f70
--- /dev/null
+++ b/sal/CppunitTest_sal_rtl_locale.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_rtl_locale))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_rtl_locale,\
+    sal/qa/rtl/locale/rtl_locale \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_rtl_locale,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_rtl_ostringbuffer.mk b/sal/CppunitTest_sal_rtl_ostringbuffer.mk
new file mode 100644
index 0000000..dfb37c3
--- /dev/null
+++ b/sal/CppunitTest_sal_rtl_ostringbuffer.mk
@@ -0,0 +1,40 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_rtl_ostringbuffer))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_rtl_ostringbuffer,\
+    sal/qa/OStringBuffer/rtl_OStringBuffer \
+    sal/qa/OStringBuffer/rtl_String_Utils \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_rtl_ostringbuffer,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_rtl_oustringbuffer.mk b/sal/CppunitTest_sal_rtl_oustringbuffer.mk
new file mode 100644
index 0000000..23417dd
--- /dev/null
+++ b/sal/CppunitTest_sal_rtl_oustringbuffer.mk
@@ -0,0 +1,43 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Initial Developer of the Original Code is
+#       Matúš Kukan <matus.kukan at gmail.com>
+# Portions created by the Initial Developer are Copyright (C) 2011 the
+# Initial Developer. All Rights Reserved.
+#
+# Major Contributor(s):
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_rtl_oustringbuffer))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_rtl_oustringbuffer,\
+    sal/qa/rtl/oustringbuffer/test_oustringbuffer_appendchar \
+    sal/qa/rtl/oustringbuffer/test_oustringbuffer_noadditional \
+    sal/qa/rtl/oustringbuffer/test_oustringbuffer_tostring \
+    sal/qa/rtl/oustringbuffer/test_oustringbuffer_utf32 \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_rtl_oustringbuffer,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_rtl_strings.mk b/sal/CppunitTest_sal_rtl_strings.mk
new file mode 100644
index 0000000..fe6da66
--- /dev/null
+++ b/sal/CppunitTest_sal_rtl_strings.mk
@@ -0,0 +1,42 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_rtl_strings))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_rtl_strings,\
+    sal/qa/rtl/strings/test_oustring_compare \
+    sal/qa/rtl/strings/test_oustring_convert \
+    sal/qa/rtl/strings/test_oustring_endswith \
+    sal/qa/rtl/strings/test_oustring_noadditional \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_rtl_strings,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/CppunitTest_sal_types.mk b/sal/CppunitTest_sal_types.mk
new file mode 100644
index 0000000..f0fd6a6
--- /dev/null
+++ b/sal/CppunitTest_sal_types.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Matúš Kukan <matus.kukan at gmail.com> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CppunitTest_CppunitTest,sal_types))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sal_types,\
+    sal/qa/sal/test_types \
+))
+
+$(eval $(call gb_CppunitTest_add_linked_libs,sal_types,\
+    sal \
+    $(gb_STDLIBS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sal/Module_sal.mk b/sal/Module_sal.mk
index f7982ad..a1e442d 100644
--- a/sal/Module_sal.mk
+++ b/sal/Module_sal.mk
@@ -44,11 +44,32 @@ $(eval $(call gb_Module_add_targets,sal,\
 ))
 
 $(eval $(call gb_Module_add_check_targets,sal,\
+	CppunitTest_sal_bytesequence \
+	CppunitTest_sal_osl_condition \
+	CppunitTest_sal_osl_file \
+	CppunitTest_sal_osl_module \
 	CppunitTest_sal_osl_mutex \
-	CppunitTest_sal_osl_pipe \
+	CppunitTest_sal_osl_process \
 	CppunitTest_sal_osl_profile \
+	CppunitTest_sal_osl_security \
 	CppunitTest_sal_osl_setthreadname \
+	CppunitTest_sal_rtl_alloc \
+	CppunitTest_sal_rtl_cipher \
+	CppunitTest_sal_rtl_crc32 \
+	CppunitTest_sal_rtl_doublelock \
+	CppunitTest_sal_rtl_locale \
 	CppunitTest_sal_rtl_math \
+	CppunitTest_sal_rtl_ostringbuffer \
+	CppunitTest_sal_rtl_oustringbuffer \
+	CppunitTest_sal_rtl_strings \
+	CppunitTest_sal_types \
+))
+
+# CppunitTest_sal_osl_pipe has circular dependency on unotest
+$(eval $(call gb_Module_add_subsequentcheck_targets,sal,\
+	CppunitTest_sal_osl_pipe \
 ))
+# error when building test-getsystempathfromfileurl.cxx \
+	CppunitTest_sal_osl_getsystempathfromfileurl \
 
 # vim: set noet sw=4 ts=4:
diff --git a/sal/qa/ByteSequence/makefile.mk b/sal/qa/ByteSequence/makefile.mk
deleted file mode 100644
index d21c250..0000000
--- a/sal/qa/ByteSequence/makefile.mk
+++ /dev/null
@@ -1,54 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#***********************************************************************/
-
-PRJ = ../..
-PRJNAME = sal
-TARGET = qa_ByteSequence
-
-ENABLE_EXCEPTIONS = TRUE
-VISIBILITY_HIDDEN = TRUE
-
-.INCLUDE: settings.mk
-
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-SHL1IMPLIB = i$(SHL1TARGET)
-SHL1OBJS = $(SLO)/ByteSequence.obj
-SHL1RPATH = NONE
-SHL1STDLIBS = $(CPPUNITLIB) $(SALLIB)
-SHL1TARGET = rtl_ByteSequence
-SHL1USE_EXPORTS = name
-DEF1NAME = $(SHL1TARGET)
-
-SLOFILES = $(SHL1OBJS)
-
-.INCLUDE: target.mk
-.INCLUDE: $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/osl/condition/makefile.mk b/sal/qa/osl/condition/makefile.mk
deleted file mode 100644
index 0b1d3f6..0000000
--- a/sal/qa/osl/condition/makefile.mk
+++ /dev/null
@@ -1,64 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..$/..
-
-PRJNAME=sal
-TARGET=qa_osl_condition
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-SHL1OBJS=  \
-    $(SLO)$/osl_Condition.obj
-
-SHL1TARGET= osl_Condition
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB)
-
-SHL1IMPLIB= i$(SHL1TARGET)
-
-DEF1NAME    =$(SHL1TARGET)
-SHL1USE_EXPORTS = name
-# ------------------------------------------------------------------
-SLOFILES=$(SHL1OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-.INCLUDE : $(PRJ)$/qa$/cppunit_local.mk
-
diff --git a/sal/qa/osl/file/makefile.mk b/sal/qa/osl/file/makefile.mk
deleted file mode 100644
index db0d257..0000000
--- a/sal/qa/osl/file/makefile.mk
+++ /dev/null
@@ -1,86 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..$/..
-
-PRJNAME=sal
-TARGET=qa_osl_file
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-# --- BEGIN --------------------------------------------------------
-SHL1OBJS=  \
-    $(SLO)$/osl_File.obj
-SHL1TARGET= osl_File
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB)
-
-SHL1IMPLIB= i$(SHL1TARGET)
-
-DEF1NAME    =$(SHL1TARGET)
-SHL1USE_EXPORTS = name
-
-#-------------------------------------------------------------------
-
-SHL2OBJS=$(SLO)$/test_cpy_wrt_file.obj
-SHL2TARGET=tcwf
-SHL2STDLIBS= $(SALLIB) $(CPPUNITLIB)
-SHL2IMPLIB=i$(SHL2TARGET)
-SHL2DEF=$(MISC)$/$(SHL2TARGET).def
-SHL2USE_EXPORTS = name
-DEF2NAME    =$(SHL2TARGET)
-
-
-# END --------------------------------------------------------------
-
-# --- BEGIN --------------------------------------------------------
-SHL3OBJS=  \
-    $(SLO)$/osl_old_test_file.obj
-SHL3TARGET= osl_old_test_file
-SHL3STDLIBS= $(SALLIB) $(CPPUNITLIB)
-
-SHL3IMPLIB= i$(SHL3TARGET)
-
-DEF3NAME    =$(SHL3TARGET)
-SHL3USE_EXPORTS = name
-# END --------------------------------------------------------------
-
-#------------------------------- All object files -------------------------------
-# do this here, so we get right dependencies
-SLOFILES=$(SHL1OBJS) $(SHL2OBJS) $(SHL3OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-.INCLUDE : $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/osl/getsystempathfromfileurl/makefile.mk b/sal/qa/osl/getsystempathfromfileurl/makefile.mk
deleted file mode 100644
index 324c238..0000000
--- a/sal/qa/osl/getsystempathfromfileurl/makefile.mk
+++ /dev/null
@@ -1,62 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#***********************************************************************/
-
-.IF "$(OOO_SUBSEQUENT_TESTS)" == ""
-nothing .PHONY:
-.ELSE
-
-PRJ = ../../..
-PRJNAME = sal
-TARGET = qa_osl_getsystempathfromfileurl
-
-ENABLE_EXCEPTIONS = TRUE
-VISIBILITY_HIDDEN = TRUE
-
-.INCLUDE: settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
-
-DLLPRE =
-
-SHL1IMPLIB = i$(SHL1TARGET)
-SHL1OBJS = $(SLO)/test-getsystempathfromfileurl.obj
-SHL1RPATH = NONE
-SHL1STDLIBS = $(CPPUNITLIB) $(SALLIB)
-SHL1TARGET = test-getsystempathfromfileurl
-SHL1USE_EXPORTS = name
-DEF1NAME = $(SHL1TARGET)
-
-SLOFILES = $(SHL1OBJS)
-
-.INCLUDE: target.mk
-.INCLUDE: _cppunit.mk
-
-.END
diff --git a/sal/qa/osl/module/makefile.mk b/sal/qa/osl/module/makefile.mk
deleted file mode 100644
index a1ce551..0000000
--- a/sal/qa/osl/module/makefile.mk
+++ /dev/null
@@ -1,84 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..$/..
-
-PRJNAME=sal
-TARGET=qa_module
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-# BEGIN ----------------------------------------------------------------
-
-# --- test dll ------------------------------------------------------
-SHL1TARGET     = Module_DLL
-SHL1OBJS       = $(SLO)$/osl_Module_DLL.obj
-SHL1STDLIBS    = $(SALLIB) $(CPPUNITLIB)
-SHL1IMPLIB     = i$(SHL1TARGET)
-SHL1DEF        = $(MISC)$/$(SHL1TARGET).def
-DEF1NAME       = $(SHL1TARGET)
-SHL1USE_EXPORTS = name
-SHL1CPPUNITTEST = FALSE
-
-# --- main l ------------------------------------------------------
-SHL2OBJS=  $(SLO)$/osl_Module.obj
-
-SHL2TARGET= osl_Module
-SHL2STDLIBS= $(SALLIB) $(CPPUNITLIB)
-
-.IF "$(GUI)" == "WNT"
-SHL2STDLIBS+=i$(SHL2TARGET).lib
-.ENDIF
-.IF "$(GUI)" == "UNX"
-APP3STDLIBS+=-l$(SHL2TARGET)
-.ENDIF
-
-SHL2DEPN= $(SHL1OBJS)
-SHL2IMPLIB= i$(SHL2TARGET)
-SHL2DEF=    $(MISC)$/$(SHL2TARGET).def
-
-DEF2NAME    =$(SHL2TARGET)
-SHL2USE_EXPORTS= name
-
-SLOFILES = $(SHL2OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-.INCLUDE : $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/osl/process/makefile.mk b/sal/qa/osl/process/makefile.mk
deleted file mode 100644
index e73c7a8..0000000
--- a/sal/qa/osl/process/makefile.mk
+++ /dev/null
@@ -1,82 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-PRJ=..$/..$/..
-
-PRJNAME=sal
-TARGET=qa_osl_process
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-.IF "$(COM)" == "MSC"
-    CFLAGS+=/Ob1
-.ENDIF
-
-SHL1OBJS=$(SLO)$/osl_Thread.obj
-SHL1TARGET=osl_Thread
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB)
-SHL1IMPLIB=i$(SHL1TARGET)
-DEF1NAME=$(SHL1TARGET)
-SHL1USE_EXPORTS = name
-
-SHL2OBJS=$(SLO)$/osl_process.obj
-SHL2TARGET=osl_process
-SHL2STDLIBS= $(SALLIB) $(CPPUNITLIB)
-SHL2IMPLIB=i$(SHL2TARGET)
-DEF2NAME=$(SHL2TARGET)
-SHL2USE_EXPORTS = name
-
-OBJ3FILES=$(OBJ)$/osl_process_child.obj
-APP3TARGET=osl_process_child
-APP3OBJS=$(OBJ3FILES)
-APP3STDLIBS=$(SALLIB)
-
-SHL2DEPN=$(APP3TARGETN) \
-         $(BIN)/batch.sh \
-         $(BIN)/batch.bat
-
-#------------------------------- All object files -------------------------------
-SLOFILES=$(SHL1OBJS) $(SHL2OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-
-$(BIN)/batch.sh: batch.sh
-    $(COPY) $< $@
-
-$(BIN)/batch.bat: batch.bat
-    $(COPY) $< $@
-
-.INCLUDE : $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/osl/security/makefile.mk b/sal/qa/osl/security/makefile.mk
deleted file mode 100755
index 00c946a..0000000
--- a/sal/qa/osl/security/makefile.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..$/..
-
-PRJNAME=sal
-TARGET=qa_osl_security
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-SHL1OBJS=  \
-    $(SLO)$/osl_Security.obj
-
-SHL1TARGET= osl_Security
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB)
-.IF "$(GUI)" == "WNT"
-SHL1STDLIBS+= $(ADVAPI32LIB)
-.ENDIF
-
-SHL1IMPLIB= i$(SHL1TARGET)
-SHL1DEF=    $(MISC)$/$(SHL1TARGET).def
-
-DEF1NAME    =$(SHL1TARGET)
-SHL1USE_EXPORTS= name
-
-SLOFILES = $(SHL1OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-.INCLUDE : $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/rtl/alloc/makefile.mk b/sal/qa/rtl/alloc/makefile.mk
deleted file mode 100755
index d00a893..0000000
--- a/sal/qa/rtl/alloc/makefile.mk
+++ /dev/null
@@ -1,64 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-PRJ=..$/..$/..
-
-PRJNAME=sal
-TARGET=qa_rtl_alloc
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
-
-SHL1OBJS= $(SLO)$/rtl_alloc.obj
-
-SHL1TARGET= rtl_Alloc
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB)
-
-SHL1IMPLIB= i$(SHL1TARGET)
-
-DEF1NAME    =$(SHL1TARGET)
-SHL1USE_EXPORTS= name
-
-#------------------------------- All object files -------------------------------
-SLOFILES=$(SHL1OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-.INCLUDE :  $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/rtl/cipher/makefile.mk b/sal/qa/rtl/cipher/makefile.mk
deleted file mode 100644
index a52f402..0000000
--- a/sal/qa/rtl/cipher/makefile.mk
+++ /dev/null
@@ -1,69 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..$/..
-INCPRE+= $(PRJ)$/qa$/inc
-
-PRJNAME=sal
-TARGET=qa_rtl_cipher
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
-
-SHL1OBJS=  \
-    $(SLO)$/rtl_cipher.obj
-
-SHL1TARGET= rtl_cipher
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB)
-
-SHL1IMPLIB= i$(SHL1TARGET)
-# SHL1DEF=    $(MISC)$/$(SHL1TARGET).def
-
-DEF1NAME    =$(SHL1TARGET)
-# DEF2EXPORTFILE= export.exp
-SHL1USE_EXPORTS= name
-
-#------------------------------- All object files -------------------------------
-SLOFILES=$(SHL1OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-.INCLUDE : $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/rtl/crc32/makefile.mk b/sal/qa/rtl/crc32/makefile.mk
deleted file mode 100755
index f3b7029..0000000
--- a/sal/qa/rtl/crc32/makefile.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-PRJ=..$/..$/..
-
-PRJNAME=sal
-TARGET=qa_rtl_crc32
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
-
-SHL1OBJS=  \
-    $(SLO)$/rtl_crc32.obj
-
-SHL1TARGET= rtl_crc32
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB)
-
-SHL1IMPLIB= i$(SHL1TARGET)
-# SHL1DEF=    $(MISC)$/$(SHL1TARGET).def
-
-DEF1NAME    =$(SHL1TARGET)
-# DEF1EXPORTFILE= export.exp
-SHL1USE_EXPORTS= name
-
-#------------------------------- All object files -------------------------------
-SLOFILES=$(SHL1OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-.INCLUDE : $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/rtl/doublelock/makefile.mk b/sal/qa/rtl/doublelock/makefile.mk
deleted file mode 100644
index a718edf..0000000
--- a/sal/qa/rtl/doublelock/makefile.mk
+++ /dev/null
@@ -1,68 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-PRJ=..$/..$/..
-
-PRJNAME=sal
-TARGET=qa_rtl_doublelock
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
-
-.IF "$(COM)" == "MSC"
-    CFLAGS+=/Ob1
-.ENDIF
-
-SHL1OBJS=  \
-    $(SLO)$/rtl_doublelocking.obj
-
-SHL1TARGET= rtl_doublelocking
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB)
-
-SHL1IMPLIB= i$(SHL1TARGET)
-DEF1NAME    =$(SHL1TARGET)
-SHL1USE_EXPORTS = name
-
-#------------------------------- All object files -------------------------------
-SLOFILES=$(SHL1OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-.INCLUDE : $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/rtl/locale/makefile.mk b/sal/qa/rtl/locale/makefile.mk
deleted file mode 100644
index 4c8d453..0000000
--- a/sal/qa/rtl/locale/makefile.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-PRJ=..$/..$/..
-
-PRJNAME=sal
-TARGET=qa_rtl_locale
-
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE :  settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
-
-SHL1OBJS=  \
-    $(SLO)$/rtl_locale.obj
-
-SHL1TARGET= rtl_locale
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB)
-
-SHL1IMPLIB= i$(SHL1TARGET)
-# SHL1DEF=    $(MISC)$/$(SHL1TARGET).def
-
-DEF1NAME    =$(SHL1TARGET)
-# DEF1EXPORTFILE= export.exp
-SHL1USE_EXPORTS= name
-
-#------------------------------- All object files -------------------------------
-SLOFILES=$(SHL1OBJS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-.INCLUDE : $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/rtl/oustringbuffer/makefile.mk b/sal/qa/rtl/oustringbuffer/makefile.mk
deleted file mode 100644
index 5e72969..0000000
--- a/sal/qa/rtl/oustringbuffer/makefile.mk
+++ /dev/null
@@ -1,59 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ := ..$/..$/..
-PRJNAME := sal
-
-TARGET := qa_rtl_oustringbuffer
-
-ENABLE_EXCEPTIONS := TRUE
-VISIBILITY_HIDDEN=TRUE
-
-.INCLUDE: settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-CFLAGS+= $(LFS_CFLAGS)
-CXXFLAGS+= $(LFS_CFLAGS)
-
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
-
-SHL1TARGET := $(TARGET)
-SHL1OBJS := \
-    $(SLO)$/test_oustringbuffer_appendchar.obj \
-    $(SLO)$/test_oustringbuffer_utf32.obj \
-    $(SLO)$/test_oustringbuffer_tostring.obj \
-    $(SLO)$/test_oustringbuffer_noadditional.obj
-SHL1IMPLIB := i$(SHL1TARGET)
-SHL1STDLIBS := $(SALLIB) $(CPPUNITLIB)
-SHL1USE_EXPORTS := name
-DEF1NAME := $(SHL1TARGET)
-
-.INCLUDE: target.mk
-.INCLUDE: $(PRJ)$/qa$/cppunit_local.mk
diff --git a/sal/qa/sal/makefile.mk b/sal/qa/sal/makefile.mk
deleted file mode 100644
index 6457a42..0000000
--- a/sal/qa/sal/makefile.mk
+++ /dev/null
@@ -1,51 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org.  If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ := ..$/..
-PRJNAME := sal
-TARGET := qa_sal
-
-ENABLE_EXCEPTIONS := TRUE
-VISIBILITY_HIDDEN := TRUE
-
-.INCLUDE: settings.mk
-
-.IF "$(OS)" == "IOS"
-CFLAGSCXX += -DCPPUNIT_PLUGIN_EXPORTED_NAME=cppunitTest_$(TARGET)
-.ENDIF
-
-SHL1TARGET = $(TARGET)_types
-SHL1OBJS = $(SLO)$/test_types.obj
-SHL1STDLIBS = $(SALLIB) $(CPPUNITLIB)
-SHL1USE_EXPORTS = name
-SHL1IMPLIB = i$(SHL1TARGET)
-DEF1NAME = $(SHL1TARGET)
-
-SLOFILES = $(SHL1OBJS)
-
-.INCLUDE: target.mk
-.INCLUDE: $(PRJ)$/qa$/cppunit_local.mk
commit cf77e8a0b9dc26d5007c76388c3f09231f048bdd
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Sat Dec 17 13:22:02 2011 +0100

    sal: add visibility symbols

diff --git a/sal/Library_sal.mk b/sal/Library_sal.mk
index 41ccaf6..2b6f2e9 100644
--- a/sal/Library_sal.mk
+++ b/sal/Library_sal.mk
@@ -50,6 +50,7 @@ $(eval $(call gb_Library_add_defs,sal,\
 		-DNO_CHILD_PROCESSES \
 	) \
 	$(LFS_CFLAGS) \
+	-DSAL_DLLIMPLEMENTATION \
 ))
 
 $(eval $(call gb_Library_add_linked_libs,sal,\
diff --git a/sal/Package_inc.mk b/sal/Package_inc.mk
index 0c92ab6..e4dd529 100644
--- a/sal/Package_inc.mk
+++ b/sal/Package_inc.mk
@@ -107,6 +107,7 @@ $(eval $(call gb_Package_add_file,sal_inc,inc/sal/macros.h,sal/macros.h))
 $(eval $(call gb_Package_add_file,sal_inc,inc/sal/main.h,sal/main.h))
 $(eval $(call gb_Package_add_file,sal_inc,inc/sal/mathconf.h,sal/mathconf.h))
 $(eval $(call gb_Package_add_file,sal_inc,inc/sal/precppunit.hxx,sal/precppunit.hxx))
+$(eval $(call gb_Package_add_file,sal_inc,inc/sal/saldllapi.h,sal/saldllapi.h))
 $(eval $(call gb_Package_add_file,sal_inc,inc/sal/types.h,sal/types.h))
 $(eval $(call gb_Package_add_file,sal_inc,inc/sal/detail/log.h,sal/detail/log.h))
 $(eval $(call gb_Package_add_file,sal_inc,inc/systools/win32/comptr.hxx,systools/win32/comptr.hxx))
diff --git a/sal/inc/osl/conditn.h b/sal/inc/osl/conditn.h
index 88478c3..94088a8 100644
--- a/sal/inc/osl/conditn.h
+++ b/sal/inc/osl/conditn.h
@@ -49,25 +49,25 @@ typedef enum {
     The condition is in the reset-state.
     @returns 0 if condition could not be created.
 */
-oslCondition SAL_CALL osl_createCondition(void);
+SAL_DLLPUBLIC oslCondition SAL_CALL osl_createCondition(void);
 
 /** Free the memory used by the condition.
     @param Condition the condition handle.
 */
-void SAL_CALL osl_destroyCondition(oslCondition Condition);
+SAL_DLLPUBLIC void SAL_CALL osl_destroyCondition(oslCondition Condition);
 
 /** Sets condition to True => wait() will not block, check() returns True.
     NOTE: ALL threads waiting on this condition are unblocked!
     @param Condition handle to a created condition.
     @return False if system-call failed.
 */
-sal_Bool SAL_CALL osl_setCondition(oslCondition Condition);
+SAL_DLLPUBLIC sal_Bool SAL_CALL osl_setCondition(oslCondition Condition);
 
 /** Sets condition to False => wait() will block, check() returns False
     @param Condition handle to a created condition.
     @return False if system-call failed.
 */
-sal_Bool SAL_CALL osl_resetCondition(oslCondition Condition);
+SAL_DLLPUBLIC sal_Bool SAL_CALL osl_resetCondition(oslCondition Condition);
 
 /** Blocks if condition is not set<BR>
     If condition has been destroyed prematurely, wait() will
@@ -76,14 +76,14 @@ sal_Bool SAL_CALL osl_resetCondition(oslCondition Condition);
     @param pTimeout Tiemout value or NULL for infinite waiting
     @return False if system-call failed.
 */
-oslConditionResult SAL_CALL osl_waitCondition(oslCondition Condition, const TimeValue* pTimeout);
+SAL_DLLPUBLIC oslConditionResult SAL_CALL osl_waitCondition(oslCondition Condition, const TimeValue* pTimeout);
 
 /** Queries the state of the condition without blocking.
     @param Condition handle to a created condition.
     @return True: condition is set. <BR>
     False: condition is not set. <BR>
 */
-sal_Bool SAL_CALL osl_checkCondition(oslCondition Condition);
+SAL_DLLPUBLIC sal_Bool SAL_CALL osl_checkCondition(oslCondition Condition);
 
 #ifdef __cplusplus
 }
diff --git a/sal/inc/osl/diagnose.h b/sal/inc/osl/diagnose.h
index 12357aa..dad4669 100644
--- a/sal/inc/osl/diagnose.h
+++ b/sal/inc/osl/diagnose.h
@@ -99,10 +99,10 @@ extern "C" {
     Diagnostic support
 */
 
-void        SAL_CALL osl_breakDebug(void);
-sal_Bool    SAL_CALL osl_assertFailedLine(const sal_Char* pszFileName, sal_Int32 nLine, const sal_Char* pszMessage);
-void        SAL_CALL osl_trace(const sal_Char* pszFormat, ...);
-sal_Int32   SAL_CALL osl_reportError(sal_uInt32 nType, const sal_Char* pszErrorMessage);
+SAL_DLLPUBLIC void        SAL_CALL osl_breakDebug(void);
+SAL_DLLPUBLIC sal_Bool    SAL_CALL osl_assertFailedLine(const sal_Char* pszFileName, sal_Int32 nLine, const sal_Char* pszMessage);
+SAL_DLLPUBLIC void        SAL_CALL osl_trace(const sal_Char* pszFormat, ...);
+SAL_DLLPUBLIC sal_Int32   SAL_CALL osl_reportError(sal_uInt32 nType, const sal_Char* pszErrorMessage);
 
 /*
     For message delivery
@@ -123,13 +123,13 @@ typedef void (SAL_CALL *pfunc_osl_printDetailedDebugMessage)( const sal_Char * p
 
     The given message handler must be able to cope with a <NULL/> message.
 */
-pfunc_osl_printDebugMessage SAL_CALL osl_setDebugMessageFunc( pfunc_osl_printDebugMessage pNewFunc );
+SAL_DLLPUBLIC pfunc_osl_printDebugMessage SAL_CALL osl_setDebugMessageFunc( pfunc_osl_printDebugMessage pNewFunc );
 
 /** sets a delivery function for detailed message information.
 
     The given message handler must be able to cope with a <NULL/> message.
 */
-pfunc_osl_printDetailedDebugMessage SAL_CALL osl_setDetailedDebugMessageFunc( pfunc_osl_printDetailedDebugMessage pNewFunc );
+SAL_DLLPUBLIC pfunc_osl_printDetailedDebugMessage SAL_CALL osl_setDetailedDebugMessageFunc( pfunc_osl_printDetailedDebugMessage pNewFunc );
 
 #ifdef __cplusplus
 }
diff --git a/sal/inc/osl/diagnose.hxx b/sal/inc/osl/diagnose.hxx
index 45a6fdd..7a8f5c1 100644
--- a/sal/inc/osl/diagnose.hxx
+++ b/sal/inc/osl/diagnose.hxx
@@ -54,26 +54,27 @@ struct ObjectRegistryData;
 extern "C" {
 
 /** @internal */
-bool SAL_CALL osl_detail_ObjectRegistry_storeAddresses( char const* pName )
+SAL_DLLPUBLIC bool SAL_CALL osl_detail_ObjectRegistry_storeAddresses(
+        char const* pName )
     SAL_THROW_EXTERN_C();
 
 /** @internal */
-bool SAL_CALL osl_detail_ObjectRegistry_checkObjectCount(
+SAL_DLLPUBLIC bool SAL_CALL osl_detail_ObjectRegistry_checkObjectCount(
     ::osl::detail::ObjectRegistryData const& rData, ::std::size_t nExpected )
     SAL_THROW_EXTERN_C();
 
 /** @internal */
-void SAL_CALL osl_detail_ObjectRegistry_registerObject(
+SAL_DLLPUBLIC void SAL_CALL osl_detail_ObjectRegistry_registerObject(
     ::osl::detail::ObjectRegistryData & rData, void const* pObj )
     SAL_THROW_EXTERN_C();
 
 /** @internal */
-void SAL_CALL osl_detail_ObjectRegistry_revokeObject(
+SAL_DLLPUBLIC void SAL_CALL osl_detail_ObjectRegistry_revokeObject(
     ::osl::detail::ObjectRegistryData & rData, void const* pObj )
     SAL_THROW_EXTERN_C();
 
 /** @internal */
-::osl::Mutex & SAL_CALL osl_detail_ObjectRegistry_getMutex()
+SAL_DLLPUBLIC ::osl::Mutex & SAL_CALL osl_detail_ObjectRegistry_getMutex()
     SAL_THROW_EXTERN_C();
 
 } // extern "C"
diff --git a/sal/inc/osl/file.h b/sal/inc/osl/file.h
index c5ff558..cc12b1c 100644
--- a/sal/inc/osl/file.h
+++ b/sal/inc/osl/file.h
@@ -172,7 +172,8 @@ typedef void *oslDirectoryItem;
     @see osl_closeDirectory()
 */
 
-oslFileError SAL_CALL osl_openDirectory( rtl_uString *pustrDirectoryURL, oslDirectory *pDirectory);
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_openDirectory(
+        rtl_uString *pustrDirectoryURL, oslDirectory *pDirectory);
 
 
 /** Retrieve the next item of a previously opened directory.
@@ -206,7 +207,7 @@ oslFileError SAL_CALL osl_openDirectory( rtl_uString *pustrDirectoryURL, oslDire
     @see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_getNextDirectoryItem(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getNextDirectoryItem(
     oslDirectory Directory,
     oslDirectoryItem *pItem,
     sal_uInt32   uHint
@@ -228,7 +229,8 @@ oslFileError SAL_CALL osl_getNextDirectoryItem(
     @see osl_openDirectory()
 */
 
-oslFileError SAL_CALL osl_closeDirectory(oslDirectory Directory);
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_closeDirectory(
+        oslDirectory Directory);
 
 
 /** Retrieve a single directory item.
@@ -267,7 +269,7 @@ oslFileError SAL_CALL osl_closeDirectory(oslDirectory Directory);
     @see osl_getNextDirectoryItem()
 */
 
-oslFileError SAL_CALL osl_getDirectoryItem(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getDirectoryItem(
     rtl_uString *pustrFileURL,
     oslDirectoryItem *pItem
     );
@@ -290,7 +292,8 @@ oslFileError SAL_CALL osl_getDirectoryItem(
     @see osl_releaseDirectoryItem()
 */
 
-oslFileError SAL_CALL osl_acquireDirectoryItem( oslDirectoryItem Item );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_acquireDirectoryItem(
+        oslDirectoryItem Item );
 
 
 /** Decrease the refcount of a directory item handle.
@@ -312,7 +315,8 @@ oslFileError SAL_CALL osl_acquireDirectoryItem( oslDirectoryItem Item );
     @see osl_acquireDirectoryItem()
 */
 
-oslFileError SAL_CALL osl_releaseDirectoryItem( oslDirectoryItem Item );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_releaseDirectoryItem(
+        oslDirectoryItem Item );
 
 /* File types */
 
@@ -435,7 +439,8 @@ struct _oslFileStatus {
     @see oslFileStatus
 */
 
-oslFileError SAL_CALL osl_getFileStatus( oslDirectoryItem Item, oslFileStatus *pStatus, sal_uInt32 uFieldMask );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getFileStatus(
+        oslDirectoryItem Item, oslFileStatus *pStatus, sal_uInt32 uFieldMask );
 
 
 typedef void *oslVolumeDeviceHandle;
@@ -457,7 +462,8 @@ typedef void *oslVolumeDeviceHandle;
     @see osl_getVolumeInformation()
 */
 
-oslFileError SAL_CALL osl_unmountVolumeDevice( oslVolumeDeviceHandle Handle );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_unmountVolumeDevice(
+        oslVolumeDeviceHandle Handle );
 
 
 /** Automount a volume device.
@@ -476,7 +482,8 @@ oslFileError SAL_CALL osl_unmountVolumeDevice( oslVolumeDeviceHandle Handle );
     @see osl_getVolumeInformation()
 */
 
-oslFileError SAL_CALL osl_automountVolumeDevice( oslVolumeDeviceHandle Handle );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_automountVolumeDevice(
+        oslVolumeDeviceHandle Handle );
 
 
 /** Release a volume device handle.
@@ -497,7 +504,8 @@ oslFileError SAL_CALL osl_automountVolumeDevice( oslVolumeDeviceHandle Handle );
     @see osl_getVolumeInformation()
 */
 
-oslFileError SAL_CALL osl_releaseVolumeDeviceHandle( oslVolumeDeviceHandle Handle );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_releaseVolumeDeviceHandle(
+        oslVolumeDeviceHandle Handle );
 
 /** Acquire a volume device handle.
 
@@ -517,7 +525,8 @@ oslFileError SAL_CALL osl_releaseVolumeDeviceHandle( oslVolumeDeviceHandle Handl
     @see osl_getVolumeInformation()
 */
 
-oslFileError SAL_CALL osl_acquireVolumeDeviceHandle( oslVolumeDeviceHandle Handle );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_acquireVolumeDeviceHandle(
+        oslVolumeDeviceHandle Handle );
 
 
 /** Get the full qualified URL where a device is mounted to.
@@ -548,7 +557,8 @@ oslFileError SAL_CALL osl_acquireVolumeDeviceHandle( oslVolumeDeviceHandle Handl
     @see    osl_unmountVolumeDevice()
 */
 
-oslFileError SAL_CALL osl_getVolumeDeviceMountPath( oslVolumeDeviceHandle Handle, rtl_uString **ppustrDirectoryURL);
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getVolumeDeviceMountPath(
+        oslVolumeDeviceHandle Handle, rtl_uString **ppustrDirectoryURL);
 
 /* Volume attributes */
 
@@ -643,7 +653,7 @@ struct _oslVolumeInfo {
     @see    oslVolumeInfo
 */
 
-oslFileError SAL_CALL osl_getVolumeInformation(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getVolumeInformation(
     rtl_uString *pustrDirectoryURL,
     oslVolumeInfo *pInfo,
     sal_uInt32 uFieldMask );
@@ -706,7 +716,8 @@ typedef void *oslFileHandle;
     @see osl_getFileSize()
 */
 
-oslFileError SAL_CALL osl_openFile( rtl_uString *pustrFileURL, oslFileHandle *pHandle, sal_uInt32 uFlags );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_openFile(
+        rtl_uString *pustrFileURL, oslFileHandle *pHandle, sal_uInt32 uFlags );
 
 #define osl_Pos_Absolut 1
 #define osl_Pos_Current 2
@@ -732,7 +743,8 @@ oslFileError SAL_CALL osl_openFile( rtl_uString *pustrFileURL, oslFileHandle *pH
     @see    osl_getFilePos()
 */
 
-oslFileError SAL_CALL osl_setFilePos( oslFileHandle Handle, sal_uInt32 uHow, sal_Int64 uPos ) SAL_WARN_UNUSED_RESULT;
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_setFilePos(
+        oslFileHandle Handle, sal_uInt32 uHow, sal_Int64 uPos ) SAL_WARN_UNUSED_RESULT;
 
 
 /** Retrieve the current position of the internal pointer of an open file.
@@ -754,7 +766,8 @@ oslFileError SAL_CALL osl_setFilePos( oslFileHandle Handle, sal_uInt32 uHow, sal
     @see osl_writeFile()
 */
 
-oslFileError SAL_CALL osl_getFilePos( oslFileHandle Handle, sal_uInt64 *pPos );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getFilePos(
+        oslFileHandle Handle, sal_uInt64 *pPos );
 
 
 /** Set the file size of an open file.
@@ -779,7 +792,8 @@ oslFileError SAL_CALL osl_getFilePos( oslFileHandle Handle, sal_uInt64 *pPos );
     @see osl_getFileSize()
 */
 
-oslFileError SAL_CALL osl_setFileSize( oslFileHandle Handle, sal_uInt64 uSize );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_setFileSize(
+        oslFileHandle Handle, sal_uInt64 uSize );
 
 
 /** Get the file size of an open file.
@@ -803,7 +817,8 @@ oslFileError SAL_CALL osl_setFileSize( oslFileHandle Handle, sal_uInt64 uSize );
     @see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_getFileSize( oslFileHandle Handle, sal_uInt64 *pSize );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getFileSize(
+        oslFileHandle Handle, sal_uInt64 *pSize );
 
 
 /** Map flags.
@@ -824,8 +839,7 @@ oslFileError SAL_CALL osl_getFileSize( oslFileHandle Handle, sal_uInt64 *pSize )
 
     @since UDK 3.2.10
  */
-oslFileError
-SAL_CALL osl_mapFile (
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_mapFile (
   oslFileHandle Handle,
   void**        ppAddr,
   sal_uInt64    uLength,
@@ -838,8 +852,7 @@ SAL_CALL osl_mapFile (
 
     @since UDK 3.2.10
  */
-oslFileError
-SAL_CALL osl_unmapFile (
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_unmapFile (
   void*      pAddr,
   sal_uInt64 uLength
 );
@@ -880,7 +893,8 @@ SAL_CALL osl_unmapFile (
     @see osl_setFilePos()
 */
 
-oslFileError SAL_CALL osl_readFile( oslFileHandle Handle, void *pBuffer, sal_uInt64 uBytesRequested, sal_uInt64 *pBytesRead );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_readFile(
+        oslFileHandle Handle, void *pBuffer, sal_uInt64 uBytesRequested, sal_uInt64 *pBytesRead );
 
 
 /** Test if the end of a file is reached.
@@ -908,7 +922,8 @@ oslFileError SAL_CALL osl_readFile( oslFileHandle Handle, void *pBuffer, sal_uIn
     @see osl_setFilePos()
 */
 
-oslFileError SAL_CALL osl_isEndOfFile( oslFileHandle Handle, sal_Bool *pIsEOF );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_isEndOfFile(
+        oslFileHandle Handle, sal_Bool *pIsEOF );
 
 
 /** Write a number of bytes to a file.
@@ -948,7 +963,8 @@ oslFileError SAL_CALL osl_isEndOfFile( oslFileHandle Handle, sal_Bool *pIsEOF );
     @see osl_setFilePos()
 */
 
-oslFileError SAL_CALL osl_writeFile( oslFileHandle Handle, const void *pBuffer, sal_uInt64 uBytesToWrite, sal_uInt64 *pBytesWritten );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_writeFile(
+        oslFileHandle Handle, const void *pBuffer, sal_uInt64 uBytesToWrite, sal_uInt64 *pBytesWritten );
 
 /** Read a number of bytes from a specified offset in a file.
 
@@ -956,7 +972,7 @@ oslFileError SAL_CALL osl_writeFile( oslFileHandle Handle, const void *pBuffer,
 
     @since UDK 3.2.10
  */
-oslFileError SAL_CALL osl_readFileAt(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_readFileAt(
   oslFileHandle Handle,
   sal_uInt64    uOffset,
   void*         pBuffer,
@@ -971,7 +987,7 @@ oslFileError SAL_CALL osl_readFileAt(
 
     @since UDK 3.2.10
  */
-oslFileError SAL_CALL osl_writeFileAt(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_writeFileAt(
   oslFileHandle Handle,
   sal_uInt64    uOffset,
   const void*   pBuffer,
@@ -1007,7 +1023,8 @@ oslFileError SAL_CALL osl_writeFileAt(
     @see osl_setFilePos()
 */
 
-oslFileError SAL_CALL osl_readLine( oslFileHandle Handle, sal_Sequence** ppSequence );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_readLine(
+        oslFileHandle Handle, sal_Sequence** ppSequence );
 
 /** Synchronize the memory representation of a file with that on the physical medium.
 
@@ -1043,7 +1060,7 @@ oslFileError SAL_CALL osl_readLine( oslFileHandle Handle, sal_Sequence** ppSeque
       @see osl_openFile()
       @see osl_writeFile()
 */
-oslFileError SAL_CALL osl_syncFile(oslFileHandle Handle);
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_syncFile( oslFileHandle Handle );
 
 /** Close an open file.
 
@@ -1062,7 +1079,7 @@ oslFileError SAL_CALL osl_syncFile(oslFileHandle Handle);
     @see osl_openFile()
 */
 
-oslFileError SAL_CALL osl_closeFile( oslFileHandle Handle );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_closeFile( oslFileHandle Handle );
 
 
 /** Create a directory.
@@ -1092,7 +1109,7 @@ oslFileError SAL_CALL osl_closeFile( oslFileHandle Handle );
     @see osl_removeDirectory()
 */
 
-oslFileError SAL_CALL osl_createDirectory( rtl_uString* pustrDirectoryURL );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_createDirectory( rtl_uString* pustrDirectoryURL );
 
 
 /** Remove an empty directory.
@@ -1123,7 +1140,7 @@ oslFileError SAL_CALL osl_createDirectory( rtl_uString* pustrDirectoryURL );
     @see osl_createDirectory()
 */
 
-oslFileError SAL_CALL osl_removeDirectory( rtl_uString* pustrDirectoryURL );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_removeDirectory( rtl_uString* pustrDirectoryURL );
 
 /** Function pointer representing a function that will be called by osl_createDirectoryPath
     if a directory has been created.
@@ -1201,7 +1218,7 @@ typedef void (SAL_CALL *oslDirectoryCreationCallbackFunc)(void* pData, rtl_uStri
     @see oslFileError
     @see osl_createDirectory
 */
-oslFileError SAL_CALL osl_createDirectoryPath(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_createDirectoryPath(
     rtl_uString* aDirectoryUrl,
     oslDirectoryCreationCallbackFunc aDirectoryCreationCallbackFunc,
     void* pData);
@@ -1234,7 +1251,8 @@ oslFileError SAL_CALL osl_createDirectoryPath(
     @see osl_openFile()
 */
 
-oslFileError SAL_CALL osl_removeFile( rtl_uString* pustrFileURL );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_removeFile(
+        rtl_uString* pustrFileURL );
 
 
 /** Copy a file to a new destination.
@@ -1263,7 +1281,8 @@ oslFileError SAL_CALL osl_removeFile( rtl_uString* pustrFileURL );
     @see    osl_removeFile()
 */
 
-oslFileError SAL_CALL osl_copyFile( rtl_uString* pustrSourceFileURL, rtl_uString *pustrDestFileURL );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_copyFile(
+        rtl_uString* pustrSourceFileURL, rtl_uString *pustrDestFileURL );
 
 
 /** Move a file or directory to a new destination or renames it.
@@ -1290,7 +1309,8 @@ oslFileError SAL_CALL osl_copyFile( rtl_uString* pustrSourceFileURL, rtl_uString
     @see osl_copyFile()
 */
 
-oslFileError SAL_CALL osl_moveFile( rtl_uString* pustrSourceFileURL, rtl_uString *pustrDestFileURL );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_moveFile(
+        rtl_uString* pustrSourceFileURL, rtl_uString *pustrDestFileURL );
 
 
 /** Determine a valid unused canonical name for a requested name.
@@ -1314,7 +1334,8 @@ oslFileError SAL_CALL osl_moveFile( rtl_uString* pustrSourceFileURL, rtl_uString
     @see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_getCanonicalName( rtl_uString *pustrRequestedURL, rtl_uString **ppustrValidURL);
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getCanonicalName(
+        rtl_uString *pustrRequestedURL, rtl_uString **ppustrValidURL);
 
 
 /** Convert a path relative to a given directory into an full qualified file URL.
@@ -1352,7 +1373,7 @@ oslFileError SAL_CALL osl_getCanonicalName( rtl_uString *pustrRequestedURL, rtl_
     @see    osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_getAbsoluteFileURL(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getAbsoluteFileURL(
     rtl_uString* pustrBaseDirectoryURL,
     rtl_uString *pustrRelativeFileURL,
     rtl_uString **ppustrAbsoluteFileURL );
@@ -1373,7 +1394,8 @@ oslFileError SAL_CALL osl_getAbsoluteFileURL(
     @see osl_getSystemPathFromFileURL()
 */
 
-oslFileError SAL_CALL osl_getFileURLFromSystemPath( rtl_uString *pustrSystemPath, rtl_uString **ppustrFileURL);
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getFileURLFromSystemPath(
+        rtl_uString *pustrSystemPath, rtl_uString **ppustrFileURL);
 
 
 /** Searche a full qualified system path or a file URL.
@@ -1404,7 +1426,8 @@ oslFileError SAL_CALL osl_getFileURLFromSystemPath( rtl_uString *pustrSystemPath
     @see osl_getSystemPathFromFileURL()
 */
 
-oslFileError SAL_CALL osl_searchFileURL( rtl_uString *pustrFileName, rtl_uString *pustrSearchPath, rtl_uString **ppustrFileURL );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_searchFileURL(
+        rtl_uString *pustrFileName, rtl_uString *pustrSearchPath, rtl_uString **ppustrFileURL );
 
 
 /** Convert a file URL into a system dependend path.
@@ -1422,7 +1445,8 @@ oslFileError SAL_CALL osl_searchFileURL( rtl_uString *pustrFileName, rtl_uString
     @see osl_getFileURLFromSystemPath()
 */
 
-oslFileError SAL_CALL osl_getSystemPathFromFileURL( rtl_uString *pustrFileURL, rtl_uString **ppustrSystemPath);
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getSystemPathFromFileURL(
+        rtl_uString *pustrFileURL, rtl_uString **ppustrSystemPath);
 
 
 /** Function pointer representing the function called back from osl_abbreviateSystemPath
@@ -1461,7 +1485,7 @@ typedef sal_uInt32 (SAL_CALL *oslCalcTextWidthFunc)( rtl_uString *ustrText );
     @see    oslCalcTextWidthFunc
 */
 
-oslFileError SAL_CALL osl_abbreviateSystemPath(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_abbreviateSystemPath(
     rtl_uString *ustrSystemPath,
     rtl_uString **pustrCompacted,
     sal_uInt32 uMaxWidth,
@@ -1483,7 +1507,8 @@ oslFileError SAL_CALL osl_abbreviateSystemPath(
     @see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_setFileAttributes( rtl_uString *pustrFileURL, sal_uInt64 uAttributes );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_setFileAttributes(
+        rtl_uString *pustrFileURL, sal_uInt64 uAttributes );
 
 
 /** Set the file time.
@@ -1508,7 +1533,7 @@ oslFileError SAL_CALL osl_setFileAttributes( rtl_uString *pustrFileURL, sal_uInt
     @see osl_getFileStatus()
 */
 
-oslFileError SAL_CALL osl_setFileTime(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_setFileTime(
     rtl_uString *pustrFileURL,
     const TimeValue *aCreationTime,
     const TimeValue *aLastAccessTime,
@@ -1525,7 +1550,8 @@ oslFileError SAL_CALL osl_setFileTime(
     osl_File_E_NOENT no such file or directory not found
 */
 
-oslFileError SAL_CALL osl_getTempDirURL( rtl_uString **pustrTempDirURL );
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_getTempDirURL(
+        rtl_uString **pustrTempDirURL );
 
 
 /** Creates a temporary file in the directory provided by the caller or the
@@ -1580,7 +1606,7 @@ oslFileError SAL_CALL osl_getTempDirURL( rtl_uString **pustrTempDirURL );
     @see    osl_getTempDirURL()
 */
 
-oslFileError SAL_CALL osl_createTempFile(
+SAL_DLLPUBLIC oslFileError SAL_CALL osl_createTempFile(
     rtl_uString*   pustrDirectoryURL,
     oslFileHandle* pHandle,
     rtl_uString**  ppustrTempFileURL);
diff --git a/sal/inc/osl/interlck.h b/sal/inc/osl/interlck.h
index 63a4adf..23557f9 100644
--- a/sal/inc/osl/interlck.h
+++ b/sal/inc/osl/interlck.h
@@ -41,13 +41,13 @@ typedef sal_Int32 oslInterlockedCount;
     @param Address of counter variable
     @return The result of the operation is zero, the value of the count variable.
 */
-oslInterlockedCount SAL_CALL osl_incrementInterlockedCount(oslInterlockedCount* pCount);
+SAL_DLLPUBLIC oslInterlockedCount SAL_CALL osl_incrementInterlockedCount(oslInterlockedCount* pCount);
 
 /** Decrement the count variable addressed by pCount.
     @param Address of counter variable
     @return The result of the operation is the new value is of the count variable.
 */
-oslInterlockedCount SAL_CALL osl_decrementInterlockedCount(oslInterlockedCount* pCount);
+SAL_DLLPUBLIC oslInterlockedCount SAL_CALL osl_decrementInterlockedCount(oslInterlockedCount* pCount);
 
 #ifdef __cplusplus
 }
diff --git a/sal/inc/osl/module.h b/sal/inc/osl/module.h
index 6784232..7d00284 100644
--- a/sal/inc/osl/module.h
+++ b/sal/inc/osl/module.h
@@ -73,14 +73,14 @@ typedef void ( SAL_CALL *oslGenericFunction )( void );
     @param strModuleName denotes the name of the module to be loaded.
     @return NULL if the module could not be loaded, otherwise a handle to the module.
 */
-oslModule SAL_CALL osl_loadModule(rtl_uString *strModuleName, sal_Int32 nRtldMode);
+SAL_DLLPUBLIC oslModule SAL_CALL osl_loadModule(rtl_uString *strModuleName, sal_Int32 nRtldMode);
 
 /** Load a shared library or module.
     @param pModuleName denotes the name of the module to be loaded.
     @return NULL if the module could not be loaded, otherwise a handle to the module.
     @since UDK 3.6
 */
-oslModule SAL_CALL osl_loadModuleAscii(const sal_Char *pModuleName, sal_Int32 nRtldMode);
+SAL_DLLPUBLIC oslModule SAL_CALL osl_loadModuleAscii(const sal_Char *pModuleName, sal_Int32 nRtldMode);
 
 /** Load a module located relative to some other module.
 
@@ -99,7 +99,7 @@ oslModule SAL_CALL osl_loadModuleAscii(const sal_Char *pModuleName, sal_Int32 nR
 
     @since UDK 3.2.8
 */
-oslModule SAL_CALL osl_loadModuleRelative(
+SAL_DLLPUBLIC oslModule SAL_CALL osl_loadModuleRelative(
     oslGenericFunction baseModule, rtl_uString * relativePath, sal_Int32 mode);
 
 /** Load a module located relative to some other module.
@@ -146,16 +146,16 @@ oslModule SAL_CALL osl_loadModuleRelativeAscii(
     @see osl_getFunctionSymbol
     @see osl_getAsciiFunctionSymbol
 */
-sal_Bool SAL_CALL osl_getModuleHandle(rtl_uString *pModuleName, oslModule *pResult);
+SAL_DLLPUBLIC sal_Bool SAL_CALL osl_getModuleHandle(rtl_uString *pModuleName, oslModule *pResult);
 
 /** Release the module
 */
-void SAL_CALL osl_unloadModule(oslModule Module);
+SAL_DLLPUBLIC void SAL_CALL osl_unloadModule(oslModule Module);
 
 /** lookup the specified symbol name.
     @return address of the symbol or NULL if lookup failed.
 */
-void* SAL_CALL osl_getSymbol( oslModule Module, rtl_uString *strSymbolName);
+SAL_DLLPUBLIC void* SAL_CALL osl_getSymbol( oslModule Module, rtl_uString *strSymbolName);
 
 /** Lookup the specified function symbol name.
 
@@ -179,7 +179,8 @@ void* SAL_CALL osl_getSymbol( oslModule Module, rtl_uString *strSymbolName);
     @see osl_getSymbol
     @see osl_getAsciiFunctionSymbol
 */
-oslGenericFunction SAL_CALL osl_getFunctionSymbol( oslModule Module, rtl_uString *ustrFunctionSymbolName );
+SAL_DLLPUBLIC oslGenericFunction SAL_CALL osl_getFunctionSymbol(
+        oslModule Module, rtl_uString *ustrFunctionSymbolName );
 
 /** Lookup the specified function symbol name.
 
@@ -203,7 +204,8 @@ oslGenericFunction SAL_CALL osl_getFunctionSymbol( oslModule Module, rtl_uString
     @see osl_getModuleHandle
     @see osl_getFunctionSymbol
 */
-oslGenericFunction SAL_CALL osl_getAsciiFunctionSymbol(oslModule Module, const sal_Char *pSymbol);
+SAL_DLLPUBLIC oslGenericFunction SAL_CALL osl_getAsciiFunctionSymbol(
+        oslModule Module, const sal_Char *pSymbol );
 
 
 /** Lookup URL of module which is mapped at the specified address.
@@ -211,7 +213,8 @@ oslGenericFunction SAL_CALL osl_getAsciiFunctionSymbol(oslModule Module, const s
     @param pustrURL receives the URL of the module that is mapped at pv.
     @return sal_True on success, sal_False if no module can be found at the specified address.
 */
-sal_Bool SAL_CALL osl_getModuleURLFromAddress( void *pv, rtl_uString **pustrURL );
+SAL_DLLPUBLIC sal_Bool SAL_CALL osl_getModuleURLFromAddress(
+        void *pv, rtl_uString **pustrURL );
 
 /** Lookup URL of module which is mapped at the specified function address.
 
@@ -234,7 +237,8 @@ sal_Bool SAL_CALL osl_getModuleURLFromAddress( void *pv, rtl_uString **pustrURL
 
     @see osl_getModuleURLFromAddress
 */
-sal_Bool SAL_CALL osl_getModuleURLFromFunctionAddress( oslGenericFunction pf, rtl_uString **pustrFunctionURL );
+SAL_DLLPUBLIC sal_Bool SAL_CALL osl_getModuleURLFromFunctionAddress(
+        oslGenericFunction pf, rtl_uString **pustrFunctionURL );
 
 #ifdef __cplusplus
 }
diff --git a/sal/inc/osl/mutex.h b/sal/inc/osl/mutex.h
index ca5e978..6efa821 100644
--- a/sal/inc/osl/mutex.h
+++ b/sal/inc/osl/mutex.h
@@ -41,35 +41,35 @@ typedef struct _oslMutexImpl * oslMutex;
 /** Create a thread-local mutex.
     @return 0 if the mutex could not be created, otherwise a handle to the mutex.
 */
-oslMutex SAL_CALL osl_createMutex(void);
+SAL_DLLPUBLIC oslMutex SAL_CALL osl_createMutex(void);
 
 /** Release the OS-structures and free mutex data-structure.
     @param Mutex the mutex-handle
 */
-void SAL_CALL osl_destroyMutex(oslMutex Mutex);
+SAL_DLLPUBLIC void SAL_CALL osl_destroyMutex(oslMutex Mutex);
 
 /** Acquire the mutex, block if already acquired by another thread.
     @param Mutex handle to a created mutex.
     @return False if system-call fails.
 */
-sal_Bool SAL_CALL osl_acquireMutex(oslMutex Mutex);
+SAL_DLLPUBLIC sal_Bool SAL_CALL osl_acquireMutex(oslMutex Mutex);
 
 /** Try to acquire the mutex without blocking.
     @param Mutex handle to a created mutex.
     @return False if it could not be acquired.
 */
-sal_Bool SAL_CALL osl_tryToAcquireMutex(oslMutex Mutex);
+SAL_DLLPUBLIC sal_Bool SAL_CALL osl_tryToAcquireMutex(oslMutex Mutex);
 
 /** Release the mutex.
     @param Mutex handle to a created mutex.
     @return False if system-call fails.
 */
-sal_Bool SAL_CALL osl_releaseMutex(oslMutex Mutex);
+SAL_DLLPUBLIC sal_Bool SAL_CALL osl_releaseMutex(oslMutex Mutex);
 
 /** Returns a unique and global mutex.
     @return the global mutex.
 */
-oslMutex * SAL_CALL osl_getGlobalMutex(void);
+SAL_DLLPUBLIC oslMutex * SAL_CALL osl_getGlobalMutex(void);
 
 #ifdef __cplusplus
 }
diff --git a/sal/inc/osl/nlsupport.h b/sal/inc/osl/nlsupport.h
index 9c04d8c..3b66c8e 100644
--- a/sal/inc/osl/nlsupport.h
+++ b/sal/inc/osl/nlsupport.h
@@ -49,7 +49,8 @@ extern "C" {
     description or RTL_TEXTENCODING_DONTKNOW if no mapping is available.
 */
 
-rtl_TextEncoding SAL_CALL osl_getTextEncodingFromLocale( rtl_Locale * pLocale );
+SAL_DLLPUBLIC rtl_TextEncoding SAL_CALL osl_getTextEncodingFromLocale(
+        rtl_Locale * pLocale );
 
 
 #ifdef __cplusplus
diff --git a/sal/inc/osl/pipe.h b/sal/inc/osl/pipe.h
index f29b9f0..1245d85 100644
--- a/sal/inc/osl/pipe.h
+++ b/sal/inc/osl/pipe.h
@@ -62,38 +62,39 @@ typedef struct oslPipeImpl * oslPipe;
 
 /**
  */
-oslPipe SAL_CALL osl_createPipe(rtl_uString *strPipeName, oslPipeOptions Options, oslSecurity Security);
+SAL_DLLPUBLIC oslPipe SAL_CALL osl_createPipe(
+        rtl_uString *strPipeName, oslPipeOptions Options, oslSecurity Security);
 
 /** decreases the refcount of the pipe.
     If the refcount drops to zero, the handle is destroyed.
  */
-void    SAL_CALL osl_releasePipe( oslPipe );
+SAL_DLLPUBLIC void    SAL_CALL osl_releasePipe( oslPipe );
 
 /** increases the refcount of the pipe.
  */
-void    SAL_CALL osl_acquirePipe( oslPipe Pipe );
+SAL_DLLPUBLIC void    SAL_CALL osl_acquirePipe( oslPipe Pipe );
 
 /** closes the pipe, any read,write or accept actions stop immeadiatly.
  */
-void    SAL_CALL osl_closePipe( oslPipe );
+SAL_DLLPUBLIC void    SAL_CALL osl_closePipe( oslPipe );
 
 
-oslPipe SAL_CALL osl_acceptPipe(oslPipe Pipe);
+SAL_DLLPUBLIC oslPipe SAL_CALL osl_acceptPipe(oslPipe Pipe);
 
-sal_Int32 SAL_CALL osl_sendPipe(oslPipe Pipe, const void* pBuffer, sal_Int32 BufferSize);
-sal_Int32 SAL_CALL osl_receivePipe(oslPipe Pipe, void* pBuffer, sal_Int32 BufferSize);
+SAL_DLLPUBLIC sal_Int32 SAL_CALL osl_sendPipe(oslPipe Pipe, const void* pBuffer, sal_Int32 BufferSize);
+SAL_DLLPUBLIC sal_Int32 SAL_CALL osl_receivePipe(oslPipe Pipe, void* pBuffer, sal_Int32 BufferSize);
 
 /** Reads blocking from the pipe.
     @return Number of read bytes. If less than BufferSize, the pipe was closed.
  */
-sal_Int32 SAL_CALL osl_readPipe( oslPipe Pipe, void *pBuffer, sal_Int32 BufferSize );
+SAL_DLLPUBLIC sal_Int32 SAL_CALL osl_readPipe( oslPipe Pipe, void *pBuffer, sal_Int32 BufferSize );
 
 /** Writes blocking onto the pipe.
     @return Number of written bytes. If less than BufferSize, the pipe was closed.
  */
-sal_Int32 SAL_CALL osl_writePipe( oslPipe Pipe, const void *pBuffer, sal_Int32 BufferSize );
+SAL_DLLPUBLIC sal_Int32 SAL_CALL osl_writePipe( oslPipe Pipe, const void *pBuffer, sal_Int32 BufferSize );
 
-oslPipeError SAL_CALL osl_getLastPipeError(oslPipe Pipe);
+SAL_DLLPUBLIC oslPipeError SAL_CALL osl_getLastPipeError(oslPipe Pipe);
 
 #ifdef __cplusplus
 }
diff --git a/sal/inc/osl/process.h b/sal/inc/osl/process.h
index 8a64b82..2eb2954 100644
--- a/sal/inc/osl/process.h
+++ b/sal/inc/osl/process.h
@@ -176,7 +176,7 @@ typedef void* oslProcess;
     @see osl_freeProcessHandle
     @see osl_loginUser
 */
-oslProcessError SAL_CALL osl_executeProcess(
+SAL_DLLPUBLIC oslProcessError SAL_CALL osl_executeProcess(
     rtl_uString* ustrImageName,
     rtl_uString* ustrArguments[],
     sal_uInt32  nArguments,
@@ -262,7 +262,7 @@ oslProcessError SAL_CALL osl_executeProcess(
     @see osl_loginUser
     @see osl_closeFile
 */
-oslProcessError SAL_CALL osl_executeProcess_WithRedirectedIO(
+SAL_DLLPUBLIC oslProcessError SAL_CALL osl_executeProcess_WithRedirectedIO(
     rtl_uString* strImageName,
     rtl_uString* ustrArguments[],
     sal_uInt32 nArguments,
@@ -283,7 +283,8 @@ oslProcessError SAL_CALL osl_executeProcess_WithRedirectedIO(
     @see osl_getProcess
     @see osl_joinProcess
  */
-oslProcessError SAL_CALL osl_terminateProcess(oslProcess Process);
+SAL_DLLPUBLIC oslProcessError SAL_CALL osl_terminateProcess(
+        oslProcess Process);
 
 
 /** @deprecated
@@ -292,13 +293,15 @@ oslProcessError SAL_CALL osl_terminateProcess(oslProcess Process);
 
     @return the process handle on success, NULL in all other cases
  */
-oslProcess SAL_CALL osl_getProcess(oslProcessIdentifier Ident);
+SAL_DLLPUBLIC oslProcess SAL_CALL osl_getProcess(
+        oslProcessIdentifier Ident);
 
 
 /** Free the specified proces-handle.
     @param Process [in]
 */
-void SAL_CALL osl_freeProcessHandle(oslProcess Process);

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list