mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-08-12 01:47:27 +00:00
Update the files which contain no license information with the 'Apache-2.0' SPDX license identifier. Many source files in the tree are missing licensing information, which makes it harder for compliance tools to determine the correct license. By default all files without license information are under the default license of Zephyr, which is Apache version 2. Signed-off-by: Anas Nashif <anas.nashif@intel.com>
96 lines
3.3 KiB
CMake
96 lines
3.3 KiB
CMake
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
# TODO: Set to make when make is used as a generator
|
|
set(CMAKE_MAKE_PROGRAM ninja)
|
|
get_filename_component(generator ${CMAKE_MAKE_PROGRAM} NAME)
|
|
|
|
set(arch_list
|
|
arc
|
|
arm
|
|
nios2
|
|
riscv32
|
|
posix
|
|
x86
|
|
x86_64
|
|
xtensa
|
|
)
|
|
|
|
string(REPLACE " " ";" BOARD_ROOT "${BOARD_ROOT_SPACE_SEPARATED}")
|
|
string(REPLACE " " ";" SHIELD_LIST "${SHIELD_LIST_SPACE_SEPARATED}")
|
|
|
|
foreach(arch ${arch_list})
|
|
foreach(root ${BOARD_ROOT})
|
|
set(board_arch_dir ${root}/boards/${arch})
|
|
|
|
# Match the _defconfig files in the board directories to make sure we are
|
|
# finding boards, e.g. qemu_xtensa/qemu_xtensa_defconfig
|
|
file(GLOB_RECURSE defconfigs_for_${arch}
|
|
RELATIVE ${board_arch_dir}
|
|
${board_arch_dir}/*_defconfig
|
|
)
|
|
|
|
# The above gives a list like
|
|
# nrf51_blenano/nrf51_blenano_defconfig;nrf51_pca10028/nrf51_pca10028_defconfig
|
|
# we construct a list of board names by removing both the _defconfig
|
|
# suffix and the path.
|
|
set(boards_for_${arch} "")
|
|
foreach(defconfig_path ${defconfigs_for_${arch}})
|
|
get_filename_component(board ${defconfig_path} NAME)
|
|
string(REPLACE "_defconfig" "" board "${board}")
|
|
list(APPEND boards_for_${arch} ${board})
|
|
endforeach()
|
|
endforeach()
|
|
endforeach()
|
|
|
|
message("Cleaning targets:")
|
|
message(" clean - Remove most generated files but keep configuration and backup files")
|
|
message(" pristine - Remove all files in the build directory")
|
|
message("")
|
|
message("Configuration targets:")
|
|
message("")
|
|
message(" menuconfig - Update configuration using an interactive configuration interface")
|
|
message("")
|
|
message("Other generic targets:")
|
|
message(" all - Build a zephyr application")
|
|
message(" run - Build a zephyr application and run it if the board supports emulation")
|
|
message(" flash - Build and flash an application")
|
|
message(" debug - Build and debug an application using GDB")
|
|
message(" debugserver - Build and start a GDB server (port 1234 for Qemu targets)")
|
|
message(" ram_report - Build and create RAM usage report")
|
|
message(" rom_report - Build and create ROM usage report")
|
|
message(" usage - Display this text")
|
|
message("")
|
|
message("Supported Boards:")
|
|
message("")
|
|
message(" To generate project files for one of the supported boards below, run:")
|
|
message("")
|
|
message(" $ cmake -DBOARD=<BOARD NAME> [-DSHIELD=<SHIELD NAME>] -Bpath/to/build_dir -Hpath/to/source_dir")
|
|
message("")
|
|
message(" or")
|
|
message("")
|
|
message(" $ export BOARD=<BOARD NAME>")
|
|
message(" $ export SHIELD=<SHIELD NAME> #optional")
|
|
message(" $ cmake -Bpath/to/build_dir -Hpath/to/source_dir")
|
|
message("")
|
|
foreach(arch ${arch_list})
|
|
message(" ${arch}:")
|
|
foreach(board ${boards_for_${arch}})
|
|
message(" ${board}")
|
|
endforeach()
|
|
endforeach()
|
|
message("")
|
|
message("Supported Shields:")
|
|
message("")
|
|
foreach(shield ${SHIELD_LIST})
|
|
message(" ${shield}")
|
|
endforeach()
|
|
message("")
|
|
message("Build flags:")
|
|
message("")
|
|
message(" ${generator} VERBOSE=1 [targets] verbose build")
|
|
message(" cmake -DW=n Enable extra gcc checks, n=1,2,3 where")
|
|
message(" 1: warnings which may be relevant and do not occur too often")
|
|
message(" 2: warnings which occur quite often but may still be relevant")
|
|
message(" 3: more obscure warnings, can most likely be ignored")
|
|
message(" Multiple levels can be combined with W=12 or W=123")
|