summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorLuboš Luňák <l.lunak@collabora.com>2021-10-11 22:28:06 +0200
committerLuboš Luňák <l.lunak@collabora.com>2021-10-11 23:33:30 +0200
commit5b2848413883565c48d312c96daf8fbca25405d8 (patch)
tree330ef4b24f688248bdf65c6cfeeb9c31183c6cc9 /solenv
parent9402579be9d9a8888af03291edd2478a716f901a (diff)
clang does not support -flto=<number>
This may happen when building with GCC when Clang is used for Skia and --with-parallelism is in effect. Change-Id: Ic52dbbcf53253ed73413af4ea8254b000eee72d6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123430 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Diffstat (limited to 'solenv')
-rw-r--r--solenv/gbuild/LinkTarget.mk12
-rw-r--r--solenv/gbuild/platform/com_GCC_class.mk4
-rw-r--r--solenv/gbuild/platform/com_GCC_defs.mk2
-rw-r--r--solenv/gbuild/platform/solaris.mk2
-rw-r--r--solenv/gbuild/platform/unxgcc.mk2
5 files changed, 13 insertions, 9 deletions
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index e047eeff2cc0..6c08c603267a 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -91,7 +91,7 @@ $(call gb_Helper_abbreviate_dirs,\
ICECC=no CCACHE_DISABLE=1 \
$(gb_CC) \
$(DEFS) \
- $(gb_LTOFLAGS) \
+ $(T_LTOFLAGS) \
$(if $(VISIBILITY),,$(gb_VISIBILITY_FLAGS)) \
$(if $(WARNINGS_NOT_ERRORS),$(if $(ENABLE_WERROR),$(if $(PLUGIN_WARNINGS_AS_ERRORS),$(gb_COMPILER_PLUGINS_WARNINGS_AS_ERRORS))),$(gb_CFLAGS_WERROR)) \
$(if $(3),$(gb_COMPILER_PLUGINS)) \
@@ -106,7 +106,7 @@ $(call gb_Helper_abbreviate_dirs,\
ICECC=no CCACHE_DISABLE=1 \
$(gb_CC) \
$(DEFS) \
- $(gb_LTOFLAGS) \
+ $(T_LTOFLAGS) \
$(if $(VISIBILITY),,$(gb_VISIBILITY_FLAGS)) \
$(if $(WARNINGS_NOT_ERRORS),$(if $(ENABLE_WERROR),$(if $(PLUGIN_WARNINGS_AS_ERRORS),$(gb_COMPILER_PLUGINS_WARNINGS_AS_ERRORS))),$(gb_CFLAGS_WERROR)) \
$(if $(3),$(gb_COMPILER_PLUGINS)) \
@@ -121,7 +121,7 @@ $(call gb_Helper_abbreviate_dirs,\
ICECC=no CCACHE_DISABLE=1 \
$(gb_CXX) \
$(DEFS) \
- $(gb_LTOFLAGS) \
+ $(T_LTOFLAGS) \
$(if $(VISIBILITY),,$(gb_VISIBILITY_FLAGS)) \
$(if $(WARNINGS_NOT_ERRORS),$(if $(ENABLE_WERROR),$(if $(PLUGIN_WARNINGS_AS_ERRORS),$(gb_COMPILER_PLUGINS_WARNINGS_AS_ERRORS))),$(gb_CFLAGS_WERROR)) \
$(if $(3),$(gb_COMPILER_PLUGINS)) \
@@ -136,7 +136,7 @@ $(call gb_Helper_abbreviate_dirs,\
ICECC=no CCACHE_DISABLE=1 \
$(gb_CXX) \
$(DEFS) \
- $(gb_LTOFLAGS) \
+ $(T_LTOFLAGS) \
$(if $(VISIBILITY),,$(gb_VISIBILITY_FLAGS)) \
$(if $(WARNINGS_NOT_ERRORS),$(if $(ENABLE_WERROR),$(if $(PLUGIN_WARNINGS_AS_ERRORS),$(gb_COMPILER_PLUGINS_WARNINGS_AS_ERRORS))),$(gb_CFLAGS_WERROR)) \
$(if $(3),$(gb_COMPILER_PLUGINS)) \
@@ -151,7 +151,7 @@ $(call gb_Helper_abbreviate_dirs,\
ICECC=no CCACHE_DISABLE=1 \
$(gb_CXX) \
$(DEFS) \
- $(gb_LTOFLAGS) \
+ $(T_LTOFLAGS) \
$(if $(VISIBILITY),,$(gb_VISIBILITY_FLAGS)) \
$(if $(WARNINGS_NOT_ERRORS),$(if $(ENABLE_WERROR),$(if $(PLUGIN_WARNINGS_AS_ERRORS),$(gb_COMPILER_PLUGINS_WARNINGS_AS_ERRORS))),$(gb_CFLAGS_WERROR)) \
$(if $(3),$(gb_COMPILER_PLUGINS)) \
@@ -971,6 +971,7 @@ $(call gb_LinkTarget_get_target,$(1)) : T_FORCE_COMPILE := $(if $(call gb_LinkTa
$(call gb_LinkTarget_get_target,$(1)) : T_CC :=
$(call gb_LinkTarget_get_target,$(1)) : T_CXX :=
$(call gb_LinkTarget_get_target,$(1)) : T_USE_LD := $(USE_LD)
+$(call gb_LinkTarget_get_target,$(1)) : T_LTOFLAGS := $(gb_LTOFLAGS)
ifeq ($(gb_FULLDEPS),$(true))
ifeq (depcache:,$(filter depcache,$(.FEATURES)):$(gb_PARTIAL_BUILD))
@@ -1985,6 +1986,7 @@ define gb_LinkTarget_use_clang
$(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_LD := $(or $(CLANG_USE_LD),$(USE_LD))
+$(call gb_LinkTarget_get_target,$(1)) : T_LTOFLAGS := $(or $(gb_CLANG_LTOFLAGS),$(gb_LTOFLAGS))
endef
# call gb_LinkTarget_use_glxtest,linktarget,add_libs
diff --git a/solenv/gbuild/platform/com_GCC_class.mk b/solenv/gbuild/platform/com_GCC_class.mk
index 9407488c5c4d..aa3f94ef785d 100644
--- a/solenv/gbuild/platform/com_GCC_class.mk
+++ b/solenv/gbuild/platform/com_GCC_class.mk
@@ -42,7 +42,7 @@ $(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $(1)) $(dir $(4)) && cd $(SRCDIR) && \
$(gb_CC) \
-x assembler-with-cpp \
- $(gb_LTOFLAGS) \
+ $(T_LTOFLAGS) \
$(gb_AFLAGS) \
-c $(3) \
-o $(1)) \
@@ -73,7 +73,7 @@ $(call gb_Helper_abbreviate_dirs,\
$(if $(5),$(gb_COMPILER_PLUGINS_SETUP)) \
$(call gb_CObject__compiler,$(3),$(7)) \
$(DEFS) \
- $(gb_LTOFLAGS) \
+ $(T_LTOFLAGS) \
$(if $(VISIBILITY),,$(gb_VISIBILITY_FLAGS)) \
$(if $(WARNINGS_NOT_ERRORS),$(if $(ENABLE_WERROR),$(if $(PLUGIN_WARNINGS_AS_ERRORS),$(gb_COMPILER_PLUGINS_WARNINGS_AS_ERRORS))),$(gb_CFLAGS_WERROR)) \
$(if $(5),$(gb_COMPILER_PLUGINS)) \
diff --git a/solenv/gbuild/platform/com_GCC_defs.mk b/solenv/gbuild/platform/com_GCC_defs.mk
index 0243ca83961c..619e9a691602 100644
--- a/solenv/gbuild/platform/com_GCC_defs.mk
+++ b/solenv/gbuild/platform/com_GCC_defs.mk
@@ -186,6 +186,8 @@ gb_LTOPLUGINFLAGS := --plugin $(if $(LD_PLUGIN),$(LD_PLUGIN),LLVMgold.so)
endif
else
gb_LTOFLAGS := -flto$(if $(filter-out 0,$(PARALLELISM)),=$(PARALLELISM)) -fuse-linker-plugin -O2
+# clang does not support -flto=<number>
+gb_CLANG_LTOFLAGS := -flto=thin
endif
endif
diff --git a/solenv/gbuild/platform/solaris.mk b/solenv/gbuild/platform/solaris.mk
index 829e324a0047..8ce19bc9ae27 100644
--- a/solenv/gbuild/platform/solaris.mk
+++ b/solenv/gbuild/platform/solaris.mk
@@ -112,7 +112,7 @@ define gb_LinkTarget__command_dynamiclink
$(call gb_Helper_abbreviate_dirs,\
$(if $(CXXOBJECTS)$(GENCXXOBJECTS)$(EXTRAOBJECTLISTS),$(gb_CXX),$(gb_CC)) \
$(if $(filter Library CppunitTest,$(TARGETTYPE)),$(gb_Library_TARGETTYPEFLAGS)) \
- $(gb_LTOFLAGS) \
+ $(T_LTOFLAGS) \
$(if $(SOVERSIONSCRIPT),-Wl$(COMMA)-soname=$(notdir $(1)) \
) \
$(subst \d,$$,$(RPATH)) \
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index 21ee9458224b..6fbe4002e883 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -117,7 +117,7 @@ define gb_LinkTarget__command_dynamiclink
$(call gb_Helper_abbreviate_dirs,\
$(if $(CXXOBJECTS)$(GENCXXOBJECTS)$(EXTRAOBJECTLISTS)$(filter-out XTRUE,X$(ENABLE_RUNTIME_OPTIMIZATIONS)),$(or $(T_CXX),$(gb_CXX)) $(gb_CXX_LINKFLAGS),$(or $(T_CC),$(gb_CC))) \
$(if $(filter Library CppunitTest,$(TARGETTYPE)),$(gb_Library_TARGETTYPEFLAGS)) \
- $(gb_LTOFLAGS) \
+ $(T_LTOFLAGS) \
$(if $(SOVERSIONSCRIPT),-Wl$(COMMA)--soname=$(notdir $(1)) \
-Wl$(COMMA)--version-script=$(SOVERSIONSCRIPT)) \
$(subst \d,$$,$(RPATH)) \