diff options
Diffstat (limited to 'mesonbuild')
-rw-r--r-- | mesonbuild/dependencies/base.py | 6 | ||||
-rw-r--r-- | mesonbuild/envconfig.py | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py index d2d115e..ca6b874 100644 --- a/mesonbuild/dependencies/base.py +++ b/mesonbuild/dependencies/base.py @@ -697,6 +697,12 @@ class PkgConfigDependency(ExternalDependency): mlog.debug('PKG_CONFIG_PATH: ' + new_pkg_config_path) env['PKG_CONFIG_PATH'] = new_pkg_config_path + pkg_config_libdir_prop = self.env.properties[self.for_machine].get_pkg_config_libdir() + if pkg_config_libdir_prop: + new_pkg_config_libdir = ':'.join([p for p in pkg_config_libdir_prop]) + env['PKG_CONFIG_LIBDIR'] = new_pkg_config_libdir + mlog.debug('PKG_CONFIG_LIBDIR: ' + new_pkg_config_libdir) + fenv = frozenset(env.items()) targs = tuple(args) cache = PkgConfigDependency.pkgbin_cache diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py index 9b88b66..c275ef2 100644 --- a/mesonbuild/envconfig.py +++ b/mesonbuild/envconfig.py @@ -142,6 +142,12 @@ class Properties(HasEnvVarFallback): def get_sys_root(self) -> T.Optional[T.Union[str, T.List[str]]]: return self.properties.get('sys_root', None) + def get_pkg_config_libdir(self) -> T.Optional[T.List[str]]: + p = self.properties.get('pkg_config_libdir', None) + if p is None: + return p + return mesonlib.listify(p) + def __eq__(self, other: T.Any) -> 'T.Union[bool, NotImplemented]': if isinstance(other, type(self)): return self.properties == other.properties |