From db41e5b8e4fc20027a4fdfd1b0bbe9985ee5ffb2 Mon Sep 17 00:00:00 2001 From: ruki Date: Mon, 17 Jul 2023 22:39:09 +0800 Subject: fix set_pmheader --- tests/projects/objc++/precompiled_header/xmake.lua | 2 +- xmake/modules/core/tools/gcc.lua | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/tests/projects/objc++/precompiled_header/xmake.lua b/tests/projects/objc++/precompiled_header/xmake.lua index 55382962d..5251ab04c 100644 --- a/tests/projects/objc++/precompiled_header/xmake.lua +++ b/tests/projects/objc++/precompiled_header/xmake.lua @@ -3,6 +3,6 @@ add_rules("mode.debug", "mode.release") target("main") set_kind("binary") set_languages("cxx11") - set_pmxxheader("src/header.h") + set_pmheader("src/header.h") add_files("src/*.mm", "src/*.c", "*.mm") diff --git a/xmake/modules/core/tools/gcc.lua b/xmake/modules/core/tools/gcc.lua index 35b296ef0..cfd5fac5c 100644 --- a/xmake/modules/core/tools/gcc.lua +++ b/xmake/modules/core/tools/gcc.lua @@ -651,13 +651,19 @@ function _compargv_pch(self, pcheaderfile, pcoutputfile, flags) end end - -- compile header.h as c++? + -- set the language of precompiled header? if self:kind() == "cxx" then table.insert(pchflags, "-x") table.insert(pchflags, "c++-header") + elseif self:kind() == "cc" then + table.insert(pchflags, "-x") + table.insert(pchflags, "c-header") elseif self:kind() == "mxx" then table.insert(pchflags, "-x") table.insert(pchflags, "objective-c++-header") + elseif self:kind() == "mm" then + table.insert(pchflags, "-x") + table.insert(pchflags, "objective-c-header") end -- make the compile arguments list -- cgit v1.3.1