[Libreoffice-commits] core.git: odk/build-examples_common.mk

Stephan Bergmann (via logerrit) logerrit at kemper.freedesktop.org
Mon Jan 6 16:30:58 UTC 2020


 odk/build-examples_common.mk |   17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

New commits:
commit 0bb6bb7729f159f05100e33797ed667fd9d13ab7
Author:     Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Mon Jan 6 16:05:34 2020 +0100
Commit:     Stephan Bergmann <sbergman at redhat.com>
CommitDate: Mon Jan 6 17:30:26 2020 +0100

    Avoid $(shell $(gb_MKTEMP))
    
    ...which, when included in a
    
      ifneq ($(MACOSX_SHELL_HACK),)
    
    block, appears to be executed every time the surrounding odk_build-examples_test
    macro is evaluated, even in builds (like a Linux build) where MACOSX_SHELL_HACK
    is empty.  (And which thus caused spurious empty gbuild.* files to be left
    behind in the tmp dir by such builds.)
    
    Change-Id: I8ef0204817f089cd977340a0ce3b6a17a347b209
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86279
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

diff --git a/odk/build-examples_common.mk b/odk/build-examples_common.mk
index 23c552efd177..abcb3a3e2593 100644
--- a/odk/build-examples_common.mk
+++ b/odk/build-examples_common.mk
@@ -35,11 +35,10 @@ ifneq ($(gb_SUPPRESS_TESTS),)
 else
 	$$(call gb_Output_announce,$(subst $(WORKDIR)/,,$(1)),$(true),CHK,1)
 	rm -fr $(call gb_CustomTarget_get_workdir,$(1))/{out,user}
-ifneq ($(MACOSX_SHELL_HACK),)
-	$(eval ODK_BUILD_SHELL := $(shell $(gb_MKTEMP)))
-	cp /bin/sh "$(ODK_BUILD_SHELL)"
-	chmod 0700 "$(ODK_BUILD_SHELL)"
-endif
+	$(if $(MACOSX_SHELL_HACK), \
+	    ODK_BUILD_SHELL=$$$$($(gb_MKTEMP)) && \
+	    cp /bin/sh "$$$$ODK_BUILD_SHELL" && \
+	    chmod 0700 "$$$$ODK_BUILD_SHELL" &&) \
 	(saved_library_path=$$$${$(gb_Helper_LIBRARY_PATH_VAR)} && . $$< \
 	$(if $(filter MACOSX,$(OS)),, \
 	    && $(gb_Helper_LIBRARY_PATH_VAR)=$$$$saved_library_path) \
@@ -49,15 +48,13 @@ endif
 	    && (cd $(INSTDIR)/$(SDKDIRNAME)/examples/$(my_dir) \
 		&& printf 'yes\n' | LC_ALL=C make \
 			CC="$(CXX)" LINK="$(CXX)" LIB="$(CXX)" \
-		    $(if $(MACOSX_SHELL_HACK), SHELL=$(ODK_BUILD_SHELL), )))) \
+		    $(if $(MACOSX_SHELL_HACK), SHELL="$$$$ODK_BUILD_SHELL", ))) \
+	$(if $(MACOSX_SHELL_HACK),&& rm -f "$$$$ODK_BUILD_SHELL")) \
 	    >$(call gb_CustomTarget_get_workdir,$(1))/log 2>&1 \
 	|| (RET=$$$$? \
-	    $(if $(MACOSX_SHELL_HACK), && rm -f $(ODK_BUILD_SHELL) , ) \
+	    $(if $(MACOSX_SHELL_HACK), && rm -f "$$$$ODK_BUILD_SHELL" , ) \
 	    && cat $(call gb_CustomTarget_get_workdir,$(1))/log \
 	    && exit $$$$RET)
-ifneq ($(MACOSX_SHELL_HACK),)
-	-rm -f $(ODK_BUILD_SHELL)
-endif
 endif
 
 $(call gb_CustomTarget_get_workdir,$(1))/setsdkenv: \


More information about the Libreoffice-commits mailing list