mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-21 15:43:34 +08:00
cmake remove circular linking and reorganize
- px4_add_module now requires MAIN - px4_add_library doesn't automatically link
This commit is contained in:
@@ -31,13 +31,14 @@
|
||||
#
|
||||
############################################################################
|
||||
|
||||
if (${OS} MATCHES "nuttx")
|
||||
px4_add_library(boards_common
|
||||
# common board drivers (currently only for nuttx fmu boards)
|
||||
if (${OS} MATCHES "nuttx" AND NOT ${BOARD} MATCHES "io")
|
||||
|
||||
px4_add_library(drivers_boards_common
|
||||
board_crashdump.c
|
||||
board_dma_alloc.c
|
||||
board_gpio_init.c
|
||||
)
|
||||
add_dependencies(boards_common nuttx_build)
|
||||
|
||||
if (${CONFIG_ARCH_CHIP} MATCHES "kinetis")
|
||||
add_subdirectory(kinetis)
|
||||
@@ -46,4 +47,16 @@ if (${OS} MATCHES "nuttx")
|
||||
elseif (${CONFIG_ARCH_CHIP} MATCHES "stm32")
|
||||
add_subdirectory(stm32)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
target_link_libraries(drivers_boards_common
|
||||
PRIVATE
|
||||
drivers_boards_common_arch
|
||||
nuttx_arch # bbsram
|
||||
nuttx_mm # dma gran alloc
|
||||
systemlib
|
||||
)
|
||||
|
||||
else()
|
||||
add_library(drivers_boards_common INTERFACE)
|
||||
add_library(drivers_boards_common_arch INTERFACE)
|
||||
endif()
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
#include <errno.h>
|
||||
#include <nuttx/mm/gran.h>
|
||||
|
||||
#include <systemlib/perf_counter.h>
|
||||
#include <perf/perf_counter.h>
|
||||
|
||||
/************************************************************************************
|
||||
* Definitions
|
||||
|
||||
@@ -31,9 +31,10 @@
|
||||
#
|
||||
############################################################################
|
||||
|
||||
px4_add_library(board_kinetis
|
||||
add_library(drivers_boards_common_arch
|
||||
board_identity.c
|
||||
board_mcu_version.c
|
||||
board_reset.c
|
||||
)
|
||||
add_dependencies(board_kinetis nuttx_build)
|
||||
add_dependencies(drivers_boards_common_arch prebuild_targets)
|
||||
target_link_libraries(drivers_boards_common_arch PRIVATE nuttx_arch)
|
||||
|
||||
@@ -31,9 +31,10 @@
|
||||
#
|
||||
############################################################################
|
||||
|
||||
px4_add_library(board_samv7
|
||||
add_library(drivers_boards_common_arch
|
||||
board_identity.c
|
||||
board_mcu_version.c
|
||||
board_reset.c
|
||||
)
|
||||
add_dependencies(board_samv7 nuttx_build)
|
||||
)
|
||||
add_dependencies(drivers_boards_common_arch prebuild_targets)
|
||||
target_link_libraries(drivers_boards_common_arch PRIVATE nuttx_arch)
|
||||
|
||||
@@ -43,5 +43,6 @@ if (NOT ${LABEL} STREQUAL "bootloader")
|
||||
)
|
||||
endif()
|
||||
|
||||
px4_add_library(board_stm32 ${SRCS})
|
||||
add_dependencies(board_stm32 nuttx_build)
|
||||
add_library(drivers_boards_common_arch ${SRCS})
|
||||
add_dependencies(drivers_boards_common_arch prebuild_targets)
|
||||
target_link_libraries(drivers_boards_common_arch PRIVATE nuttx_arch)
|
||||
|
||||
@@ -79,7 +79,10 @@ void board_system_reset(int status)
|
||||
#if defined(BOARD_HAS_ON_RESET)
|
||||
board_on_reset(status);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_BOARDCTL_RESET
|
||||
board_reset(status);
|
||||
#endif
|
||||
|
||||
while (1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user