aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/dependencies/dev.py
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2020-01-17 12:00:16 -0800
committerDylan Baker <dylan@pnwbakers.com>2020-01-31 09:22:25 -0800
commitc1a3b37ab7e4ccf3a946ee4ba6da81a4c230ecc4 (patch)
tree73e1b68788ca9b5e008f90d5f4555a7ca4baaf21 /mesonbuild/dependencies/dev.py
parentd87955f9905f569588baabef1de76a245ff92b2e (diff)
downloadmeson-c1a3b37ab7e4ccf3a946ee4ba6da81a4c230ecc4.zip
meson-c1a3b37ab7e4ccf3a946ee4ba6da81a4c230ecc4.tar.gz
meson-c1a3b37ab7e4ccf3a946ee4ba6da81a4c230ecc4.tar.bz2
dependencies: Add a zlib system dependency for windows
Diffstat (limited to 'mesonbuild/dependencies/dev.py')
-rw-r--r--mesonbuild/dependencies/dev.py22
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():