Blob Blame History Raw
From 929bef368a34b4df91ff6595de9cb3304ef02c99 Mon Sep 17 00:00:00 2001
From: Michael Stahl <mstahl@redhat.com>
Date: Mon, 31 Aug 2015 23:09:16 +0200
Subject: [PATCH 099/398] sal: don't use --target as parameter to cppunittester

CppunitTest_libreofficekit_tiledrendering hangs because the soffice_main
exits due to the unrecognized command line arg --target.

Use a -env:VARIABLE argument instead, which is filtered out by
rtl_getAppCommandArg() so does not reach the soffice_main code.

(regression from 87514b0907dfbb479e2646b5ff951c68babf3417)

Change-Id: I2c801305398dccfb447e4e5c44726f42bf2a72ef
(cherry picked from commit d0ebb6e438dc8f7dcb5467ae6f72068cf40dcb7a)
---
 sal/cppunittester/cppunittester.cxx | 12 ++++++++----
 solenv/gbuild/CppunitTest.mk        |  2 +-
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/sal/cppunittester/cppunittester.cxx b/sal/cppunittester/cppunittester.cxx
index ef9212d6a2fa..f2f36af51134 100644
--- a/sal/cppunittester/cppunittester.cxx
+++ b/sal/cppunittester/cppunittester.cxx
@@ -361,15 +361,19 @@ SAL_IMPLEMENT_MAIN()
         std::string args;
         std::string testlib;
         sal_uInt32 index = 0;
-        while (index < rtl_getAppCommandArgCount())
+        while (index < osl_getCommandArgCount())
         {
             rtl::OUString arg = getArgument(index);
-            if (arg == "--target")
+            if (arg.startsWith("-env:CPPUNITTESTTARGET=", &path))
             {
-                path = getArgument(++index);
                 ++index;
                 continue;
             }
+            if (arg.startsWith("-env:"))
+            {
+                ++index;
+                continue; // ignore it here - will be read later
+            }
             if ( arg != "--protector" )
             {
                 if (testlib.empty())
@@ -385,7 +389,7 @@ SAL_IMPLEMENT_MAIN()
                 ++index;
                 continue;
             }
-            if (rtl_getAppCommandArgCount() - index < 3) {
+            if (osl_getCommandArgCount() - index < 3) {
                 usageFailure();
             }
             rtl::OUString lib(getArgument(index + 1));
diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk
index 944a87ab612d..bbd7370b655d 100644
--- a/solenv/gbuild/CppunitTest.mk
+++ b/solenv/gbuild/CppunitTest.mk
@@ -101,7 +101,7 @@ $(call gb_CppunitTest_get_target,%) :| $(gb_CppunitTest_RUNTIMEDEPS)
 			PYTHONDONTWRITEBYTECODE=1) \
 		$(ICECREAM_RUN) $(gb_CppunitTest_GDBTRACE) $(gb_CppunitTest_VALGRINDTOOL) $(gb_CppunitTest_CPPTESTCOMMAND) \
 		$(call gb_LinkTarget_get_target,$(call gb_CppunitTest_get_linktarget,$*)) \
-		$(call gb_CppunitTest__make_args) --target $@ \
+		$(call gb_CppunitTest__make_args) "-env:CPPUNITTESTTARGET=$@" \
 		$(if $(gb_CppunitTest__interactive),, \
 			> $@.log 2>&1 \
 			|| ($(if $(value gb_CppunitTest_postprocess), \
-- 
2.12.0