diff options
author | Dylan Baker <dylan@pnwbakers.com> | 2020-01-17 12:00:16 -0800 |
---|---|---|
committer | Dylan Baker <dylan@pnwbakers.com> | 2020-01-31 09:22:25 -0800 |
commit | c1a3b37ab7e4ccf3a946ee4ba6da81a4c230ecc4 (patch) | |
tree | 73e1b68788ca9b5e008f90d5f4555a7ca4baaf21 | |
parent | d87955f9905f569588baabef1de76a245ff92b2e (diff) | |
download | meson-c1a3b37ab7e4ccf3a946ee4ba6da81a4c230ecc4.zip meson-c1a3b37ab7e4ccf3a946ee4ba6da81a4c230ecc4.tar.gz meson-c1a3b37ab7e4ccf3a946ee4ba6da81a4c230ecc4.tar.bz2 |
dependencies: Add a zlib system dependency for windows
-rw-r--r-- | mesonbuild/dependencies/dev.py | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/mesonbuild/dependencies/dev.py b/mesonbuild/dependencies/dev.py index 8ba654b..534684b 100644 --- a/mesonbuild/dependencies/dev.py +++ b/mesonbuild/dependencies/dev.py @@ -468,9 +468,27 @@ class ZlibSystemDependency(ExternalDependency): # No need to set includes, # on macos xcode/clang will do that for us. # on freebsd zlib.h is in /usr/include + elif m.is_windows(): + if self.clib_compiler.get_argument_syntax() == 'msvc': + libs = ['zlib1' 'zlib'] + else: + libs = ['z'] + for lib in libs: + l = self.clib_compiler.find_library(lib, environment, []) + h = self.clib_compiler.has_header('zlib.h', '', environment, dependencies=[self]) + if l and h: + self.is_found = True + self.link_args = l + break + else: + return + else: + mlog.debug('Unsupported OS {}'.format(m.system)) + return + + v, _ = self.clib_compiler.get_define('ZLIB_VERSION', '#include <zlib.h>', self.env, [], [self]) + self.version = v.strip('"') - v, _ = self.clib_compiler.get_define('ZLIB_VERSION', '#include <zlib.h>', self.env, [], [self]) - self.version = v.strip('"') @staticmethod def get_methods(): |