summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--solenv/gbuild/LinkTarget.mk2
-rw-r--r--solenv/gbuild/platform/LINUX_ARM_GCC.mk2
-rw-r--r--solenv/gbuild/platform/LINUX_GODSON_GCC.mk2
-rw-r--r--solenv/gbuild/platform/LINUX_M68K_GCC.mk2
-rw-r--r--solenv/gbuild/platform/LINUX_POWERPC_GCC.mk2
-rw-r--r--solenv/gbuild/platform/linux.mk4
-rw-r--r--solenv/gbuild/platform/unxgcc.mk2
7 files changed, 8 insertions, 8 deletions
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index e1c55969a257..476ee429da33 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -775,6 +775,7 @@ $(call gb_LinkTarget_get_target,$(1)) : T_LDFLAGS := $$(gb_LinkTarget_LDFLAGS) $
$(call gb_LinkTarget_get_target,$(1)) : LINKED_LIBS :=
$(call gb_LinkTarget_get_target,$(1)) : LINKED_STATIC_LIBS :=
$(call gb_LinkTarget_get_target,$(1)) : T_LIBS :=
+$(call gb_LinkTarget_get_target,$(1)) : T_STDLIBS_CXX := $(gb_STDLIBS_CXX)
$(call gb_LinkTarget_get_target,$(1)) : TARGETTYPE :=
$(call gb_LinkTarget_get_target,$(1)) : LIBRARY_X64 :=
$(call gb_LinkTarget_get_target,$(1)) : PCH_NAME :=
@@ -911,6 +912,7 @@ endef
# call gb_LinkTarget_disable_standard_system_libs,linktarget
define gb_LinkTarget_disable_standard_system_libs
$(call gb_LinkTarget_get_target,$(1)) : T_LIBS := $$(filter-out $$(gb_STDLIBS),$$(T_LIBS))
+$(call gb_LinkTarget_get_target,$(1)) : T_STDLIBS_CXX :=
endef
diff --git a/solenv/gbuild/platform/LINUX_ARM_GCC.mk b/solenv/gbuild/platform/LINUX_ARM_GCC.mk
index e52cf2bb8950..cccf5772b3b4 100644
--- a/solenv/gbuild/platform/LINUX_ARM_GCC.mk
+++ b/solenv/gbuild/platform/LINUX_ARM_GCC.mk
@@ -13,6 +13,4 @@ gb_COMPILEROPTFLAGS := -Os
include $(GBUILDDIR)/platform/linux.mk
-gb_LinkTarget_LDFLAGS += -latomic
-
# vim: set noet sw=4:
diff --git a/solenv/gbuild/platform/LINUX_GODSON_GCC.mk b/solenv/gbuild/platform/LINUX_GODSON_GCC.mk
index f16f98530e2b..976aaedf97fe 100644
--- a/solenv/gbuild/platform/LINUX_GODSON_GCC.mk
+++ b/solenv/gbuild/platform/LINUX_GODSON_GCC.mk
@@ -13,6 +13,4 @@ gb_COMPILEROPTFLAGS := -Os
include $(GBUILDDIR)/platform/linux.mk
-gb_LinkTarget_LDFLAGS += -latomic
-
# vim: set noet sw=4:
diff --git a/solenv/gbuild/platform/LINUX_M68K_GCC.mk b/solenv/gbuild/platform/LINUX_M68K_GCC.mk
index 942696f80231..9e007101d8ac 100644
--- a/solenv/gbuild/platform/LINUX_M68K_GCC.mk
+++ b/solenv/gbuild/platform/LINUX_M68K_GCC.mk
@@ -12,6 +12,4 @@ gb_COMPILEROPTFLAGS := -Os
include $(GBUILDDIR)/platform/linux.mk
-gb_LinkTarget_LDFLAGS += -latomic
-
# vim: set noet sw=4:
diff --git a/solenv/gbuild/platform/LINUX_POWERPC_GCC.mk b/solenv/gbuild/platform/LINUX_POWERPC_GCC.mk
index 48fa395cfada..1880b3bad1e4 100644
--- a/solenv/gbuild/platform/LINUX_POWERPC_GCC.mk
+++ b/solenv/gbuild/platform/LINUX_POWERPC_GCC.mk
@@ -12,6 +12,4 @@ gb_CPUDEFS += -DPPC
include $(GBUILDDIR)/platform/linux.mk
-gb_LinkTarget_LDFLAGS += -latomic
-
# vim: set noet sw=4:
diff --git a/solenv/gbuild/platform/linux.mk b/solenv/gbuild/platform/linux.mk
index 77d4dbe679e8..ece7a88bd71f 100644
--- a/solenv/gbuild/platform/linux.mk
+++ b/solenv/gbuild/platform/linux.mk
@@ -21,4 +21,8 @@ ifeq ($(DISABLE_DYNLOADING),TRUE)
gb_STDLIBS := -ldl
endif
+ifneq ($(ATOMIC_LIB),)
+gb_STDLIBS_CXX := $(ATOMIC_LIB)
+endif
+
# vim: set noet sw=4 ts=4:
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index 1d6b38cdf8ce..df5eb7ca94c6 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -136,11 +136,13 @@ $(call gb_Helper_abbreviate_dirs,\
$(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) \
+ $(if $(CXXOBJECTS)$(GENCXXOBJECTS)$(EXTRAOBJECTLISTS)$(filter-out XTRUE,X$(ENABLE_RUNTIME_OPTIMIZATIONS)),$(T_STDLIBS_CXX)) \
-Wl$(COMMA)--end-group \
, \
-Wl$(COMMA)--start-group \
$(foreach lib,$(LINKED_STATIC_LIBS),$(call gb_StaticLibrary_get_target,$(lib))) \
$(T_LIBS) \
+ $(if $(CXXOBJECTS)$(GENCXXOBJECTS)$(EXTRAOBJECTLISTS)$(filter-out XTRUE,X$(ENABLE_RUNTIME_OPTIMIZATIONS)),$(T_STDLIBS_CXX)) \
-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)))))) \