Explorar o código

CMake: Support cmake down to 2.8.5

Max Bruckner %!s(int64=8) %!d(string=hai) anos
pai
achega
30e1e7af7c
Modificáronse 2 ficheiros con 16 adicións e 4 borrados
  1. 6 2
      CMakeLists.txt
  2. 10 2
      tests/CMakeLists.txt

+ 6 - 2
CMakeLists.txt

@@ -1,5 +1,5 @@
 set(CMAKE_LEGACY_CYGWIN_WIN32 0)
-cmake_minimum_required(VERSION 2.8)
+cmake_minimum_required(VERSION 2.8.5)
 
 include(GNUInstallDirs)
 
@@ -172,7 +172,11 @@ if(ENABLE_CJSON_TEST)
 
     # Disable -fsanitize=float-divide-by-zero for cJSON_test
     if (FLAG_SUPPORTED_fsanitizefloatdividebyzero)
-        target_compile_options(${TEST_CJSON} PRIVATE "-fno-sanitize=float-divide-by-zero")
+        if ("${CMAKE_VERSION}" VERSION_LESS "2.8.12")
+            set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-sanitize=float-divide-by-zero")
+        else()
+            target_compile_options(${TEST_CJSON} PRIVATE "-fno-sanitize=float-divide-by-zero")
+        endif()
     endif()
 
     if(ENABLE_CJSON_UTILS)

+ 10 - 2
tests/CMakeLists.txt

@@ -3,11 +3,19 @@ if(ENABLE_CJSON_TEST)
 
     # Disable -Werror for Unity
     if (FLAG_SUPPORTED_Werror)
-        target_compile_options(unity PRIVATE "-Wno-error")
+        if ("${CMAKE_VERSION}" VERSION_LESS "2.8.12")
+            set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error")
+        else()
+            target_compile_options(unity PRIVATE "-Wno-error")
+        endif()
     endif()
     # Disable -fvisibility=hidden for Unity
     if (FLAG_SUPPORTED_fvisibilityhidden)
-        target_compile_options(unity PRIVATE "-fvisibility=default")
+        if ("${CMAKE_VERSION}" VERSION_LESS "2.8.12")
+            set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=default")
+        else()
+            target_compile_options(unity PRIVATE "-fvisibility=default")
+        endif()
     endif()
 
     #copy test files