From d8a8ed04b14390d4469ea19b079778fa6f074bb2 Mon Sep 17 00:00:00 2001 From: Norbert Thiebaud Date: Fri, 18 Nov 2016 16:33:11 -0600 Subject: gbuild allow unitest to run once per lang in WITH_LANG_LIST this is motivated by the new screenshot feature the initial proposed solution involved running make screenshot once per lang which took ~6 hours for --with-lang=ALL on tb68 a reasonnably big windows slavebot. with this patch, one can run make screenshot just once and get all the screenshot the elapsed time is 36 inutes on the same box/same config a 10x improvement. Change-Id: I4339caebf915c118aa455de2a7e56e1a4e413939 Reviewed-on: https://gerrit.libreoffice.org/30970 Tested-by: Jenkins Reviewed-by: Norbert Thiebaud --- solenv/gbuild/CppunitTest.mk | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'solenv') diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk index e8cbcc906b00..4a9c050bbc96 100644 --- a/solenv/gbuild/CppunitTest.mk +++ b/solenv/gbuild/CppunitTest.mk @@ -109,7 +109,9 @@ $(call gb_CppunitTest_get_target,%) :| $(gb_CppunitTest_RUNTIMEDEPS) $(if $(gb_CppunitTest__interactive),, \ $(if $(value gb_CppunitTest_postprocess), \ rm -fr $@.core && mkdir $@.core && cd $@.core &&)) \ - ($(if $(filter gdb,$(CPPUNITTRACE)),,$(gb_CppunitTest_CPPTESTPRECOMMAND)) \ + ( \ + $(if $(gb_CppunitTest_localized),for l in $(WITH_LANG_LIST) ; do LO_TEST_LOCALE="$$l" ) \ + $(if $(filter gdb,$(CPPUNITTRACE)),,$(gb_CppunitTest_CPPTESTPRECOMMAND)) \ $(if $(G_SLICE),G_SLICE=$(G_SLICE)) \ $(if $(GLIBCXX_FORCE_NEW),GLIBCXX_FORCE_NEW=$(GLIBCXX_FORCE_NEW)) \ $(gb_CppunitTest_malloc_check) \ @@ -119,6 +121,7 @@ $(call gb_CppunitTest_get_target,%) :| $(gb_CppunitTest_RUNTIMEDEPS) $(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) "-env:CPPUNITTESTTARGET=$@" \ + $(if $(gb_CppunitTest_localized), ;done ) \ $(if $(gb_CppunitTest__interactive),, \ > $@.log 2>&1 \ || ($(if $(value gb_CppunitTest_postprocess), \ @@ -131,6 +134,12 @@ $(call gb_CppunitTest__CppunitTest_impl,$(1),$(call gb_CppunitTest_get_linktarge endef +define gb_CppunitTest_CppunitScreenShot +$(call gb_CppunitTest_get_target,$(1)) : gb_CppunitTest_localized := $(true) +$(call gb_CppunitTest__CppunitTest_impl,$(1),$(call gb_CppunitTest_get_linktarget,$(1))) + +endef + # call gb_CppunitTest__CppunitTest_impl,cppunittest,linktarget define gb_CppunitTest__CppunitTest_impl $(call gb_LinkTarget_LinkTarget,$(2),CppunitTest_$(1),NONE) @@ -226,6 +235,11 @@ $(call gb_CppunitTest__use_vcl,$(1),$(false)) endef +define gb_CppunitTest_localized_run +$(call gb_CppunitTest_get_target,$(1)) : gb_CppunitTest_localized := $(true) + +endef + define gb_CppunitTest__use_api $(call gb_CppunitTest_get_target,$(1)) : $(call gb_UnoApi_get_target,$(2)) $(call gb_CppunitTest_get_target,$(1)) : UNO_TYPES += $(call gb_UnoApi_get_target,$(2)) -- cgit