summaryrefslogtreecommitdiffstats
path: root/Utilities/cmlibuv/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Utilities/cmlibuv/CMakeLists.txt')
-rw-r--r--Utilities/cmlibuv/CMakeLists.txt15
1 files changed, 12 insertions, 3 deletions
diff --git a/Utilities/cmlibuv/CMakeLists.txt b/Utilities/cmlibuv/CMakeLists.txt
index 6632a1e..b6e7941 100644
--- a/Utilities/cmlibuv/CMakeLists.txt
+++ b/Utilities/cmlibuv/CMakeLists.txt
@@ -221,13 +221,22 @@ if(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
__EXTENSIONS__
)
if(CMAKE_SYSTEM_VERSION STREQUAL "5.10")
+ set(CMAKE_C_STANDARD 90)
+ if(CMAKE_VERSION VERSION_LESS 3.8.20170504 AND CMAKE_C_COMPILER_ID STREQUAL "SunPro" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 5.14)
+ # The running version of CMake does not know how to add this flag.
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c90")
+ endif()
list(APPEND uv_defines
_XOPEN_SOURCE=500
)
- if(CMAKE_C_STANDARD)
- set(CMAKE_C_STANDARD 90)
- endif()
else()
+ if(NOT CMAKE_C_STANDARD OR CMAKE_C_STANDARD EQUAL 90)
+ set(CMAKE_C_STANDARD 11)
+ endif()
+ if(CMAKE_VERSION VERSION_LESS 3.8.20170505 AND CMAKE_C_COMPILER_ID STREQUAL "SunPro" AND CMAKE_C_COMPILER_VERSION VERSION_LESS 5.14)
+ # The running version of CMake does not know how to add this flag.
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -xc99")
+ endif()
list(APPEND uv_defines
_XOPEN_SOURCE=600
)