summaryrefslogtreecommitdiffstats
path: root/solenv/gbuild/LinkTarget.mk
diff options
context:
space:
mode:
Diffstat (limited to 'solenv/gbuild/LinkTarget.mk')
-rw-r--r--solenv/gbuild/LinkTarget.mk23
1 files changed, 23 insertions, 0 deletions
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index 49ce493b609e..45df7b2beb40 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -240,6 +240,9 @@ gb_ObjCxxObject_ObjCxxObject =
# LinkTarget class
gb_LinkTarget_DEFAULTDEFS := $(gb_GLOBALDEFS)
+gb_LinkTarget_OBJECTOWNER :=
+gb_LinkTarget_OBJECTS :=
+
# defined by platform
# gb_LinkTarget_CXXFLAGS
# gb_LinkTarget_LDFLAGS
@@ -531,6 +534,11 @@ $(call gb_LinkTarget_get_dep_target,$(1)) : COBJECTS += $(2)
$(call gb_LinkTarget_get_dep_target,$(1)) : $(call gb_CObject_get_dep_target,$(2))
endif
+ifeq ($(gb_CHECKOBJECTOWNER),$(true))
+gb_LinkTarget_OBJECTOWNER += $(call gb_CObject_get_target,$(2)):$(1)
+gb_LinkTarget_OBJECTS += $(call gb_CObject_get_target,$(2))
+endif
+
endef
define gb_LinkTarget_add_cxxobject
@@ -546,6 +554,11 @@ $(call gb_LinkTarget_get_dep_target,$(1)) : CXXOBJECTS += $(2)
$(call gb_LinkTarget_get_dep_target,$(1)) : $(call gb_CxxObject_get_dep_target,$(2))
endif
+ifeq ($(gb_CHECKOBJECTOWNER),$(true))
+gb_LinkTarget_OBJECTOWNER += $(call gb_CxxObject_get_target,$(2)):$(1)
+gb_LinkTarget_OBJECTS += $(call gb_CxxObject_get_target,$(2))
+endif
+
endef
define gb_LinkTarget_add_objcxxobject
@@ -561,6 +574,11 @@ $(call gb_LinkTarget_get_dep_target,$(1)) : OBJCXXOBJECTS += $(2)
$(call gb_LinkTarget_get_dep_target,$(1)) : $(call gb_ObjCxxObject_get_dep_target,$(2))
endif
+ifeq ($(gb_CHECKOBJECTOWNER),$(true))
+gb_LinkTarget_OBJECTOWNER += $(call gb_ObjCxxObject_get_target,$(2)):$(1)
+gb_LinkTarget_OBJECTS += $(call gb_ObjCxxObject_get_target,$(2))
+endif
+
endef
define gb_LinkTarget_add_generated_cxx_object
@@ -576,6 +594,11 @@ $(call gb_LinkTarget_get_dep_target,$(1)) : GENCXXOBJECTS += $(2)
$(call gb_LinkTarget_get_dep_target,$(1)) : $(call gb_GenCxxObject_get_dep_target,$(2))
endif
+ifeq ($(gb_CHECKOBJECTOWNER),$(true))
+gb_LinkTarget_OBJECTOWNER += $(call gb_GenCxxObject_get_target,$(2)):$(1)
+gb_LinkTarget_OBJECTS += $(call gb_GenCxxObject_get_target,$(2))
+endif
+
endef
define gb_LinkTarget_add_noexception_object