vtkParseJava fails to build gcc 4.9.4 / gcc-4.8.5
Latest VTK fails to build with the following error:
[2/19508] Building C object VTK/Wrapping/Tools/CMakeFiles/ParseJava.dir/vtkParseJava.c.o
FAILED: VTK/Wrapping/Tools/CMakeFiles/ParseJava.dir/vtkParseJava.c.o
/opt/jenkins/jenkins-tools/gcc-4.9.4/bin/gcc -IVTK/Wrapping/Tools -I/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools -fPIC -O3 -DNDEBUG -fPIE -MD -MT VTK/Wrapping/Tools/CMakeFiles/ParseJava.dir/vtkParseJava.c.o -MF VTK/Wrapping/Tools/CMakeFiles/ParseJava.dir/vtkParseJava.c.o.d -o VTK/Wrapping/Tools/CMakeFiles/ParseJava.dir/vtkParseJava.c.o -c /opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c
/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c: In function ‘outputParamDeclarationsNative’:
/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c:698:3: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
for (int i = 0; i < thisFunction->NumberOfArguments; i++)
^
/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c:698:3: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c: In function ‘outputParamDeclarations’:
/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c:731:3: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
for (int i = 0; i < thisFunction->NumberOfArguments; i++)
^
/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c: In function ‘outputFunctionParams’:
/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c:764:3: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
for (int i = 0; i < thisFunction->NumberOfArguments; i++)
^
/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c: In function ‘outputStringConversionVariables’:
/opt/jenkins/workspace/-paraview-nightly/build/superbuild/paraview/src/VTK/Wrapping/Tools/vtkParseJava.c:795:3: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
for (int i = 0; i < thisFunction->NumberOfArguments; i++)
^
Adding set(CMAKE_C_STANDARD 99)
to the top of VTK/Wrapping/Tools/CMakeLists.txt resolved the issue.
FYI: @ben.boeckel
Edited by chart3388