solenv/gbuild/LinkTarget.mk            |    3 ++-
 solenv/gbuild/PrecompiledHeaders.mk    |    3 ++-
 solenv/gbuild/platform/com_GCC_defs.mk |    2 ++
 solenv/gbuild/platform/com_MSC_defs.mk |    5 +++++
 4 files changed, 11 insertions(+), 2 deletions(-)

New commits:
commit b2c5944d38f107d77d647bca114fae4e940edcbf
Author:     Luboš Luňák <l.lu...@centrum.cz>
AuthorDate: Mon Nov 29 14:44:17 2021 +0100
Commit:     Luboš Luňák <l.lu...@collabora.com>
CommitDate: Mon Nov 29 19:46:48 2021 +0100

    fix shared PCH with clang-cl
    
    clang-cl does not understand -include CLI option. It also warns
    about #define's differing in the shared PCH that do not matter,
    so disable that.
    
    Change-Id: I9f6d7a8a28a8d290a8bf783f68c629c06cefbf41
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126053
    Tested-by: Jenkins
    Reviewed-by: Luboš Luňák <l.lu...@collabora.com>

diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index b0b716ace55b..783f6022abe6 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -1938,7 +1938,8 @@ endef
 # call 
gb_LinkTarget__reuse_precompiled_header_workarounds,linktarget,pchcxxfile,pchtarget,linktargetmakefilename
 define gb_LinkTarget__reuse_precompiled_header_workarounds
 ifeq ($(COM_IS_CLANG),TRUE)
-$(call gb_LinkTarget_add_defs,$(1),-include $(SRCDIR)/pch/inc/clangfix.hxx)
+$(call 
gb_LinkTarget_add_defs,$(1),$(gb_CXXFLAGS_include)$(SRCDIR)/pch/inc/clangfix.hxx)
+$(call gb_LinkTarget_add_defs,$(1),$(gb_CXXFLAGS_no_pch_warnings))
 endif
 $(if $(filter precompiled_system,$(3)), $(call 
gb_LinkTarget_add_defs,$(1),-DBOOST_ALL_NO_LIB))
 endef
diff --git a/solenv/gbuild/PrecompiledHeaders.mk 
b/solenv/gbuild/PrecompiledHeaders.mk
index 3b81cc77f365..bc95f07b47e5 100644
--- a/solenv/gbuild/PrecompiledHeaders.mk
+++ b/solenv/gbuild/PrecompiledHeaders.mk
@@ -159,7 +159,8 @@ gb_PrecompiledHeader_ignore_flags_system := \
 -DGLM_FORCE_CTOR_INIT \
 -DVCL_INTERNALS \
 -DZLIB_CONST \
--include $(SRCDIR)/pch/inc/clangfix.hxx \
+$(gb_CXXFLAGS_include)$(SRCDIR)/pch/inc/clangfix.hxx \
+$(gb_CXXFLAGS_no_pch_warnings) \
 $(gb_PrecompiledHeader_ignore_flags_for_flags_file) \
 
 # Probably also update pch/inc/clangfix.hxx if you extend the list.
diff --git a/solenv/gbuild/platform/com_GCC_defs.mk 
b/solenv/gbuild/platform/com_GCC_defs.mk
index 589c9eedc823..e0c9dfc3d58f 100644
--- a/solenv/gbuild/platform/com_GCC_defs.mk
+++ b/solenv/gbuild/platform/com_GCC_defs.mk
@@ -107,6 +107,8 @@ endif
 
 gb_CXXFLAGS_Wundef = -Wno-undef
 
+gb_CXXFLAGS_include := -include$(gb_SPACE)
+
 ifeq ($(strip $(gb_GCOV)),YES)
 gb_CFLAGS_COMMON += -fprofile-arcs -ftest-coverage
 gb_CXXFLAGS_COMMON += -fprofile-arcs -ftest-coverage
diff --git a/solenv/gbuild/platform/com_MSC_defs.mk 
b/solenv/gbuild/platform/com_MSC_defs.mk
index 892fa3867ba8..c7f302c0b5d1 100644
--- a/solenv/gbuild/platform/com_MSC_defs.mk
+++ b/solenv/gbuild/platform/com_MSC_defs.mk
@@ -166,6 +166,11 @@ ifeq ($(HAVE_DLLEXPORTINLINES),TRUE)
 gb_CXXFLAGS += -Zc:dllexportInlines-
 endif
 
+gb_CXXFLAGS_include := -FI
+ifeq ($(COM_IS_CLANG),TRUE)
+gb_CXXFLAGS_no_pch_warnings := -Wno-clang-cl-pch
+endif
+
 ifneq ($(COM_IS_CLANG),TRUE)
 
 # clang-cl doesn't support -Wv:18 for now

Reply via email to