bilke / cmake-modules

Additional CMake functionality. Most of the modules are from Ryan Pavlik (https://github.com/rpavlik/cmake-modules)
Boost Software License 1.0
542 stars 215 forks source link

Compiler is not GNU or Flang! Aborting... #76

Open evan1026 opened 1 year ago

evan1026 commented 1 year ago

I am getting the above error when trying to add coverage flags to my project. It seems to be related to checking the compilers for each of the available languages.

Relevant CMake code:

# Debug info to help with this issue
get_property(LANGUAGES GLOBAL PROPERTY ENABLED_LANGUAGES)
message("ALL LANGUAGES: ${LANGUAGES}")
foreach(LANG ${LANGUAGES})
    message("${LANG} compiler is \"${CMAKE_${LANG}_COMPILER_ID}\"")
endforeach()

# Error hit by this line
include(CodeCoverage)

Relevant output of CMake:

ALL LANGUAGES: ASM;C;CXX;NONE
ASM compiler is ""
C compiler is "Clang"
CXX compiler is "Clang"
NONE compiler is ""
CMake Error at lib/cmake-modules/CodeCoverage.cmake:159 (message):
  Compiler is not GNU or Flang! Aborting...
Call Stack (most recent call first):
  CMakeLists.txt:132 (include)

Please let me know if there's any more information I can provide

stiggy87 commented 1 year ago

I ran into this. I had to make sure any project() I have all the languages I'm using in there.

I do think that the cmake should be updated to ignore the ones that are not set.

benner commented 1 year ago

@stiggy87 solution helped me too.