From 15c5595bb144d8018ebd922c6914772958cbf2b2 Mon Sep 17 00:00:00 2001 From: Jose Fonseca Date: Fri, 20 Mar 2015 06:53:09 +0000 Subject: [PATCH] scons: Ensure inttypes.h is always pre-included on MSVC. It's a bit hackish couldn't find another solution. See code comment for details. The warning is useful, so universally disabling doesn't sound a good idea. Fixes warning C4005: 'xxx' : macro redefinition Reviewed-by: Brian Paul --- scons/gallium.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/scons/gallium.py b/scons/gallium.py index 70504123d09..b4df1451f20 100755 --- a/scons/gallium.py +++ b/scons/gallium.py @@ -642,6 +642,13 @@ def generate(env): # disable all MSVC extensions. '-DYY_USE_CONST=', ]) + # Flex relies on __STDC_VERSION__>=199901L to decide when to include + # C99 inttypes.h. We always have inttypes.h available with MSVC + # (either the one bundled with MSVC 2013, or the one we bundle + # ourselves), but we can't just define __STDC_VERSION__ without + # breaking stuff, as MSVC doesn't fully support C99. There's also no + # way to premptively include stdint. + env.Append(CCFLAGS = ['-FIinttypes.h']) if host_platform.system() == 'Windows': # Prefer winflexbison binaries, as not only they are easier to install # (no additional dependencies), but also better Windows support. -- 2.30.2