aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/compilers.py
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2016-10-07 20:00:29 +0530
committerNirbheek Chauhan <nirbheek@centricular.com>2016-10-08 01:02:16 +0530
commit67c9e520de4194b06fcfa2609f2036dfd9636217 (patch)
tree5b000e2af316e6b1c4d75e478989d72d9ea92876 /mesonbuild/compilers.py
parentce1393609f0f870ffa1b0634f561613b7b627f0b (diff)
downloadmeson-67c9e520de4194b06fcfa2609f2036dfd9636217.zip
meson-67c9e520de4194b06fcfa2609f2036dfd9636217.tar.gz
meson-67c9e520de4194b06fcfa2609f2036dfd9636217.tar.bz2
compilers: Don't pollute c_args with -fPIC on OS X
It's always enabled and the compiler just ignores all PIC-related arguments. Relatedly, do the same thing for Clang as GCC.
Diffstat (limited to 'mesonbuild/compilers.py')
-rw-r--r--mesonbuild/compilers.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/mesonbuild/compilers.py b/mesonbuild/compilers.py
index 19fb888..c81a599 100644
--- a/mesonbuild/compilers.py
+++ b/mesonbuild/compilers.py
@@ -1934,8 +1934,8 @@ class GnuCompiler:
return defines[define]
def get_pic_args(self):
- if self.gcc_type == GCC_MINGW:
- return [] # On Window gcc defaults to fpic being always on.
+ if self.gcc_type in (GCC_MINGW, GCC_OSX):
+ return [] # On Window and OS X, pic is always on.
return ['-fPIC']
def get_buildtype_args(self, buildtype):
@@ -2059,6 +2059,11 @@ class ClangCompiler():
self.base_options.append('b_lundef')
self.base_options.append('b_asneeded')
+ def get_pic_args(self):
+ if self.clang_type in (CLANG_WIN, CLANG_OSX):
+ return [] # On Window and OS X, pic is always on.
+ return ['-fPIC']
+
def get_buildtype_args(self, buildtype):
return gnulike_buildtype_args[buildtype]
@@ -2174,8 +2179,8 @@ class FortranCompiler(Compiler):
return ' '.join(self.exelist)
def get_pic_args(self):
- if self.gcc_type == GCC_MINGW:
- return [] # On Windows gcc defaults to fpic being always on.
+ if self.gcc_type in (GCC_MINGW, GCC_OSX):
+ return [] # On Window and OS X, pic is always on.
return ['-fPIC']
def get_std_shared_lib_link_args(self):