Compiling with -ansi makes a lot of important POSIX (standard UNIX) facilities
authorJohn Tsiombikas <nuclear@member.fsf.org>
Wed, 14 May 2014 18:28:53 +0000 (18:28 +0000)
committerJohn Tsiombikas <nuclear@member.fsf.org>
Wed, 14 May 2014 18:28:53 +0000 (18:28 +0000)
unavailable. This was masked until recently by an incorrect conditional in the
CMakeLists.txt file, that looked like it would use -ansi on anything other than
android, but it didn't actually use it anywhere. As soon as that was fixed, and
-ansi started being used, build broke on linux.

The intention of the -ansi flag was to help catch portability-reducing mistakes
in the code, so instead of removing it completely I used -pedantic in its place,
which produces a lot of warnings for not strictly ISO/ANSI compliant code that
relies on compiler-specific features.

git-svn-id: svn+ssh://svn.code.sf.net/p/freeglut/code/trunk/freeglut/freeglut@1681 7f0cb862-5218-0410-a997-914c9d46530a

CMakeLists.txt

index 6feb753..65fa546 100644 (file)
@@ -238,7 +238,7 @@ IF(CMAKE_COMPILER_IS_GNUCC)
   SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
   IF(NOT(ANDROID OR BLACKBERRY))
     # not setting -ansi as EGL/KHR headers doesn't support it
-    SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi")
+    SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pedantic")
   ENDIF()
 ENDIF(CMAKE_COMPILER_IS_GNUCC)