summaryrefslogtreecommitdiff
path: root/solenv/gbuild/platform/unxgcc.mk
diff options
context:
space:
mode:
Diffstat (limited to 'solenv/gbuild/platform/unxgcc.mk')
-rw-r--r--solenv/gbuild/platform/unxgcc.mk21
1 files changed, 14 insertions, 7 deletions
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index b1604c1309b4..4a3a189c91e9 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -133,13 +133,20 @@ $(call gb_Helper_abbreviate_dirs,\
$(foreach object,$(GENCOBJECTS),$(call gb_GenCObject_get_target,$(object))) \
$(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_target,$(object))) \
$(foreach extraobjectlist,$(EXTRAOBJECTLISTS),`cat $(extraobjectlist)`) \
- -Wl$(COMMA)--start-group \
- $(foreach lib,$(LINKED_STATIC_LIBS),\
- $(call gb_StaticLibrary_get_target,$(lib))) \
- $(T_LIBS) \
- -Wl$(COMMA)--end-group \
- -Wl$(COMMA)--no-as-needed \
- $(patsubst lib%.a,-l%,$(patsubst lib%.so,-l%,$(patsubst %.$(gb_Library_UDK_MAJORVER),%,$(foreach lib,$(LINKED_LIBS),$(call gb_Library_get_filename,$(lib)))))) \
+ $(if $(filter TRUE,$(DISABLE_DYNLOADING)), \
+ -Wl$(COMMA)--start-group \
+ $(patsubst lib%.a,-l%,$(patsubst lib%.so,-l%,$(patsubst %.$(gb_Library_UDK_MAJORVER),%,$(foreach lib,$(LINKED_LIBS),$(call gb_Library_get_filename,$(lib)))))) \
+ $(foreach lib,$(LINKED_STATIC_LIBS),$(call gb_StaticLibrary_get_target,$(lib))) \
+ $(T_LIBS) \
+ -Wl$(COMMA)--end-group \
+ , \
+ -Wl$(COMMA)--start-group \
+ $(foreach lib,$(LINKED_STATIC_LIBS),$(call gb_StaticLibrary_get_target,$(lib))) \
+ $(T_LIBS) \
+ -Wl$(COMMA)--end-group \
+ -Wl$(COMMA)--no-as-needed \
+ $(patsubst lib%.a,-l%,$(patsubst lib%.so,-l%,$(patsubst %.$(gb_Library_UDK_MAJORVER),%,$(foreach lib,$(LINKED_LIBS),$(call gb_Library_get_filename,$(lib)))))) \
+ ) \
-o $(1) \
$(if $(SOVERSIONSCRIPT),&& ln -sf ../../program/$(notdir $(1)) $(ILIBTARGET)))
$(if $(filter Library,$(TARGETTYPE)), $(call gb_Helper_abbreviate_dirs,\