pico_pre_load_platform.cmake 1.3 KB

1234567891011121314151617181920212223242526272829
  1. # PICO_CMAKE_CONFIG: PICO_PLATFORM, platform to build for e.g. rp2040/host, default=rp2040 or environment value, group=build
  2. if (DEFINED ENV{PICO_PLATFORM} AND (NOT PICO_PLATFORM))
  3. set(PICO_PLATFORM $ENV{PICO_PLATFORM})
  4. message("Using PICO_PLATFORM from environment ('${PICO_PLATFORM}')")
  5. else()
  6. if (NOT PICO_PLATFORM)
  7. set(PICO_PLATFORM "rp2040")
  8. pico_message("Defaulting PICO_PLATFORM to ${PICO_PLATFORM} since not specified.")
  9. else()
  10. message("PICO platform is ${PICO_PLATFORM}.")
  11. endif()
  12. endif ()
  13. set(PICO_PLATFORM ${PICO_PLATFORM} CACHE STRING "PICO Build platform (e.g. rp2040, host)")
  14. # PICO_CMAKE_CONFIG: PICO_CMAKE_RELOAD_PLATFORM_FILE, custom CMake file to use to set up the platform environment, default=none, group=build
  15. set(PICO_CMAKE_PRELOAD_PLATFORM_FILE "" CACHE INTERNAL "")
  16. set(PICO_CMAKE_PRELOAD_PLATFORM_DIR "${CMAKE_CURRENT_LIST_DIR}/preload/platforms" CACHE INTERNAL "")
  17. if (NOT PICO_CMAKE_PRELOAD_PLATFORM_FILE)
  18. set(PICO_CMAKE_PRELOAD_PLATFORM_FILE ${PICO_CMAKE_PRELOAD_PLATFORM_DIR}/${PICO_PLATFORM}.cmake CACHE INTERNAL "")
  19. endif ()
  20. if (NOT EXISTS "${PICO_CMAKE_PRELOAD_PLATFORM_FILE}")
  21. message(FATAL_ERROR "${PICO_CMAKE_PRELOAD_PLATFORM_FILE} does not exist. \
  22. Either specify a valid PICO_PLATFORM (or PICO_CMAKE_PRELOAD_PLATFORM_FILE).")
  23. endif ()
  24. include(${PICO_CMAKE_PRELOAD_PLATFORM_FILE})