summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorMatúš Kukan <matus.kukan@gmail.com>2012-09-26 12:14:48 +0200
committerMatúš Kukan <matus.kukan@gmail.com>2012-09-26 12:19:03 +0200
commit300621ff72be787c5413edf46139b8c45ba0ff45 (patch)
tree60ffc89565e469fd8ec02bf5948590e5e8072478 /solenv
parent601fd489995e9fd422d8c0fd47d8433413f95eaf (diff)
Revert "gbuild: use one pattern rule for creating directories"
It does not work with make 3.82 which prefers pattern rules with longest match, so wrong rules are chosen in workdir. This reverts commit bc234b4e1103cf8f79a7526ad80dcd9d0b78b89b.
Diffstat (limited to 'solenv')
-rw-r--r--solenv/gbuild/AllLangZip.mk3
-rw-r--r--solenv/gbuild/CliAssembly.mk9
-rw-r--r--solenv/gbuild/CliLibrary.mk6
-rw-r--r--solenv/gbuild/CliNativeLibrary.mk6
-rw-r--r--solenv/gbuild/CliUnoApi.mk6
-rw-r--r--solenv/gbuild/ComponentTarget.mk4
-rw-r--r--solenv/gbuild/Configuration.mk22
-rw-r--r--solenv/gbuild/CustomTarget.mk4
-rw-r--r--solenv/gbuild/Dictionary.mk6
-rw-r--r--solenv/gbuild/ExtensionTarget.mk3
-rw-r--r--solenv/gbuild/ExternalPackage.mk6
-rw-r--r--solenv/gbuild/ExternalProject.mk6
-rw-r--r--solenv/gbuild/InstallModule.mk3
-rw-r--r--solenv/gbuild/InstallModuleTarget.mk18
-rw-r--r--solenv/gbuild/InstallScript.mk6
-rw-r--r--solenv/gbuild/Package.mk5
-rw-r--r--solenv/gbuild/Rdb.mk5
-rw-r--r--solenv/gbuild/UnoApiTarget.mk4
-rw-r--r--solenv/gbuild/UnpackedTarball.mk6
-rw-r--r--solenv/gbuild/gbuild.mk7
20 files changed, 128 insertions, 7 deletions
diff --git a/solenv/gbuild/AllLangZip.mk b/solenv/gbuild/AllLangZip.mk
index e3cbc6a2f97f..fa3b9debfbab 100644
--- a/solenv/gbuild/AllLangZip.mk
+++ b/solenv/gbuild/AllLangZip.mk
@@ -14,6 +14,9 @@
gb_AllLangZip_LANGS := $(if $(strip $(gb_WITH_LANG)),$(gb_WITH_LANG),en-US)
+$(dir $(call gb_AllLangZip_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_AllLangZip_get_target,%) :
$(call gb_Output_announce,$*,$(true),ALZ,4)
touch $@
diff --git a/solenv/gbuild/CliAssembly.mk b/solenv/gbuild/CliAssembly.mk
index f78fae5097ed..e3a87bdf52ae 100644
--- a/solenv/gbuild/CliAssembly.mk
+++ b/solenv/gbuild/CliAssembly.mk
@@ -21,6 +21,9 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_CliConfigTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_CliConfigTarget_get_target,%) :
$(call gb_CliConfigTarget__command,$@,$*,$<)
@@ -61,6 +64,12 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_CliAssemblyTarget_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
+$(dir $(call gb_CliAssemblyTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_CliAssemblyTarget_get_target,%) :
$(if $(strip $(CLI_ASSEMBLY_VERSION)),,$(call gb_Output_error,assembly version not set))
$(if $(strip $(CLI_ASSEMBLY_CONFIGFILE)),,$(call gb_Output_error,assembly configuration file not set))
diff --git a/solenv/gbuild/CliLibrary.mk b/solenv/gbuild/CliLibrary.mk
index d22fc2e5b0f1..9cf6bd577b21 100644
--- a/solenv/gbuild/CliLibrary.mk
+++ b/solenv/gbuild/CliLibrary.mk
@@ -47,6 +47,12 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_CliLibraryTarget_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
+$(dir $(call gb_CliLibraryTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_CliLibraryTarget_get_target,%) :
$(call gb_CliLibraryTarget__command,$@,$*,$<,$?,$^)
diff --git a/solenv/gbuild/CliNativeLibrary.mk b/solenv/gbuild/CliNativeLibrary.mk
index 6ced5e920541..f5c124923ea6 100644
--- a/solenv/gbuild/CliNativeLibrary.mk
+++ b/solenv/gbuild/CliNativeLibrary.mk
@@ -22,6 +22,12 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_CliNativeLibraryTarget_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
+$(dir $(call gb_CliNativeLibraryTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_CliNativeLibraryTarget_get_target,%) :
$(call gb_CliNativeLibraryTarget__command,$@,$*,$<)
diff --git a/solenv/gbuild/CliUnoApi.mk b/solenv/gbuild/CliUnoApi.mk
index fae03433d8f3..f0a27356d3f1 100644
--- a/solenv/gbuild/CliUnoApi.mk
+++ b/solenv/gbuild/CliUnoApi.mk
@@ -29,6 +29,12 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_CliUnoApiTarget_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
+$(dir $(call gb_CliUnoApiTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
# TODO depending on the whole URE might be overkill, but I do not have a
# Windows machine to debug it...
$(call gb_CliUnoApiTarget_get_target,%) : \
diff --git a/solenv/gbuild/ComponentTarget.mk b/solenv/gbuild/ComponentTarget.mk
index f01a68753982..e99ffababcf5 100644
--- a/solenv/gbuild/ComponentTarget.mk
+++ b/solenv/gbuild/ComponentTarget.mk
@@ -55,6 +55,10 @@ $(call gb_ComponentTarget_get_target,%) : \
$(call gb_ComponentTarget_get_source,%) $(gb_XSLTPROCTARGET)
$(call gb_ComponentTarget__command,$@,$<,$*)
+# the .dir is for make 3.81, which ignores trailing /
+$(dir $(call gb_ComponentTarget_get_outdir_target,))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_ComponentTarget_get_outdir_target,%) :
$(call gb_Deliver_deliver,$<,$@)
diff --git a/solenv/gbuild/Configuration.mk b/solenv/gbuild/Configuration.mk
index 716891783eaf..e02d0dad0a79 100644
--- a/solenv/gbuild/Configuration.mk
+++ b/solenv/gbuild/Configuration.mk
@@ -101,6 +101,12 @@ $(call gb_XcsTarget_get_clean_target,%) :
rm -f $(call gb_XcsTarget_get_target,$*) \
$(call gb_XcsTarget_get_outdir_target,$(XCSFILE)))
+# the .dir is for make 3.81, which ignores trailing /
+$(dir $(call gb_XcsTarget_get_outdir_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+$(dir $(call gb_XcsTarget_get_outdir_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_XcsTarget_get_outdir_target,%) :
$(call gb_Helper_abbreviate_dirs,\
$(call gb_Deliver_deliver,$<,$@))
@@ -142,6 +148,12 @@ $(call gb_XcuDataTarget_get_clean_target,%) :
rm -f $(call gb_XcuDataTarget_get_target,$*) \
$(call gb_XcuDataTarget_get_outdir_target,$(XCUFILE)))
+# the .dir is for make 3.81, which ignores trailing /
+$(dir $(call gb_XcuDataTarget_get_outdir_target,))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+$(dir $(call gb_XcuDataTarget_get_outdir_target,)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_XcuDataTarget_get_outdir_target,%) :
$(call gb_Helper_abbreviate_dirs,\
$(call gb_Deliver_deliver,$<,$@))
@@ -179,6 +191,10 @@ $(call gb_XcuModuleTarget_get_clean_target,%) :
rm -f $(call gb_XcuModuleTarget_get_target,$*) \
$(call gb_XcuModuleTarget_get_outdir_target,$(XCUFILE)))
+# the .dir is for make 3.81, which ignores trailing /
+$(dir $(call gb_XcuModuleTarget_get_outdir_target,))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_XcuModuleTarget_get_outdir_target,%) :
$(call gb_Helper_abbreviate_dirs,\
$(call gb_Deliver_deliver,$<,$@))
@@ -214,6 +230,12 @@ $(call gb_XcuLangpackTarget_get_clean_target,%) :
$(call gb_XcuLangpackTarget__get_target_with_lang,$*,$(lang)) \
$(call gb_XcuLangpackTarget__get_outdir_target_with_lang,$(XCUFILE),$(lang))))
+# the .dir is for make 3.81, which ignores trailing /
+$(dir $(call gb_XcuLangpackTarget_get_outdir_target,))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+$(dir $(call gb_XcuLangpackTarget_get_outdir_target,)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_XcuLangpackTarget_get_outdir_target,%) :
$(call gb_Helper_abbreviate_dirs,\
$(call gb_Deliver_deliver,$<,$@))
diff --git a/solenv/gbuild/CustomTarget.mk b/solenv/gbuild/CustomTarget.mk
index 95eb3d147001..d8b59d2b15c3 100644
--- a/solenv/gbuild/CustomTarget.mk
+++ b/solenv/gbuild/CustomTarget.mk
@@ -26,6 +26,10 @@
#
#*************************************************************************
+# the .dir is for make 3.81, which ignores trailing /
+$(call gb_CustomTarget_get_workdir,%)/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_CustomTarget_get_target,%) :
$(call gb_Output_announce,$*,$(true),CUS,3)
touch $@
diff --git a/solenv/gbuild/Dictionary.mk b/solenv/gbuild/Dictionary.mk
index 1634c62f62d4..c40e376ee8fa 100644
--- a/solenv/gbuild/Dictionary.mk
+++ b/solenv/gbuild/Dictionary.mk
@@ -22,6 +22,12 @@ $(call gb_Helper_abbreviate_dirs,\
endef
#$(gb_ThesaurusIndexTarget_CHECK_COMMAND) $(THESAURUS_FILE) && \
+$(dir $(call gb_ThesaurusIndexTarget_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
+$(dir $(call gb_ThesaurusIndexTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_ThesaurusIndexTarget_get_target,%) : $(gb_ThesaurusIndexTarget_INDEX_TARGET) | $(gb_ThesaurusIndexTarget_CHECK_TARGET)
$(call gb_ThesaurusIndexTarget__command,$@,$*)
diff --git a/solenv/gbuild/ExtensionTarget.mk b/solenv/gbuild/ExtensionTarget.mk
index 9c108ae7874b..75b9e0c16bd8 100644
--- a/solenv/gbuild/ExtensionTarget.mk
+++ b/solenv/gbuild/ExtensionTarget.mk
@@ -71,6 +71,9 @@ $(if $(PLATFORM),\
cp -f $(1) $(2))
endef
+$(call gb_ExtensionTarget_get_workdir,%)/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
# remove extension directory in workdir and oxt file in workdir
$(call gb_ExtensionTarget_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),OXT,3)
diff --git a/solenv/gbuild/ExternalPackage.mk b/solenv/gbuild/ExternalPackage.mk
index 31a18482c07a..f24a2caeed87 100644
--- a/solenv/gbuild/ExternalPackage.mk
+++ b/solenv/gbuild/ExternalPackage.mk
@@ -19,6 +19,12 @@
#
# Uff, I hope this is at least partially understandable :-)
+$(dir $(call gb_ExternalPackage_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
+$(dir $(call gb_ExternalPackage_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_ExternalPackage_get_target,%) :
$(call gb_Output_announce,$*,$(true),EPK,2)
touch $@
diff --git a/solenv/gbuild/ExternalProject.mk b/solenv/gbuild/ExternalProject.mk
index b8dc5d4976a8..5731cbf65360 100644
--- a/solenv/gbuild/ExternalProject.mk
+++ b/solenv/gbuild/ExternalProject.mk
@@ -33,6 +33,12 @@
# directory is work dir, accessible only from recipes via variable
# $(EXTERNAL_WORKDIR).
+$(dir $(call gb_ExternalProject_get_statedir,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
+$(dir $(call gb_ExternalProject_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_ExternalProject_get_preparation_target,%) :
touch $@
diff --git a/solenv/gbuild/InstallModule.mk b/solenv/gbuild/InstallModule.mk
index 1ac028c7b907..cb37a49625c4 100644
--- a/solenv/gbuild/InstallModule.mk
+++ b/solenv/gbuild/InstallModule.mk
@@ -27,6 +27,9 @@
# InstallModule class
+$(dir $(call gb_InstallModule_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_InstallModule_get_target,%) :
$(call gb_Output_announce,$*,$(true),IMO,3)
touch $@
diff --git a/solenv/gbuild/InstallModuleTarget.mk b/solenv/gbuild/InstallModuleTarget.mk
index 345aff587237..b008bddc8e5d 100644
--- a/solenv/gbuild/InstallModuleTarget.mk
+++ b/solenv/gbuild/InstallModuleTarget.mk
@@ -53,6 +53,9 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_ScpTemplateTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_ScpTemplateTarget_get_target,%) : $(gb_ScpTemplateTarget_TARGET)
$(call gb_ScpTemplateTarget__command,$@,$*)
@@ -89,6 +92,9 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_ScpPreprocessTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_ScpPreprocessTarget_get_target,%) : $(gb_ScpPreprocessTarget_TARGET)
$(call gb_ScpPreprocessTarget__command,$@,$*)
@@ -119,6 +125,9 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_ScpMergeTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_ScpMergeTarget_get_target,%) : $(gb_ScpMergeTarget_TARGET)
$(call gb_ScpMergeTarget__command,$@,$*)
@@ -152,6 +161,9 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_ScpConvertTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_ScpConvertTarget_get_target,%) : $(gb_ScpConvertTarget_TARGET)
$(call gb_ScpConvertTarget__command,$@,$*)
@@ -183,6 +195,9 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_ScpTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_ScpTarget_get_target,%) : $(gb_ScpTarget_TARGET)
$(call gb_ScpTarget__command,$@,$*)
@@ -238,6 +253,9 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_InstallModuleTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_InstallModuleTarget_get_target,%) :
$(call gb_InstallModuleTarget__command,$@,$*)
diff --git a/solenv/gbuild/InstallScript.mk b/solenv/gbuild/InstallScript.mk
index c521c00b97bf..6b22c4313a9b 100644
--- a/solenv/gbuild/InstallScript.mk
+++ b/solenv/gbuild/InstallScript.mk
@@ -61,6 +61,12 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_InstallScriptTarget_get_target,%))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
+$(dir $(call gb_InstallScriptTarget_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_InstallScriptTarget_get_target,%) : $(gb_InstallScriptTarget_TARGET)
$(call gb_InstallScriptTarget__command,$@,$*)
diff --git a/solenv/gbuild/Package.mk b/solenv/gbuild/Package.mk
index 24d23d27d6f8..534e39ad0233 100644
--- a/solenv/gbuild/Package.mk
+++ b/solenv/gbuild/Package.mk
@@ -31,7 +31,12 @@
# a pattern rule with multiple targets is actually executed only once for each
# match, so define only pattern rules with one target here
+# the .dir is for make 3.81, which ignores trailing /
define gb_PackagePart__rule
+$(1)/.dir :
+ $$(if $$(wildcard $$(dir $$@)),,mkdir -p $$(dir $$@))
+$(1)/%/.dir :
+ $$(if $$(wildcard $$(dir $$@)),,mkdir -p $$(dir $$@))
$(1)/% :
$$(call gb_Deliver_deliver,$$<,$$@)
endef
diff --git a/solenv/gbuild/Rdb.mk b/solenv/gbuild/Rdb.mk
index ce11ee006448..03281567c805 100644
--- a/solenv/gbuild/Rdb.mk
+++ b/solenv/gbuild/Rdb.mk
@@ -47,6 +47,11 @@ $(call gb_Rdb_get_clean_target,%) :
$(call gb_Helper_abbreviate_dirs,\
rm -f $(call gb_Rdb_get_outdir_target,$*) $(call gb_Rdb_get_target,$*))
+# DO NOT DEFINE: it overwrites the definition from Package.mk for xml/
+# and doesn't work on 3.81
+#$(dir $(call gb_Rdb_get_outdir_target,))%/.dir :
+# mkdir -p $(dir $@)
+
$(call gb_Rdb_get_outdir_target,%) :
$(call gb_Deliver_deliver,$<,$@)
diff --git a/solenv/gbuild/UnoApiTarget.mk b/solenv/gbuild/UnoApiTarget.mk
index 88d3e9de978e..c085c4c4dff7 100644
--- a/solenv/gbuild/UnoApiTarget.mk
+++ b/solenv/gbuild/UnoApiTarget.mk
@@ -42,6 +42,10 @@ gb_UnoApiPartTarget_UCPPTARGET := $(call gb_Executable_get_target_for_build,ucpp
# invoked with the .idl file corresponding to the .urd in that case.
# Touch the .urd file, so it is newer than the .done file, causing that to
# be rebuilt and overwriting the .urd file again.
+# the .dir is for make 3.81, which ignores trailing /
+$(dir $(call gb_UnoApiPartTarget_get_target,))%/.dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_UnoApiPartTarget_get_target,%.urd) :
touch $@
diff --git a/solenv/gbuild/UnpackedTarball.mk b/solenv/gbuild/UnpackedTarball.mk
index c479c0e70819..a9cf53e09764 100644
--- a/solenv/gbuild/UnpackedTarball.mk
+++ b/solenv/gbuild/UnpackedTarball.mk
@@ -58,6 +58,9 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_UnpackedTarget_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_UnpackedTarget_get_target,%).tar.bz2 :
$(call gb_UnpackedTarget__command,untar,$@,$*,-j)
@@ -151,6 +154,9 @@ $(call gb_Helper_abbreviate_dirs,\
)
endef
+$(dir $(call gb_UnpackedTarball_get_target,%)).dir :
+ $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
+
$(call gb_UnpackedTarball_get_preparation_target,%) :
touch $@
diff --git a/solenv/gbuild/gbuild.mk b/solenv/gbuild/gbuild.mk
index 5afce294464c..9f78a0836b33 100644
--- a/solenv/gbuild/gbuild.mk
+++ b/solenv/gbuild/gbuild.mk
@@ -69,13 +69,6 @@ endif
include $(GBUILDDIR)/Output.mk
-# general purpose rules for creating directories
-# the .dir is for make 3.81, which ignores trailing /
-$(OUTDIR)/%/.dir :
- $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
-
-$(WORKDIR)/%/.dir :
- $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
ifneq ($(strip $(PRODUCT)$(product)),)
gb_PRODUCT := $(true)