summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2012-09-26 15:23:48 +0200
committerMichael Stahl <mstahl@redhat.com>2012-09-26 15:26:57 +0200
commitf5a2c610b11d4c5d073fa33aaa53d55e3c0b879d (patch)
treeb87b7cf5c802f5bf906b8a43c2bf2e6b380ad7d6
parent2b5ef98ab48799788aa7d26325524ec41ed53fe6 (diff)
Revert "gbuild: remove gb_Library_TARGETS and ..."
This reverts commit 599a94827e2b3957db3abf758d48ff7b3977e2f2. The special handling of PLAINLIBS_NONE breaks the build on MacOSX. Needs further cleanup of PLAINLIBS_NONE abuse first. Conflicts: solenv/gbuild/gbuild.mk Change-Id: I834b623405e7745568ee2422647746631167524b
-rw-r--r--solenv/gbuild/Helper.mk6
-rw-r--r--solenv/gbuild/Library.mk1
-rw-r--r--solenv/gbuild/StaticLibrary.mk1
-rw-r--r--solenv/gbuild/TargetLocations.mk8
-rw-r--r--solenv/gbuild/gbuild.mk1
5 files changed, 13 insertions, 4 deletions
diff --git a/solenv/gbuild/Helper.mk b/solenv/gbuild/Helper.mk
index 377160586b82..a75a6e0c05f9 100644
--- a/solenv/gbuild/Helper.mk
+++ b/solenv/gbuild/Helper.mk
@@ -108,6 +108,12 @@ $$(foreach group,$$(gb_Jar_VALIDGROUPS),$$(eval gb_Jar_$$(group) :=))
endef
+define gb_Helper_collect_libtargets
+gb_Library_TARGETS := $$(foreach group,$$(gb_Library_VALIDGROUPS),$$(gb_Library_$$(group)))
+gb_StaticLibrary_TARGETS := $$(foreach group,$$(gb_StaticLibrary_VALIDGROUPS),$$(gb_StaticLibrary_$$(group)))
+
+endef
+
define gb_Helper_collect_knownlibs
gb_Library_KNOWNLIBS := $$(foreach group,$$(gb_Library_VALIDGROUPS),$$(gb_Library_$$(group)))
gb_StaticLibrary_KNOWNLIBS := $$(foreach group,$$(gb_StaticLibrary_VALIDGROUPS),$$(gb_StaticLibrary_$$(group)))
diff --git a/solenv/gbuild/Library.mk b/solenv/gbuild/Library.mk
index 5d49d6a96993..01ee922935ae 100644
--- a/solenv/gbuild/Library.mk
+++ b/solenv/gbuild/Library.mk
@@ -37,6 +37,7 @@
# gb_Library_DLLFILENAMES
# gb_Library_FILENAMES
# gb_Library_Library_platform
+# gb_Library_TARGETS
# doesn't do anything, just used for hooking up component target
.PHONY: $(call gb_Library__get_final_target,%)
diff --git a/solenv/gbuild/StaticLibrary.mk b/solenv/gbuild/StaticLibrary.mk
index a09f720db995..124b009213b4 100644
--- a/solenv/gbuild/StaticLibrary.mk
+++ b/solenv/gbuild/StaticLibrary.mk
@@ -33,6 +33,7 @@
# gb_StaticLibrary_OUTDIRLOCATION := $(OUTDIR)/lib
# defined by platform
# gb_StaticLibrary_FILENAMES
+# gb_StaticLibrary_TARGETS
# EVIL: gb_StaticLibrary and gb_Library need the same deliver rule because they are indistinguishable on windows
diff --git a/solenv/gbuild/TargetLocations.mk b/solenv/gbuild/TargetLocations.mk
index b217fd3be2c6..fb35d9cc4b6e 100644
--- a/solenv/gbuild/TargetLocations.mk
+++ b/solenv/gbuild/TargetLocations.mk
@@ -67,11 +67,11 @@ gb_XcuModuleTarget_get_outdir_target = $(gb_Configuration_registry)/spool/$(1)
define gb_Library_get_target
-$(if $(filter $(1),$(gb_Library_PLAINLIBS_NONE)),,$(patsubst $(1):%,$(gb_Library_OUTDIRLOCATION)/%,$(filter $(1):%,$(gb_Library_FILENAMES))))
+$(patsubst $(1):%,$(gb_Library_OUTDIRLOCATION)/%,$(filter $(filter $(1),$(gb_Library_TARGETS)):%,$(gb_Library_FILENAMES)))
endef
define gb_StaticLibrary_get_target
-$(patsubst $(1):%,$(gb_StaticLibrary_OUTDIRLOCATION)/%,$(filter $(1):%,$(gb_StaticLibrary_FILENAMES)))
+$(patsubst $(1):%,$(gb_StaticLibrary_OUTDIRLOCATION)/%,$(filter $(filter $(1),$(gb_StaticLibrary_TARGETS)):%,$(gb_StaticLibrary_FILENAMES)))
endef
@@ -194,11 +194,11 @@ gb_Zip_get_final_target = $(WORKDIR)/Zip/$(1).done
gb_Library__get_final_target = $(WORKDIR)/Dummy/$(1)
define gb_Library_get_external_headers_target
-$(if $(filter $(1),$(gb_Library_PLAINLIBS_NONE)),,$(patsubst $(1):%,$(WORKDIR)/ExternalHeaders/Library/%,$(filter $(1):%,$(gb_Library_FILENAMES))))
+$(patsubst $(1):%,$(WORKDIR)/ExternalHeaders/Library/%,$(filter $(1):%,$(gb_Library_FILENAMES)))
endef
define gb_Library_get_headers_target
-$(if $(filter $(1),$(gb_Library_PLAINLIBS_NONE)),,$(patsubst $(1):%,$(WORKDIR)/Headers/Library/%,$(filter $(1):%,$(gb_Library_FILENAMES))))
+$(patsubst $(1):%,$(WORKDIR)/Headers/Library/%,$(filter $(1):%,$(gb_Library_FILENAMES)))
endef
define gb_StaticLibrary_get_external_headers_target
diff --git a/solenv/gbuild/gbuild.mk b/solenv/gbuild/gbuild.mk
index bb4a3bd533ae..aeb59a8046db 100644
--- a/solenv/gbuild/gbuild.mk
+++ b/solenv/gbuild/gbuild.mk
@@ -152,6 +152,7 @@ include $(GBUILDDIR)/TargetLocations.mk
$(eval $(call gb_Helper_init_registries))
include $(SRCDIR)/Repository.mk
include $(SRCDIR)/RepositoryExternal.mk
+$(eval $(call gb_Helper_collect_libtargets))
gb_Library_DLLPOSTFIX := lo