diff options
author | Xavier Claessens <xavier.claessens@collabora.com> | 2021-09-30 11:54:43 -0400 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2021-10-10 23:15:18 +0300 |
commit | 928078982c8643bffd95a8da06a1b4494fe87e2b (patch) | |
tree | 1e8e50892e5f329927d9196cea85e66801c1af03 /mesonbuild/interpreter/interpreter.py | |
parent | 31bea202c9dc9d288d787f0073f0e221971669ba (diff) | |
download | meson-928078982c8643bffd95a8da06a1b4494fe87e2b.zip meson-928078982c8643bffd95a8da06a1b4494fe87e2b.tar.gz meson-928078982c8643bffd95a8da06a1b4494fe87e2b.tar.bz2 |
Add --vsenv command line option and active VS only when needed
Diffstat (limited to 'mesonbuild/interpreter/interpreter.py')
-rw-r--r-- | mesonbuild/interpreter/interpreter.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/mesonbuild/interpreter/interpreter.py b/mesonbuild/interpreter/interpreter.py index b82525f..9f2c705 100644 --- a/mesonbuild/interpreter/interpreter.py +++ b/mesonbuild/interpreter/interpreter.py @@ -1115,6 +1115,16 @@ external dependencies (including libraries) must go to "dependencies".''') mlog.log('Project name:', mlog.bold(proj_name)) mlog.log('Project version:', mlog.bold(self.project_version)) + if not self.is_subproject(): + # We have to activate VS before adding languages and before calling + # self.set_backend() otherwise it wouldn't be able to detect which + # vs backend version we need. But after setting default_options in case + # the project sets vs backend by default. + backend = self.coredata.get_option(OptionKey('backend')) + force_vsenv = self.user_defined_options.vsenv or backend.startswith('vs') + if mesonlib.setup_vsenv(force_vsenv): + self.build.need_vsenv = True + self.add_languages(proj_langs, True, MachineChoice.HOST) self.add_languages(proj_langs, False, MachineChoice.BUILD) |