[CMAKE] Define GCC and CLANG cmake variables
authorVictor Perevertkin <victor@perevertkin.ru>
Mon, 19 Aug 2019 22:07:45 +0000 (01:07 +0300)
committerVictor Perevertkin <victor@perevertkin.ru>
Tue, 20 Aug 2019 13:05:47 +0000 (15:05 +0200)
sdk/cmake/config.cmake

index 7b29699..d3f596f 100644 (file)
@@ -36,6 +36,20 @@ else()
 "Whether to compile for debugging.")
 endif()
 
+if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
+    set(GCC TRUE CACHE BOOL "The compiler is GCC")
+    set(CLANG FALSE CACHE BOOL "The compiler is LLVM Clang")
+elseif(CMAKE_C_COMPILER_ID STREQUAL "Clang")
+    set(GCC FALSE CACHE BOOL "The compiler is GCC")
+    set(CLANG TRUE CACHE BOOL "The compiler is LLVM Clang")
+elseif(MSVC) # aka CMAKE_C_COMPILER_ID STEQUAL "MSVC"
+    set(GCC FALSE CACHE BOOL "The compiler is GCC")
+    set(CLANG FALSE CACHE BOOL "The compiler is LLVM Clang")
+    # MSVC variable is already set by cmake
+else()
+    message("WARNING: the compiler has not been recognized")
+endif()
+
 if(MSVC AND (NOT USE_CLANG_CL))
     set(KDBG FALSE CACHE BOOL
 "Whether to compile in the integrated kernel debugger.")