zephyr/cmake
Torsten Rasmussen 2d2fea8732 cmake: create zephyr_get_targets() functions
Fixes: #28197

zephyr_get_targets() provides a mechanism for retrieving all CMake
targets for a given directory and below.

This is useful when including external modules where only libraries
required by Zephyr should be built.

For example, in openthread, this reduces the number of build steps and
build time significantly.

Before, 780 steps:
`time ninja -Cbuild`
[708/708] Linking CXX executable zephyr/zephyr.elf
135.08user 30.24system 0:46.21elapsed 357%CPU

After, 480 steps:
`time ninja -Cbuild`
[480/480] Linking CXX executable zephyr/zephyr.elf
84.02user 18.92system 0:30.72elapsed 335%CPU

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2020-09-14 16:40:42 +02:00
..
app cmake: ensure consistent behavior between x_ROOT settings 2020-09-10 21:30:24 +02:00
bintools cmake: mwdt bintools adopted to new toolchain abstraction 2020-09-05 10:22:56 -05:00
compiler cmake: c++ compiler flag exclusion, -Werror=implicit-int 2020-09-07 17:22:37 +02:00
emu boards: arc: nsim: add a new board nsim_em7d_v22 2020-09-03 21:47:51 +02:00
flash cmake: flash signed binaries for mcuboot 2020-09-03 16:49:09 -05:00
ide license: cleanup: add SPDX Apache-2.0 license identifier 2019-04-07 08:45:22 -04:00
linker cmake: MWDT linker command list fix. 2020-09-05 10:22:56 -05:00
makefile_exports cmake: export build flags to external build systems excluding SHELL tag 2020-09-10 11:31:53 +02:00
reports scripts: size_report: Fix colorized output 2020-09-03 09:54:21 -04:00
toolchain cmake: add metaware toolchain support in build system 2020-09-05 10:22:56 -05:00
usage cmake: sort shield list and improve indent 2020-08-05 12:01:49 +02:00
util license: cleanup: add SPDX Apache-2.0 license identifier 2019-04-07 08:45:22 -04:00
boards.cmake doc,cmake: make find_package(Zephyr...) REQUIRED 2020-05-29 10:47:25 +02:00
ccache.cmake license: cleanup: add SPDX Apache-2.0 license identifier 2019-04-07 08:45:22 -04:00
cfb.cmake cmake: using ${ZEPHYR_BASE} instead of $ENV{ZEPHYR_BASE} 2020-03-27 16:23:46 +01:00
dts.cmake cmake: ensure consistent behavior between x_ROOT settings 2020-09-10 21:30:24 +02:00
extensions.cmake cmake: create zephyr_get_targets() functions 2020-09-14 16:40:42 +02:00
extra_flags.cmake cmake: extra_flags: fix EXTRA_CPPFLAGS being applied as macros 2019-12-13 13:23:40 -05:00
gcc-m-cpu.cmake cmake: gcc: add support for compiling for the ARM Cortex-M1 2020-08-14 13:35:39 -05:00
generic_toolchain.cmake cmake: Ignore LDFLAGS and AFLAGS from environment 2020-09-10 15:35:50 -05:00
git.cmake cmake: explain BUILD_VERSION and KERNEL_VERSION_* 2019-05-09 11:52:05 +02:00
hex.cmake license: cleanup: add SPDX Apache-2.0 license identifier 2019-04-07 08:45:22 -04:00
host-tools.cmake cmake: add IMGTOOL optional dependency 2020-09-01 13:33:46 +02:00
kconfig.cmake cmake: ensure consistent behavior between x_ROOT settings 2020-09-10 21:30:24 +02:00
kobj.cmake cmake: using ${ZEPHYR_BASE} instead of $ENV{ZEPHYR_BASE} 2020-03-27 16:23:46 +01:00
mcuboot.cmake cmake: mcuboot: confirmed images needs to be padded 2020-09-04 12:00:04 +02:00
pristine.cmake license: cleanup: add SPDX Apache-2.0 license identifier 2019-04-07 08:45:22 -04:00
python.cmake cmake: find python3 on windows when multiarch are installed 2020-05-13 12:13:36 +02:00
target_toolchain_flags.cmake cmake: toolchain: Toolchain abstraction templates 2020-09-04 20:36:59 +02:00
target_toolchain.cmake cmake: toolchain: Toolchain abstraction templates 2020-09-04 20:36:59 +02:00
version.cmake cmake: Added possibility to disable the printing of version 2020-03-27 16:23:46 +01:00
west.cmake cmake: add WEST to cached variable 2020-09-03 17:32:48 -04:00
zephyr_module.cmake cmake: Zephyr module error on module name current 2020-08-31 12:15:02 +02:00