This is an automated email from the ASF dual-hosted git repository.
truckman pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/openoffice.git
The following commit(s) were added to refs/heads/trunk by this push:
new 7a50e16 Fix incorrect gbuild usage that can cause intermittent
parallel build failures.
7a50e16 is described below
commit 7a50e16f1d47cf9b54d012c17bef715ca3b060c8
Author: Don Lewis <[email protected]>
AuthorDate: Fri Oct 4 09:29:16 2019 -0700
Fix incorrect gbuild usage that can cause intermittent parallel build
failures.
There was some misuse of gbuild that was causing make rules to be added
that had solver/*/*/workdir/ExternalHeaders/Library and
solver/*/*/workdir/ExternalHeaders/Library listed as dependencies.
If these directories did not exist, then a pattern match rule intended
to create files under the
solver/*/*/workdir/ExternalHeaders/{Library,StaticLibrary} directories
would be triggered. The recipe for that rule would then
mkdir -p solver/*/*/workdir/ExternalHeaders
and then
touch solver/*/*/workdir/ExternalHeaders/{Library,StaticLibrary}
creating it as a plain file. A subsequent make rule would
unconditionally
mkdir -p solver/*/*/workdir/ExternalHeaders/{Library,StaticLibrary}
and fail.
Fix the incorrect gbuild usage and add some sanity checks to gbuild
to catch the problem closer to the source and more deterministically.
---
main/codemaker/Executable_cppumaker.mk | 4 ++--
main/codemaker/Executable_javamaker.mk | 4 ++--
main/codemaker/StaticLibrary_codemaker.mk | 2 +-
main/codemaker/StaticLibrary_commoncpp.mk | 2 +-
main/codemaker/StaticLibrary_commonjava.mk | 2 +-
main/jvmfwk/Executable_javaldx.mk | 2 +-
main/registry/Executable_checksingleton.mk | 2 +-
main/registry/Executable_rdbedit.mk | 2 +-
main/registry/Executable_regcompare.mk | 2 +-
main/registry/Executable_regmerge.mk | 2 +-
main/registry/Executable_regview.mk | 2 +-
main/solenv/gbuild/LinkTarget.mk | 2 ++
12 files changed, 15 insertions(+), 13 deletions(-)
diff --git a/main/codemaker/Executable_cppumaker.mk
b/main/codemaker/Executable_cppumaker.mk
index b876b68..63c9bc2 100644
--- a/main/codemaker/Executable_cppumaker.mk
+++ b/main/codemaker/Executable_cppumaker.mk
@@ -25,9 +25,9 @@ $(eval $(call gb_Executable_Executable,cppumaker))
$(eval $(call gb_Executable_set_targettype_gui,cppumaker,NO))
-$(eval $(call gb_StaticLibrary_add_package_headers,cppumaker,codemaker_inc))
+$(eval $(call gb_Executable_add_package_headers,cppumaker,codemaker_inc))
-$(eval $(call
gb_Library_add_precompiled_header,cppumaker,$(SRCDIR)/commoncpp/inc/pch/precompiled_cppumaker))
+$(eval $(call
gb_Executable_add_precompiled_header,cppumaker,$(SRCDIR)/commoncpp/inc/pch/precompiled_cppumaker))
$(eval $(call gb_Executable_set_include,cppumaker,\
$$(INCLUDE) \
diff --git a/main/codemaker/Executable_javamaker.mk
b/main/codemaker/Executable_javamaker.mk
index af180d8..22aae81 100644
--- a/main/codemaker/Executable_javamaker.mk
+++ b/main/codemaker/Executable_javamaker.mk
@@ -25,9 +25,9 @@ $(eval $(call gb_Executable_Executable,javamaker))
$(eval $(call gb_Executable_set_targettype_gui,javamaker,NO))
-$(eval $(call gb_StaticLibrary_add_package_headers,javamaker,codemaker_inc))
+$(eval $(call gb_Executable_add_package_headers,javamaker,codemaker_inc))
-$(eval $(call
gb_Library_add_precompiled_header,javamaker,$(SRCDIR)/commoncpp/inc/pch/precompiled_javamaker))
+$(eval $(call
gb_Executable,javamaker,$(SRCDIR)/commoncpp/inc/pch/precompiled_javamaker))
$(eval $(call gb_Executable_set_include,javamaker,\
$$(INCLUDE) \
diff --git a/main/codemaker/StaticLibrary_codemaker.mk
b/main/codemaker/StaticLibrary_codemaker.mk
index f55d2e8..2af9b28 100644
--- a/main/codemaker/StaticLibrary_codemaker.mk
+++ b/main/codemaker/StaticLibrary_codemaker.mk
@@ -25,7 +25,7 @@ $(eval $(call gb_StaticLibrary_StaticLibrary,codemaker))
$(eval $(call gb_StaticLibrary_add_package_headers,codemaker,codemaker_inc))
-$(eval $(call
gb_Library_add_precompiled_header,codemaker,$(SRCDIR)/codemaker/inc/pch/precompiled_codemaker))
+$(eval $(call
gb_StaticLibrary_add_precompiled_header,codemaker,$(SRCDIR)/codemaker/inc/pch/precompiled_codemaker))
#$(eval $(call gb_StaticLibrary_add_api,codemaker,\
# udkapi \
diff --git a/main/codemaker/StaticLibrary_commoncpp.mk
b/main/codemaker/StaticLibrary_commoncpp.mk
index a8d7e9f..e580ff8 100644
--- a/main/codemaker/StaticLibrary_commoncpp.mk
+++ b/main/codemaker/StaticLibrary_commoncpp.mk
@@ -25,7 +25,7 @@ $(eval $(call gb_StaticLibrary_StaticLibrary,commoncpp))
$(eval $(call gb_StaticLibrary_add_package_headers,commoncpp,codemaker_inc))
-$(eval $(call
gb_Library_add_precompiled_header,commoncpp,$(SRCDIR)/commoncpp/inc/pch/precompiled_commoncpp))
+$(eval $(call
gb_StaticLibrary_add_precompiled_header,commoncpp,$(SRCDIR)/commoncpp/inc/pch/precompiled_commoncpp))
#$(eval $(call gb_StaticLibrary_add_api,commoncpp,\
# udkapi \
diff --git a/main/codemaker/StaticLibrary_commonjava.mk
b/main/codemaker/StaticLibrary_commonjava.mk
index c25a532..6763f84 100644
--- a/main/codemaker/StaticLibrary_commonjava.mk
+++ b/main/codemaker/StaticLibrary_commonjava.mk
@@ -25,7 +25,7 @@ $(eval $(call gb_StaticLibrary_StaticLibrary,commonjava))
$(eval $(call gb_StaticLibrary_add_package_headers,commonjava,codemaker_inc))
-$(eval $(call
gb_Library_add_precompiled_header,commonjava,$(SRCDIR)/commonjava/inc/pch/precompiled_commonjava))
+$(eval $(call
gb_StaticLibrary_add_precompiled_header,commonjava,$(SRCDIR)/commonjava/inc/pch/precompiled_commonjava))
#$(eval $(call gb_StaticLibrary_add_api,commonjava,\
# udkapi \
diff --git a/main/jvmfwk/Executable_javaldx.mk
b/main/jvmfwk/Executable_javaldx.mk
index cfae9ae..04d6422 100644
--- a/main/jvmfwk/Executable_javaldx.mk
+++ b/main/jvmfwk/Executable_javaldx.mk
@@ -23,7 +23,7 @@
$(eval $(call gb_Executable_Executable,javaldx))
-$(eval $(call gb_Library_add_package_headers,javaldx,jvmfwk_inc))
+$(eval $(call gb_Executable_add_package_headers,javaldx,jvmfwk_inc))
$(eval $(call gb_Executable_set_include,javaldx,\
$$(INCLUDE) \
diff --git a/main/registry/Executable_checksingleton.mk
b/main/registry/Executable_checksingleton.mk
index 6167df9..f595eb4 100644
--- a/main/registry/Executable_checksingleton.mk
+++ b/main/registry/Executable_checksingleton.mk
@@ -23,7 +23,7 @@
$(eval $(call gb_Executable_Executable,checksingleton))
-$(eval $(call gb_Library_add_package_headers,checksingleton,registry_inc))
+$(eval $(call gb_Executable_add_package_headers,checksingleton,registry_inc))
$(eval $(call gb_Executable_set_include,checksingleton,\
$$(INCLUDE) \
diff --git a/main/registry/Executable_rdbedit.mk
b/main/registry/Executable_rdbedit.mk
index 8bf4a8a..55f2d4d 100644
--- a/main/registry/Executable_rdbedit.mk
+++ b/main/registry/Executable_rdbedit.mk
@@ -23,7 +23,7 @@
$(eval $(call gb_Executable_Executable,rdbedit))
-$(eval $(call gb_Library_add_package_headers,rdbedit,registry_inc))
+$(eval $(call gb_Executable_add_package_headers,rdbedit,registry_inc))
$(eval $(call gb_Executable_set_include,rdbedit,\
$$(INCLUDE) \
diff --git a/main/registry/Executable_regcompare.mk
b/main/registry/Executable_regcompare.mk
index ba289a8..25b4bbf 100644
--- a/main/registry/Executable_regcompare.mk
+++ b/main/registry/Executable_regcompare.mk
@@ -23,7 +23,7 @@
$(eval $(call gb_Executable_Executable,regcompare))
-$(eval $(call gb_Library_add_package_headers,regcompare,registry_inc))
+$(eval $(call gb_Executable_add_package_headers,regcompare,registry_inc))
$(eval $(call gb_Executable_set_include,regcompare,\
$$(INCLUDE) \
diff --git a/main/registry/Executable_regmerge.mk
b/main/registry/Executable_regmerge.mk
index 0fcb386..e5a47ac 100644
--- a/main/registry/Executable_regmerge.mk
+++ b/main/registry/Executable_regmerge.mk
@@ -23,7 +23,7 @@
$(eval $(call gb_Executable_Executable,regmerge))
-$(eval $(call gb_Library_add_package_headers,regmerge,registry_inc))
+$(eval $(call gb_Executable_add_package_headers,regmerge,registry_inc))
$(eval $(call gb_Executable_set_include,regmerge,\
$$(INCLUDE) \
diff --git a/main/registry/Executable_regview.mk
b/main/registry/Executable_regview.mk
index a90d857..f53e9cd 100644
--- a/main/registry/Executable_regview.mk
+++ b/main/registry/Executable_regview.mk
@@ -23,7 +23,7 @@
$(eval $(call gb_Executable_Executable,regview))
-$(eval $(call gb_Library_add_package_headers,regview,registry_inc))
+$(eval $(call gb_Executable_add_package_headers,regview,registry_inc))
$(eval $(call gb_Executable_set_include,regview,\
$$(INCLUDE) \
diff --git a/main/solenv/gbuild/LinkTarget.mk b/main/solenv/gbuild/LinkTarget.mk
index c67c1c5..3d81f48 100644
--- a/main/solenv/gbuild/LinkTarget.mk
+++ b/main/solenv/gbuild/LinkTarget.mk
@@ -349,6 +349,7 @@ define gb_LinkTarget__get_external_headers_check
ifneq ($$(SELF),$$*)
$$(eval $$(call gb_Output_info,LinkTarget $$* not defined: Assuming headers to
be there!,ALL))
endif
+$$(if $$(findstring /,$$*), , $$(error
gb_LinkTarget__get_external_headers_check trying to create $$@ as a plain file))
$$@ : COMMAND := $$(call gb_Helper_abbreviate_dirs, mkdir -p $$(dir $$@) &&
touch $$@ && mkdir -p $(call gb_LinkTarget_get_target,)pdb/$$(dir $$*))
endef
@@ -1009,6 +1010,7 @@ endef
define gb_LinkTarget__add_internal_headers
$(call gb_LinkTarget_get_headers_target,$(1)) : $(2)
+$(if $(word 2, $(strip $(subst /, $() $(),$(1)))), , $(error
gb_LinkTarget__add_internal_headers passing top level directory $(1) to
gb_LinkTarget_get_external_headers_target ))
$(2) :| $(call gb_LinkTarget_get_external_headers_target,$(1))
endef