zephyr/cmake
Torsten Rasmussen fb16a3deb0 cmake: ensure consistent behavior between x_ROOT settings
Fixes: #23825

Today, BOARD, SOC, ARCH, DTS, KCONFIG, and TOOLCHAIN_ROOT can be
specified by users or through other CMake files.

It is not clear if relative paths are permitted and/or from where a
relative path is constructed.

Inside CMake, it is very easy to specify `${ZEPHYR_BASE}`,
`${CMAKE_CURRENT_SOURCE_DIR}`, or similar, thus there is no reason to
use relative path inside CMake, as it easy can lead to discussion on
relative to what.

For users manually invoking CMake using, `cmake ... <app-dir>` it is
nice to have to possibility to specify a relative path.
For this purpose, relative path are considered relative to the
`APPLICATION_SOURCE_DIR`.

This commit updates:
- BOARD_ROOT
- SOC_ROOT
- ARCH_ROOT
- DTS_ROOT
- KCONFIG_ROOT
- TOOLCHAIN_ROOT

to allow paths relative to `APPLICATION_SOURCE_DIR` when specified with
`-D<type>_ROOT=<relative-path>`

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2020-09-10 21:30:24 +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
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
boards.cmake doc,cmake: make find_package(Zephyr...) REQUIRED 2020-05-29 10:47:25 +02:00
ccache.cmake
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: introduce zephyr_file() extension command 2020-09-10 21:30:24 +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: ensure consistent behavior between x_ROOT settings 2020-09-10 21:30:24 +02:00
git.cmake
hex.cmake
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
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