mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-05 13:20:47 -06:00
C: Compile when possible with explicit C language flag set
Issue: #14516, #20716
This commit is contained in:
@@ -1,6 +1,8 @@
|
|||||||
include(Compiler/Clang)
|
include(Compiler/Clang)
|
||||||
__compiler_clang(C)
|
__compiler_clang(C)
|
||||||
|
|
||||||
|
set(CMAKE_C_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -x c)
|
||||||
|
|
||||||
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0)
|
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0)
|
||||||
set(CMAKE_C90_STANDARD_COMPILE_OPTION "-std=c90")
|
set(CMAKE_C90_STANDARD_COMPILE_OPTION "-std=c90")
|
||||||
set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-std=gnu90")
|
set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-std=gnu90")
|
||||||
|
|||||||
@@ -8,6 +8,8 @@ endif()
|
|||||||
|
|
||||||
if("x${CMAKE_C_COMPILER_FRONTEND_VARIANT}" STREQUAL "xMSVC")
|
if("x${CMAKE_C_COMPILER_FRONTEND_VARIANT}" STREQUAL "xMSVC")
|
||||||
set(CMAKE_C_CLANG_TIDY_DRIVER_MODE "cl")
|
set(CMAKE_C_CLANG_TIDY_DRIVER_MODE "cl")
|
||||||
|
elseif("x${CMAKE_CXX_COMPILER_FRONTEND_VARIANT}" STREQUAL "xGNU")
|
||||||
|
set(CMAKE_C_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -x c)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 3.4)
|
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 3.4)
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
include(Compiler/GNU)
|
include(Compiler/GNU)
|
||||||
__compiler_gnu(C)
|
__compiler_gnu(C)
|
||||||
|
|
||||||
|
set(CMAKE_C_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -x c)
|
||||||
|
|
||||||
if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.5)
|
if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.5)
|
||||||
set(CMAKE_C90_STANDARD_COMPILE_OPTION "-std=c90")
|
set(CMAKE_C90_STANDARD_COMPILE_OPTION "-std=c90")
|
||||||
set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-std=gnu90")
|
set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-std=gnu90")
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ if("x${CMAKE_C_SIMULATE_ID}" STREQUAL "xMSVC")
|
|||||||
|
|
||||||
else()
|
else()
|
||||||
|
|
||||||
|
set(CMAKE_C_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -x c)
|
||||||
|
|
||||||
if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 15.0.0)
|
if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 15.0.0)
|
||||||
set(CMAKE_C11_STANDARD_COMPILE_OPTION "-std=c11")
|
set(CMAKE_C11_STANDARD_COMPILE_OPTION "-std=c11")
|
||||||
set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu11")
|
set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu11")
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ string(APPEND CMAKE_C_FLAGS_MINSIZEREL_INIT " -DNDEBUG")
|
|||||||
# -qthreaded = Ensures that all optimizations will be thread-safe
|
# -qthreaded = Ensures that all optimizations will be thread-safe
|
||||||
string(APPEND CMAKE_C_FLAGS_INIT " -qthreaded")
|
string(APPEND CMAKE_C_FLAGS_INIT " -qthreaded")
|
||||||
|
|
||||||
|
set(CMAKE_C_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -qsourcetype=c)
|
||||||
|
|
||||||
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 10.1)
|
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 10.1)
|
||||||
set(CMAKE_C90_STANDARD_COMPILE_OPTION "-qlanglvl=stdc89")
|
set(CMAKE_C90_STANDARD_COMPILE_OPTION "-qlanglvl=stdc89")
|
||||||
set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-qlanglvl=extc89")
|
set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-qlanglvl=extc89")
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
include(Compiler/XLClang)
|
include(Compiler/XLClang)
|
||||||
__compiler_xlclang(C)
|
__compiler_xlclang(C)
|
||||||
|
|
||||||
|
set(CMAKE_C_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -x c)
|
||||||
|
|
||||||
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.1)
|
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.1)
|
||||||
set(CMAKE_C90_STANDARD_COMPILE_OPTION "-std=c89")
|
set(CMAKE_C90_STANDARD_COMPILE_OPTION "-std=c89")
|
||||||
set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-std=gnu89")
|
set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-std=gnu89")
|
||||||
|
|||||||
Reference in New Issue
Block a user