CMakeLists.txt 1.4 KB

12345678910111213141516171819202122232425262728293031323334
  1. # Copyright (c) 2020 Nordic Semiconductor ASA
  2. # SPDX-License-Identifier: Apache-2.0
  3. zephyr_get_compile_options_for_lang_as_string(ASM ASM_compile_options)
  4. zephyr_get_compile_options_for_lang_as_string(C C_compile_options)
  5. zephyr_get_compile_options_for_lang_as_string(CXX CXX_compile_options)
  6. set(exports
  7. "
  8. CC = ${CMAKE_C_COMPILER}
  9. CXX = ${CMAKE_CXX_COMPILER}
  10. OBJCOPY = ${CMAKE_OBJCOPY}
  11. OBJDUMP = ${CMAKE_OBJDUMP}
  12. AS = ${CMAKE_AS}
  13. AR = ${CMAKE_AR}
  14. NM = ${CMAKE_NM}
  15. GDB = ${CMAKE_GDB}
  16. Z_CFLAGS = -I$<JOIN:$<TARGET_PROPERTY:zephyr_interface,INTERFACE_INCLUDE_DIRECTORIES>, -I> -isystem $<JOIN:$<TARGET_PROPERTY:zephyr_interface,INTERFACE_SYSTEM_INCLUDE_DIRECTORIES>, -isystem > -D$<JOIN:$<TARGET_PROPERTY:zephyr_interface,INTERFACE_COMPILE_DEFINITIONS>, -D> $<$<COMPILE_LANGUAGE:ASM>:${ASM_compile_options}> $<$<COMPILE_LANGUAGE:C>:${C_compile_options}> $<$<COMPILE_LANGUAGE:CXX>:${CXX_compile_options}>
  17. "
  18. )
  19. # file(GENERATE writes a file at Generation time. Also, it writes one
  20. # file per detected configuration, in this case, each COMPILE_LANGUAGE
  21. # is a new configuration.
  22. #
  23. # We use 'file(GENERATE' instead of configure_file because we want to
  24. # generate the file after Configure-time to have all the
  25. # metadata. Also, we don't use 'add_custom_command' because it cannot
  26. # read the generator expressions that we use.
  27. file(GENERATE
  28. OUTPUT ${CMAKE_BINARY_DIR}/Makefile.exports.$<COMPILE_LANGUAGE>
  29. CONTENT "${exports}"
  30. )