diff options
Diffstat (limited to 'mesonbuild/compilers')
-rw-r--r-- | mesonbuild/compilers/c.py | 6 | ||||
-rw-r--r-- | mesonbuild/compilers/cpp.py | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/mesonbuild/compilers/c.py b/mesonbuild/compilers/c.py index 87f48e6..a9ad585 100644 --- a/mesonbuild/compilers/c.py +++ b/mesonbuild/compilers/c.py @@ -108,6 +108,10 @@ class ClangCCompiler(ClangCompiler, CCompiler): opts.update({'c_std': coredata.UserComboOption('C language standard to use', ['none'] + c_stds + g_stds, 'none')}) + if self.info.is_windows() or self.info.is_cygwin(): + opts.update({ + 'c_winlibs': coredata.UserArrayOption('Standard Win libraries to link against', + gnu_winlibs), }) return opts def get_option_compile_args(self, options): @@ -118,6 +122,8 @@ class ClangCCompiler(ClangCompiler, CCompiler): return args def get_option_link_args(self, options): + if self.info.is_windows() or self.info.is_cygwin(): + return options['c_winlibs'].value[:] return [] diff --git a/mesonbuild/compilers/cpp.py b/mesonbuild/compilers/cpp.py index bdca596..26b34e3 100644 --- a/mesonbuild/compilers/cpp.py +++ b/mesonbuild/compilers/cpp.py @@ -174,6 +174,10 @@ class ClangCPPCompiler(ClangCompiler, CPPCompiler): ['none', 'c++98', 'c++03', 'c++11', 'c++14', 'c++17', 'c++1z', 'c++2a', 'gnu++11', 'gnu++14', 'gnu++17', 'gnu++1z', 'gnu++2a'], 'none')}) + if self.info.is_windows() or self.info.is_cygwin(): + opts.update({ + 'cpp_winlibs': coredata.UserArrayOption('Standard Win libraries to link against', + gnu_winlibs), }) return opts def get_option_compile_args(self, options): @@ -190,6 +194,8 @@ class ClangCPPCompiler(ClangCompiler, CPPCompiler): return args def get_option_link_args(self, options): + if self.info.is_windows() or self.info.is_cygwin(): + return options['cpp_winlibs'].value[:] return [] def language_stdlib_only_link_flags(self): |