1234567891011121314151617181920212223242526272829303132333435363738 |
- # SPDX-License-Identifier: Apache-2.0
- # Configures CMake for using GCC
- find_program(CMAKE_C_COMPILER gcc)
- if(CONFIG_CPLUSPLUS)
- set(cplusplus_compiler g++)
- else()
- if(EXISTS g++)
- set(cplusplus_compiler g++)
- else()
- # When the toolchain doesn't support C++, and we aren't building
- # with C++ support just set it to something so CMake doesn't
- # crash, it won't actually be called
- set(cplusplus_compiler ${CMAKE_C_COMPILER})
- endif()
- endif()
- find_program(CMAKE_CXX_COMPILER ${cplusplus_compiler} CACHE INTERNAL " " FORCE)
- set(NOSTDINC "")
- # Note that NOSYSDEF_CFLAG may be an empty string, and
- # set_ifndef() does not work with empty string.
- if(NOT DEFINED NOSYSDEF_CFLAG)
- set(NOSYSDEF_CFLAG -undef)
- endif()
- foreach(file_name include/stddef.h)
- execute_process(
- COMMAND ${CMAKE_C_COMPILER} --print-file-name=${file_name}
- OUTPUT_VARIABLE _OUTPUT
- )
- get_filename_component(_OUTPUT "${_OUTPUT}" DIRECTORY)
- string(REGEX REPLACE "\n" "" _OUTPUT "${_OUTPUT}")
- list(APPEND NOSTDINC ${_OUTPUT})
- endforeach()
|