summaryrefslogtreecommitdiff
path: root/cppunit
diff options
context:
space:
mode:
authorTor Lillqvist <tml@iki.fi>2011-07-10 14:52:49 +0300
committerTor Lillqvist <tml@iki.fi>2011-07-10 14:52:49 +0300
commit8112e5ff23d41a1627266e42d326e7cda784ab56 (patch)
tree72f5cae16938cdf4019956ed1123c3b843ed6ddc /cppunit
parent96f256c215edc037d35b2ff3e6e47fce120c3749 (diff)
iOS hacks
For iOS, the LibreOffice unit tests that normally are built as "plugins", i.e. dynamic libraries, are actually built as static libraries, because we don't do any dynamic linking of own code on iOS. Enable giving the "plugin" unit test entry point a different name than a fixed "cppunitTestPlugIn", so that several unit tests can be linked together into one executable, for simplicity. Drop the stupid dummy main() function in cppunit plugins. I doubt any Unix platform we care for needs it, but drop just for iOS and MacOSX for now.
Diffstat (limited to 'cppunit')
-rw-r--r--cppunit/ios.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/cppunit/ios.patch b/cppunit/ios.patch
index cfe548ea6e7d..89204618ef4e 100644
--- a/cppunit/ios.patch
+++ b/cppunit/ios.patch
@@ -16,3 +16,28 @@
- rm -f conftest.*
+ rm -f -r conftest.*
fi
+--- misc/build/cppunit-1.12.1/include/cppunit/plugin/TestPlugIn.h
++++ misc/build/cppunit-1.12.1/include/cppunit/plugin/TestPlugIn.h
+@@ -106,7 +106,9 @@
+ * CppUnitTestPlugIn *CPPUNIT_PLUGIN_EXPORTED_NAME(void);
+ * \endcode
+ */
++#ifndef CPPUNIT_PLUGIN_EXPORTED_NAME
+ #define CPPUNIT_PLUGIN_EXPORTED_NAME cppunitTestPlugIn
++#endif
+
+ /*! \brief Type of the function exported by a plug-in.
+ * \ingroup WritingTestPlugIn
+@@ -143,6 +143,12 @@
+ #define CPPUNIT_PLUGIN_IMPLEMENT_MAIN() \
+ typedef char __CppUnitPlugInImplementMainDummyTypeDef
+
++// Actually this is for iOS where we build the cppunit tests libraries
++// as plain archives and just link them statically into test fixture programs,
++// and don't want any stinking duplicate main(), but shouldn't hurt for MacOSX either.
++#elif defined(__APPLE__)
++#define CPPUNIT_PLUGIN_IMPLEMENT_MAIN() \
++ typedef char __CppUnitPlugInImplementMainDummyTypeDef
+ // Unix
+ #elif defined(CPPUNIT_HAVE_UNIX_DLL_LOADER) || defined(CPPUNIT_HAVE_UNIX_SHL_LOADER)
+ #define CPPUNIT_PLUGIN_IMPLEMENT_MAIN() \