summaryrefslogtreecommitdiff
path: root/mesonbuild/coredata.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2018-12-27 23:43:35 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2018-12-27 23:43:35 +0200
commit1961e88e0bfb2a95e43810bbb2790264f1fec71a (patch)
tree2cc9c47561b6e5351633685d5ac8f9f5047e9d6d /mesonbuild/coredata.py
parentc4a6b193d4f4043872e5e9f16e75ec76f4582398 (diff)
downloadmeson-crosslib.tar.gz
Default libdir is "lib" when cross compiling. Closes #2535.crosslib
Diffstat (limited to 'mesonbuild/coredata.py')
-rw-r--r--mesonbuild/coredata.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/mesonbuild/coredata.py b/mesonbuild/coredata.py
index d70c23038..4e2f3e008 100644
--- a/mesonbuild/coredata.py
+++ b/mesonbuild/coredata.py
@@ -299,6 +299,7 @@ class CoreData:
# Only to print a warning if it changes between Meson invocations.
self.pkgconf_envvar = os.environ.get('PKG_CONFIG_PATH', '')
self.config_files = self.__load_config_files(options.native_file)
+ self.libdir_cross_fixup()
@staticmethod
def __load_config_files(filenames):
@@ -348,6 +349,13 @@ class CoreData:
raise MesonException('Cannot find specified cross file: ' + filename)
+ def libdir_cross_fixup(self):
+ # By default set libdir to "lib" when cross compiling since
+ # getting the "system default" is always wrong on multiarch
+ # platforms as it gets a value like lib/x86_64-linux-gnu.
+ if self.cross_file is not None:
+ self.builtins['libdir'].value = 'lib'
+
def sanitize_prefix(self, prefix):
if not os.path.isabs(prefix):
raise MesonException('prefix value {!r} must be an absolute path'