aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/linkers.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2020-07-14 20:46:19 +0300
committerGitHub <noreply@github.com>2020-07-14 20:46:19 +0300
commitb6ea3eec1f62ea003b609b77aa1aabe00f4990f5 (patch)
tree6a89a2ba33cc36b80c382802aaa0b7d8aaa00d5a /mesonbuild/linkers.py
parent825ba92b98347cfe470fad605da467e59d699efb (diff)
parent20d405ec18845a18694e4985701dd89523d6dc73 (diff)
downloadmeson-b6ea3eec1f62ea003b609b77aa1aabe00f4990f5.zip
meson-b6ea3eec1f62ea003b609b77aa1aabe00f4990f5.tar.gz
meson-b6ea3eec1f62ea003b609b77aa1aabe00f4990f5.tar.bz2
Merge pull request #7422 from alanc/solaris-fixes
Solaris fixes revisited
Diffstat (limited to 'mesonbuild/linkers.py')
-rw-r--r--mesonbuild/linkers.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/mesonbuild/linkers.py b/mesonbuild/linkers.py
index fe1441e..fa30b9a 100644
--- a/mesonbuild/linkers.py
+++ b/mesonbuild/linkers.py
@@ -1087,7 +1087,13 @@ class SolarisDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
def get_pie_args(self) -> T.List[str]:
# Available in Solaris 11.2 and later
- return ['-z', 'type=pie']
+ pc, stdo, stde = mesonlib.Popen_safe(self.exelist + self._apply_prefix('-zhelp'))
+ for line in (stdo + stde).split('\n'):
+ if '-z type' in line:
+ if 'pie' in line:
+ return ['-z', 'type=pie']
+ break
+ return []
def get_asneeded_args(self) -> T.List[str]:
return self._apply_prefix(['-z', 'ignore'])