diff options
author | Jon Turney <jon.turney@dronecode.org.uk> | 2017-04-04 12:35:24 +0100 |
---|---|---|
committer | Jon Turney <jon.turney@dronecode.org.uk> | 2017-04-06 22:47:15 +0100 |
commit | 5af98a5ee8e8065932e9ebcaa45dd6fd42a54bdf (patch) | |
tree | 5b2dccd4e43de6fa1f7314490bd2b9b92fc2aef5 /mesonbuild/environment.py | |
parent | 600f16f9f834f14ff411b477674b6112cbac33d1 (diff) | |
download | meson-5af98a5ee8e8065932e9ebcaa45dd6fd42a54bdf.zip meson-5af98a5ee8e8065932e9ebcaa45dd6fd42a54bdf.tar.gz meson-5af98a5ee8e8065932e9ebcaa45dd6fd42a54bdf.tar.bz2 |
Use correct shared library naming for Cygwin
Use correct shared library naming for Cygwin when building and installing
Diffstat (limited to 'mesonbuild/environment.py')
-rw-r--r-- | mesonbuild/environment.py | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py index 7ae53fc..7861612 100644 --- a/mesonbuild/environment.py +++ b/mesonbuild/environment.py @@ -158,7 +158,10 @@ def detect_cpu(compilers): return trial def detect_system(): - return platform.system().lower() + system = platform.system().lower() + if system.startswith('cygwin'): + return 'cygwin' + return system def for_windows(is_cross, env): @@ -173,6 +176,20 @@ def for_windows(is_cross, env): return env.cross_info.config['host_machine']['system'] == 'windows' return False + +def for_cygwin(is_cross, env): + """ + Host machine is cygwin? + + Note: 'host' is the machine on which compiled binaries will run + """ + if not is_cross: + return mesonlib.is_cygwin() + elif env.cross_info.has_host(): + return env.cross_info.config['host_machine']['system'] == 'cygwin' + return False + + def for_darwin(is_cross, env): """ Host machine is Darwin (iOS/OS X)? @@ -257,6 +274,11 @@ class Environment: self.exe_suffix = 'exe' self.object_suffix = 'obj' self.win_libdir_layout = True + elif (not cross and mesonlib.is_cygwin()) \ + or (cross and self.cross_info.has_host() and self.cross_info.config['host_machine']['system'] == 'cygwin'): + self.exe_suffix = 'exe' + self.object_suffix = 'o' + self.win_libdir_layout = True else: self.exe_suffix = '' self.object_suffix = 'o' |