mirror of
https://gitee.com/xiaohuolufeihua/bizhang_-obav.git
synced 2026-05-21 01:12:11 +00:00
Simplified config handling.
This commit is contained in:
@@ -73,8 +73,8 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
#
|
||||
# * Never set global variables in an included cmake file,
|
||||
# you may only define functions. This excludes Toolchain files. This
|
||||
# makes it clear to the user when variables are being set or targets
|
||||
# you may only define functions. This excludes config and Toolchain files.
|
||||
# This makes it clear to the user when variables are being set or targets
|
||||
# are being created.
|
||||
#
|
||||
# * Setting a global variable in a CMakeLists.txt file is ok, because
|
||||
@@ -133,7 +133,7 @@ set(px4_required_config
|
||||
)
|
||||
foreach(conf ${px4_required_config})
|
||||
if(NOT DEFINED ${conf})
|
||||
message(FATAL_ERROR "${config_module} must define ${conf}")
|
||||
message(FATAL_ERROR "cmake/${config_module} must define ${conf}")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
|
||||
@@ -1,13 +1,8 @@
|
||||
include(nuttx/px4_impl_nuttx)
|
||||
|
||||
function(px4_get_config)
|
||||
set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-arm-none-eabi.cmake)
|
||||
|
||||
px4_parse_function_args(
|
||||
NAME px4_set_config_modules
|
||||
ONE_VALUE OUT_MODULES OUT_FW_OPTS OUT_EXTRA_CMDS
|
||||
ARGN ${ARGN})
|
||||
|
||||
set(config_module_list
|
||||
set(config_module_list
|
||||
|
||||
#
|
||||
# Board support modules
|
||||
@@ -120,41 +115,21 @@ function(px4_get_config)
|
||||
|
||||
# Hardware test
|
||||
examples/hwtest
|
||||
)
|
||||
)
|
||||
|
||||
set(firmware_options
|
||||
set(config_firmware_options
|
||||
PARAM_XML # generate param xml
|
||||
)
|
||||
|
||||
set(extra_cmds serdis_main sercon_main)
|
||||
set(config_extra_builtin_cmds
|
||||
serdis_main
|
||||
sercon_main
|
||||
)
|
||||
|
||||
# output
|
||||
if(OUT_MODULES)
|
||||
set(${OUT_MODULES} ${config_module_list} PARENT_SCOPE)
|
||||
endif()
|
||||
|
||||
if (OUT_FW_OPTS)
|
||||
set(${OUT_FW_OPTS} ${fw_opts} PARENT_SCOPE)
|
||||
endif()
|
||||
|
||||
endfunction()
|
||||
|
||||
function(px4_add_extra_builtin_cmds)
|
||||
|
||||
px4_parse_function_args(
|
||||
NAME px4_add_extra_builtin_cmds
|
||||
ONE_VALUE OUT
|
||||
REQUIRED OUT
|
||||
ARGN ${ARGN})
|
||||
|
||||
add_custom_target(sercon)
|
||||
set_target_properties(sercon PROPERTIES
|
||||
add_custom_target(sercon)
|
||||
set_target_properties(sercon PROPERTIES
|
||||
MAIN "sercon" STACK "2048")
|
||||
|
||||
add_custom_target(serdis)
|
||||
set_target_properties(serdis PROPERTIES
|
||||
add_custom_target(serdis)
|
||||
set_target_properties(serdis PROPERTIES
|
||||
MAIN "serdis" STACK "2048")
|
||||
|
||||
set(${OUT} sercon serdis PARENT_SCOPE)
|
||||
|
||||
endfunction()
|
||||
|
||||
@@ -2,14 +2,9 @@ include(nuttx/px4_impl_nuttx)
|
||||
|
||||
message(WARNING "this is a work in progress and doesn't build yet")
|
||||
|
||||
function(px4_get_config)
|
||||
set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-native.cmake)
|
||||
|
||||
px4_parse_function_args(
|
||||
NAME px4_set_config_modules
|
||||
ONE_VALUE OUT_MODULES OUT_FW_OPTS OUT_EXTRA_CMDS
|
||||
ARGN ${ARGN})
|
||||
|
||||
set(config_module_list
|
||||
set(config_module_list
|
||||
platforms/nuttx
|
||||
platforms/nuttx/px4_layer
|
||||
platforms/common
|
||||
@@ -22,7 +17,20 @@ function(px4_get_config)
|
||||
lib/conversion
|
||||
)
|
||||
|
||||
set(${out_module_list} ${config_module_list} PARENT_SCOPE)
|
||||
set(config_firmware_options
|
||||
PARAM_XML # generate param xml
|
||||
)
|
||||
|
||||
endfunction()
|
||||
set(config_extra_builtin_cmds
|
||||
serdis_main
|
||||
sercon_main
|
||||
)
|
||||
|
||||
add_custom_target(sercon)
|
||||
set_target_properties(sercon PROPERTIES
|
||||
MAIN "sercon" STACK "2048")
|
||||
|
||||
add_custom_target(serdis)
|
||||
set_target_properties(serdis PROPERTIES
|
||||
MAIN "serdis" STACK "2048")
|
||||
|
||||
|
||||
@@ -1,14 +1,8 @@
|
||||
include(posix/px4_impl_posix)
|
||||
set(USE_TOOLCHAIN Toolchain-native)
|
||||
|
||||
function(px4_get_config)
|
||||
set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-native.cmake)
|
||||
|
||||
px4_parse_function_args(
|
||||
NAME px4_set_config_modules
|
||||
ONE_VALUE OUT_MODULES OUT_FW_OPTS OUT_EXTRA_CMDS
|
||||
ARGN ${ARGN})
|
||||
|
||||
set(config_module_list
|
||||
set(config_module_list
|
||||
drivers/led
|
||||
drivers/device
|
||||
drivers/boards/sitl
|
||||
@@ -60,39 +54,20 @@ function(px4_get_config)
|
||||
lib/launchdetection
|
||||
)
|
||||
|
||||
set(firmware_options
|
||||
|
||||
set(config_firmware_options
|
||||
PARAM_XML # generate param xml
|
||||
)
|
||||
|
||||
set(extra_cmds serdis_main sercon_main)
|
||||
set(config_extra_builtin_cmds
|
||||
serdis_main
|
||||
sercon_main
|
||||
)
|
||||
|
||||
# output
|
||||
if(OUT_MODULES)
|
||||
set(${OUT_MODULES} ${config_module_list} PARENT_SCOPE)
|
||||
endif()
|
||||
|
||||
if (OUT_FW_OPTS)
|
||||
set(${OUT_FW_OPTS} ${fw_opts} PARENT_SCOPE)
|
||||
endif()
|
||||
|
||||
endfunction()
|
||||
|
||||
function(px4_add_extra_builtin_cmds)
|
||||
|
||||
px4_parse_function_args(
|
||||
NAME px4_add_extra_builtin_cmds
|
||||
ONE_VALUE OUT
|
||||
REQUIRED OUT
|
||||
ARGN ${ARGN})
|
||||
|
||||
add_custom_target(sercon)
|
||||
set_target_properties(sercon PROPERTIES
|
||||
add_custom_target(sercon)
|
||||
set_target_properties(sercon PROPERTIES
|
||||
MAIN "sercon" STACK "2048")
|
||||
|
||||
add_custom_target(serdis)
|
||||
set_target_properties(serdis PROPERTIES
|
||||
add_custom_target(serdis)
|
||||
set_target_properties(serdis PROPERTIES
|
||||
MAIN "serdis" STACK "2048")
|
||||
|
||||
set(${OUT} sercon serdis PARENT_SCOPE)
|
||||
|
||||
endfunction()
|
||||
|
||||
Reference in New Issue
Block a user