diff options
author | Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> | 2023-07-11 18:27:36 +0200 |
---|---|---|
committer | Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> | 2024-04-22 13:33:46 +0200 |
commit | df62514556b4220a4c099c00a34f28dd7fe88626 (patch) | |
tree | ffea19e36fa735f92e334d482324f60b278c15a7 | |
parent | 5511a7b77bcceb812737533de1184c5d009f0a78 (diff) |
add generic %/.dir target that can be used in order-only prerequisites
Change-Id: I7a919004100ff6319806bbdf016fda6a3a39661a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166327
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
-rw-r--r-- | solenv/gbuild/LinkTarget.mk | 11 | ||||
-rw-r--r-- | solenv/gbuild/PrecompiledHeaders.mk | 10 | ||||
-rw-r--r-- | solenv/gbuild/gbuild.mk | 3 |
3 files changed, 7 insertions, 17 deletions
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk index 85139659c634..f4d15f411516 100644 --- a/solenv/gbuild/LinkTarget.mk +++ b/solenv/gbuild/LinkTarget.mk @@ -279,11 +279,6 @@ endif # Note: if the *Object_dep_target does not exist it will be created by # concat-deps as PHONY ifeq ($(gb_FULLDEPS),$(true)) -$(dir $(call gb_CObject_get_dep_target,%)).dir : - $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@)) - -$(dir $(call gb_CObject_get_dep_target,%))%/.dir : - $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@)) $(call gb_CObject_get_dep_target,%) : $(if $(wildcard $@),touch $@) @@ -342,12 +337,6 @@ $(call gb_CxxObject_get_target,%) : $(call gb_CxxObject_get_source,$(SRCDIR),%) endif ifeq ($(gb_FULLDEPS),$(true)) -$(dir $(call gb_CxxObject_get_dep_target,%)).dir : - $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@)) - -$(dir $(call gb_CxxObject_get_dep_target,%))%/.dir : - $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@)) - $(call gb_CxxObject_get_dep_target,%) : $(if $(wildcard $@),touch $@) diff --git a/solenv/gbuild/PrecompiledHeaders.mk b/solenv/gbuild/PrecompiledHeaders.mk index 60445c28efbe..429ea57de201 100644 --- a/solenv/gbuild/PrecompiledHeaders.mk +++ b/solenv/gbuild/PrecompiledHeaders.mk @@ -25,8 +25,8 @@ gb_PrecompiledHeader__get_debugdir = $(if $(call gb_target_symbols_enabled,$(1)) # $(call gb_PrecompiledHeader_generate_timestamp_rule,linktargetmakefilename) define gb_PrecompiledHeader_generate_timestamp_rule -$(call gb_LinkTarget_get_pch_timestamp,$(1)) : - mkdir -p $$(dir $$@) && touch $$@ +$(call gb_LinkTarget_get_pch_timestamp,$(1)) : | $(dir $(call gb_LinkTarget_get_pch_timestamp,$(1))).dir + touch $$@ endef @@ -46,10 +46,8 @@ gb_PrecompiledHeader_flags_for_flags_file := $$(sort $(gb_PrecompiledHeader_cxxf # $(call gb_PrecompiledHeader_generate_rules,pchtarget,linktarget,linktargetmakefilename,pchcxxfile,compiler) define gb_PrecompiledHeader_generate_rules -$(call gb_PrecompiledHeader_get_dep_target,$(1),$(3)) : - $$(call gb_Helper_abbreviate_dirs,\ - mkdir -p $$(dir $$@) && \ - echo "$$(call gb_PrecompiledHeader_get_target,$(1),$(3)) : $$(gb_Helper_PHONY)" > $$@) +$(call gb_PrecompiledHeader_get_dep_target,$(1),$(3)) : | $(dir $(call gb_PrecompiledHeader_get_dep_target,$(1),$(3))).dir + echo "$$(call gb_PrecompiledHeader_get_target,$(1),$(3)) : $$(gb_Helper_PHONY)" > $$@ # keep the flags the PCH was built with in a separate file, update the file if and only if the flags # change, and make the PCH depend on it => the PCH will be rebuilt on any flags change diff --git a/solenv/gbuild/gbuild.mk b/solenv/gbuild/gbuild.mk index a36b2b758479..2f5704896d42 100644 --- a/solenv/gbuild/gbuild.mk +++ b/solenv/gbuild/gbuild.mk @@ -373,4 +373,7 @@ ifneq ($(CCACHE_DEPEND_MODE),) gb_COMPILER_SETUP += CCACHE_DEPEND=1 endif +$(WORKDIR)/%/.dir: + mkdir -p $(@D) && touch $@ + # vim: set noet sw=4: |