solenv/gbuild/LinkTarget.mk |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 59d868b9eddebb19b0c40d7c1ca70265fc9df137
Author:     Christian Lohmaier <lohmaier+libreoff...@googlemail.com>
AuthorDate: Fri Dec 2 12:32:11 2022 +0100
Commit:     Christian Lohmaier <lohmaier+libreoff...@googlemail.com>
CommitDate: Mon Dec 5 13:53:31 2022 +0000

    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+libreoff...@googlemail.com>

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

Reply via email to