toolchainfile.cmake.in 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #
  2. # Automatically generated file; DO NOT EDIT.
  3. # CMake toolchain file for Buildroot
  4. #
  5. # In order to allow the toolchain to be relocated, we calculate the
  6. # HOST_DIR based on this file's location: $(HOST_DIR)/share/buildroot
  7. # and store it in RELOCATED_HOST_DIR.
  8. # All the other variables that need to refer to HOST_DIR will use the
  9. # RELOCATED_HOST_DIR variable.
  10. string(REPLACE "/share/buildroot" "" RELOCATED_HOST_DIR ${CMAKE_CURRENT_LIST_DIR})
  11. # Point cmake to the location where we have our custom modules,
  12. # so that it can find our custom platform description.
  13. list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
  14. set(CMAKE_SYSTEM_NAME Buildroot)
  15. set(CMAKE_SYSTEM_VERSION 1)
  16. set(CMAKE_SYSTEM_PROCESSOR @@CMAKE_SYSTEM_PROCESSOR@@)
  17. # Set the {C,CXX}FLAGS appended by CMake depending on the build type
  18. # defined by Buildroot. CMake defaults these variables with -g and/or
  19. # -O options, and they are appended at the end of the argument list,
  20. # so the Buildroot options are overridden. Therefore these variables
  21. # have to be cleared, so that the options passed in CMAKE_C_FLAGS do
  22. # apply.
  23. #
  24. # Note:
  25. # if the project forces some of these flag variables, Buildroot is
  26. # screwed up and there is nothing Buildroot can do about that :(
  27. set(CMAKE_C_FLAGS_DEBUG "" CACHE STRING "Debug CFLAGS")
  28. set(CMAKE_CXX_FLAGS_DEBUG "" CACHE STRING "Debug CXXFLAGS")
  29. set(CMAKE_C_FLAGS_RELEASE " -DNDEBUG" CACHE STRING "Release CFLAGS")
  30. set(CMAKE_CXX_FLAGS_RELEASE " -DNDEBUG" CACHE STRING "Release CXXFLAGS")
  31. # Build type from the Buildroot configuration
  32. set(CMAKE_BUILD_TYPE @@CMAKE_BUILD_TYPE@@ CACHE STRING "Buildroot build configuration")
  33. # Buildroot defaults flags.
  34. # If you are using this toolchainfile.cmake file outside of Buildroot and
  35. # want to customize the compiler/linker flags, then:
  36. # * set them all on the cmake command line, e.g.:
  37. # cmake -DCMAKE_C_FLAGS="@@TARGET_CFLAGS@@ -Dsome_custom_flag" ...
  38. # * and make sure the project's CMake code extends them like this if needed:
  39. # set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Dsome_definitions")
  40. set(CMAKE_C_FLAGS "@@TARGET_CFLAGS@@" CACHE STRING "Buildroot CFLAGS")
  41. set(CMAKE_CXX_FLAGS "@@TARGET_CXXFLAGS@@" CACHE STRING "Buildroot CXXFLAGS")
  42. set(CMAKE_EXE_LINKER_FLAGS "@@TARGET_LDFLAGS@@" CACHE STRING "Buildroot LDFLAGS for executables")
  43. set(CMAKE_SHARED_LINKER_FLAGS "@@TARGET_LDFLAGS@@" CACHE STRING "Buildroot LDFLAGS for shared libraries")
  44. set(CMAKE_MODULE_LINKER_FLAGS "@@TARGET_LDFLAGS@@" CACHE STRING "Buildroot LDFLAGS for module libraries")
  45. set(CMAKE_INSTALL_SO_NO_EXE 0)
  46. set(CMAKE_PROGRAM_PATH "${RELOCATED_HOST_DIR}/bin")
  47. set(CMAKE_SYSROOT "${RELOCATED_HOST_DIR}/@@STAGING_SUBDIR@@")
  48. set(CMAKE_FIND_ROOT_PATH "${RELOCATED_HOST_DIR}/@@STAGING_SUBDIR@@")
  49. set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
  50. set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
  51. set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
  52. set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
  53. set(ENV{PKG_CONFIG_SYSROOT_DIR} "${RELOCATED_HOST_DIR}/@@STAGING_SUBDIR@@")
  54. # This toolchain file can be used both inside and outside Buildroot.
  55. set(CMAKE_C_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CC@@")
  56. set(CMAKE_CXX_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CXX@@")
  57. if(@@TOOLCHAIN_HAS_FORTRAN@@)
  58. set(CMAKE_Fortran_FLAGS_DEBUG "" CACHE STRING "Debug Fortran FLAGS")
  59. set(CMAKE_Fortran_FLAGS_RELEASE " -DNDEBUG" CACHE STRING "Release Fortran FLAGS")
  60. set(CMAKE_Fortran_FLAGS "@@TARGET_FCFLAGS@@" CACHE STRING "Buildroot FCFLAGS")
  61. set(CMAKE_Fortran_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_FC@@")
  62. endif()