From 1c0570906c644df619ce463b9c3715dd492e1c8f Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Sun, 10 Dec 2017 17:54:28 -0500 Subject: pkgconfig: Allow passing Dependency objects to library(_private) Special case ThreadDependency by taking compiler's flags and PkgConfigDependency by adding them in requires(.private) instead. For other Dependency objects just take their link_args and compile_args. Closes #2725 --- mesonbuild/dependencies/misc.py | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'mesonbuild/dependencies/misc.py') diff --git a/mesonbuild/dependencies/misc.py b/mesonbuild/dependencies/misc.py index 6ffa42a..e7eac1b 100644 --- a/mesonbuild/dependencies/misc.py +++ b/mesonbuild/dependencies/misc.py @@ -416,6 +416,7 @@ class MPIDependency(ExternalDependency): self.link_args = pkgdep.get_link_args() self.version = pkgdep.get_version() self.is_found = True + self.pcdep = pkgdep break except Exception: pass @@ -617,6 +618,7 @@ class Python3Dependency(ExternalDependency): self.link_args = self.pkgdep.get_link_args() self.version = self.pkgdep.get_version() self.is_found = True + self.pcdep = self.pkgdep return else: self.pkgdep = None @@ -750,6 +752,7 @@ class PcapDependency(ExternalDependency): self.compile_args = pcdep.get_compile_args() self.link_args = pcdep.get_link_args() self.version = pcdep.get_version() + self.pcdep = pcdep return except Exception as e: mlog.debug('Pcap not found via pkgconfig. Trying next, error was:', str(e)) @@ -792,6 +795,7 @@ class CupsDependency(ExternalDependency): self.compile_args = pcdep.get_compile_args() self.link_args = pcdep.get_link_args() self.version = pcdep.get_version() + self.pcdep = pcdep return except Exception as e: mlog.debug('cups not found via pkgconfig. Trying next, error was:', str(e)) @@ -841,6 +845,7 @@ class LibWmfDependency(ExternalDependency): self.compile_args = pcdep.get_compile_args() self.link_args = pcdep.get_link_args() self.version = pcdep.get_version() + self.pcdep = pcdep return except Exception as e: mlog.debug('LibWmf not found via pkgconfig. Trying next, error was:', str(e)) -- cgit v1.1