Merge topic 'CheckTypeSize_#14056'
7f857775 CheckTypeSize: Add unit test to cover the no-C case 7d6d45f2 CheckTypeSize: Support for CXX when C language is not enabled
This commit is contained in:
commit
82c590b12e
@ -75,6 +75,7 @@
|
||||
# License text for the above reference.)
|
||||
|
||||
include(CheckIncludeFile)
|
||||
include(CheckIncludeFileCXX)
|
||||
|
||||
cmake_policy(PUSH)
|
||||
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
|
||||
@ -218,9 +219,15 @@ macro(CHECK_TYPE_SIZE TYPE VARIABLE)
|
||||
set(_builtin 0)
|
||||
else()
|
||||
set(_builtin 1)
|
||||
check_include_file(sys/types.h HAVE_SYS_TYPES_H)
|
||||
check_include_file(stdint.h HAVE_STDINT_H)
|
||||
check_include_file(stddef.h HAVE_STDDEF_H)
|
||||
if("${_language}" STREQUAL "C")
|
||||
check_include_file(sys/types.h HAVE_SYS_TYPES_H)
|
||||
check_include_file(stdint.h HAVE_STDINT_H)
|
||||
check_include_file(stddef.h HAVE_STDDEF_H)
|
||||
elseif("${_language}" STREQUAL "CXX")
|
||||
check_include_file_cxx(sys/types.h HAVE_SYS_TYPES_H)
|
||||
check_include_file_cxx(stdint.h HAVE_STDINT_H)
|
||||
check_include_file_cxx(stddef.h HAVE_STDDEF_H)
|
||||
endif()
|
||||
endif()
|
||||
unset(_CHECK_TYPE_SIZE_BUILTIN_TYPES_ONLY)
|
||||
unset(_CHECK_TYPE_SIZE_LANGUAGE)
|
||||
|
4
Tests/RunCMake/CheckModules/CheckTypeSizeOkNoC.cmake
Normal file
4
Tests/RunCMake/CheckModules/CheckTypeSizeOkNoC.cmake
Normal file
@ -0,0 +1,4 @@
|
||||
enable_language(CXX)
|
||||
include(CheckTypeSize)
|
||||
check_type_size(int SIZEOF_INT LANGUAGE CXX)
|
||||
check_type_size(int SIZEOF_INT BUILTIN_TYPES_ONLY LANGUAGE CXX)
|
@ -12,3 +12,5 @@ run_cmake(CheckTypeSizeUnknownLanguage)
|
||||
run_cmake(CheckTypeSizeMissingLanguage)
|
||||
run_cmake(CheckTypeSizeUnknownArgument)
|
||||
run_cmake(CheckTypeSizeMixedArgs)
|
||||
|
||||
run_cmake(CheckTypeSizeOkNoC)
|
||||
|
Loading…
x
Reference in New Issue
Block a user