summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens-Heiner Rechtien [hr] <jens-heiner.rechtien@oracle.com>2011-02-11 14:48:49 +0100
committerJens-Heiner Rechtien [hr] <jens-heiner.rechtien@oracle.com>2011-02-11 14:48:49 +0100
commit1d0029ddb580fbdde6a4042679999d82f765cc93 (patch)
treef0fe617a6859d4179b2590a4eea56a3504be2675
parent5cbd6485387273f359538405f6bd031628f8a054 (diff)
DEV300 masterfix: #i10000#: windows: more bizare hacks ...
-rwxr-xr-xsolenv/gbuild/platform/windows.mk18
1 files changed, 14 insertions, 4 deletions
diff --git a/solenv/gbuild/platform/windows.mk b/solenv/gbuild/platform/windows.mk
index ed9820630099..a4137c077b09 100755
--- a/solenv/gbuild/platform/windows.mk
+++ b/solenv/gbuild/platform/windows.mk
@@ -595,10 +595,9 @@ endef
gb_defaultlangiso := en-US
gb_smoketest_instset := $(SRCDIR)/instsetoo_native/$(INPATH)/OpenOffice/archive/install/$(gb_defaultlangiso)/OOo_*_install-arc_$(gb_defaultlangiso).zip
-define gb_JunitTest_JunitTest_platform
-
ifeq ($(OOO_TEST_SOFFICE),)
+
# Work around Windows problems with long pathnames (see issue 50885) by
# installing into the temp directory instead of the module output tree (in which
# case $(target).instpath contains the path to the temp installation,
@@ -606,17 +605,28 @@ ifeq ($(OOO_TEST_SOFFICE),)
# on other platforms, a single installation to solver is created in
# smoketestoo_native.
+# for now, no dependency on $(shell ls $(gb_smoketest_instset))
+# because that doesn't work before the instset is built
+# and there is not much of a benefit anyway (gbuild not knowing about smoketest)
+define gb_JunitTest_JunitTest_platform_longpathname_hack
$(call gb_JunitTest_get_target,$(1)) : $(call gb_JunitTest_get_target,$(1)).instpath
$(call gb_JunitTest_get_target,$(1)) : CLEAN_CMD = $(call gb_Helper_abbreviate_dirs,rm -rf `cat $$@.instpath` $$@.instpath)
-$(call gb_JunitTest_get_target,$(1)).instpath : $(shell ls $(gb_smoketest_instset))
+
+$(call gb_JunitTest_get_target,$(1)).instpath :
INST_DIR=$$$$(cygpath -m `mktemp -d -t testinst.XXXXXX`) \
- && unzip -d "$$$${INST_DIR}" "$$<" \
+ && unzip -d "$$$${INST_DIR}" $$(gb_smoketest_instset) \
&& mv "$$$${INST_DIR}"/OOo_*_install-arc_$$(gb_defaultlangiso) "$$$${INST_DIR}"/opt\
&& mkdir -p $$(dir $$@) \
&& echo "$$$${INST_DIR}" > $$@
+endef
+else # OOO_TEST_SOFFICE
+gb_JunitTest_JunitTest_platform_longpathname_hack =
endif # OOO_TEST_SOFFICE
+define gb_JunitTest_JunitTest_platform
+$(call gb_JunitTest_JunitTest_platform_longpathname_hack,$(1))
+
$(call gb_JunitTest_get_target,$(1)) : DEFS := \
-Dorg.openoffice.test.arg.soffice="$$$${OOO_TEST_SOFFICE:-path:`cat $(call gb_JunitTest_get_target,$(1)).instpath`/opt/OpenOffice.org 3/program/soffice.exe}" \
-Dorg.openoffice.test.arg.env=PATH \