Commit Graph

12 Commits

Author SHA1 Message Date
chao an fa943c11b3 cmake: correct cmake rule file name
The rule of cmake file name should be CMakeLists.txt not CMakeList.txt

Signed-off-by: chao an <anchao@xiaomi.com>
2023-10-21 11:00:27 +08:00
raiden00pl b90c6b5b20 cmake: raise error if previous make build was not cleaned
Uncleanded make build can cause various cmake errors.
It's better to stop cmake build early and display an error.
2023-10-02 23:35:19 +08:00
xuxin19 10f32910a9 cmake:new feature on enhance apps header cmake module
`nuttx_export_header` for applications global header file export
`nuttx_add_dependencies` is the wrapper to use import

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2023-08-17 13:10:15 +08:00
chao an dc6f1406d1 tools/ci: migrate some ci build configurations to CMake
Signed-off-by: chao an <anchao@xiaomi.com>
2023-07-15 23:32:36 +08:00
raiden00pl 73e5b9405f cmake: avoid warning about DOWNLOAD_EXTRACT_TIMESTAMP in CMake 3.24 2023-07-13 23:49:02 +03:00
chao an 73a06a4975 cmake/win32: set default LINK_STACKSIZE to avoid stack overflow
Signed-off-by: chao an <anchao@xiaomi.com>
2023-07-14 02:05:58 +08:00
raiden00pl a59f82b8d2 cmake: support pre-processor for linker script 2023-07-13 03:05:39 +08:00
raiden00pl 1f641fd63b cmake: fix NUTTX_COMMON_DIR definition 2023-07-12 01:01:19 +08:00
raiden00pl 2115679db3 cmake: add missing crypto 2023-07-10 22:24:44 +08:00
raiden00pl 88e01fd335 cmake: define NUTTX_COMMON_DIR 2023-07-10 22:24:44 +08:00
chao an de7132c697 cmake/sched: fix build break based on mainline
Signed-off-by: chao an <anchao@xiaomi.com>
2023-07-10 13:26:21 +08:00
chao an 6ee9ec7656 build: add initial cmake build system
1. Update all CMakeLists.txt to adapt to new layout
2. Fix cmake build break
3. Update all new file license
4. Fully compatible with current compilation environment(use configure.sh or cmake as you choose)

------------------

How to test

From within nuttx/. Configure:

cmake -B build -DBOARD_CONFIG=sim/nsh -GNinja
cmake -B build -DBOARD_CONFIG=sim:nsh -GNinja
cmake -B build -DBOARD_CONFIG=sabre-6quad/smp -GNinja
cmake -B build -DBOARD_CONFIG=lm3s6965-ek/qemu-flat -GNinja

(or full path in custom board) :
cmake -B build -DBOARD_CONFIG=$PWD/boards/sim/sim/sim/configs/nsh -GNinja

This uses ninja generator (install with sudo apt install ninja-build). To build:

$ cmake --build build

menuconfig:

$ cmake --build build -t menuconfig

--------------------------

2. cmake/build: reformat the cmake style by cmake-format

https://github.com/cheshirekow/cmake_format

$ pip install cmakelang

$ for i in `find -name CMakeLists.txt`;do cmake-format $i -o $i;done
$ for i in `find -name *\.cmake`;do cmake-format $i -o $i;done

Co-authored-by: Matias N <matias@protobits.dev>
Signed-off-by: chao an <anchao@xiaomi.com>
2023-07-08 13:50:48 +08:00