aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2019-09-14 05:50:41 +0300
committerGitHub <noreply@github.com>2019-09-14 05:50:41 +0300
commit9e04450eb694c91dcb097a388c7bf4ecc7290545 (patch)
tree1c12131fb21a3c26ab52447a6c14f0949affc169 /mesonbuild
parent47bdea504067d00e9bed522e9575bd2416bfe4ee (diff)
parent3e0279ba9f3a5b7e9cf4f37bc7329a5b9f5f95ed (diff)
downloadmeson-9e04450eb694c91dcb097a388c7bf4ecc7290545.zip
meson-9e04450eb694c91dcb097a388c7bf4ecc7290545.tar.gz
meson-9e04450eb694c91dcb097a388c7bf4ecc7290545.tar.bz2
Merge pull request #5917 from alanc/solaris-fixes
Solaris fixes
Diffstat (limited to 'mesonbuild')
-rw-r--r--mesonbuild/environment.py2
-rw-r--r--mesonbuild/mesonlib.py8
2 files changed, 9 insertions, 1 deletions
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
index b3885b6..e67e744 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
@@ -745,7 +745,7 @@ class Environment:
else:
i = 'GNU ld.bfd'
linker = GnuDynamicLinker(compiler, for_machine, i, prefix, version=v)
- elif 'Solaris' in e:
+ elif 'Solaris' in e or 'Solaris' in o:
linker = SolarisDynamicLinker(
compiler, for_machine, 'solaris', prefix,
version=search_version(e))
diff --git a/mesonbuild/mesonlib.py b/mesonbuild/mesonlib.py
index d5646ed..03fbf02 100644
--- a/mesonbuild/mesonlib.py
+++ b/mesonbuild/mesonlib.py
@@ -708,6 +708,14 @@ def get_library_dirs() -> typing.List[str]:
else:
plat = ''
+ # Solaris puts 32-bit libraries in the main /lib & /usr/lib directories
+ # and 64-bit libraries in platform specific subdirectories.
+ if is_sunos():
+ if machine == 'i86pc':
+ plat = 'amd64'
+ elif machine.startswith('sun4'):
+ plat = 'sparcv9'
+
usr_platdir = Path('/usr/lib/') / plat
if usr_platdir.is_dir():
unixdirs += [str(x) for x in (usr_platdir).iterdir() if x.is_dir()]