DTS directories can come from multiple places. Some places like a user's
CMakeLists.txt can preserve symbolic links. Others like
`scripts/zephyr_module.py --settings-out` resolve symbolic
links.
list(REMOVE_DUPLICATES ...) does not know anything about directories;
only about strings. To fix it the de-duplication, resolve all symbolic
links in DTS_ROOT first using file(REAL_PATH ...).
Fixes this somewhat confusing error:
```
-- Found BOARD.dts: /home/proj/mymodule/boards/myboard/myboard.dts
devicetree error: both /home/proj/mymodule/dts/bindings/intel,stuff.yaml
and /disk1/home/proj/mymodule/dts/bindings/intel,stuff.yaml
have 'compatible: intel,stuff'
```
Also, print `gen_defines.py` arguments in case of an error so anyone can
see what failed and not just west+CMake experts.
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
|
||
|---|---|---|
| .. | ||
| arch.cmake | ||
| boards.cmake | ||
| ccache.cmake | ||
| configuration_files.cmake | ||
| doc.cmake | ||
| dts.cmake | ||
| extensions.cmake | ||
| generic_toolchain.cmake | ||
| host-tools.cmake | ||
| kconfig.cmake | ||
| kernel.cmake | ||
| python.cmake | ||
| root.cmake | ||
| shields.cmake | ||
| soc.cmake | ||
| target_toolchain.cmake | ||
| unittest.cmake | ||
| user_cache.cmake | ||
| verify-toolchain.cmake | ||
| version.cmake | ||
| west.cmake | ||
| zephyr_default.cmake | ||
| zephyr_module.cmake | ||