generic_board.cmake 1.3 KB

1234567891011121314151617181920212223
  1. # For boards without their own cmake file, simply include a header
  2. # PICO_CMAKE_CONFIG: PICO_BOARD_HEADER_DIRS, Directors to look for <PICO_BOARD>.h in. This is overridable from the user environment, type=list, default="", group=build
  3. if (DEFINED ENV{PICO_BOARD_HEADER_DIRS})
  4. set(PICO_BOARD_HEADER_DIRS $ENV{PICO_BOARD_HEADER_DIRS})
  5. message("Using PICO_BOARD_HEADER_DIRS from environment ('${PICO_BOARD_HEADER_DIRS}')")
  6. endif()
  7. set(PICO_BOARD_HEADER_DIRS ${PICO_BOARD_HEADER_DIRS} CACHE STRING "PICO board header directories")
  8. list(APPEND PICO_BOARD_HEADER_DIRS ${CMAKE_CURRENT_LIST_DIR}/include/boards)
  9. pico_find_in_paths(PICO_BOARD_HEADER_FILE PICO_BOARD_HEADER_DIRS ${PICO_BOARD}.h)
  10. if (EXISTS ${PICO_BOARD_HEADER_FILE})
  11. message("Using board configuration from ${PICO_BOARD_HEADER_FILE}")
  12. list(APPEND PICO_CONFIG_HEADER_FILES ${PICO_BOARD_HEADER_FILE})
  13. else()
  14. set(msg "Unable to find definition of board '${PICO_BOARD}' (specified by PICO_BOARD):\n")
  15. list(JOIN PICO_BOARD_HEADER_DIRS ", " DIRS)
  16. string(CONCAT msg ${msg} " Looked for ${PICO_BOARD}.h in ${DIRS} (additional paths specified by PICO_BOARD_HEADER_DIRS)\n")
  17. list(JOIN PICO_BOARD_CMAKE_DIRS ", " DIRS)
  18. string(CONCAT msg ${msg} " Looked for ${PICO_BOARD}.cmake in ${DIRS} (additional paths specified by PICO_BOARD_CMAKE_DIRS)")
  19. message(FATAL_ERROR ${msg})
  20. endif()