diff options
author | Michael Stahl <mstahl@redhat.com> | 2012-05-07 14:12:50 +0200 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2012-05-08 11:27:47 +0200 |
commit | d827219092063c6c4d045463b41fef2c0fc17c10 (patch) | |
tree | e6cd0a802ee4c3771c186a0fea63935c0fe5acb0 /solenv | |
parent | 01f79a346f27012791fa2373a3b93003963a6b3e (diff) |
gbuild: refactor the selective symbols support
so it doesn't use wildcard but instead the actually registered
LinkTargets.
Diffstat (limited to 'solenv')
-rw-r--r-- | solenv/gbuild/CppunitTest.mk | 2 | ||||
-rw-r--r-- | solenv/gbuild/Executable.mk | 2 | ||||
-rw-r--r-- | solenv/gbuild/Library.mk | 2 | ||||
-rw-r--r-- | solenv/gbuild/LinkTarget.mk | 13 | ||||
-rw-r--r-- | solenv/gbuild/Module.mk | 2 | ||||
-rw-r--r-- | solenv/gbuild/StaticLibrary.mk | 2 |
6 files changed, 13 insertions, 10 deletions
diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk index 3c9cd82e2831..09a1db1ce68b 100644 --- a/solenv/gbuild/CppunitTest.mk +++ b/solenv/gbuild/CppunitTest.mk @@ -123,7 +123,7 @@ $(call gb_CppunitTest_get_target,$(1)) : UNO_SERVICES := $(call gb_CppunitTest_get_target,$(1)) : UNO_TYPES := $(call gb_CppunitTest_get_target,$(1)) : DBGSV_ERROR_OUT := shell $(call gb_CppunitTest_get_target,$(1)) : SAL_DIAGNOSE_ABORT := -$$(eval $$(call gb_Module_register_target,$(call gb_CppunitTest_get_target,$(1)),$(call gb_CppunitTest_get_clean_target,$(1)))) +$$(eval $$(call gb_Module_register_target,$(call gb_CppunitTest_get_target,$(1)),$(call gb_CppunitTest_get_clean_target,$(1)),CppunitTest_$(1))) endef diff --git a/solenv/gbuild/Executable.mk b/solenv/gbuild/Executable.mk index 2cb23fc90b6d..eda569c4995b 100644 --- a/solenv/gbuild/Executable.mk +++ b/solenv/gbuild/Executable.mk @@ -59,7 +59,7 @@ $(call gb_Executable_get_target,$(1)) : $(call gb_LinkTarget_get_target,$(2)) \ | $(dir $(call gb_Executable_get_target,$(1))).dir $(call gb_Executable_get_clean_target,$(1)) : $(call gb_LinkTarget_get_clean_target,$(2)) $(call gb_Executable_Executable_platform,$(1),$(2)) -$$(eval $$(call gb_Module_register_target,$(call gb_Executable_get_target,$(1)),$(call gb_Executable_get_clean_target,$(1)))) +$$(eval $$(call gb_Module_register_target,$(call gb_Executable_get_target,$(1)),$(call gb_Executable_get_clean_target,$(1)),Executable_$(1))) $(call gb_Deliver_add_deliverable,$(call gb_Executable_get_target,$(1)),$(call gb_LinkTarget_get_target,$(2)),$(1)) endef diff --git a/solenv/gbuild/Library.mk b/solenv/gbuild/Library.mk index 2c74d6e70d2b..3a1e3d99b6a4 100644 --- a/solenv/gbuild/Library.mk +++ b/solenv/gbuild/Library.mk @@ -75,7 +75,7 @@ $(call gb_Library__get_final_target,$(1)) : $(call gb_Library_get_target,$(1)) $(call gb_Library_get_target,$(1)) : $(call gb_LinkTarget_get_target,$(2)) $(call gb_Library_get_clean_target,$(1)) : $(call gb_LinkTarget_get_clean_target,$(2)) $(call gb_Library_Library_platform,$(1),$(2),$(gb_Library_DLLDIR)/$(call gb_Library_get_dllname,$(1))) -$$(eval $$(call gb_Module_register_target,$(call gb_Library__get_final_target,$(1)),$(call gb_Library_get_clean_target,$(1)))) +$$(eval $$(call gb_Module_register_target,$(call gb_Library__get_final_target,$(1)),$(call gb_Library_get_clean_target,$(1)),Library_$(1))) $(call gb_Deliver_add_deliverable,$(call gb_Library_get_target,$(1)),$(call gb_LinkTarget_get_target,$(2)),$(1)) endef diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk index c412d572d6e0..e851dd564659 100644 --- a/solenv/gbuild/LinkTarget.mk +++ b/solenv/gbuild/LinkTarget.mk @@ -40,15 +40,16 @@ # convert ENABLE_SYMBOLS_FOR from "all -sc/" syntax to a list of target names # all targets -gb_Symbols_get_all=$(foreach item,$(wildcard $(SRCDIR)/*/*.mk),$(basename $(notdir $(item)))) +gb_Symbols_get_all = \ + $(foreach module,$(gb_Module_ALLMODULES),$(gb_Module_DEBUG_$(module))) -# all targets in a dir -gb_Symbols_expand_dir=$(foreach item,$(wildcard $(SRCDIR)/$(1)/*.mk),$(basename $(notdir $(item)))) +# all targets in a module +gb_Symbols_expand_module = $(gb_Module_DEBUG_$(1)) # expand one item: all->all targets, foo/ -> all targets in foo/, otherwise the item itself define gb_Symbols_expand_item $(if $(filter all,$(1)),$(call gb_Symbols_get_all), - $(if $(findstring /,$(1)),$(call gb_Symbols_expand_dir,$(1)), + $(if $(findstring /,$(1)),$(call gb_Symbols_expand_module,$(1)), $(if $(findstring _,$(1)),$(1), $(error no _ or / in --enable-debug item, prepend target type such as Library_ or append / for directory)))) endef @@ -68,7 +69,7 @@ endef gb_Symbols_create_debugfor=$(filter-out $(call gb_Symbols_expand_nodebug,$(1)),$(call gb_Symbols_expand_debug,$(1))) # convert the value -gb_ENABLE_SYMBOLS_FOR:=$(call gb_Symbols_create_debugfor,$(ENABLE_SYMBOLS_FOR)) +gb_ENABLE_SYMBOLS_FOR=$(call gb_Symbols_create_debugfor,$(ENABLE_SYMBOLS_FOR)) # debug flags, if ENABLE_SYMBOLS is set and the LinkTarget is named # in the list of libraries of ENABLE_SYMBOLS_FOR @@ -922,7 +923,7 @@ endef # Add flex scanners to the build. # gb_LinkTarget_add_scanners(<component>,<scanner file> [<scanner file>*]) define gb_LinkTarget_add_scanners -$(foreach scanner,$(2),$(call gb_LinkTarget_add_scanner,$(1),$(scanner))) +$(foreach scanner,$(2),$(call gb_LinkTarget_add_scanner,$(1),$(scanner),$(4))) endef diff --git a/solenv/gbuild/Module.mk b/solenv/gbuild/Module.mk index e75444f88d6e..6e9f8b040edc 100644 --- a/solenv/gbuild/Module.mk +++ b/solenv/gbuild/Module.mk @@ -196,6 +196,7 @@ endef define gb_Module_register_target gb_Module_CURRENTTARGET := $(1) gb_Module_CURRENTCLEANTARGET := $(2) +gb_Module_DEBUG_$(gb_Module_CURRENTMODULE) += $(3) endef @@ -203,6 +204,7 @@ endef define gb_Module__read_targetfile gb_Module_CURRENTTARGET := gb_Module_CURRENTCLEANTARGET := +gb_Module_CURRENTMODULE := $(1) include $(patsubst $(1):%,%,$(filter $(1):%,$(gb_Module_MODULELOCATIONS)))$(2).mk ifneq ($$(words $$(gb_Module_CURRENTTARGET)) $$(words $$(gb_Module_CURRENTCLEANTARGET)),1 1) $$(eval $$(call gb_Output_error,No $(3) registered while reading $(patsubst $(1):%,%,$(filter $(1):%,$(gb_Module_MODULELOCATIONS)))$(2).mk!)) diff --git a/solenv/gbuild/StaticLibrary.mk b/solenv/gbuild/StaticLibrary.mk index 9179958f1357..db93eeaadaaf 100644 --- a/solenv/gbuild/StaticLibrary.mk +++ b/solenv/gbuild/StaticLibrary.mk @@ -69,7 +69,7 @@ $(call gb_LinkTarget_add_defs,$(2),\ $(call gb_StaticLibrary_get_target,$(1)) : $(call gb_LinkTarget_get_target,$(2)) $(call gb_StaticLibrary_get_clean_target,$(1)) : $(call gb_LinkTarget_get_clean_target,$(2)) $(call gb_StaticLibrary_StaticLibrary_platform,$(1),$(2)) -$$(eval $$(call gb_Module_register_target,$(call gb_StaticLibrary_get_target,$(1)),$(call gb_StaticLibrary_get_clean_target,$(1)))) +$$(eval $$(call gb_Module_register_target,$(call gb_StaticLibrary_get_target,$(1)),$(call gb_StaticLibrary_get_clean_target,$(1)),StaticLibrary_$(1))) $(call gb_Deliver_add_deliverable,$(call gb_StaticLibrary_get_target,$(1)),$(call gb_LinkTarget_get_target,$(2)),$(1)) endef |