Path: blob/master/Tests/CMakeOnly/CheckLanguage/CMakeLists.txt
3153 views
cmake_minimum_required(VERSION 3.10)1project(CheckLanguage NONE)2include(CheckLanguage)34set(langs )5set(expect_C 1)6set(expect_CXX 1)78if(APPLE)9set(expect_OBJC 1)10set(expect_OBJCXX 1)11endif()12unset(expect_Fortran)13set(expect_NoSuchLanguage 0)1415set(LANGUAGES C CXX Fortran CUDA HIP ASM NoSuchLanguage)16if(APPLE)17list(APPEND LANGUAGES OBJC OBJCXX)18endif()1920foreach(test_lang ${LANGUAGES})21check_language(${test_lang})22if(NOT DEFINED CMAKE_${test_lang}_COMPILER)23message(FATAL_ERROR "check_language(${test_lang}) did not set result")24endif()25if(DEFINED expect_${test_lang})26if(expect_${test_lang} AND NOT CMAKE_${test_lang}_COMPILER)27message(FATAL_ERROR "check_language(${test_lang}) should not fail!")28elseif(NOT expect_${test_lang} AND CMAKE_${test_lang}_COMPILER)29message(FATAL_ERROR "check_language(${test_lang}) should not succeed!")30endif()31endif()32if(CMAKE_${test_lang}_COMPILER)33enable_language(${test_lang})34endif()35endforeach()363738