summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2022-12-02 12:32:11 +0100
committerChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2022-12-05 13:53:31 +0000
commit59d868b9eddebb19b0c40d7c1ca70265fc9df137 (patch)
tree9ac3eb79adc9f27dbf6629fa5aa927e88b0cf205
parent042bf6f00c5e01b44ec1d95371ad809db4c5269f (diff)
gb_LinkTarget_use_clang: only use flto=thin with clang, not with gcc
The code always used flto=thin, but gcc doesn't know that switch and fails. The gb_Library_use_clang used by Skia is actually a prefer clang option, and the corresponding gb_LinkTarget_use_clang macro accounts for that by using "$(or clangvalue,gccvalue)" to define variables. This is OK for stuff that defaults to empty value when no clang is found on the system, but gb_CLANG_LTOFLAGS is defined unconditionally (in com_GCC_defs.mk), so using the $(or..) function is completly bypassed, always using the flto=thin switch. Change-Id: I903e5e4818b8ecbe63ed85952b8741140972e8d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143572 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
-rw-r--r--solenv/gbuild/LinkTarget.mk2
1 files changed, 1 insertions, 1 deletions
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index 6a0e7580ef22..cc98d18bd4b7 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -2196,7 +2196,7 @@ $(call gb_LinkTarget_get_target,$(1)) : T_CC := $(LO_CLANG_CC)
$(call gb_LinkTarget_get_target,$(1)) : T_CXX := $(LO_CLANG_CXX)
$(call gb_LinkTarget_get_target,$(1)) : T_USE_CLANG := $(true)
$(call gb_LinkTarget_get_target,$(1)) : T_USE_LD := $(or $(CLANG_USE_LD),$(USE_LD))
-$(call gb_LinkTarget_get_target,$(1)) : T_LTOFLAGS := $(or $(gb_CLANG_LTOFLAGS),$(gb_LTOFLAGS))
+$(call gb_LinkTarget_get_target,$(1)) : T_LTOFLAGS := $(if $(LO_CLANG_CXX),$(gb_CLANG_LTOFLAGS),$(gb_LTOFLAGS))
endef
# call gb_LinkTarget_use_vclmain,linktarget