aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2020-10-17 17:11:42 +0300
committerDylan Baker <dylan@pnwbakers.com>2020-11-12 10:03:14 -0800
commit333e0aeef4b2cc7be82a89c3a1a5a4a4b9af2b53 (patch)
treeb6b89ad5d4ae92fb1bd64f0fbe3c78f2bb194308 /mesonbuild
parentdffd66e0ff2d3c91003fc4c361382c473ed11cfa (diff)
downloadmeson-333e0aeef4b2cc7be82a89c3a1a5a4a4b9af2b53.zip
meson-333e0aeef4b2cc7be82a89c3a1a5a4a4b9af2b53.tar.gz
meson-333e0aeef4b2cc7be82a89c3a1a5a4a4b9af2b53.tar.bz2
Make MSVC accept gnu11 as a language standard version. Closes: #7611.
Fixes: #7611
Diffstat (limited to 'mesonbuild')
-rw-r--r--mesonbuild/compilers/c.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/mesonbuild/compilers/c.py b/mesonbuild/compilers/c.py
index 95c4698..8d0a52b 100644
--- a/mesonbuild/compilers/c.py
+++ b/mesonbuild/compilers/c.py
@@ -428,7 +428,11 @@ class VisualStudioCCompiler(MSVCCompiler, VisualStudioLikeCCompilerMixin, CCompi
def get_options(self) -> 'OptionDictType':
opts = super().get_options()
- c_stds = ['none', 'c89', 'c99', 'c11']
+ c_stds = ['none', 'c89', 'c99', 'c11',
+ # Need to have these to be compatible with projects
+ # that set c_std to e.g. gnu99.
+ # https://github.com/mesonbuild/meson/issues/7611
+ 'gnu89', 'gnu90', 'gnu9x', 'gnu99', 'gnu1x', 'gnu11']
opts.update({
'std': coredata.UserComboOption(
'C language standard to use',
@@ -442,8 +446,8 @@ class VisualStudioCCompiler(MSVCCompiler, VisualStudioLikeCCompilerMixin, CCompi
args = []
std = options['std']
# As of MVSC 16.7, /std:c11 is the only valid C standard option.
- if std.value in {'c11'}:
- args.append('/std:' + std.value)
+ if std.value in {'c11', 'gnu11'}:
+ args.append('/std:c11')
return args