This is an automated email from the ASF dual-hosted git repository.
acassis pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new 87260499e19 cmake: Use NUTTX(_DIR/_BIN_DIR) instead
CMAKE(_SRC_DIR/_BIN_DIR)
87260499e19 is described below
commit 87260499e192e5a7903a5175cbea402e929070f5
Author: Alan Carvalho de Assis <[email protected]>
AuthorDate: Sat Aug 8 15:52:46 2026 -0300
cmake: Use NUTTX(_DIR/_BIN_DIR) instead CMAKE(_SRC_DIR/_BIN_DIR)
This change fixes NuttX’s CMake support when NuttX is embedded
in another project via add_subdirectory(). CMake’s CMAKE_SOURCE_DIR
and CMAKE_BINARY_DIR refer to the outermost project, causing NuttX
to access its .config, generated files, host tools, and build artifacts
in the parent project’s directories. The fix introduces NUTTX_DIR and
NUTTX_BINARY_DIR, based on CMAKE_CURRENT_SOURCE_DIR and
CMAKE_CURRENT_BINARY_DIR, and consistently uses them for NuttX
self-references while preserving existing standalone builds. It fixes
the Kconfig initialization failure reported in #19697 and allows an
embedded sim:nsh build to configure, build, and boot successfully.
The change affects only the CMake build system (not Make or Kconfig
defaults), requires the corresponding nuttx-apps change, and does not
extend add_subdirectory() support to cross-compiled non-sim boards due
to CMake’s toolchain-file limitation.
Fixes #19697.
Assisted-by: Claude:claude-sonnet-5
Signed-off-by: Alan Carvalho de Assis <[email protected]>
---
CMakeLists.txt | 94 +++++++++++-----------
arch/CMakeLists.txt | 4 +-
arch/arm/src/cmake/ghs.cmake | 2 +-
arch/arm/src/cmake/platform.cmake | 2 +-
arch/arm/src/common/ameba/cmake/ameba_board.cmake | 16 ++--
arch/arm/src/nrf52/CMakeLists.txt | 2 +-
arch/arm/src/nrf53/CMakeLists.txt | 2 +-
arch/arm/src/nrf91/CMakeLists.txt | 2 +-
arch/arm/src/rp2040/CMakeLists.txt | 2 +-
arch/arm64/src/cmake/platform.cmake | 2 +-
arch/risc-v/src/cmake/platform.cmake | 2 +-
arch/risc-v/src/common/espressif/Bootloader.cmake | 2 +-
arch/risc-v/src/common/espressif/CMakeLists.txt | 25 +++---
arch/risc-v/src/common/espressif/esp_ulp.cmake | 8 +-
arch/risc-v/src/esp32h2/hal_esp32h2.cmake | 2 +-
arch/risc-v/src/esp32p4/hal_esp32p4.cmake | 2 +-
arch/sim/src/sim/CMakeLists.txt | 2 +-
arch/tricore/src/cmake/platform.cmake | 2 +-
arch/tricore/src/common/CMakeLists.txt | 4 +-
arch/tricore/src/tc3xx/CMakeLists.txt | 10 +--
arch/tricore/src/tc4xx/CMakeLists.txt | 10 +--
arch/x86_64/src/cmake/platform.cmake | 12 +--
arch/xtensa/src/cmake/platform.cmake | 2 +-
binfmt/CMakeLists.txt | 2 +-
boards/CMakeLists.txt | 8 +-
boards/arm/cxd56xx/spresense/CMakeLists.txt | 10 +--
.../rp2040/adafruit-feather-rp2040/CMakeLists.txt | 6 +-
boards/arm/rp2040/adafruit-kb2040/CMakeLists.txt | 6 +-
.../rp2040/adafruit-qt-py-rp2040/CMakeLists.txt | 6 +-
boards/arm/rp2040/pimoroni-tiny2040/CMakeLists.txt | 6 +-
.../arm/rp2040/raspberrypi-pico-w/CMakeLists.txt | 6 +-
boards/arm/rp2040/raspberrypi-pico/CMakeLists.txt | 6 +-
boards/arm/rp2040/seeed-xiao-rp2040/CMakeLists.txt | 6 +-
boards/arm/rp2040/w5500-evb-pico/CMakeLists.txt | 6 +-
.../waveshare-rp2040-lcd-1.28/CMakeLists.txt | 6 +-
.../rp2040/waveshare-rp2040-zero/CMakeLists.txt | 6 +-
.../arm/rp23xx/pimoroni-pico-2-plus/CMakeLists.txt | 6 +-
.../rp23xx/pimoroni-pico-plus-2-w/CMakeLists.txt | 6 +-
.../arm/rp23xx/raspberrypi-pico-2/CMakeLists.txt | 6 +-
boards/arm/rp23xx/xiao-rp2350/CMakeLists.txt | 6 +-
boards/risc-v/k230/canmv230/src/CMakeLists.txt | 4 +-
.../rp23xx-rv/raspberrypi-pico-2-rv/CMakeLists.txt | 6 +-
boards/sim/sim/sim/CMakeLists.txt | 5 +-
boards/x86_64/qemu/qemu-intel64/src/CMakeLists.txt | 2 +-
cmake/menuconfig.cmake | 55 +++++++------
cmake/nuttx_add_application.cmake | 20 ++---
cmake/nuttx_add_library.cmake | 3 +-
cmake/nuttx_add_romfs.cmake | 6 +-
cmake/nuttx_add_symtab.cmake | 2 +-
cmake/nuttx_export_header.cmake | 2 +-
cmake/nuttx_extensions.cmake | 8 +-
cmake/nuttx_generate_headers.cmake | 66 +++++++--------
cmake/nuttx_generate_outputs.cmake | 8 +-
cmake/nuttx_generate_sim_ld.cmake | 8 +-
cmake/nuttx_kconfig.cmake | 8 +-
cmake/nuttx_mkconfig.cmake | 24 +++---
cmake/nuttx_mkversion.cmake | 2 +-
cmake/nuttx_multiple_link.cmake | 25 +++---
cmake/nuttx_process_config.cmake | 14 ++--
cmake/nuttx_redefine_symbols.cmake | 4 +-
cmake/nuttx_sethost.cmake | 2 +-
cmake/nuttx_toolchain.cmake | 2 +-
drivers/mtd/CMakeLists.txt | 4 +-
drivers/segger/CMakeLists.txt | 2 +-
fs/littlefs/CMakeLists.txt | 4 +-
libs/libbuiltin/compiler-rt/CMakeLists.txt | 2 +-
libs/libc/elf/CMakeLists.txt | 2 +-
libs/libc/fdt/CMakeLists.txt | 2 +-
libs/libc/gnssutils/CMakeLists.txt | 8 +-
libs/libm/libmcs/CMakeLists.txt | 4 +-
libs/libm/newlib/CMakeLists.txt | 2 +-
libs/libm/openlibm/CMakeLists.txt | 2 +-
libs/libxx/libcxx/CMakeLists.txt | 10 +--
libs/libxx/libcxxabi/CMakeLists.txt | 6 +-
libs/libxx/libstdc++/CMakeLists.txt | 13 ++-
libs/libxx/uClibc++/CMakeLists.txt | 8 +-
mm/tlsf/CMakeLists.txt | 2 +-
openamp/libmetal.cmake | 4 +-
openamp/open-amp.cmake | 4 +-
syscall/CMakeLists.txt | 2 +-
syscall/proxies/CMakeLists.txt | 2 +-
syscall/stubs/CMakeLists.txt | 2 +-
syscall/wraps/CMakeLists.txt | 2 +-
tools/espressif/espressif_burn_enc_key.cmake | 8 +-
wireless/CMakeLists.txt | 10 +--
85 files changed, 345 insertions(+), 351 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e598d7a5bf7..820c5a4faa7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -89,6 +89,7 @@ set(CMAKE_USER_MAKE_RULES_OVERRIDE
# Process board config & directory locations #################################
set(NUTTX_DIR ${CMAKE_CURRENT_SOURCE_DIR})
+set(NUTTX_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
# uncleaned previous make build can cause various types of cmake error
if(EXISTS "${NUTTX_DIR}/.config")
@@ -211,7 +212,7 @@ endif()
get_filename_component(NUTTX_APPS_DIR ${NUTTX_APPS_DIR} ABSOLUTE)
get_filename_component(apps_dir ${NUTTX_APPS_DIR} NAME)
-set(NUTTX_APPS_BINDIR "${CMAKE_BINARY_DIR}/${apps_dir}")
+set(NUTTX_APPS_BINDIR "${NUTTX_BINARY_DIR}/${apps_dir}")
# Support not having application directory
@@ -220,10 +221,10 @@ if("${apps_dir}" STREQUAL "dummy")
file(TOUCH ${NUTTX_APPS_BINDIR}/Kconfig)
endif()
-set(ENV{PYTHONPYCACHEPREFIX} ${CMAKE_BINARY_DIR})
+set(ENV{PYTHONPYCACHEPREFIX} ${NUTTX_BINARY_DIR})
set(ENV{APPSDIR} ${NUTTX_APPS_DIR}) # TODO: support not having apps/
set(ENV{APPSBINDIR} ${NUTTX_APPS_BINDIR}) # TODO: support not having apps/
-set(ENV{BINDIR} ${CMAKE_BINARY_DIR}) # TODO: support not having apps/
+set(ENV{BINDIR} ${NUTTX_BINARY_DIR}) # TODO: support not having apps/
set(ENV{EXTERNALDIR} dummy) # TODO
set(ENV{DRIVERS_PLATFORM_DIR} dummy) # TODO
@@ -273,7 +274,7 @@ endif()
# Custom board ###################################################
-file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/boards/dummy)
+file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/boards/dummy)
if(CONFIG_ARCH_BOARD_CUSTOM)
get_filename_component(NUTTX_BOARD_ABS_DIR ${CONFIG_ARCH_BOARD_CUSTOM_DIR}
ABSOLUTE BASE_DIR ${NUTTX_DIR})
@@ -291,22 +292,22 @@ if(CONFIG_ARCH_BOARD_CUSTOM
AND EXISTS ${NUTTX_BOARD_ABS_DIR}/Kconfig
AND NOT (IS_NUTTX_BOARD EQUAL 0))
nuttx_create_symlink(${NUTTX_BOARD_ABS_DIR}/Kconfig
- ${CMAKE_BINARY_DIR}/boards/dummy/Kconfig)
+ ${NUTTX_BINARY_DIR}/boards/dummy/Kconfig)
else()
- file(TOUCH ${CMAKE_BINARY_DIR}/boards/dummy/Kconfig)
+ file(TOUCH ${NUTTX_BINARY_DIR}/boards/dummy/Kconfig)
endif()
# board platform driver
-file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/drivers)
+file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/drivers)
if(EXISTS ${NUTTX_BOARD_ABS_DIR}/../drivers
AND EXISTS ${NUTTX_BOARD_ABS_DIR}/../drivers/Kconfig)
nuttx_create_symlink(${NUTTX_BOARD_ABS_DIR}/../drivers
- ${CMAKE_BINARY_DIR}/drivers/platform)
+ ${NUTTX_BINARY_DIR}/drivers/platform)
else()
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/drivers/platform)
- file(TOUCH ${CMAKE_BINARY_DIR}/drivers/platform/Kconfig)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/drivers/platform)
+ file(TOUCH ${NUTTX_BINARY_DIR}/drivers/platform/Kconfig)
endif()
# Custom chip ###################################################
@@ -320,25 +321,25 @@ else()
"${NUTTX_DIR}/arch/${CONFIG_ARCH}/src/${CONFIG_ARCH_CHIP}")
endif()
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/arch/dummy)
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/arch/dummy)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/arch/dummy)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/arch/dummy)
endif()
if(CONFIG_ARCH_CHIP_CUSTOM AND EXISTS ${NUTTX_CHIP_ABS_DIR}/Kconfig)
nuttx_create_symlink(${NUTTX_CHIP_ABS_DIR}/Kconfig
- ${CMAKE_BINARY_DIR}/arch/dummy/Kconfig)
+ ${NUTTX_BINARY_DIR}/arch/dummy/Kconfig)
else()
- file(TOUCH ${CMAKE_BINARY_DIR}/arch/dummy/Kconfig)
+ file(TOUCH ${NUTTX_BINARY_DIR}/arch/dummy/Kconfig)
endif()
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/arch/${CONFIG_ARCH})
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/arch/${CONFIG_ARCH})
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/arch/${CONFIG_ARCH}/src)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/arch/${CONFIG_ARCH})
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/arch/${CONFIG_ARCH})
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/arch/${CONFIG_ARCH}/src)
endif()
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/arch/${CONFIG_ARCH}/src/chip)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/arch/${CONFIG_ARCH}/src/chip)
nuttx_create_symlink(${NUTTX_CHIP_ABS_DIR}
- ${CMAKE_BINARY_DIR}/arch/${CONFIG_ARCH}/src/chip)
+ ${NUTTX_BINARY_DIR}/arch/${CONFIG_ARCH}/src/chip)
endif()
# Unsupported custom board/chips yet, workaround
@@ -351,28 +352,28 @@ endif()
# Copy board defconfig into main directory and expand TODO: do also for changes
# in board/config (by comparing stored defconfig to specified one)
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/.config OR NOT "${NUTTX_DEFCONFIG}" STREQUAL
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/.config OR NOT "${NUTTX_DEFCONFIG}" STREQUAL
"${NUTTX_DEFCONFIG_SAVED}")
message(STATUS "Initializing NuttX")
configure_file(${NUTTX_DEFCONFIG} defconfig COPYONLY)
configure_file(${NUTTX_DEFCONFIG} .config.compressed COPYONLY)
- set(ENV{KCONFIG_CONFIG} ${CMAKE_BINARY_DIR}/.config.compressed)
+ set(ENV{KCONFIG_CONFIG} ${NUTTX_BINARY_DIR}/.config.compressed)
# Define host before the first olddefconfig so host-dependent defaults, such
# as the sim toolchain choice on macOS, resolve the same way as configure.sh.
- nuttx_sethost(CONFIG_FILE ${CMAKE_BINARY_DIR}/.config.compressed)
+ nuttx_sethost(CONFIG_FILE ${NUTTX_BINARY_DIR}/.config.compressed)
# Do olddefconfig step to expand the abbreviated defconfig into normal config
nuttx_olddefconfig()
- file(RENAME ${CMAKE_BINARY_DIR}/.config.compressed
- ${CMAKE_BINARY_DIR}/.config)
- set(ENV{KCONFIG_CONFIG} ${CMAKE_BINARY_DIR}/.config)
+ file(RENAME ${NUTTX_BINARY_DIR}/.config.compressed
+ ${NUTTX_BINARY_DIR}/.config)
+ set(ENV{KCONFIG_CONFIG} ${NUTTX_BINARY_DIR}/.config)
# Set CONFIG_BASE_DEFCONFIG so .config matches Make behavior (configure.sh)
- file(READ ${CMAKE_BINARY_DIR}/.config _config_init_content)
+ file(READ ${NUTTX_BINARY_DIR}/.config _config_init_content)
string(
REGEX
REPLACE "CONFIG_BASE_DEFCONFIG=\"[^\"]*\""
@@ -382,10 +383,10 @@ if(NOT EXISTS ${CMAKE_BINARY_DIR}/.config OR NOT
"${NUTTX_DEFCONFIG}" STREQUAL
string(APPEND _config_init_content
"\nCONFIG_BASE_DEFCONFIG=\"${NUTTX_BOARD}/${NUTTX_CONFIG}\"\n")
endif()
- file(WRITE ${CMAKE_BINARY_DIR}/.config "${_config_init_content}")
+ file(WRITE ${NUTTX_BINARY_DIR}/.config "${_config_init_content}")
# store original expanded .config
- configure_file(${CMAKE_BINARY_DIR}/.config ${CMAKE_BINARY_DIR}/.config.orig
+ configure_file(${NUTTX_BINARY_DIR}/.config ${NUTTX_BINARY_DIR}/.config.orig
COPYONLY)
set(NUTTX_DEFCONFIG_SAVED
@@ -422,7 +423,7 @@ add_custom_target(nuttx_global)
# this exposes all Kconfig vars to CMake
-nuttx_export_kconfig(${CMAKE_BINARY_DIR}/.config)
+nuttx_export_kconfig(${NUTTX_BINARY_DIR}/.config)
include(nuttx_generate_headers)
include(nuttx_generate_outputs)
@@ -471,9 +472,9 @@ endif()
# This needs to happen before project() when binaries are searched for
-list(APPEND CMAKE_MODULE_PATH
${CMAKE_SOURCE_DIR}/arch/${CONFIG_ARCH}/src/cmake)
+list(APPEND CMAKE_MODULE_PATH ${NUTTX_DIR}/arch/${CONFIG_ARCH}/src/cmake)
set(CMAKE_TOOLCHAIN_FILE
- "${CMAKE_SOURCE_DIR}/arch/${CONFIG_ARCH}/src/cmake/Toolchain.cmake")
+ "${NUTTX_DIR}/arch/${CONFIG_ARCH}/src/cmake/Toolchain.cmake")
# Compiler detection must not try to link a full executable. CMake validates a
# compiler by building and linking a test program, but a bare metal cross
@@ -511,8 +512,8 @@ if(EXISTS ${NUTTX_BOARD_ABS_DIR}/cmake
endif()
# Support loadable and kernel options by specific arch
-if(EXISTS ${CMAKE_SOURCE_DIR}/arch/${CONFIG_ARCH}/src/cmake/elf.cmake)
- include(${CMAKE_SOURCE_DIR}/arch/${CONFIG_ARCH}/src/cmake/elf.cmake)
+if(EXISTS ${NUTTX_DIR}/arch/${CONFIG_ARCH}/src/cmake/elf.cmake)
+ include(${NUTTX_DIR}/arch/${CONFIG_ARCH}/src/cmake/elf.cmake)
endif()
include(platform)
@@ -598,7 +599,7 @@ if(CONFIG_ARCH_SIM)
# linked against final nuttx binary
if(NOT WIN32)
- target_link_libraries(nuttx PRIVATE ${CMAKE_BINARY_DIR}/nuttx.rel)
+ target_link_libraries(nuttx PRIVATE ${NUTTX_BINARY_DIR}/nuttx.rel)
endif()
else()
# These flags apply to source files not part of the library. In sim build
this
@@ -620,7 +621,7 @@ set_property(
# Each subdirectory will generate a static library
if(CONFIG_OPENAMP)
- include_directories(${CMAKE_SOURCE_DIR}/openamp/open-amp/lib/include)
+ include_directories(${NUTTX_DIR}/openamp/open-amp/lib/include)
endif()
add_subdirectory(openamp)
@@ -678,7 +679,7 @@ if(NOT CONFIG_ARCH_SIM)
set(ldscript_tmp_list)
foreach(ld ${ldscript})
get_filename_component(LD_SCRIPT_NAME ${ld} NAME)
- set(LD_SCRIPT_TMP "${CMAKE_BINARY_DIR}/${LD_SCRIPT_NAME}.tmp")
+ set(LD_SCRIPT_TMP "${NUTTX_BINARY_DIR}/${LD_SCRIPT_NAME}.tmp")
nuttx_generate_preprocess_target(SOURCE_FILE ${ld} TARGET_FILE
${LD_SCRIPT_TMP})
@@ -705,7 +706,7 @@ else()
endif()
# initialize manifest to hold all generated files
-file(TOUCH ${CMAKE_BINARY_DIR}/nuttx.manifest)
+file(TOUCH ${NUTTX_BINARY_DIR}/nuttx.manifest)
get_property(nuttx_kernel_libs GLOBAL PROPERTY NUTTX_KERNEL_LIBRARIES)
get_property(nuttx_extra_libs GLOBAL PROPERTY NUTTX_EXTRA_LIBRARIES)
@@ -749,7 +750,7 @@ if(NOT CONFIG_ARCH_SIM)
# TODO: install? $(Q) if [ -w /tftpboot ] ; then \ cp -f uImage
# /tftpboot/uImage; \ fi
- file(APPEND ${CMAKE_BINARY_DIR}/nuttx.manifest uImage)
+ file(APPEND ${NUTTX_BINARY_DIR}/nuttx.manifest uImage)
endif()
elseif(WIN32)
target_link_options(nuttx PUBLIC /SAFESEH:NO)
@@ -766,15 +767,15 @@ elseif(WIN32)
endforeach()
add_custom_command(
- OUTPUT ${CMAKE_BINARY_DIR}/nuttx_all.lib
- COMMAND ${CMAKE_AR} /OUT:${CMAKE_BINARY_DIR}/nuttx_all.lib
+ OUTPUT ${NUTTX_BINARY_DIR}/nuttx_all.lib
+ COMMAND ${CMAKE_AR} /OUT:${NUTTX_BINARY_DIR}/nuttx_all.lib
${nuttx_libs_paths}
DEPENDS ${nuttx_libs}
VERBATIM)
- add_custom_target(nuttx_all-lib DEPENDS ${CMAKE_BINARY_DIR}/nuttx_all.lib)
+ add_custom_target(nuttx_all-lib DEPENDS ${NUTTX_BINARY_DIR}/nuttx_all.lib)
add_dependencies(nuttx nuttx_all-lib)
target_link_libraries(nuttx PRIVATE $<TARGET_OBJECTS:sim_head>
- ${CMAKE_BINARY_DIR}/nuttx_all.lib)
+ ${NUTTX_BINARY_DIR}/nuttx_all.lib)
else()
if(NOT APPLE)
@@ -828,7 +829,7 @@ endif()
# TODO: if we use an install target a manifest may not be needed
if(CONFIG_ARCH_SIM)
- file(APPEND ${CMAKE_BINARY_DIR}/nuttx.manifest "nuttx\n")
+ file(APPEND ${NUTTX_BINARY_DIR}/nuttx.manifest "nuttx\n")
endif()
# Generate system map using the compiler toolchain. Conventionally, the tool
@@ -862,7 +863,7 @@ if(CONFIG_BUILD_PROTECTED)
set(user_ldscript_tmp_list)
foreach(ldscript ${user_ldscript})
get_filename_component(LD_SCRIPT_USER_NAME ${ldscript} NAME)
- set(LD_SCRIPT_USER_TMP "${CMAKE_BINARY_DIR}/${LD_SCRIPT_USER_NAME}.tmp")
+ set(LD_SCRIPT_USER_TMP "${NUTTX_BINARY_DIR}/${LD_SCRIPT_USER_NAME}.tmp")
nuttx_generate_preprocess_target(SOURCE_FILE ${ldscript} TARGET_FILE
${LD_SCRIPT_USER_TMP})
add_custom_target(user_ldscript_tmp_${LD_SCRIPT_USER_NAME}
@@ -909,9 +910,8 @@ if(CONFIG_BUILD_PROTECTED)
$<$<NOT:$<BOOL:${DISABLE_LINK_GROUP}>>:-Wl,--end-group>)
target_include_directories(
- nuttx_user SYSTEM
- PRIVATE ${CMAKE_SOURCE_DIR}/include ${CMAKE_BINARY_DIR}/include
- ${CMAKE_BINARY_DIR}/include_arch)
+ nuttx_user SYSTEM PRIVATE ${NUTTX_DIR}/include ${NUTTX_BINARY_DIR}/include
+ ${NUTTX_BINARY_DIR}/include_arch)
add_custom_command(
OUTPUT User.map
diff --git a/arch/CMakeLists.txt b/arch/CMakeLists.txt
index 287370dd040..30a6b7fe78d 100644
--- a/arch/CMakeLists.txt
+++ b/arch/CMakeLists.txt
@@ -25,13 +25,13 @@
# the "user" portion is named "arch_interface".
nuttx_add_kernel_library(arch)
-target_include_directories(arch PRIVATE ${CMAKE_SOURCE_DIR}/sched)
+target_include_directories(arch PRIVATE ${NUTTX_DIR}/sched)
if(CONFIG_BUILD_PROTECTED)
nuttx_add_system_library(arch_interface)
file(TOUCH "${CMAKE_CURRENT_BINARY_DIR}/empty.c")
target_sources(arch_interface PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/empty.c")
- target_include_directories(arch_interface PRIVATE ${CMAKE_SOURCE_DIR}/sched)
+ target_include_directories(arch_interface PRIVATE ${NUTTX_DIR}/sched)
endif()
# TODO: move this higher up ifeq ($(CONFIG_SCHED_INSTRUMENTATION_SYSCALL),y)
diff --git a/arch/arm/src/cmake/ghs.cmake b/arch/arm/src/cmake/ghs.cmake
index f883b17ab4f..288085616da 100644
--- a/arch/arm/src/cmake/ghs.cmake
+++ b/arch/arm/src/cmake/ghs.cmake
@@ -278,7 +278,7 @@ function(nuttx_generate_preprocess_target)
COMMAND
${PREPROCESS}
$<GENEX_EVAL:$<TARGET_PROPERTY:nuttx_global,NUTTX_CPP_COMPILE_OPTIONS>>
- -I${CMAKE_BINARY_DIR}/include -filetype.cpp ${SOURCE_FILE} -o
+ -I${NUTTX_BINARY_DIR}/include -filetype.cpp ${SOURCE_FILE} -o
${EXPECT_TARGET_FILE_NAME}
DEPENDS ${SOURCE_FILE} ${DEPENDS})
diff --git a/arch/arm/src/cmake/platform.cmake
b/arch/arm/src/cmake/platform.cmake
index e7c10544552..10f051eaf24 100644
--- a/arch/arm/src/cmake/platform.cmake
+++ b/arch/arm/src/cmake/platform.cmake
@@ -58,7 +58,7 @@ else()
message(FATAL_ERROR "CMAKE_SYSTEM_PROCESSOR not set")
endif()
-get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${CMAKE_SOURCE_DIR}
+get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${NUTTX_DIR}
COMPILE_OPTIONS)
set(NUTTX_EXTRA_FLAGS "")
diff --git a/arch/arm/src/common/ameba/cmake/ameba_board.cmake
b/arch/arm/src/common/ameba/cmake/ameba_board.cmake
index cd0f8efed6d..cb02887ae9a 100644
--- a/arch/arm/src/common/ameba/cmake/ameba_board.cmake
+++ b/arch/arm/src/common/ameba/cmake/ameba_board.cmake
@@ -247,7 +247,7 @@ target_link_options(
-Wl,--defsym=_sdata=__sram_image2_start__
-Wl,--defsym=_edata=__sram_image2_start__
-Wl,--defsym=_eronly=__sram_image2_start__
- -Wl,-Map=${CMAKE_BINARY_DIR}/nuttx.map
+ -Wl,-Map=${NUTTX_BINARY_DIR}/nuttx.map
${AMEBA_EXTRA_LINK_OPTIONS})
# Append to NUTTX_EXTRA_LIBRARIES (not target_link_libraries): the top-level
@@ -267,19 +267,19 @@ if(EXISTS ${AMEBA_TOOLS_DIR}/ameba_package.sh)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "PACK nuttx.bin (Ameba AP + NP image2)")
add_custom_command(
TARGET nuttx_post_build
POST_BUILD
COMMAND
${CMAKE_COMMAND} -E env
- "AMEBA_FLASH_HINT=AMEBA_PORT=/dev/ttyUSB0 cmake --build
${CMAKE_BINARY_DIR} --target flash"
+ "AMEBA_FLASH_HINT=AMEBA_PORT=/dev/ttyUSB0 cmake --build
${NUTTX_BINARY_DIR} --target flash"
sh ${AMEBA_TOOLS_DIR}/ameba_package.sh ${AMEBA_SDK} ${AMEBA_PY_SOC}
${AMEBA_SOC_NAME} ${AMEBA_PREBUILT} ${AMEBA_AP_PROJECT} ${AMEBA_KM_PROJ}
- ${AMEBA_NP_TARGET} ${AMEBA_TOOLCHAIN_DIR} ${CMAKE_BINARY_DIR}/nuttx
- ${CMAKE_BINARY_DIR}/nuttx.bin
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${AMEBA_NP_TARGET} ${AMEBA_TOOLCHAIN_DIR} ${NUTTX_BINARY_DIR}/nuttx
+ ${NUTTX_BINARY_DIR}/nuttx.bin
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
# USES_TERMINAL -> Ninja "console" pool: stream the (long) SDK NP-build +
# packaging output live instead of buffering it until the step finishes.
USES_TERMINAL COMMAND_EXPAND_LISTS)
@@ -306,8 +306,8 @@ if(AMEBA_FLASH_PROFILE AND NOT TARGET flash)
COMMAND
${CMAKE_COMMAND} -E env sh ${AMEBA_TOOLS_DIR}/ameba_flash.sh ${AMEBA_SDK}
${AMEBA_FLASH_PROFILE} ${AMEBA_AUTOCONF} ${AMEBA_PREBUILT}
- ${CMAKE_BINARY_DIR}/nuttx.bin
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.bin
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
USES_TERMINAL VERBATIM
COMMENT "Flashing Ameba ${AMEBA_PY_SOC} over ${AMEBA_PORT} (AMEBA_PORT
env)"
)
diff --git a/arch/arm/src/nrf52/CMakeLists.txt
b/arch/arm/src/nrf52/CMakeLists.txt
index 4fcf2e6fb81..1367365f175 100644
--- a/arch/arm/src/nrf52/CMakeLists.txt
+++ b/arch/arm/src/nrf52/CMakeLists.txt
@@ -162,7 +162,7 @@ if(CONFIG_NRF52_SOFTDEVICE_CONTROLLER)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/sdk-nrfxlib
BINARY_DIR
- ${CMAKE_BINARY_DIR}/arch/sdk-nrfxlib
+ ${NUTTX_BINARY_DIR}/arch/sdk-nrfxlib
CONFIGURE_COMMAND
""
BUILD_COMMAND
diff --git a/arch/arm/src/nrf53/CMakeLists.txt
b/arch/arm/src/nrf53/CMakeLists.txt
index 49d99a0548f..497c7a48b36 100644
--- a/arch/arm/src/nrf53/CMakeLists.txt
+++ b/arch/arm/src/nrf53/CMakeLists.txt
@@ -129,7 +129,7 @@ if(CONFIG_NRF53_SOFTDEVICE_CONTROLLER)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/sdk-nrfxlib
BINARY_DIR
- ${CMAKE_BINARY_DIR}/arch/sdk-nrfxlib
+ ${NUTTX_BINARY_DIR}/arch/sdk-nrfxlib
CONFIGURE_COMMAND
""
BUILD_COMMAND
diff --git a/arch/arm/src/nrf91/CMakeLists.txt
b/arch/arm/src/nrf91/CMakeLists.txt
index d765b3c6714..f3fae4d457f 100644
--- a/arch/arm/src/nrf91/CMakeLists.txt
+++ b/arch/arm/src/nrf91/CMakeLists.txt
@@ -102,7 +102,7 @@ if(CONFIG_NRF91_MODEM)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/sdk-nrfxlib
BINARY_DIR
- ${CMAKE_BINARY_DIR}/arch/sdk-nrfxlib
+ ${NUTTX_BINARY_DIR}/arch/sdk-nrfxlib
CONFIGURE_COMMAND
""
BUILD_COMMAND
diff --git a/arch/arm/src/rp2040/CMakeLists.txt
b/arch/arm/src/rp2040/CMakeLists.txt
index 5b8b5f5102d..ff4f0e8657a 100644
--- a/arch/arm/src/rp2040/CMakeLists.txt
+++ b/arch/arm/src/rp2040/CMakeLists.txt
@@ -107,7 +107,7 @@ if(CONFIG_RP2040_FLASH_BOOT)
set(PICO_SDK_PATH $ENV{PICO_SDK_PATH})
include(${CMAKE_CURRENT_SOURCE_DIR}/boot2/rp2040_boot_stage2.cmake)
- set(PATH_CHIP_RP2040 ${CMAKE_BINARY_DIR}/arch/${CONFIG_ARCH}/src/chip)
+ set(PATH_CHIP_RP2040 ${NUTTX_BINARY_DIR}/arch/${CONFIG_ARCH}/src/chip)
pico_define_boot_stage2(rp2040_boot_stage2 ${PATH_CHIP_RP2040})
if(EXISTS ${PATH_CHIP_RP2040}/rp2040_boot_stage2.S)
diff --git a/arch/arm64/src/cmake/platform.cmake
b/arch/arm64/src/cmake/platform.cmake
index a4f16ffd143..ceb87f7f3c8 100644
--- a/arch/arm64/src/cmake/platform.cmake
+++ b/arch/arm64/src/cmake/platform.cmake
@@ -20,7 +20,7 @@
#
#
##############################################################################
-get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${CMAKE_SOURCE_DIR}
+get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${NUTTX_DIR}
COMPILE_OPTIONS)
set(CMAKE_C_FLAG_ARGS)
diff --git a/arch/risc-v/src/cmake/platform.cmake
b/arch/risc-v/src/cmake/platform.cmake
index 72d28f6ef99..4ef51e5b396 100644
--- a/arch/risc-v/src/cmake/platform.cmake
+++ b/arch/risc-v/src/cmake/platform.cmake
@@ -20,7 +20,7 @@
#
#
##############################################################################
-get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${CMAKE_SOURCE_DIR}
+get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${NUTTX_DIR}
COMPILE_OPTIONS)
set(NUTTX_EXTRA_FLAGS "")
diff --git a/arch/risc-v/src/common/espressif/Bootloader.cmake
b/arch/risc-v/src/common/espressif/Bootloader.cmake
index e9d7d397407..c129d5fb4c4 100644
--- a/arch/risc-v/src/common/espressif/Bootloader.cmake
+++ b/arch/risc-v/src/common/espressif/Bootloader.cmake
@@ -312,7 +312,7 @@ ExternalProject_Add(
# Add bootloader files to clean list
set_property(
- DIRECTORY ${CMAKE_SOURCE_DIR}
+ DIRECTORY ${NUTTX_DIR}
APPEND
PROPERTY ADDITIONAL_CLEAN_FILES ${HALDIR} ${BOOTLOADER_SRCDIR}
${BOOTLOADER_BIN})
diff --git a/arch/risc-v/src/common/espressif/CMakeLists.txt
b/arch/risc-v/src/common/espressif/CMakeLists.txt
index 52f1540e2ca..350a7beede9 100644
--- a/arch/risc-v/src/common/espressif/CMakeLists.txt
+++ b/arch/risc-v/src/common/espressif/CMakeLists.txt
@@ -254,7 +254,7 @@ option(
get_filename_component(
ESP_HAL_3RDPARTY_CHIP_DIR
-
"${CMAKE_BINARY_DIR}/arch/risc-v/src/common/espressif/${ESP_HAL_3RDPARTY_REPO_NAME}"
+
"${NUTTX_BINARY_DIR}/arch/risc-v/src/common/espressif/${ESP_HAL_3RDPARTY_REPO_NAME}"
REALPATH)
set(EXECUTE_CLONE_ESP_HAL_3RDPARTY_REPO TRUE)
@@ -321,10 +321,10 @@ if(NOT IS_DIRECTORY "${ESP_HAL_3RDPARTY_REPO}")
# Copy gpio_sig_map.h and irq.h from the esp-hal-3rdparty repository to the
NuttX directory
file(COPY
${ESP_HAL_3RDPARTY_REPO}/components/soc/${CHIP_SERIES}/include/soc/gpio_sig_map.h
- DESTINATION ${CMAKE_BINARY_DIR}/include/arch/chip/)
+ DESTINATION ${NUTTX_BINARY_DIR}/include/arch/chip/)
file(COPY ${ESP_HAL_3RDPARTY_REPO}/nuttx/${CHIP_SERIES}/include/irq.h
- DESTINATION ${CMAKE_BINARY_DIR}/include/arch/chip/)
+ DESTINATION ${NUTTX_BINARY_DIR}/include/arch/chip/)
if(CONFIG_ESPRESSIF_WIRELESS)
message(
@@ -350,8 +350,8 @@ endif()
# This is done previously on configure time but must be done again if a 'clean'
# is executed.
-set(_gpio_sig_map ${CMAKE_BINARY_DIR}/include/arch/chip/gpio_sig_map.h)
-set(_irq ${CMAKE_BINARY_DIR}/include/arch/chip/irq.h)
+set(_gpio_sig_map ${NUTTX_BINARY_DIR}/include/arch/chip/gpio_sig_map.h)
+set(_irq ${NUTTX_BINARY_DIR}/include/arch/chip/irq.h)
add_custom_command(
OUTPUT ${_gpio_sig_map} ${_irq}
@@ -446,10 +446,9 @@ add_custom_command(
TARGET nuttx_post_build
POST_BUILD
COMMAND
- ${CMAKE_COMMAND} -DBINARY_DIR=${CMAKE_BINARY_DIR}
- -DSOURCE_DIR=${CMAKE_SOURCE_DIR} -P
- ${NUTTX_DIR}/tools/espressif/espressif_mkimage.cmake
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${CMAKE_COMMAND} -DBINARY_DIR=${NUTTX_BINARY_DIR} -DSOURCE_DIR=${NUTTX_DIR}
+ -P ${NUTTX_DIR}/tools/espressif/espressif_mkimage.cmake
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Generating ESP-compatible binary"
VERBATIM)
@@ -471,10 +470,10 @@ add_custom_target(
flash
DEPENDS nuttx_post_build
COMMAND
- ${CMAKE_COMMAND} -DBINARY_DIR=${CMAKE_BINARY_DIR}
- -DSOURCE_DIR=${CMAKE_SOURCE_DIR} -DNUTTX_DIR=${NUTTX_DIR} -P
+ ${CMAKE_COMMAND} -DBINARY_DIR=${NUTTX_BINARY_DIR} -DSOURCE_DIR=${NUTTX_DIR}
+ -DNUTTX_DIR=${NUTTX_DIR} -P
${NUTTX_DIR}/tools/espressif/espressif_flash.cmake
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Flashing firmware via esptool to $ENV{ESPTOOL_PORT}"
VERBATIM)
@@ -497,6 +496,6 @@ if(CONFIG_ESPRESSIF_USE_LP_CORE)
endif()
set_property(
- DIRECTORY ${CMAKE_SOURCE_DIR}
+ DIRECTORY ${NUTTX_DIR}
APPEND
PROPERTY ADDITIONAL_CLEAN_FILES ${ESP_CLEAN_FILES})
diff --git a/arch/risc-v/src/common/espressif/esp_ulp.cmake
b/arch/risc-v/src/common/espressif/esp_ulp.cmake
index 9fbef1708e2..7a7ce2210c7 100644
--- a/arch/risc-v/src/common/espressif/esp_ulp.cmake
+++ b/arch/risc-v/src/common/espressif/esp_ulp.cmake
@@ -66,7 +66,7 @@ if(CONFIG_ESPRESSIF_USE_LP_CORE)
if(NOT ESP_HAL_3RDPARTY_REPO)
get_filename_component(
ESP_HAL_3RDPARTY_REPO
-
"${CMAKE_BINARY_DIR}/arch/${CONFIG_ARCH}/src/common/espressif/esp-hal-3rdparty"
+
"${NUTTX_BINARY_DIR}/arch/${CONFIG_ARCH}/src/common/espressif/esp-hal-3rdparty"
REALPATH)
endif()
@@ -367,7 +367,7 @@ if(CONFIG_ESPRESSIF_USE_LP_CORE)
OUTPUT ${ULP_NUTTX_CONFIG_COPY}
COMMAND ${CMAKE_COMMAND} -E make_directory ${ULP_FOLDER}/nuttx
COMMAND
- ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/include/nuttx/config.h
+ ${CMAKE_COMMAND} -E copy ${NUTTX_BINARY_DIR}/include/nuttx/config.h
${ULP_NUTTX_CONFIG_COPY}
DEPENDS nuttx_context ${ULP_VAR_MAP_HEADER}
COMMENT "Copying nuttx/config.h for ULP build"
@@ -512,7 +512,7 @@ if(CONFIG_ESPRESSIF_USE_LP_CORE)
get_property(_esp_ulp_defer GLOBAL PROPERTY ESP_ULP_LINK_DEFER_REGISTERED)
if(NOT _esp_ulp_defer)
set_property(GLOBAL PROPERTY ESP_ULP_LINK_DEFER_REGISTERED TRUE)
- cmake_language(DEFER DIRECTORY ${CMAKE_SOURCE_DIR} CALL
+ cmake_language(DEFER DIRECTORY ${NUTTX_DIR} CALL
_esp_ulp_add_nuttx_link_deps)
endif()
@@ -521,7 +521,7 @@ if(CONFIG_ESPRESSIF_USE_LP_CORE)
#
############################################################################
set_property(
- DIRECTORY ${CMAKE_SOURCE_DIR}
+ DIRECTORY ${NUTTX_DIR}
APPEND
PROPERTY ADDITIONAL_CLEAN_FILES ${ULP_FOLDER} ${ULP_ARCH_FOLDER}
${ULP_ALIASES_LD} ${ULP_ARCH_FOLDER}/.ulp_shared_stubs_stamp)
diff --git a/arch/risc-v/src/esp32h2/hal_esp32h2.cmake
b/arch/risc-v/src/esp32h2/hal_esp32h2.cmake
index dd9db692347..fe1251be3af 100644
--- a/arch/risc-v/src/esp32h2/hal_esp32h2.cmake
+++ b/arch/risc-v/src/esp32h2/hal_esp32h2.cmake
@@ -591,7 +591,7 @@ function(nuttx_generate_preprocess_target)
add_custom_command(
OUTPUT ${TARGET_FILE}
COMMAND
- ${PREPROCESS} -I${CMAKE_BINARY_DIR}/include -I${NUTTX_DIR}/include
+ ${PREPROCESS} -I${NUTTX_BINARY_DIR}/include -I${NUTTX_DIR}/include
-I${NUTTX_CHIP_ABS_DIR} ${LD_SCRIPT_HAL_INCLUDE}
${LD_SCRIPT_ADDITIONAL_INCLUDE} -D__NuttX__ ${SOURCE_FILE} >
${TARGET_FILE}
diff --git a/arch/risc-v/src/esp32p4/hal_esp32p4.cmake
b/arch/risc-v/src/esp32p4/hal_esp32p4.cmake
index 254c684aae8..04b130a95d6 100644
--- a/arch/risc-v/src/esp32p4/hal_esp32p4.cmake
+++ b/arch/risc-v/src/esp32p4/hal_esp32p4.cmake
@@ -595,7 +595,7 @@ function(nuttx_generate_preprocess_target)
add_custom_command(
OUTPUT ${TARGET_FILE}
COMMAND
- ${PREPROCESS} -I${CMAKE_BINARY_DIR}/include -I${NUTTX_DIR}/include
+ ${PREPROCESS} -I${NUTTX_BINARY_DIR}/include -I${NUTTX_DIR}/include
-I${NUTTX_CHIP_ABS_DIR} ${LD_SCRIPT_HAL_INCLUDE}
${LD_SCRIPT_ADDITIONAL_INCLUDE} -D__NuttX__ ${SOURCE_FILE} >
${TARGET_FILE}
diff --git a/arch/sim/src/sim/CMakeLists.txt b/arch/sim/src/sim/CMakeLists.txt
index a378448d1a3..4adcc17ba76 100644
--- a/arch/sim/src/sim/CMakeLists.txt
+++ b/arch/sim/src/sim/CMakeLists.txt
@@ -312,7 +312,7 @@ list(APPEND HOSTSRCS sim_errno.c)
configure_file(${NUTTX_DIR}/include/nuttx/fs/hostfs.h
${CMAKE_CURRENT_BINARY_DIR}/hostfs.h COPYONLY)
-configure_file(${CMAKE_BINARY_DIR}/include/nuttx/config.h
+configure_file(${NUTTX_BINARY_DIR}/include/nuttx/config.h
${CMAKE_CURRENT_BINARY_DIR}/config.h COPYONLY)
target_include_directories(nuttx PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
diff --git a/arch/tricore/src/cmake/platform.cmake
b/arch/tricore/src/cmake/platform.cmake
index 42b92044853..7cc04664f24 100644
--- a/arch/tricore/src/cmake/platform.cmake
+++ b/arch/tricore/src/cmake/platform.cmake
@@ -20,7 +20,7 @@
#
#
##############################################################################
-get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${CMAKE_SOURCE_DIR}
+get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${NUTTX_DIR}
COMPILE_OPTIONS)
set(NUTTX_EXTRA_FLAGS "")
diff --git a/arch/tricore/src/common/CMakeLists.txt
b/arch/tricore/src/common/CMakeLists.txt
index 1c51d7ef35b..91767ed2bbd 100644
--- a/arch/tricore/src/common/CMakeLists.txt
+++ b/arch/tricore/src/common/CMakeLists.txt
@@ -76,5 +76,5 @@ target_sources(nuttx PRIVATE tricore_doirq.c)
target_compile_options(arch PRIVATE ${IFXFLAGS})
target_compile_options(nuttx PRIVATE ${IFXFLAGS})
target_include_directories(
- nuttx SYSTEM PRIVATE ${CMAKE_SOURCE_DIR}/include ${CMAKE_BINARY_DIR}/include
- ${CMAKE_BINARY_DIR}/include_arch)
+ nuttx SYSTEM PRIVATE ${NUTTX_DIR}/include ${NUTTX_BINARY_DIR}/include
+ ${NUTTX_BINARY_DIR}/include_arch)
diff --git a/arch/tricore/src/tc3xx/CMakeLists.txt
b/arch/tricore/src/tc3xx/CMakeLists.txt
index ebb9ee5edb0..385ed34b156 100644
--- a/arch/tricore/src/tc3xx/CMakeLists.txt
+++ b/arch/tricore/src/tc3xx/CMakeLists.txt
@@ -29,7 +29,7 @@ if(CONFIG_TRICORE_TOOLCHAIN_TASKING)
target_sources(c_fpu PRIVATE tc3xx_libc.c)
target_link_options(
nuttx PRIVATE
- --library-directory=${CMAKE_BINARY_DIR}/arch/tricore/src/exclude_chip)
+ --library-directory=${NUTTX_BINARY_DIR}/arch/tricore/src/exclude_chip)
endif()
set(ILLD_UNPACK "${CMAKE_CURRENT_SOURCE_DIR}/../illd/tc3xx")
@@ -75,8 +75,8 @@ file(GLOB PATCH_FILES "${PATCHES_DIR}/*.patch")
foreach(PATCH ${PATCH_FILES})
execute_process(
COMMAND git apply --reverse --check ${PATCH}
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} # Patches are applied from the repo
- # root
+ WORKING_DIRECTORY ${NUTTX_DIR} # Patches are applied from the repo
+ # root
RESULT_VARIABLE PATCH_NEEDED
OUTPUT_QUIET ERROR_QUIET)
@@ -85,8 +85,8 @@ foreach(PATCH ${PATCH_FILES})
else()
execute_process(
COMMAND git apply --whitespace=nowarn ${PATCH}
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} # Patches are applied from the repo
- # root
+ WORKING_DIRECTORY ${NUTTX_DIR} # Patches are applied from the repo
+ # root
RESULT_VARIABLE APPLY_RESULT)
if(NOT APPLY_RESULT EQUAL 0)
message(FATAL_ERROR "Failed to apply patch ${PATCH}!")
diff --git a/arch/tricore/src/tc4xx/CMakeLists.txt
b/arch/tricore/src/tc4xx/CMakeLists.txt
index 0735c9b48dc..2c21d86d77a 100644
--- a/arch/tricore/src/tc4xx/CMakeLists.txt
+++ b/arch/tricore/src/tc4xx/CMakeLists.txt
@@ -29,7 +29,7 @@ if(CONFIG_TRICORE_TOOLCHAIN_TASKING)
target_sources(c_fpu PRIVATE tc4xx_libc.c)
target_link_options(
nuttx PRIVATE
- --library-directory=${CMAKE_BINARY_DIR}/arch/tricore/src/exclude_chip)
+ --library-directory=${NUTTX_BINARY_DIR}/arch/tricore/src/exclude_chip)
endif()
set(ILLD_UNPACK "${CMAKE_CURRENT_SOURCE_DIR}/../illd/tc4xx")
@@ -75,8 +75,8 @@ file(GLOB PATCH_FILES "${PATCHES_DIR}/*.patch")
foreach(PATCH ${PATCH_FILES})
execute_process(
COMMAND git apply --reverse --check ${PATCH}
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} # Patches are applied from the repo
- # root
+ WORKING_DIRECTORY ${NUTTX_DIR} # Patches are applied from the repo
+ # root
RESULT_VARIABLE PATCH_NEEDED
OUTPUT_QUIET ERROR_QUIET)
@@ -85,8 +85,8 @@ foreach(PATCH ${PATCH_FILES})
else()
execute_process(
COMMAND git apply --whitespace=nowarn ${PATCH}
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} # Patches are applied from the repo
- # root
+ WORKING_DIRECTORY ${NUTTX_DIR} # Patches are applied from the repo
+ # root
RESULT_VARIABLE APPLY_RESULT)
if(NOT APPLY_RESULT EQUAL 0)
message(FATAL_ERROR "Failed to apply patch ${PATCH}!")
diff --git a/arch/x86_64/src/cmake/platform.cmake
b/arch/x86_64/src/cmake/platform.cmake
index ed6d76df8c5..92005089db7 100644
--- a/arch/x86_64/src/cmake/platform.cmake
+++ b/arch/x86_64/src/cmake/platform.cmake
@@ -20,7 +20,7 @@
#
#
##############################################################################
-get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${CMAKE_SOURCE_DIR}
+get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${NUTTX_DIR}
COMPILE_OPTIONS)
set(NUTTX_EXTRA_FLAGS "")
@@ -68,11 +68,11 @@ set(PREPROCESS ${CMAKE_C_COMPILER} ${CMAKE_C_FLAG_ARGS} -E
-P -x c)
if(CONFIG_ARCH_MULTIBOOT1)
message(STATUS "Generating: nuttx.mb1 in ELF32/multiboot1")
if(CONFIG_ALLSYMS)
- set(FINAL_NUTTX_ELF "${CMAKE_BINARY_DIR}/final_nuttx")
+ set(FINAL_NUTTX_ELF "${NUTTX_BINARY_DIR}/final_nuttx")
else()
- set(FINAL_NUTTX_ELF "${CMAKE_BINARY_DIR}/nuttx")
+ set(FINAL_NUTTX_ELF "${NUTTX_BINARY_DIR}/nuttx")
endif()
- set(NUTTX_ELF "${CMAKE_BINARY_DIR}/nuttx")
+ set(NUTTX_ELF "${NUTTX_BINARY_DIR}/nuttx")
set(NUTTX_BIN "${NUTTX_ELF}.bin")
set(NUTTX_REALMODE_BIN "${NUTTX_ELF}_realmode.bin")
set(NUTTX_MB1 "${NUTTX_ELF}.mb1")
@@ -89,8 +89,8 @@ if(CONFIG_ARCH_MULTIBOOT1)
COMMAND
${CMAKE_C_COMPILER} -m32 -no-pie -nostdlib -DNUTTX_BIN='"${NUTTX_BIN}"'
-DNUTTX_REALMODE_BIN='"${NUTTX_REALMODE_BIN}"'
- ${CMAKE_SOURCE_DIR}/arch/x86_64/src/common/multiboot1.S -T
- ${CMAKE_SOURCE_DIR}/arch/x86_64/src/common/multiboot1.ld -o ${NUTTX_MB1}
+ ${NUTTX_DIR}/arch/x86_64/src/common/multiboot1.S -T
+ ${NUTTX_DIR}/arch/x86_64/src/common/multiboot1.ld -o ${NUTTX_MB1}
DEPENDS ${NUTTX_BIN} ${NUTTX_REALMODE_BIN}
COMMENT "Building nuttx.mb1 multiboot1 image")
add_custom_target(multiboot1 ALL DEPENDS ${NUTTX_MB1})
diff --git a/arch/xtensa/src/cmake/platform.cmake
b/arch/xtensa/src/cmake/platform.cmake
index b62a5c75523..d785994715d 100644
--- a/arch/xtensa/src/cmake/platform.cmake
+++ b/arch/xtensa/src/cmake/platform.cmake
@@ -19,7 +19,7 @@
# the License.
#
#
##############################################################################
-get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${CMAKE_SOURCE_DIR}
+get_directory_property(TOOLCHAIN_DIR_FLAGS DIRECTORY ${NUTTX_DIR}
COMPILE_OPTIONS)
set(NUTTX_EXTRA_FLAGS "")
diff --git a/binfmt/CMakeLists.txt b/binfmt/CMakeLists.txt
index 1af4cd3042b..9a3917c4bb7 100644
--- a/binfmt/CMakeLists.txt
+++ b/binfmt/CMakeLists.txt
@@ -69,4 +69,4 @@ endif()
target_sources(binfmt PRIVATE ${SRCS})
target_include_directories(binfmt PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
-target_include_directories(binfmt PRIVATE ${CMAKE_SOURCE_DIR}/sched)
+target_include_directories(binfmt PRIVATE ${NUTTX_DIR}/sched)
diff --git a/boards/CMakeLists.txt b/boards/CMakeLists.txt
index f1cf1f91ada..a8e85345ff0 100644
--- a/boards/CMakeLists.txt
+++ b/boards/CMakeLists.txt
@@ -32,8 +32,8 @@
# ifeq ($(CUSTOM_KCONFIG),y) BOARD_KCONFIG = $(CUSTOM_KPATH) else BOARD_KCONFIG
# = $(TOPDIR)$(DELIM)configs$(DELIM)dummy$(DELIM)dummy_kconfig endif
-file(WRITE ${CMAKE_BINARY_DIR}/dummy.c "")
-nuttx_add_kernel_library(board ${CMAKE_BINARY_DIR}/dummy.c)
+file(WRITE ${NUTTX_BINARY_DIR}/dummy.c "")
+nuttx_add_kernel_library(board ${NUTTX_BINARY_DIR}/dummy.c)
# boardctl support
@@ -54,9 +54,9 @@ if(EXISTS ${NUTTX_BOARD_ABS_DIR}/../common/CMakeLists.txt)
# Create link ARCH_SRC_BOARD_BOARD_SYMLINK
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/arch/${CONFIG_ARCH}/src/board)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/arch/${CONFIG_ARCH}/src/board)
nuttx_create_symlink(${NUTTX_BOARD_ABS_DIR}/src
- ${CMAKE_BINARY_DIR}/arch/${CONFIG_ARCH}/src/board/board)
+ ${NUTTX_BINARY_DIR}/arch/${CONFIG_ARCH}/src/board/board)
endif()
if(EXISTS ${NUTTX_BOARD_ABS_DIR}/../drivers/CMakeLists.txt)
diff --git a/boards/arm/cxd56xx/spresense/CMakeLists.txt
b/boards/arm/cxd56xx/spresense/CMakeLists.txt
index cafd30dc3db..952ab7d1d6e 100644
--- a/boards/arm/cxd56xx/spresense/CMakeLists.txt
+++ b/boards/arm/cxd56xx/spresense/CMakeLists.txt
@@ -31,9 +31,9 @@ endif()
ExternalProject_Add(
nuttx_post_build
- SOURCE_DIR ${CMAKE_SOURCE_DIR}/tools/cxd56
- INSTALL_DIR ${CMAKE_BINARY_DIR}/tools/cxd56
- CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}
+ SOURCE_DIR ${NUTTX_DIR}/tools/cxd56
+ INSTALL_DIR ${NUTTX_BINARY_DIR}/tools/cxd56
+ CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${NUTTX_BINARY_DIR}
USES_TERMINAL_CONFIGURE true
USES_TERMINAL_BUILD true
USES_TERMINAL_INSTALL true
@@ -43,5 +43,5 @@ add_custom_command(
TARGET nuttx_post_build
POST_BUILD
BYPRODUCTS nuttx.spk
- COMMAND ${CMAKE_BINARY_DIR}/bin/mkspk -c2 nuttx nuttx nuttx.spk
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
+ COMMAND ${NUTTX_BINARY_DIR}/bin/mkspk -c2 nuttx nuttx nuttx.spk
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR})
diff --git a/boards/arm/rp2040/adafruit-feather-rp2040/CMakeLists.txt
b/boards/arm/rp2040/adafruit-feather-rp2040/CMakeLists.txt
index 45f208c4b51..e566754ea5b 100644
--- a/boards/arm/rp2040/adafruit-feather-rp2040/CMakeLists.txt
+++ b/boards/arm/rp2040/adafruit-feather-rp2040/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp2040/adafruit-kb2040/CMakeLists.txt
b/boards/arm/rp2040/adafruit-kb2040/CMakeLists.txt
index debfaf2f9bb..3ba15d9964e 100644
--- a/boards/arm/rp2040/adafruit-kb2040/CMakeLists.txt
+++ b/boards/arm/rp2040/adafruit-kb2040/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp2040/adafruit-qt-py-rp2040/CMakeLists.txt
b/boards/arm/rp2040/adafruit-qt-py-rp2040/CMakeLists.txt
index 520c900fc1e..fda15ba61f6 100644
--- a/boards/arm/rp2040/adafruit-qt-py-rp2040/CMakeLists.txt
+++ b/boards/arm/rp2040/adafruit-qt-py-rp2040/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp2040/pimoroni-tiny2040/CMakeLists.txt
b/boards/arm/rp2040/pimoroni-tiny2040/CMakeLists.txt
index 2a625241968..2771a4f29fa 100644
--- a/boards/arm/rp2040/pimoroni-tiny2040/CMakeLists.txt
+++ b/boards/arm/rp2040/pimoroni-tiny2040/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp2040/raspberrypi-pico-w/CMakeLists.txt
b/boards/arm/rp2040/raspberrypi-pico-w/CMakeLists.txt
index c5d71976c47..fc5bef953de 100644
--- a/boards/arm/rp2040/raspberrypi-pico-w/CMakeLists.txt
+++ b/boards/arm/rp2040/raspberrypi-pico-w/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp2040/raspberrypi-pico/CMakeLists.txt
b/boards/arm/rp2040/raspberrypi-pico/CMakeLists.txt
index d44e6572fd8..22243ddab6f 100644
--- a/boards/arm/rp2040/raspberrypi-pico/CMakeLists.txt
+++ b/boards/arm/rp2040/raspberrypi-pico/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp2040/seeed-xiao-rp2040/CMakeLists.txt
b/boards/arm/rp2040/seeed-xiao-rp2040/CMakeLists.txt
index 05ec14f6c43..a7870eee95e 100644
--- a/boards/arm/rp2040/seeed-xiao-rp2040/CMakeLists.txt
+++ b/boards/arm/rp2040/seeed-xiao-rp2040/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp2040/w5500-evb-pico/CMakeLists.txt
b/boards/arm/rp2040/w5500-evb-pico/CMakeLists.txt
index a985c8352fe..fec13242861 100644
--- a/boards/arm/rp2040/w5500-evb-pico/CMakeLists.txt
+++ b/boards/arm/rp2040/w5500-evb-pico/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/CMakeLists.txt
b/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/CMakeLists.txt
index 54b1c9254b3..ce5fbb798b3 100644
--- a/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/CMakeLists.txt
+++ b/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp2040/waveshare-rp2040-zero/CMakeLists.txt
b/boards/arm/rp2040/waveshare-rp2040-zero/CMakeLists.txt
index cdbdccd24b6..c648e1cab7c 100644
--- a/boards/arm/rp2040/waveshare-rp2040-zero/CMakeLists.txt
+++ b/boards/arm/rp2040/waveshare-rp2040-zero/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp23xx/pimoroni-pico-2-plus/CMakeLists.txt
b/boards/arm/rp23xx/pimoroni-pico-2-plus/CMakeLists.txt
index 1951f57cf68..565b7191233 100644
--- a/boards/arm/rp23xx/pimoroni-pico-2-plus/CMakeLists.txt
+++ b/boards/arm/rp23xx/pimoroni-pico-2-plus/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp23xx/pimoroni-pico-plus-2-w/CMakeLists.txt
b/boards/arm/rp23xx/pimoroni-pico-plus-2-w/CMakeLists.txt
index d9f79aced51..f10d16bbca0 100644
--- a/boards/arm/rp23xx/pimoroni-pico-plus-2-w/CMakeLists.txt
+++ b/boards/arm/rp23xx/pimoroni-pico-plus-2-w/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp23xx/raspberrypi-pico-2/CMakeLists.txt
b/boards/arm/rp23xx/raspberrypi-pico-2/CMakeLists.txt
index 3e953a497c8..2ab6340ee11 100644
--- a/boards/arm/rp23xx/raspberrypi-pico-2/CMakeLists.txt
+++ b/boards/arm/rp23xx/raspberrypi-pico-2/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/arm/rp23xx/xiao-rp2350/CMakeLists.txt
b/boards/arm/rp23xx/xiao-rp2350/CMakeLists.txt
index 7fd0eec95dd..1178fc3d1a2 100644
--- a/boards/arm/rp23xx/xiao-rp2350/CMakeLists.txt
+++ b/boards/arm/rp23xx/xiao-rp2350/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/risc-v/k230/canmv230/src/CMakeLists.txt
b/boards/risc-v/k230/canmv230/src/CMakeLists.txt
index e4b1655f641..9837be1f209 100644
--- a/boards/risc-v/k230/canmv230/src/CMakeLists.txt
+++ b/boards/risc-v/k230/canmv230/src/CMakeLists.txt
@@ -23,8 +23,8 @@
set(SRCS canmv_init.c)
if(CONFIG_BUILD_KERNEL)
- if(EXISTS ${CMAKE_BINARY_DIR}/romfs_boot.c)
- list(APPEND SRCS ${CMAKE_BINARY_DIR}/romfs_boot.c)
+ if(EXISTS ${NUTTX_BINARY_DIR}/romfs_boot.c)
+ list(APPEND SRCS ${NUTTX_BINARY_DIR}/romfs_boot.c)
else()
list(APPEND SRCS romfs_stub.c)
endif()
diff --git a/boards/risc-v/rp23xx-rv/raspberrypi-pico-2-rv/CMakeLists.txt
b/boards/risc-v/rp23xx-rv/raspberrypi-pico-2-rv/CMakeLists.txt
index 29240c67ff2..fdfaeb6b8b9 100644
--- a/boards/risc-v/rp23xx-rv/raspberrypi-pico-2-rv/CMakeLists.txt
+++ b/boards/risc-v/rp23xx-rv/raspberrypi-pico-2-rv/CMakeLists.txt
@@ -25,7 +25,7 @@ add_subdirectory(src)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
# The uf2 command to convert ELF/BIN to UF2
@@ -35,6 +35,6 @@ add_custom_command(
COMMAND picotool ARGS uf2 convert --quiet -t elf nuttx nuttx.uf2
COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E echo "nuttx.uf2" >>
- ${CMAKE_BINARY_DIR}/nuttx.manifest
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ ${NUTTX_BINARY_DIR}/nuttx.manifest
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Regenerate nuttx.uf2")
diff --git a/boards/sim/sim/sim/CMakeLists.txt
b/boards/sim/sim/sim/CMakeLists.txt
index 5e1c6cf2e42..ea42a44db60 100644
--- a/boards/sim/sim/sim/CMakeLists.txt
+++ b/boards/sim/sim/sim/CMakeLists.txt
@@ -26,7 +26,7 @@ if(CONFIG_HOST_LINUX)
add_custom_target(
nuttx_post_build
DEPENDS nuttx
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMAND ${CMAKE_COMMAND} -E make_directory sim-pac
COMMAND ${CMAKE_COMMAND} -E make_directory sim-pac/libs
COMMAND ${CMAKE_COMMAND} -E copy nuttx sim-pac/nuttx
@@ -34,8 +34,7 @@ if(CONFIG_HOST_LINUX)
'{}' cp -v '{}' sim-pac/libs
COMMAND readelf -l nuttx | grep "program interpreter" | awk -F':' '{print
$$2}' | cut -d"]" -f1 | xargs -I '{}' cp -v '{}' sim-pac
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/tools/simlaunch.sh
- sim-pac
+ COMMAND ${CMAKE_COMMAND} -E copy ${NUTTX_DIR}/tools/simlaunch.sh sim-pac
COMMAND tar -czf nuttx.tgz sim-pac
COMMENT "Pac SIM with dynamic libs in nuttx.tgz")
endif()
diff --git a/boards/x86_64/qemu/qemu-intel64/src/CMakeLists.txt
b/boards/x86_64/qemu/qemu-intel64/src/CMakeLists.txt
index 16e2d421b3f..3852dd86afe 100644
--- a/boards/x86_64/qemu/qemu-intel64/src/CMakeLists.txt
+++ b/boards/x86_64/qemu/qemu-intel64/src/CMakeLists.txt
@@ -35,7 +35,7 @@ if(CONFIG_BUILD_KERNEL)
# depend on (cycle).
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/romfs_boot.c
- COMMAND genromfs -f romfs.img -d ${CMAKE_BINARY_DIR}/bin -V NuttXBootVol
+ COMMAND genromfs -f romfs.img -d ${NUTTX_BINARY_DIR}/bin -V NuttXBootVol
COMMAND xxd -i romfs.img romfs_boot.c
DEPENDS $<TARGET_PROPERTY:nuttx,NUTTX_LOADABLE_APPS>
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
diff --git a/cmake/menuconfig.cmake b/cmake/menuconfig.cmake
index bf515c14db3..088612885b6 100644
--- a/cmake/menuconfig.cmake
+++ b/cmake/menuconfig.cmake
@@ -24,9 +24,9 @@
# changes)
set(KCONFIG_ENV
- "KCONFIG_CONFIG=${CMAKE_BINARY_DIR}/.config" "EXTERNALDIR=dummy"
+ "KCONFIG_CONFIG=${NUTTX_BINARY_DIR}/.config" "EXTERNALDIR=dummy"
"APPSDIR=${NUTTX_APPS_DIR}" "DRIVERS_PLATFORM_DIR=dummy"
- "APPSBINDIR=${NUTTX_APPS_BINDIR}" "BINDIR=${CMAKE_BINARY_DIR}")
+ "APPSBINDIR=${NUTTX_APPS_BINDIR}" "BINDIR=${NUTTX_BINARY_DIR}")
# Use qconfig instead of menuconfig since PowerShell not support curses
# redirection
@@ -41,7 +41,7 @@ add_custom_target(
menuconfig
COMMAND ${CMAKE_COMMAND} -E env ${KCONFIG_ENV} ${MENUCONFIG}
COMMAND ${CMAKE_COMMAND} -E remove -f
- ${CMAKE_BINARY_DIR}/include/nuttx/config.h # invalidate existing
+ ${NUTTX_BINARY_DIR}/include/nuttx/config.h # invalidate existing
# config
COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_PARENT_LIST_FILE}
WORKING_DIRECTORY ${NUTTX_DIR}
@@ -53,20 +53,20 @@ add_custom_target(
qconfig
COMMAND ${CMAKE_COMMAND} -E env ${KCONFIG_ENV} guiconfig
COMMAND ${CMAKE_COMMAND} -E remove -f
- ${CMAKE_BINARY_DIR}/include/nuttx/config.h # invalidate existing
+ ${NUTTX_BINARY_DIR}/include/nuttx/config.h # invalidate existing
# config
COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_PARENT_LIST_FILE}
WORKING_DIRECTORY ${NUTTX_DIR}
USES_TERMINAL)
-# Refresh ${CMAKE_BINARY_DIR}/.config in place (set defaults, satisfy deps),
+# Refresh ${NUTTX_BINARY_DIR}/.config in place (set defaults, satisfy deps),
# like "make olddefconfig". Use after hand-editing .config; does not copy from
# board defconfig (see resetconfig for that).
add_custom_target(
olddefconfig
COMMAND ${CMAKE_COMMAND} -E env ${KCONFIG_ENV} olddefconfig
COMMAND ${CMAKE_COMMAND} -E remove -f
- ${CMAKE_BINARY_DIR}/include/nuttx/config.h
+ ${NUTTX_BINARY_DIR}/include/nuttx/config.h
COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_PARENT_LIST_FILE}
WORKING_DIRECTORY ${NUTTX_DIR})
@@ -74,10 +74,10 @@ add_custom_target(
add_custom_target(
resetconfig
COMMAND ${CMAKE_COMMAND} -E copy ${NUTTX_DEFCONFIG}
- ${CMAKE_BINARY_DIR}/.config
+ ${NUTTX_BINARY_DIR}/.config
COMMAND ${CMAKE_COMMAND} -E env ${KCONFIG_ENV} olddefconfig
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/.config
- ${CMAKE_BINARY_DIR}/.config.orig
+ COMMAND ${CMAKE_COMMAND} -E copy ${NUTTX_BINARY_DIR}/.config
+ ${NUTTX_BINARY_DIR}/.config.orig
COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_PARENT_LIST_FILE}
WORKING_DIRECTORY ${NUTTX_DIR})
@@ -88,26 +88,26 @@ add_custom_target(
add_custom_target(
distcleanconfig
COMMAND
- ${CMAKE_COMMAND} -E remove -f ${CMAKE_BINARY_DIR}/.config
- ${CMAKE_BINARY_DIR}/.config.orig ${CMAKE_BINARY_DIR}/.config.prev
- ${CMAKE_BINARY_DIR}/include/nuttx/config.h
+ ${CMAKE_COMMAND} -E remove -f ${NUTTX_BINARY_DIR}/.config
+ ${NUTTX_BINARY_DIR}/.config.orig ${NUTTX_BINARY_DIR}/.config.prev
+ ${NUTTX_BINARY_DIR}/include/nuttx/config.h
WORKING_DIRECTORY ${NUTTX_DIR})
# utility target to refresh .config from board's defconfig for GITHUB
add_custom_target(
refreshsilent
- COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_BINARY_DIR}/SAVEconfig
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/.config
- ${CMAKE_BINARY_DIR}/SAVEconfig
- COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_BINARY_DIR}/.config
+ COMMAND ${CMAKE_COMMAND} -E remove -f ${NUTTX_BINARY_DIR}/SAVEconfig
+ COMMAND ${CMAKE_COMMAND} -E copy ${NUTTX_BINARY_DIR}/.config
+ ${NUTTX_BINARY_DIR}/SAVEconfig
+ COMMAND ${CMAKE_COMMAND} -E remove -f ${NUTTX_BINARY_DIR}/.config
COMMAND ${CMAKE_COMMAND} -E copy ${NUTTX_DEFCONFIG}
- ${CMAKE_BINARY_DIR}/.config
+ ${NUTTX_BINARY_DIR}/.config
COMMAND ${CMAKE_COMMAND} -E env ${KCONFIG_ENV} olddefconfig
COMMAND ${CMAKE_COMMAND} -E env ${KCONFIG_ENV} savedefconfig --out
- ${CMAKE_BINARY_DIR}/defconfig.tmp
+ ${NUTTX_BINARY_DIR}/defconfig.tmp
COMMAND ${CMAKE_COMMAND} -P ${NUTTX_DIR}/cmake/savedefconfig.cmake
- ${CMAKE_BINARY_DIR}/.config ${CMAKE_BINARY_DIR}/defconfig.tmp
- COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_BINARY_DIR}/defconfig
+ ${NUTTX_BINARY_DIR}/.config ${NUTTX_BINARY_DIR}/defconfig.tmp
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${NUTTX_BINARY_DIR}/defconfig
${NUTTX_DEFCONFIG}
WORKING_DIRECTORY ${NUTTX_DIR})
@@ -115,16 +115,15 @@ add_custom_target(
add_custom_target(
savedefconfig
COMMAND ${CMAKE_COMMAND} -E env ${KCONFIG_ENV} savedefconfig --out
- ${CMAKE_BINARY_DIR}/defconfig.tmp
+ ${NUTTX_BINARY_DIR}/defconfig.tmp
COMMAND ${CMAKE_COMMAND} -P ${NUTTX_DIR}/cmake/savedefconfig.cmake
- ${CMAKE_BINARY_DIR}/.config ${CMAKE_BINARY_DIR}/defconfig.tmp
+ ${NUTTX_BINARY_DIR}/.config ${NUTTX_BINARY_DIR}/defconfig.tmp
COMMAND
- ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/tools/process_config.py
- postprocess ${CMAKE_BINARY_DIR}/config_tree.json
- ${CMAKE_BINARY_DIR}/defconfig.orig ${CMAKE_BINARY_DIR}/defconfig
- ${CMAKE_BINARY_DIR}/defconfig.post
+ ${Python3_EXECUTABLE} ${NUTTX_DIR}/tools/process_config.py postprocess
+ ${NUTTX_BINARY_DIR}/config_tree.json ${NUTTX_BINARY_DIR}/defconfig.orig
+ ${NUTTX_BINARY_DIR}/defconfig ${NUTTX_BINARY_DIR}/defconfig.post
COMMAND ${CMAKE_COMMAND} -E copy_if_different
- ${CMAKE_BINARY_DIR}/defconfig.post ${NUTTX_DEFCONFIG}
+ ${NUTTX_BINARY_DIR}/defconfig.post ${NUTTX_DEFCONFIG}
COMMAND ${CMAKE_COMMAND} -E copy_if_different
- ${CMAKE_BINARY_DIR}/defconfig.post ${NUTTX_ORIG_DEFCONFIG}
+ ${NUTTX_BINARY_DIR}/defconfig.post ${NUTTX_ORIG_DEFCONFIG}
WORKING_DIRECTORY ${NUTTX_DIR})
diff --git a/cmake/nuttx_add_application.cmake
b/cmake/nuttx_add_application.cmake
index 12fc54de8d7..131808739b5 100644
--- a/cmake/nuttx_add_application.cmake
+++ b/cmake/nuttx_add_application.cmake
@@ -30,12 +30,12 @@ define_property(
# Create a directories for the application binaries `bin` for stripped binaries
# `bin_debug` for debug binaries
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/bin)
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/bin)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/bin)
endif()
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/bin_debug)
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/bin_debug)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/bin_debug)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/bin_debug)
endif()
# ~~~
@@ -176,7 +176,7 @@ function(nuttx_add_application)
POST_BUILD
COMMAND
# add default link option
- ${CMAKE_LD} -T ${CMAKE_BINARY_DIR}/gnu-elf.ld
+ ${CMAKE_LD} -T ${NUTTX_BINARY_DIR}/gnu-elf.ld
# add global MOD link option if dynlib link
$<$<BOOL:${DYNLIB_ELF_MODE}>:$<TARGET_PROPERTY:nuttx_global,NUTTX_MOD_APP_LINK_OPTIONS>>
# add global ELF link option if m&kernel link
@@ -195,19 +195,19 @@ function(nuttx_add_application)
$<TARGET_FILE:${TARGET}>
$<$<NOT:$<BOOL:${USE_LINKER}>>:-Wl,>--no-whole-archive
$<$<NOT:$<BOOL:${USE_LINKER}>>:-Wl,>--end-group -o
- ${CMAKE_BINARY_DIR}/bin_debug/${ELF_NAME}
+ ${NUTTX_BINARY_DIR}/bin_debug/${ELF_NAME}
COMMAND
- ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/bin_debug/${ELF_NAME}
- ${CMAKE_BINARY_DIR}/bin/${ELF_NAME}
+ ${CMAKE_COMMAND} -E copy ${NUTTX_BINARY_DIR}/bin_debug/${ELF_NAME}
+ ${NUTTX_BINARY_DIR}/bin/${ELF_NAME}
# keep the application attribute symbols through strip so the
binary
# loader can still read them, see NX_KEEP in Application.mk
COMMAND
${CMAKE_STRIP} -K nx_stacksize -K nx_priority -K nx_uid -K nx_gid
-K
- nx_mode ${CMAKE_BINARY_DIR}/bin/${ELF_NAME}
+ nx_mode ${NUTTX_BINARY_DIR}/bin/${ELF_NAME}
# match the Application.mk install rule: ld -r output is not marked
# executable, but filesystem images built from bin/ must carry the
# execute permission
- COMMAND chmod +x ${CMAKE_BINARY_DIR}/bin/${ELF_NAME}
+ COMMAND chmod +x ${NUTTX_BINARY_DIR}/bin/${ELF_NAME}
COMMENT "Building ELF:${ELF_NAME}"
COMMAND_EXPAND_LISTS)
else()
diff --git a/cmake/nuttx_add_library.cmake b/cmake/nuttx_add_library.cmake
index c9c82b676d4..d773375fb7d 100644
--- a/cmake/nuttx_add_library.cmake
+++ b/cmake/nuttx_add_library.cmake
@@ -37,8 +37,7 @@ function(nuttx_add_library_internal target)
# add main include directories
target_include_directories(
- ${target} SYSTEM PRIVATE ${CMAKE_SOURCE_DIR}/include
- ${CMAKE_BINARY_DIR}/include)
+ ${target} SYSTEM PRIVATE ${NUTTX_DIR}/include ${NUTTX_BINARY_DIR}/include)
# Set global compile options & definitions We use the "nuttx" target to hold
# these properties so that libraries added after this property is set can
read
diff --git a/cmake/nuttx_add_romfs.cmake b/cmake/nuttx_add_romfs.cmake
index 404cbd7638e..7633872d037 100644
--- a/cmake/nuttx_add_romfs.cmake
+++ b/cmake/nuttx_add_romfs.cmake
@@ -235,7 +235,7 @@ function(nuttx_add_cromfs)
copy_directory ${PATH} cromfs_${NAME} \; fi
COMMAND if \[ \"${FILES}\" != \"\" \]; then ${CMAKE_COMMAND} -E copy
${FILES} cromfs_${NAME} \; fi
- COMMAND ${CMAKE_BINARY_DIR}/bin_host/gencromfs cromfs_${NAME}
+ COMMAND ${NUTTX_BINARY_DIR}/bin_host/gencromfs cromfs_${NAME}
cromfs_${NAME}.c
DEPENDS ${DEPENDS})
@@ -353,12 +353,12 @@ function(process_all_directory_romfs)
# Build mkpasswd.c as a host binary in the CMake build directory and keep
# the source tree clean.
set(MKPASSWD_SRC ${NUTTX_DIR}/tools/mkpasswd.c)
- set(MKPASSWD_BIN ${CMAKE_BINARY_DIR}/tools/mkpasswd${HOST_EXE_SUFFIX})
+ set(MKPASSWD_BIN ${NUTTX_BINARY_DIR}/tools/mkpasswd${HOST_EXE_SUFFIX})
if(NOT TARGET build_host_mkpasswd)
add_custom_command(
OUTPUT ${MKPASSWD_BIN}
- COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/tools
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${NUTTX_BINARY_DIR}/tools
COMMAND ${HOST_CC} -o ${MKPASSWD_BIN} ${MKPASSWD_SRC}
DEPENDS ${MKPASSWD_SRC}
COMMENT "Building host tool: mkpasswd")
diff --git a/cmake/nuttx_add_symtab.cmake b/cmake/nuttx_add_symtab.cmake
index b3f3b79e40d..b4a23e1a76b 100644
--- a/cmake/nuttx_add_symtab.cmake
+++ b/cmake/nuttx_add_symtab.cmake
@@ -87,7 +87,7 @@ function(nuttx_add_symtab)
DEPENDS symtab_${NAME}_dat)
# generate code which instantiates the symbol table
- configure_file(${CMAKE_SOURCE_DIR}/cmake/symtab.c.in symtab_${NAME}.c @ONLY)
+ configure_file(${NUTTX_DIR}/cmake/symtab.c.in symtab_${NAME}.c @ONLY)
# define an internal library to build the symtab file on its own
add_library(symtab_${NAME} OBJECT
diff --git a/cmake/nuttx_export_header.cmake b/cmake/nuttx_export_header.cmake
index ac1c5619d6e..8c3f0625ed7 100644
--- a/cmake/nuttx_export_header.cmake
+++ b/cmake/nuttx_export_header.cmake
@@ -111,7 +111,7 @@ function(nuttx_export_header)
${ARGN})
# destination directory to be exported by install
- set(EXPORT_PATH_PREFIX ${CMAKE_BINARY_DIR}/staging/include/${TARGET})
+ set(EXPORT_PATH_PREFIX ${NUTTX_BINARY_DIR}/staging/include/${TARGET})
# destination directory origin compile
set(INCLUDE_PATH_PREFIX ${NUTTX_APPS_BINDIR}/include/${TARGET})
diff --git a/cmake/nuttx_extensions.cmake b/cmake/nuttx_extensions.cmake
index 4bb8314fd88..a66e02d9636 100644
--- a/cmake/nuttx_extensions.cmake
+++ b/cmake/nuttx_extensions.cmake
@@ -464,11 +464,11 @@ add_custom_target(
COMMAND
${CMAKE_COMMAND} -E echo
"'$<TARGET_PROPERTY:nuttx_target_interface,ALL_TARGETS>'" >> target_dump
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR})
# Generate host tools CMake binary directory
-execute_process(COMMAND ${CMAKE_COMMAND} -B ${CMAKE_BINARY_DIR}/bin_host -S
- ${CMAKE_SOURCE_DIR}/tools)
+execute_process(COMMAND ${CMAKE_COMMAND} -B ${NUTTX_BINARY_DIR}/bin_host -S
+ ${NUTTX_DIR}/tools)
# Function: nuttx_build_host_target
#
@@ -481,6 +481,6 @@ function(nuttx_build_host_target target)
endif()
add_custom_target(
${target}
- COMMAND cmake --build ${CMAKE_BINARY_DIR}/bin_host --target ${target}
+ COMMAND cmake --build ${NUTTX_BINARY_DIR}/bin_host --target ${target}
SOURCES ${ARGN})
endfunction()
diff --git a/cmake/nuttx_generate_headers.cmake
b/cmake/nuttx_generate_headers.cmake
index 452e33b1948..01982ca8bce 100644
--- a/cmake/nuttx_generate_headers.cmake
+++ b/cmake/nuttx_generate_headers.cmake
@@ -22,12 +22,12 @@
# setup target to generate config.h and version.h from mkconfig and mkversion
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/include)
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/include)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/include)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/include)
endif()
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/include/nuttx)
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/include/nuttx)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/include/nuttx)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/include/nuttx)
endif()
include(nuttx_mkconfig)
@@ -35,40 +35,40 @@ include(nuttx_mkversion)
# Setup symbolic link generation
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/include_apps)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/include_apps)
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory
- ${CMAKE_BINARY_DIR}/include_apps)
+ ${NUTTX_BINARY_DIR}/include_apps)
endif()
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/include/arch)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/include/arch)
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory
- ${CMAKE_BINARY_DIR}/include/arch)
+ ${NUTTX_BINARY_DIR}/include/arch)
file(GLOB CONTENTS ${NUTTX_DIR}/arch/${CONFIG_ARCH}/include/*)
foreach(ARCH_INCDIR ${CONTENTS})
get_filename_component(SUB_ELEMENT ${ARCH_INCDIR} NAME)
nuttx_create_symlink(${NUTTX_DIR}/arch/${CONFIG_ARCH}/include/${SUB_ELEMENT}
- ${CMAKE_BINARY_DIR}/include/arch/${SUB_ELEMENT})
+ ${NUTTX_BINARY_DIR}/include/arch/${SUB_ELEMENT})
endforeach()
endif()
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/include/arch/board)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/include/arch/board)
if(EXISTS ${NUTTX_BOARD_DIR}/include)
nuttx_create_symlink(${NUTTX_BOARD_DIR}/include
- ${CMAKE_BINARY_DIR}/include/arch/board)
+ ${NUTTX_BINARY_DIR}/include/arch/board)
elseif(EXISTS ${NUTTX_BOARD_DIR}/../common/include)
nuttx_create_symlink(${NUTTX_BOARD_DIR}/../common/include
- ${CMAKE_BINARY_DIR}/include/arch/board)
+ ${NUTTX_BINARY_DIR}/include/arch/board)
endif()
endif()
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/include/arch/chip)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/include/arch/chip)
if(CONFIG_ARCH_CHIP_CUSTOM)
nuttx_create_symlink(${NUTTX_CHIP_ABS_DIR}/include
- ${CMAKE_BINARY_DIR}/include/arch/chip)
+ ${NUTTX_BINARY_DIR}/include/arch/chip)
else()
nuttx_create_symlink(
${NUTTX_DIR}/arch/${CONFIG_ARCH}/include/${CONFIG_ARCH_CHIP}
- ${CMAKE_BINARY_DIR}/include/arch/chip)
+ ${NUTTX_BINARY_DIR}/include/arch/chip)
endif()
endif()
@@ -81,9 +81,9 @@ endif()
if(CONFIG_ARCH_STDARG_H)
nuttx_create_symlink(${NUTTX_DIR}/include/nuttx/lib/stdarg.h
- ${CMAKE_BINARY_DIR}/include/stdarg.h)
+ ${NUTTX_BINARY_DIR}/include/stdarg.h)
else()
- file(REMOVE ${CMAKE_BINARY_DIR}/include/stdarg.h)
+ file(REMOVE ${NUTTX_BINARY_DIR}/include/stdarg.h)
endif()
# Target used to copy include/nuttx/lib/math.h. If CONFIG_ARCH_MATH_H is
@@ -107,9 +107,9 @@ endif()
if(NEED_MATH_H)
nuttx_create_symlink(${NUTTX_DIR}/include/nuttx/lib/math.h
- ${CMAKE_BINARY_DIR}/include/math.h)
+ ${NUTTX_BINARY_DIR}/include/math.h)
else()
- file(REMOVE ${CMAKE_BINARY_DIR}/include/math.h)
+ file(REMOVE ${NUTTX_BINARY_DIR}/include/math.h)
endif()
# The float.h header file defines the properties of your floating point
@@ -120,9 +120,9 @@ endif()
if(CONFIG_ARCH_FLOAT_H)
nuttx_create_symlink(${NUTTX_DIR}/include/nuttx/lib/float.h
- ${CMAKE_BINARY_DIR}/include/float.h)
+ ${NUTTX_BINARY_DIR}/include/float.h)
else()
- file(REMOVE ${CMAKE_BINARY_DIR}/include/float.h)
+ file(REMOVE ${NUTTX_BINARY_DIR}/include/float.h)
endif()
# Target used to copy include/nuttx/lib/setjmp.h. If CONFIG_ARCH_SETJMP_H is
@@ -132,9 +132,9 @@ endif()
if(CONFIG_ARCH_SETJMP_H)
nuttx_create_symlink(${NUTTX_DIR}/include/nuttx/lib/setjmp.h
- ${CMAKE_BINARY_DIR}/include/setjmp.h)
+ ${NUTTX_BINARY_DIR}/include/setjmp.h)
else()
- file(REMOVE ${CMAKE_BINARY_DIR}/include/setjmp.h)
+ file(REMOVE ${NUTTX_BINARY_DIR}/include/setjmp.h)
endif()
# Target used to copy include/nuttx/lib/stdbit.h. If CONFIG_ARCH_STDBIT_H or
@@ -143,9 +143,9 @@ endif()
if(CONFIG_ARCH_STDBIT_H OR CONFIG_LIBC_STDBIT_GENERIC)
nuttx_create_symlink(${NUTTX_DIR}/include/nuttx/lib/stdbit.h
- ${CMAKE_BINARY_DIR}/include/stdbit.h)
+ ${NUTTX_BINARY_DIR}/include/stdbit.h)
else()
- file(REMOVE ${CMAKE_BINARY_DIR}/include/stdbit.h)
+ file(REMOVE ${NUTTX_BINARY_DIR}/include/stdbit.h)
endif()
# Add final context target that ties together all of the above The context
@@ -157,14 +157,14 @@ endif()
add_custom_target(
nuttx_context
DEPENDS
- ${CMAKE_BINARY_DIR}/include/nuttx/config.h
- ${CMAKE_BINARY_DIR}/include/nuttx/version.h
- $<$<BOOL:${CONFIG_ARCH_STDARG_H}>:${CMAKE_BINARY_DIR}/include/stdarg.h>
- $<$<BOOL:${NEED_MATH_H}>:${CMAKE_BINARY_DIR}/include/math.h>
- $<$<BOOL:${CONFIG_ARCH_FLOAT_H}>:${CMAKE_BINARY_DIR}/include/float.h>
- $<$<BOOL:${CONFIG_ARCH_SETJMP_H}>:${CMAKE_BINARY_DIR}/include/setjmp.h>
- $<$<BOOL:${CONFIG_ARCH_STDBIT_H}>:${CMAKE_BINARY_DIR}/include/stdbit.h>
-
$<$<BOOL:${CONFIG_LIBC_STDBIT_GENERIC}>:${CMAKE_BINARY_DIR}/include/stdbit.h>
+ ${NUTTX_BINARY_DIR}/include/nuttx/config.h
+ ${NUTTX_BINARY_DIR}/include/nuttx/version.h
+ $<$<BOOL:${CONFIG_ARCH_STDARG_H}>:${NUTTX_BINARY_DIR}/include/stdarg.h>
+ $<$<BOOL:${NEED_MATH_H}>:${NUTTX_BINARY_DIR}/include/math.h>
+ $<$<BOOL:${CONFIG_ARCH_FLOAT_H}>:${NUTTX_BINARY_DIR}/include/float.h>
+ $<$<BOOL:${CONFIG_ARCH_SETJMP_H}>:${NUTTX_BINARY_DIR}/include/setjmp.h>
+ $<$<BOOL:${CONFIG_ARCH_STDBIT_H}>:${NUTTX_BINARY_DIR}/include/stdbit.h>
+
$<$<BOOL:${CONFIG_LIBC_STDBIT_GENERIC}>:${NUTTX_BINARY_DIR}/include/stdbit.h>
)
# apps_context is a PHONY target used as an intermediate process to control the
diff --git a/cmake/nuttx_generate_outputs.cmake
b/cmake/nuttx_generate_outputs.cmake
index 98b2bb12bed..beb43200c89 100644
--- a/cmake/nuttx_generate_outputs.cmake
+++ b/cmake/nuttx_generate_outputs.cmake
@@ -28,7 +28,7 @@ function(nuttx_generate_outputs target)
DEPENDS ${target})
add_custom_target(${target}-hex ALL DEPENDS ${target}.hex)
add_dependencies(nuttx_post ${target}-hex)
- file(APPEND ${CMAKE_BINARY_DIR}/nuttx.manifest "${target}.hex\n")
+ file(APPEND ${NUTTX_BINARY_DIR}/nuttx.manifest "${target}.hex\n")
endif()
if(CONFIG_MOTOROLA_SREC)
@@ -38,7 +38,7 @@ function(nuttx_generate_outputs target)
DEPENDS ${target})
add_custom_target(${target}-srec ALL DEPENDS ${target}.srec)
add_dependencies(nuttx_post ${target}-srec)
- file(APPEND ${CMAKE_BINARY_DIR}/nuttx.manifest "${target}.srec\n")
+ file(APPEND ${NUTTX_BINARY_DIR}/nuttx.manifest "${target}.srec\n")
endif()
if(CONFIG_RAW_BINARY)
@@ -48,7 +48,7 @@ function(nuttx_generate_outputs target)
DEPENDS ${target})
add_custom_target(${target}-bin ALL DEPENDS ${target}.bin)
add_dependencies(nuttx_post ${target}-bin)
- file(APPEND ${CMAKE_BINARY_DIR}/nuttx.manifest "${target}.bin\n")
+ file(APPEND ${NUTTX_BINARY_DIR}/nuttx.manifest "${target}.bin\n")
endif()
if(CONFIG_RAW_DISASSEMBLY)
@@ -64,6 +64,6 @@ function(nuttx_generate_outputs target)
DEPENDS ${target})
endif()
add_custom_target(${target}-asm ALL DEPENDS ${target}.asm)
- file(APPEND ${CMAKE_BINARY_DIR}/nuttx.manifest "${target}.asm\n")
+ file(APPEND ${NUTTX_BINARY_DIR}/nuttx.manifest "${target}.asm\n")
endif()
endfunction(nuttx_generate_outputs)
diff --git a/cmake/nuttx_generate_sim_ld.cmake
b/cmake/nuttx_generate_sim_ld.cmake
index c59301dd6ce..cd3051af88a 100644
--- a/cmake/nuttx_generate_sim_ld.cmake
+++ b/cmake/nuttx_generate_sim_ld.cmake
@@ -46,11 +46,11 @@ set(PROCESS_SIM_LD_SCRIPT
]])
# cmake-format: on
-file(WRITE ${CMAKE_BINARY_DIR}/process_sim_ld_script.sh
+file(WRITE ${NUTTX_BINARY_DIR}/process_sim_ld_script.sh
"${PROCESS_SIM_LD_SCRIPT}")
file(
- COPY ${CMAKE_BINARY_DIR}/process_sim_ld_script.sh
- DESTINATION ${CMAKE_BINARY_DIR}
+ COPY ${NUTTX_BINARY_DIR}/process_sim_ld_script.sh
+ DESTINATION ${NUTTX_BINARY_DIR}
FILE_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ)
add_custom_command(
@@ -62,4 +62,4 @@ add_custom_command(
COMMAND sh process_sim_ld_script.sh nuttx-orig.ld nuttx.ld
COMMAND sed -i '/\\.data *:/i " ${CONFIG_SIM_CUSTOM_DATA_SECTION} " '
nuttx.ld
COMMENT "Generating sim linker script nuttx.ld"
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR})
diff --git a/cmake/nuttx_kconfig.cmake b/cmake/nuttx_kconfig.cmake
index eb5c6eb3268..9247dad5dfe 100644
--- a/cmake/nuttx_kconfig.cmake
+++ b/cmake/nuttx_kconfig.cmake
@@ -218,14 +218,14 @@ function(nuttx_olddefconfig)
endif()
# save the orig compressed formatted defconfig at the very beginning
- execute_process(COMMAND savedefconfig --out ${CMAKE_BINARY_DIR}/defconfig.tmp
+ execute_process(COMMAND savedefconfig --out ${NUTTX_BINARY_DIR}/defconfig.tmp
WORKING_DIRECTORY ${NUTTX_DIR})
execute_process(
COMMAND
${CMAKE_COMMAND} -P ${NUTTX_DIR}/cmake/savedefconfig.cmake
- ${CMAKE_BINARY_DIR}/.config.compressed ${CMAKE_BINARY_DIR}/defconfig.tmp
- ${CMAKE_BINARY_DIR}/defconfig.orig
+ ${NUTTX_BINARY_DIR}/.config.compressed ${NUTTX_BINARY_DIR}/defconfig.tmp
+ ${NUTTX_BINARY_DIR}/defconfig.orig
WORKING_DIRECTORY ${NUTTX_DIR})
endfunction()
@@ -244,7 +244,7 @@ function(nuttx_setconfig)
endif()
if(NOT SETCONFIG_CONFIG_FILE)
- set(SETCONFIG_CONFIG_FILE ${CMAKE_BINARY_DIR}/.config)
+ set(SETCONFIG_CONFIG_FILE ${NUTTX_BINARY_DIR}/.config)
endif()
set(ENV{KCONFIG_CONFIG} ${SETCONFIG_CONFIG_FILE})
diff --git a/cmake/nuttx_mkconfig.cmake b/cmake/nuttx_mkconfig.cmake
index 4ba00cccd02..b96c7fc539d 100644
--- a/cmake/nuttx_mkconfig.cmake
+++ b/cmake/nuttx_mkconfig.cmake
@@ -20,32 +20,32 @@
#
#
##############################################################################
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/.config)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/.config)
return()
endif()
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/.config.prev)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/.config.prev)
execute_process(
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/.config
- ${CMAKE_BINARY_DIR}/.config.prev
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
+ COMMAND ${CMAKE_COMMAND} -E copy ${NUTTX_BINARY_DIR}/.config
+ ${NUTTX_BINARY_DIR}/.config.prev
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR})
endif()
execute_process(
- COMMAND ${CMAKE_COMMAND} -E compare_files ${CMAKE_BINARY_DIR}/.config
- ${CMAKE_BINARY_DIR}/.config.prev
+ COMMAND ${CMAKE_COMMAND} -E compare_files ${NUTTX_BINARY_DIR}/.config
+ ${NUTTX_BINARY_DIR}/.config.prev
RESULT_VARIABLE COMPARE_RESULT
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR})
-set(CONFIG_H ${CMAKE_BINARY_DIR}/include/nuttx/config.h)
+set(CONFIG_H ${NUTTX_BINARY_DIR}/include/nuttx/config.h)
if(COMPARE_RESULT EQUAL 0 AND EXISTS ${CONFIG_H})
return()
endif()
set(BASE_DEFCONFIG "${NUTTX_BOARD}/${NUTTX_CONFIG}")
execute_process(
- COMMAND ${CMAKE_COMMAND} -E compare_files ${CMAKE_BINARY_DIR}/.config
- ${CMAKE_BINARY_DIR}/.config.orig RESULT_VARIABLE COMPARE_RESULT)
+ COMMAND ${CMAKE_COMMAND} -E compare_files ${NUTTX_BINARY_DIR}/.config
+ ${NUTTX_BINARY_DIR}/.config.orig RESULT_VARIABLE COMPARE_RESULT)
if(COMPARE_RESULT)
string(APPEND BASE_DEFCONFIG "-dirty")
endif()
@@ -95,7 +95,7 @@ file(APPEND ${CONFIG_H}
"/* General Definitions ***********************************/\n")
file(APPEND ${CONFIG_H} "#define CONFIG_BASE_DEFCONFIG
\"${BASE_DEFCONFIG}\"\n")
-file(STRINGS ${CMAKE_BINARY_DIR}/.config ConfigContents)
+file(STRINGS ${NUTTX_BINARY_DIR}/.config ConfigContents)
encode_brackets(ConfigContents)
foreach(NameAndValue ${ConfigContents})
decode_brackets(NameAndValue)
diff --git a/cmake/nuttx_mkversion.cmake b/cmake/nuttx_mkversion.cmake
index f882fdcc3da..a6c4d248f9d 100644
--- a/cmake/nuttx_mkversion.cmake
+++ b/cmake/nuttx_mkversion.cmake
@@ -20,7 +20,7 @@
#
#
##############################################################################
-set(VERSION_H ${CMAKE_BINARY_DIR}/include/nuttx/version.h)
+set(VERSION_H ${NUTTX_BINARY_DIR}/include/nuttx/version.h)
if(EXISTS ${VERSION_H})
return()
endif()
diff --git a/cmake/nuttx_multiple_link.cmake b/cmake/nuttx_multiple_link.cmake
index 141da198a72..61d5c07f961 100644
--- a/cmake/nuttx_multiple_link.cmake
+++ b/cmake/nuttx_multiple_link.cmake
@@ -22,35 +22,34 @@
# create an empty allsyms source file for `nuttx`
if(CONFIG_ALLSYMS)
- set(ALLSYMS_SOURCE ${CMAKE_BINARY_DIR}/allsyms_empty.c)
+ set(ALLSYMS_SOURCE ${NUTTX_BINARY_DIR}/allsyms_empty.c)
add_custom_command(
OUTPUT ${ALLSYMS_SOURCE}
COMMAND ${NUTTX_DIR}/tools/mkallsyms.py nuttx.empty ${ALLSYMS_SOURCE}
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Generating allsyms_empty.c")
add_custom_target(generate_empty_allsyms DEPENDS ${ALLSYMS_SOURCE})
add_dependencies(nuttx generate_empty_allsyms)
target_sources(nuttx PRIVATE ${ALLSYMS_SOURCE})
- set(ALLSYMS_INCDIR ${CMAKE_SOURCE_DIR}/include ${CMAKE_BINARY_DIR}/include)
+ set(ALLSYMS_INCDIR ${NUTTX_DIR}/include ${NUTTX_BINARY_DIR}/include)
set_source_files_properties(${ALLSYMS_SOURCE} PROPERTIES INCLUDE_DIRECTORIES
"${ALLSYMS_INCDIR}")
endif()
if(CONFIG_MM_KASAN_GLOBAL)
- set(KASAN_GLOBAL_SOURCE ${CMAKE_BINARY_DIR}/kasan_global.c)
+ set(KASAN_GLOBAL_SOURCE ${NUTTX_BINARY_DIR}/kasan_global.c)
add_custom_command(
OUTPUT ${KASAN_GLOBAL_SOURCE}
COMMAND ${NUTTX_DIR}/tools/kasan_global.py -e nuttx.empty -o
${KASAN_GLOBAL_SOURCE} -a ${CONFIG_MM_KASAN_GLOBAL_ALIGN}
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Generating kasan_global.c")
add_custom_target(generate_empty_kasan_global DEPENDS ${KASAN_GLOBAL_SOURCE})
add_dependencies(nuttx generate_empty_kasan_global)
target_sources(nuttx PRIVATE ${KASAN_GLOBAL_SOURCE})
- set(KASAN_GLOBAL_INCDIR ${CMAKE_SOURCE_DIR}/include
- ${CMAKE_BINARY_DIR}/include)
+ set(KASAN_GLOBAL_INCDIR ${NUTTX_DIR}/include ${NUTTX_BINARY_DIR}/include)
set_source_files_properties(
${KASAN_GLOBAL_SOURCE} PROPERTIES INCLUDE_DIRECTORIES
"${KASAN_GLOBAL_INCDIR}")
@@ -82,10 +81,10 @@ macro(define_multiple_link_target inter_target dep_target
linktimes)
list(APPEND MULTIPLE_LINK_SOURCES_${linktimes} ${LINK_ALLSYMS_SOURCE})
add_custom_command(
OUTPUT ${LINK_ALLSYMS_SOURCE} POST_BUILD
- COMMAND ${NUTTX_DIR}/tools/mkallsyms.py ${CMAKE_BINARY_DIR}/${dep_target}
+ COMMAND ${NUTTX_DIR}/tools/mkallsyms.py ${NUTTX_BINARY_DIR}/${dep_target}
${LINK_ALLSYMS_SOURCE}
DEPENDS ${dep_target}
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMAND_EXPAND_LISTS)
endif()
@@ -95,10 +94,10 @@ macro(define_multiple_link_target inter_target dep_target
linktimes)
add_custom_command(
OUTPUT ${LINK_KASAN_GLOBAL_SOURCE} POST_BUILD
COMMAND
- ${NUTTX_DIR}/tools/kasan_global.py -e ${CMAKE_BINARY_DIR}/${dep_target}
+ ${NUTTX_DIR}/tools/kasan_global.py -e ${NUTTX_BINARY_DIR}/${dep_target}
-o ${LINK_KASAN_GLOBAL_SOURCE} -a ${CONFIG_MM_KASAN_GLOBAL_ALIGN}
DEPENDS ${dep_target}
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMAND_EXPAND_LISTS)
endif()
@@ -111,8 +110,8 @@ macro(define_multiple_link_target inter_target dep_target
linktimes)
# relink target and nuttx have exactly the same configuration
target_include_directories(
- ${inter_target} SYSTEM PUBLIC ${CMAKE_SOURCE_DIR}/include
- ${CMAKE_BINARY_DIR}/include)
+ ${inter_target} SYSTEM PUBLIC ${NUTTX_DIR}/include
+ ${NUTTX_BINARY_DIR}/include)
target_compile_definitions(
${inter_target} PRIVATE $<TARGET_PROPERTY:nuttx,NUTTX_KERNEL_DEFINITIONS>)
target_compile_options(
diff --git a/cmake/nuttx_process_config.cmake b/cmake/nuttx_process_config.cmake
index f66238b0f7e..9e7034dd2ce 100644
--- a/cmake/nuttx_process_config.cmake
+++ b/cmake/nuttx_process_config.cmake
@@ -41,8 +41,8 @@ function(process_config OUTPUT INPUT TREE_FILE)
message(STATUS "Processing includes: ${INPUT} → ${OUTPUT}")
execute_process(
COMMAND
- ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/tools/process_config.py
- preprocess ${OUTPUT} ${INPUT} ${include_args} ${TREE_OPTION} ${TREE_FILE}
+ ${Python3_EXECUTABLE} ${NUTTX_DIR}/tools/process_config.py preprocess
+ ${OUTPUT} ${INPUT} ${include_args} ${TREE_OPTION} ${TREE_FILE}
RESULT_VARIABLE result
OUTPUT_VARIABLE out
ERROR_VARIABLE err)
@@ -56,16 +56,16 @@ endfunction()
file(READ "${NUTTX_DEFCONFIG}" FILE_CONTENTS)
string(FIND "${FILE_CONTENTS}" "#include" INCLUDE_FOUND)
-if(NOT EXISTS ${CMAKE_BINARY_DIR}/.defconfig.processed)
- set(TREE_FILE ${CMAKE_BINARY_DIR}/config_tree.json)
+if(NOT EXISTS ${NUTTX_BINARY_DIR}/.defconfig.processed)
+ set(TREE_FILE ${NUTTX_BINARY_DIR}/config_tree.json)
else()
- set(TREE_FILE ${CMAKE_BINARY_DIR}/config_tree_dirty.json)
+ set(TREE_FILE ${NUTTX_BINARY_DIR}/config_tree_dirty.json)
endif()
# Should we preprocess defconfig?
if(INCLUDE_FOUND GREATER -1)
get_filename_component(NUTTX_DEFCONFIG_DIR "${NUTTX_DEFCONFIG}" DIRECTORY)
process_config(
- ${CMAKE_BINARY_DIR}/.defconfig.processed
+ ${NUTTX_BINARY_DIR}/.defconfig.processed
${NUTTX_DEFCONFIG}
${TREE_FILE}
INCLUDE_PATHS
@@ -74,5 +74,5 @@ if(INCLUDE_FOUND GREATER -1)
${NUTTX_DEFCONFIG_DIR}
${NUTTX_DIR}/../apps
${NUTTX_DIR}/../nuttx-apps)
- set(NUTTX_DEFCONFIG ${CMAKE_BINARY_DIR}/.defconfig.processed)
+ set(NUTTX_DEFCONFIG ${NUTTX_BINARY_DIR}/.defconfig.processed)
endif()
diff --git a/cmake/nuttx_redefine_symbols.cmake
b/cmake/nuttx_redefine_symbols.cmake
index 7ff4012a49e..02cffca33d3 100644
--- a/cmake/nuttx_redefine_symbols.cmake
+++ b/cmake/nuttx_redefine_symbols.cmake
@@ -21,11 +21,11 @@
#
##############################################################################
set(REDEFINE_INPUT_FILE ${NUTTX_DIR}/arch/sim/src/nuttx-names.in)
-set(REDEFINE_OUTPUT_FILE ${CMAKE_BINARY_DIR}/nuttx-names.dat)
+set(REDEFINE_OUTPUT_FILE ${NUTTX_BINARY_DIR}/nuttx-names.dat)
add_custom_command(
OUTPUT ${REDEFINE_OUTPUT_FILE}
- COMMAND ${CMAKE_C_COMPILER} -E -P -x c -I${CMAKE_BINARY_DIR}/include
+ COMMAND ${CMAKE_C_COMPILER} -E -P -x c -I${NUTTX_BINARY_DIR}/include
${REDEFINE_INPUT_FILE} > ${REDEFINE_OUTPUT_FILE}
DEPENDS nuttx_context ${REDEFINE_INPUT_FILE})
diff --git a/cmake/nuttx_sethost.cmake b/cmake/nuttx_sethost.cmake
index 603be508a5a..59cb537e360 100644
--- a/cmake/nuttx_sethost.cmake
+++ b/cmake/nuttx_sethost.cmake
@@ -23,7 +23,7 @@
include(nuttx_kconfig)
function(nuttx_sethost)
- set(config_file ${CMAKE_BINARY_DIR}/.config)
+ set(config_file ${NUTTX_BINARY_DIR}/.config)
cmake_parse_arguments(SETHOST "" "CONFIG_FILE" "" ${ARGN})
if(SETHOST_UNPARSED_ARGUMENTS)
diff --git a/cmake/nuttx_toolchain.cmake b/cmake/nuttx_toolchain.cmake
index b01deda0938..3974846cc04 100644
--- a/cmake/nuttx_toolchain.cmake
+++ b/cmake/nuttx_toolchain.cmake
@@ -113,7 +113,7 @@ if(NOT NUTTX_TOOLCHAIN_PREPROCESS_DEFINED)
OUTPUT ${TARGET_FILE}
COMMAND
${PREPROCESS} ${DEFINES} ${preprocess_depflags}
- -I${CMAKE_BINARY_DIR}/include -I${NUTTX_DIR}/include
+ -I${NUTTX_BINARY_DIR}/include -I${NUTTX_DIR}/include
-I${NUTTX_CHIP_ABS_DIR} ${SOURCE_FILE} > ${TARGET_FILE}
DEPENDS ${SOURCE_FILE} ${DEPENDS} ${depfile_args}
COMMAND_EXPAND_LISTS)
diff --git a/drivers/mtd/CMakeLists.txt b/drivers/mtd/CMakeLists.txt
index aef546411ef..d4a7e03a39c 100644
--- a/drivers/mtd/CMakeLists.txt
+++ b/drivers/mtd/CMakeLists.txt
@@ -188,7 +188,7 @@ if(CONFIG_MTD)
dhara
URL https://github.com/dlbeer/dhara/archive/refs/heads/master.zip
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/dhara BINARY_DIR
- ${CMAKE_BINARY_DIR}/drivers/mtd/dhara
+ ${NUTTX_BINARY_DIR}/drivers/mtd/dhara
DOWNLOAD_NO_PROGRESS true)
FetchContent_Populate(dhara)
endif()
@@ -204,7 +204,7 @@ if(CONFIG_MTD)
nvblk
URL https://github.com/Laczen/nvblk/archive/refs/heads/main.zip
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/nvblk BINARY_DIR
- ${CMAKE_BINARY_DIR}/drivers/mtd/nvblk
+ ${NUTTX_BINARY_DIR}/drivers/mtd/nvblk
DOWNLOAD_NO_PROGRESS true)
FetchContent_Populate(nvblk)
endif()
diff --git a/drivers/segger/CMakeLists.txt b/drivers/segger/CMakeLists.txt
index d0c5bcad620..1997e7bc81f 100644
--- a/drivers/segger/CMakeLists.txt
+++ b/drivers/segger/CMakeLists.txt
@@ -31,7 +31,7 @@ if(CONFIG_SEGGER_RTT OR CONFIG_SEGGER_SYSVIEW)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/SystemView
BINARY_DIR
- ${CMAKE_BINARY_DIR}/SystemView
+ ${NUTTX_BINARY_DIR}/SystemView
DOWNLOAD_NO_PROGRESS true
TIMEOUT 30)
diff --git a/fs/littlefs/CMakeLists.txt b/fs/littlefs/CMakeLists.txt
index dc03c0433d7..5b236d96f15 100644
--- a/fs/littlefs/CMakeLists.txt
+++ b/fs/littlefs/CMakeLists.txt
@@ -29,7 +29,7 @@ if(CONFIG_FS_LITTLEFS)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/littlefs
BINARY_DIR
- ${CMAKE_BINARY_DIR}/fs/littlefs/littlefs
+ ${NUTTX_BINARY_DIR}/fs/littlefs/littlefs
PATCH_COMMAND
patch -p2 -d ${CMAKE_CURRENT_LIST_DIR} <
${CMAKE_CURRENT_LIST_DIR}/lfs_util.patch && patch -p2 -d
@@ -44,7 +44,7 @@ if(CONFIG_FS_LITTLEFS)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/littlefs
BINARY_DIR
- ${CMAKE_BINARY_DIR}/fs/littlefs/littlefs)
+ ${NUTTX_BINARY_DIR}/fs/littlefs/littlefs)
endif()
FetchContent_MakeAvailable(littlefs)
endif()
diff --git a/libs/libbuiltin/compiler-rt/CMakeLists.txt
b/libs/libbuiltin/compiler-rt/CMakeLists.txt
index 81d3e6d4e01..56fee38f82c 100644
--- a/libs/libbuiltin/compiler-rt/CMakeLists.txt
+++ b/libs/libbuiltin/compiler-rt/CMakeLists.txt
@@ -32,7 +32,7 @@ if(CONFIG_LIB_COMPILER_RT)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/compiler-rt
BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libbuiltin/compiler-rt
+ ${NUTTX_BINARY_DIR}/libs/libbuiltin/compiler-rt
CONFIGURE_COMMAND
""
BUILD_COMMAND
diff --git a/libs/libc/elf/CMakeLists.txt b/libs/libc/elf/CMakeLists.txt
index 5a0edc78cba..b4ca4ac3d82 100644
--- a/libs/libc/elf/CMakeLists.txt
+++ b/libs/libc/elf/CMakeLists.txt
@@ -49,7 +49,7 @@ if(CONFIG_LIBC_ELF)
target_sources(c PRIVATE ${SRCS})
- set(ELF_LD_SCRIPT_TMP "${CMAKE_BINARY_DIR}/gnu-elf.ld")
+ set(ELF_LD_SCRIPT_TMP "${NUTTX_BINARY_DIR}/gnu-elf.ld")
nuttx_generate_preprocess_target(
SOURCE_FILE ${NUTTX_DIR}/libs/libc/elf/gnu-elf.ld.in TARGET_FILE
diff --git a/libs/libc/fdt/CMakeLists.txt b/libs/libc/fdt/CMakeLists.txt
index 1aeb614765f..4444d4f6256 100644
--- a/libs/libc/fdt/CMakeLists.txt
+++ b/libs/libc/fdt/CMakeLists.txt
@@ -29,7 +29,7 @@ if(CONFIG_LIBC_FDT)
dtc
URL https://github.com/dgibson/dtc/archive/v${VERSION}.zip SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/dtc BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libc/fdt/dtc)
+ ${NUTTX_BINARY_DIR}/libs/libc/fdt/dtc)
FetchContent_GetProperties(dtc)
if(NOT dtc_POPULATED)
FetchContent_Populate(dtc)
diff --git a/libs/libc/gnssutils/CMakeLists.txt
b/libs/libc/gnssutils/CMakeLists.txt
index 36fd985882d..b2bf6a212e5 100644
--- a/libs/libc/gnssutils/CMakeLists.txt
+++ b/libs/libc/gnssutils/CMakeLists.txt
@@ -32,7 +32,7 @@ if(CONFIG_GNSSUTILS_MINMEA_LIB)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/minmea
BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libc/gnssutils/minmea
+ ${NUTTX_BINARY_DIR}/libs/libc/gnssutils/minmea
CONFIGURE_COMMAND
""
BUILD_COMMAND
@@ -51,12 +51,12 @@ if(CONFIG_GNSSUTILS_MINMEA_LIB)
endif()
endif()
- if(NOT EXISTS ${CMAKE_BINARY_DIR}/include/minmea)
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/include/minmea)
+ if(NOT EXISTS ${NUTTX_BINARY_DIR}/include/minmea)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/include/minmea)
endif()
configure_file(${CMAKE_CURRENT_LIST_DIR}/minmea/minmea.h
- ${CMAKE_BINARY_DIR}/include/minmea/minmea.h COPYONLY)
+ ${NUTTX_BINARY_DIR}/include/minmea/minmea.h COPYONLY)
target_sources(c PRIVATE minmea/minmea.c)
diff --git a/libs/libm/libmcs/CMakeLists.txt b/libs/libm/libmcs/CMakeLists.txt
index b983ffa837a..c672d0231d8 100644
--- a/libs/libm/libmcs/CMakeLists.txt
+++ b/libs/libm/libmcs/CMakeLists.txt
@@ -36,7 +36,7 @@ if(CONFIG_LIBM_LIBMCS)
FetchContent_Declare(
libmcs_fetch
URL ${LIBMCS_URL} SOURCE_DIR ${LIBMCS_URL}/libmcs BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libm/libmcs/libmcs
+ ${NUTTX_BINARY_DIR}/libs/libm/libmcs/libmcs
PATCH_COMMAND
patch -p2 -d ${CMAKE_CURRENT_LIST_DIR} <
${CMAKE_CURRENT_LIST_DIR}/0001-fix-build-error-remove-unused-file-fenv.h.patch
@@ -111,6 +111,6 @@ if(CONFIG_LIBM_LIBMCS)
target_compile_options(m PRIVATE ${CFLAGS})
nuttx_create_symlink(${LIBMCS_DIR}/libm/include
- ${CMAKE_BINARY_DIR}/include/libmcs)
+ ${NUTTX_BINARY_DIR}/include/libmcs)
endif()
diff --git a/libs/libm/newlib/CMakeLists.txt b/libs/libm/newlib/CMakeLists.txt
index eef4566355b..67a154e7a89 100644
--- a/libs/libm/newlib/CMakeLists.txt
+++ b/libs/libm/newlib/CMakeLists.txt
@@ -37,7 +37,7 @@ if(CONFIG_LIBM_NEWLIB)
FetchContent_Declare(
newlib_fetch
URL ${NEWLIB_URL} SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/newlib BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libm/newlib/newlib
+ ${NUTTX_BINARY_DIR}/libs/libm/newlib/newlib
PATCH_COMMAND
patch -p1 -d ${CMAKE_CURRENT_LIST_DIR} <
${CMAKE_CURRENT_LIST_DIR}/0001-newlib-libm-fix-__RCSID-build-error.patch
diff --git a/libs/libm/openlibm/CMakeLists.txt
b/libs/libm/openlibm/CMakeLists.txt
index c0c57b8c90c..49b25b891d5 100644
--- a/libs/libm/openlibm/CMakeLists.txt
+++ b/libs/libm/openlibm/CMakeLists.txt
@@ -36,7 +36,7 @@ if(CONFIG_LIBM_OPENLIBM)
FetchContent_Declare(
openlibm_fetch
URL ${OPENLIBM_URL} SOURCE_DIR ${OPENLIBM_URL}/openlibm BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libm/openlibm/openlibm
+ ${NUTTX_BINARY_DIR}/libs/libm/openlibm/openlibm
PATCH_COMMAND
patch -p1 -d ${CMAKE_CURRENT_LIST_DIR} <
${CMAKE_CURRENT_LIST_DIR}/0001-fix-build-float_t-error-float_t-has-not-been-declare.patch
diff --git a/libs/libxx/libcxx/CMakeLists.txt b/libs/libxx/libcxx/CMakeLists.txt
index 020c1ad05db..8f41ff67131 100644
--- a/libs/libxx/libcxx/CMakeLists.txt
+++ b/libs/libxx/libcxx/CMakeLists.txt
@@ -33,7 +33,7 @@ if(CONFIG_LIBCXX)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/libcxx
BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libc/libcxx
+ ${NUTTX_BINARY_DIR}/libs/libc/libcxx
CONFIGURE_COMMAND
""
BUILD_COMMAND
@@ -67,17 +67,17 @@ if(CONFIG_LIBCXX)
endif()
nuttx_create_symlink(${CMAKE_CURRENT_LIST_DIR}/libcxx/include
- ${CMAKE_BINARY_DIR}/include/libcxx)
+ ${NUTTX_BINARY_DIR}/include/libcxx)
nuttx_create_symlink(${CMAKE_CURRENT_LIST_DIR}/../__config_site
- ${CMAKE_BINARY_DIR}/include/libcxx_config/__config_site)
+ ${NUTTX_BINARY_DIR}/include/libcxx_config/__config_site)
set_property(
TARGET nuttx
APPEND
PROPERTY NUTTX_CXX_INCLUDE_DIRECTORIES
- ${CMAKE_BINARY_DIR}/include/libcxx
- ${CMAKE_BINARY_DIR}/include/libcxx_config
+ ${NUTTX_BINARY_DIR}/include/libcxx
+ ${NUTTX_BINARY_DIR}/include/libcxx_config
${CMAKE_CURRENT_LIST_DIR}/libcxx/test/support
${CMAKE_CURRENT_LIST_DIR}/libcxx/src)
diff --git a/libs/libxx/libcxxabi/CMakeLists.txt
b/libs/libxx/libcxxabi/CMakeLists.txt
index ea89d5e20b7..62ae0a518c4 100644
--- a/libs/libxx/libcxxabi/CMakeLists.txt
+++ b/libs/libxx/libcxxabi/CMakeLists.txt
@@ -32,7 +32,7 @@ if(CONFIG_LIBCXXABI)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/libcxxabi
BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libc/libcxxabi
+ ${NUTTX_BINARY_DIR}/libs/libc/libcxxabi
CONFIGURE_COMMAND
""
BUILD_COMMAND
@@ -53,13 +53,13 @@ if(CONFIG_LIBCXXABI)
endif()
nuttx_create_symlink(${CMAKE_CURRENT_LIST_DIR}/libcxxabi/include
- ${CMAKE_BINARY_DIR}/include/libcxxabi)
+ ${NUTTX_BINARY_DIR}/include/libcxxabi)
set_property(
TARGET nuttx
APPEND
PROPERTY NUTTX_CXX_INCLUDE_DIRECTORIES
- ${CMAKE_BINARY_DIR}/include/libcxxabi)
+ ${NUTTX_BINARY_DIR}/include/libcxxabi)
nuttx_add_system_library(libcxxabi)
diff --git a/libs/libxx/libstdc++/CMakeLists.txt
b/libs/libxx/libstdc++/CMakeLists.txt
index 89e7eef4bf7..5412d3fe641 100644
--- a/libs/libxx/libstdc++/CMakeLists.txt
+++ b/libs/libxx/libstdc++/CMakeLists.txt
@@ -36,7 +36,7 @@ if(CONFIG_LIBSUPCXX)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/libstdc++
BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libxx/libstdc++
+ ${NUTTX_BINARY_DIR}/libs/libxx/libstdc++
CONFIGURE_COMMAND
""
BUILD_COMMAND
@@ -70,12 +70,12 @@ if(CONFIG_LIBSUPCXX)
endif()
# Create include directories
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/include/c++)
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/include/c++/bits)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/include/c++)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/include/c++/bits)
# Copy headers to c++ include directory
- set(CXXDIR ${CMAKE_BINARY_DIR}/include/c++)
- set(BITSDIR ${CMAKE_BINARY_DIR}/include/c++/bits)
+ set(CXXDIR ${NUTTX_BINARY_DIR}/include/c++)
+ set(BITSDIR ${NUTTX_BINARY_DIR}/include/c++/bits)
# Copy libsupc++ headers
file(COPY ${CMAKE_CURRENT_LIST_DIR}/c++config.h DESTINATION ${INCDIR}/bits)
@@ -143,8 +143,7 @@ if(CONFIG_LIBSUPCXX)
# Add system include directories
target_include_directories(
- libsupcxx SYSTEM PRIVATE ${CMAKE_SOURCE_DIR}/include
- ${CMAKE_BINARY_DIR}/include)
+ libsupcxx SYSTEM PRIVATE ${NUTTX_DIR}/include ${NUTTX_BINARY_DIR}/include)
# Set global compile options & definitions from nuttx target
target_compile_options(
diff --git a/libs/libxx/uClibc++/CMakeLists.txt
b/libs/libxx/uClibc++/CMakeLists.txt
index 1f34afab48f..2171e06b07e 100644
--- a/libs/libxx/uClibc++/CMakeLists.txt
+++ b/libs/libxx/uClibc++/CMakeLists.txt
@@ -35,7 +35,7 @@ if(CONFIG_UCLIBCXX)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/uClibc++
BINARY_DIR
- ${CMAKE_BINARY_DIR}/libs/libc/uClibc++
+ ${NUTTX_BINARY_DIR}/libs/libc/uClibc++
CONFIGURE_COMMAND
""
BUILD_COMMAND
@@ -61,16 +61,16 @@ if(CONFIG_UCLIBCXX)
endif()
nuttx_create_symlink(${CMAKE_CURRENT_LIST_DIR}/uClibc++/include
- ${CMAKE_BINARY_DIR}/include/uClibc++)
+ ${NUTTX_BINARY_DIR}/include/uClibc++)
configure_file(
${CMAKE_CURRENT_LIST_DIR}/system_configuration.h
- ${CMAKE_BINARY_DIR}/include/uClibc++/system_configuration.h COPYONLY)
+ ${NUTTX_BINARY_DIR}/include/uClibc++/system_configuration.h COPYONLY)
set_property(
TARGET nuttx
APPEND
- PROPERTY NUTTX_CXX_INCLUDE_DIRECTORIES
${CMAKE_BINARY_DIR}/include/uClibc++)
+ PROPERTY NUTTX_CXX_INCLUDE_DIRECTORIES
${NUTTX_BINARY_DIR}/include/uClibc++)
set(SRCS
algorithm.cpp
diff --git a/mm/tlsf/CMakeLists.txt b/mm/tlsf/CMakeLists.txt
index 0f2734d4710..48dc68ba7bc 100644
--- a/mm/tlsf/CMakeLists.txt
+++ b/mm/tlsf/CMakeLists.txt
@@ -33,7 +33,7 @@ if(CONFIG_MM_TLSF_MANAGER)
tlsf_fetch
GIT_REPOSITORY https://github.com/mattconte/tlsf.git
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/tlsf BINARY_DIR
- ${CMAKE_BINARY_DIR}/mm/tlsf/tlsf
+ ${NUTTX_BINARY_DIR}/mm/tlsf/tlsf
PATCH_COMMAND
patch -p1 -d ${CMAKE_CURRENT_LIST_DIR} <
${CMAKE_CURRENT_LIST_DIR}/0001-Add-TLSF_API-and-tlsf_printf.patch &&
diff --git a/openamp/libmetal.cmake b/openamp/libmetal.cmake
index 26fbe9ed637..30044cef5f0 100644
--- a/openamp/libmetal.cmake
+++ b/openamp/libmetal.cmake
@@ -28,7 +28,7 @@ if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/libmetal)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/libmetal
BINARY_DIR
- ${CMAKE_BINARY_DIR}/openamp/libmetal
+ ${NUTTX_BINARY_DIR}/openamp/libmetal
CONFIGURE_COMMAND
""
BUILD_COMMAND
@@ -76,6 +76,6 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/libmetal
${CMAKE_CURRENT_BINARY_DIR}/libmetal EXCLUDE_FROM_ALL)
nuttx_create_symlink(${CMAKE_CURRENT_BINARY_DIR}/libmetal/lib/include/metal
- ${CMAKE_BINARY_DIR}/include/metal)
+ ${NUTTX_BINARY_DIR}/include/metal)
nuttx_add_external_library(metal-static MODE KERNEL)
diff --git a/openamp/open-amp.cmake b/openamp/open-amp.cmake
index 8b14484e03e..18907721f0d 100644
--- a/openamp/open-amp.cmake
+++ b/openamp/open-amp.cmake
@@ -28,7 +28,7 @@ if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/open-amp)
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/open-amp
BINARY_DIR
- ${CMAKE_BINARY_DIR}/openamp/open-amp
+ ${NUTTX_BINARY_DIR}/openamp/open-amp
CONFIGURE_COMMAND
""
BUILD_COMMAND
@@ -120,7 +120,7 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/open-amp
${CMAKE_CURRENT_BINARY_DIR}/open-amp EXCLUDE_FROM_ALL)
# install nuttx openamp binary dir headers
-set(OPENAMP_HEADER_DIR ${CMAKE_BINARY_DIR}/include/openamp)
+set(OPENAMP_HEADER_DIR ${NUTTX_BINARY_DIR}/include/openamp)
file(GLOB headers open-amp/lib/include/openamp/*.h open-amp/lib/remoteproc/*.h
open-amp/lib/rpmsg/*h)
file(MAKE_DIRECTORY ${OPENAMP_HEADER_DIR})
diff --git a/syscall/CMakeLists.txt b/syscall/CMakeLists.txt
index 4555ffd532e..83db6e37466 100644
--- a/syscall/CMakeLists.txt
+++ b/syscall/CMakeLists.txt
@@ -25,7 +25,7 @@ list(TRANSFORM SYSCALLS REPLACE "^\"([^,]+)\",.+" "\\1")
list(TRANSFORM SYSCALLS APPEND ".c")
# generate the host tool
-nuttx_build_host_target(mksyscall ${CMAKE_SOURCE_DIR}/tools/mksyscall.c)
+nuttx_build_host_target(mksyscall ${NUTTX_DIR}/tools/mksyscall.c)
if(CONFIG_LIB_SYSCALL)
add_subdirectory(proxies)
diff --git a/syscall/proxies/CMakeLists.txt b/syscall/proxies/CMakeLists.txt
index 83ff0c1d8af..bab4b69cbae 100644
--- a/syscall/proxies/CMakeLists.txt
+++ b/syscall/proxies/CMakeLists.txt
@@ -26,7 +26,7 @@ list(TRANSFORM SYSCALLS PREPEND
"${CMAKE_CURRENT_BINARY_DIR}/PROXY_")
# generate files
add_custom_command(
OUTPUT ${SYSCALLS}
- COMMAND ${CMAKE_BINARY_DIR}/bin_host/mksyscall -p
+ COMMAND ${NUTTX_BINARY_DIR}/bin_host/mksyscall -p
${CMAKE_CURRENT_LIST_DIR}/../syscall.csv
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
DEPENDS mksyscall)
diff --git a/syscall/stubs/CMakeLists.txt b/syscall/stubs/CMakeLists.txt
index 59e56f75117..246d9e8f41d 100644
--- a/syscall/stubs/CMakeLists.txt
+++ b/syscall/stubs/CMakeLists.txt
@@ -26,7 +26,7 @@ list(TRANSFORM SYSCALLS PREPEND
"${CMAKE_CURRENT_BINARY_DIR}/STUB_")
# generate files
add_custom_command(
OUTPUT ${SYSCALLS}
- COMMAND ${CMAKE_BINARY_DIR}/bin_host/mksyscall -s
+ COMMAND ${NUTTX_BINARY_DIR}/bin_host/mksyscall -s
${CMAKE_CURRENT_LIST_DIR}/../syscall.csv
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
DEPENDS mksyscall)
diff --git a/syscall/wraps/CMakeLists.txt b/syscall/wraps/CMakeLists.txt
index 6d3e218e51c..a443323ba38 100644
--- a/syscall/wraps/CMakeLists.txt
+++ b/syscall/wraps/CMakeLists.txt
@@ -26,7 +26,7 @@ list(TRANSFORM SYSCALLS PREPEND
"${CMAKE_CURRENT_BINARY_DIR}/WRAP_")
# generate files
add_custom_command(
OUTPUT ${SYSCALLS}
- COMMAND ${CMAKE_BINARY_DIR}/bin_host/mksyscall -w
+ COMMAND ${NUTTX_BINARY_DIR}/bin_host/mksyscall -w
${CMAKE_CURRENT_LIST_DIR}/../syscall.csv
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
DEPENDS mksyscall)
diff --git a/tools/espressif/espressif_burn_enc_key.cmake
b/tools/espressif/espressif_burn_enc_key.cmake
index 54864d5d479..dec33025fa7 100644
--- a/tools/espressif/espressif_burn_enc_key.cmake
+++ b/tools/espressif/espressif_burn_enc_key.cmake
@@ -22,7 +22,7 @@
#
# Include() from the main NuttX CMake configure when
# CONFIG_ESPRESSIF_SECURE_FLASH_ENC_ENABLED. Defines the ``burn_enc_key``
target
-# (no cmake -P). Expects NUTTX_DIR, CMAKE_BINARY_DIR, CMAKE_SOURCE_DIR.
+# (no cmake -P). Expects NUTTX_DIR, NUTTX_BINARY_DIR, NUTTX_DIR.
#
# Serial port: ESPTOOL_PORT in the environment at build time (e.g.
# ESPTOOL_PORT=/dev/ttyUSB0). NOCHECK must also be set so the burn is explicit
@@ -40,8 +40,8 @@ if(NOT PYTHON3)
message(FATAL_ERROR "python3 not found (required for burn_enc_key)")
endif()
-set(BINARY_DIR "${CMAKE_BINARY_DIR}")
-set(SOURCE_DIR "${CMAKE_SOURCE_DIR}")
+set(BINARY_DIR "${NUTTX_BINARY_DIR}")
+set(SOURCE_DIR "${NUTTX_DIR}")
include(${NUTTX_DIR}/tools/espressif/espressif_esptool_common.cmake)
if(NOT EXISTS "${FLASH_ENC_KEY_PATH}")
@@ -88,7 +88,7 @@ else()
${CMAKE_COMMAND} -E env "NUTTX_ESPEFUSE=${ESPEFUSE}"
"NUTTX_KEY=${FLASH_ENC_KEY_PATH}" -- ${PYTHON3}
"${NUTTX_DIR}/tools/espressif/burn_flash_enc_key.py"
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ WORKING_DIRECTORY ${NUTTX_BINARY_DIR}
COMMENT "Burn flash encryption key to eFuses (espefuse.py)"
VERBATIM)
unset(_nuttx_burn_key_msg)
diff --git a/wireless/CMakeLists.txt b/wireless/CMakeLists.txt
index 72458cf1aef..50ec1f1e3e5 100644
--- a/wireless/CMakeLists.txt
+++ b/wireless/CMakeLists.txt
@@ -25,11 +25,11 @@ if(CONFIG_WIRELESS)
nuttx_add_subdirectory()
- if(NOT EXISTS ${CMAKE_BINARY_DIR}/wireless)
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/wireless)
+ if(NOT EXISTS ${NUTTX_BINARY_DIR}/wireless)
+ file(MAKE_DIRECTORY ${NUTTX_BINARY_DIR}/wireless)
endif()
- if(NOT EXISTS ${CMAKE_BINARY_DIR}/wireless/dummy.c)
- file(TOUCH ${CMAKE_BINARY_DIR}/wireless/dummy.c)
+ if(NOT EXISTS ${NUTTX_BINARY_DIR}/wireless/dummy.c)
+ file(TOUCH ${NUTTX_BINARY_DIR}/wireless/dummy.c)
endif()
- target_sources(wireless PRIVATE ${CMAKE_BINARY_DIR}/wireless/dummy.c)
+ target_sources(wireless PRIVATE ${NUTTX_BINARY_DIR}/wireless/dummy.c)
endif()