diff options
| -rw-r--r-- | xmake/modules/core/tools/gcc.lua | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/xmake/modules/core/tools/gcc.lua b/xmake/modules/core/tools/gcc.lua index 205921400..2c4a5a0a3 100644 --- a/xmake/modules/core/tools/gcc.lua +++ b/xmake/modules/core/tools/gcc.lua @@ -41,11 +41,17 @@ function init(self) , "-DIBAction=void)__attribute__((ibaction)"} -- init shflags - _g.shflags = { "-shared", "-fPIC" } + _g.shflags = { "-shared" } -- init cxflags for the kind: shared _g.shared = {} - _g.shared.cxflags = {"-fPIC"} + _g.shared.cxflags = {} + + -- add -fPIC (need not it on mingw/windows) + if self:has_flags("-fPIC") then + table.insert(_g.shflags, "-fPIC") + table.insert(_g.shared.cxflags, "-fPIC") + end -- suppress warning for clang (gcc -> clang on macosx) if self:has_flags("-Qunused-arguments") then |
