mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-19 06:03:35 +08:00
Working on param xml gen. Haven't updated qurt config yet.
This commit is contained in:
@@ -1,9 +1,13 @@
|
||||
include(nuttx/px4_impl_nuttx)
|
||||
|
||||
function(px4_set_config_modules out_module_list)
|
||||
function(px4_get_config)
|
||||
|
||||
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
|
||||
|
||||
#
|
||||
# Board support modules
|
||||
#
|
||||
@@ -161,25 +165,39 @@ function(px4_set_config_modules out_module_list)
|
||||
#examples/hwtest
|
||||
)
|
||||
|
||||
# TODO convert rest of makefile config below
|
||||
set(firmware_options
|
||||
PARAM_XML # generate param xml
|
||||
)
|
||||
|
||||
# Generate parameter XML file
|
||||
#GEN_PARAM_XML = 1
|
||||
set(extra_cmds serdis_main sercon_main)
|
||||
|
||||
set(${out_module_list} ${config_module_list} PARENT_SCOPE)
|
||||
# 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_nuttx_builtin_extra_commands out)
|
||||
function(px4_add_extra_builtin_cmds)
|
||||
|
||||
add_custom_target(sercon_main)
|
||||
set_target_properties(sercon_main PROPERTIES
|
||||
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
|
||||
MAIN "sercon" STACK "2048")
|
||||
|
||||
add_custom_target(serdis_main)
|
||||
set_target_properties(serdis_main PROPERTIES
|
||||
add_custom_target(serdis)
|
||||
set_target_properties(serdis PROPERTIES
|
||||
MAIN "serdis" STACK "2048")
|
||||
|
||||
set(${out} sercon_main serdis_main PARENT_SCOPE)
|
||||
set(${OUT} sercon serdis PARENT_SCOPE)
|
||||
|
||||
endfunction()
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
include(nuttx/px4_impl_nuttx)
|
||||
|
||||
function(px4_set_config_modules out_module_list)
|
||||
function(px4_get_config)
|
||||
|
||||
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
|
||||
|
||||
@@ -117,25 +122,39 @@ function(px4_set_config_modules out_module_list)
|
||||
examples/hwtest
|
||||
)
|
||||
|
||||
# TODO convert rest of makefile config below
|
||||
set(firmware_options
|
||||
PARAM_XML # generate param xml
|
||||
)
|
||||
|
||||
# Generate parameter XML file
|
||||
#GEN_PARAM_XML = 1
|
||||
set(extra_cmds serdis_main sercon_main)
|
||||
|
||||
set(${out_module_list} ${config_module_list} PARENT_SCOPE)
|
||||
# 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_nuttx_builtin_extra_commands out)
|
||||
function(px4_add_extra_builtin_cmds)
|
||||
|
||||
add_custom_target(sercon_main)
|
||||
set_target_properties(sercon_main PROPERTIES
|
||||
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
|
||||
MAIN "sercon" STACK "2048")
|
||||
|
||||
add_custom_target(serdis_main)
|
||||
set_target_properties(serdis_main PROPERTIES
|
||||
add_custom_target(serdis)
|
||||
set_target_properties(serdis PROPERTIES
|
||||
MAIN "serdis" STACK "2048")
|
||||
|
||||
set(${out} sercon_main serdis_main PARENT_SCOPE)
|
||||
set(${OUT} sercon serdis PARENT_SCOPE)
|
||||
|
||||
endfunction()
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
include(posix/px4_impl_posix)
|
||||
|
||||
function(px4_set_config_modules out_module_list)
|
||||
function(px4_get_config)
|
||||
|
||||
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
|
||||
drivers/led
|
||||
@@ -54,7 +59,39 @@ function(px4_set_config_modules out_module_list)
|
||||
lib/launchdetection
|
||||
)
|
||||
|
||||
set(${out_module_list} ${config_module_list} PARENT_SCOPE)
|
||||
set(firmware_options
|
||||
PARAM_XML # generate param xml
|
||||
)
|
||||
|
||||
set(extra_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
|
||||
MAIN "sercon" STACK "2048")
|
||||
|
||||
add_custom_target(serdis)
|
||||
set_target_properties(serdis PROPERTIES
|
||||
MAIN "serdis" STACK "2048")
|
||||
|
||||
set(${OUT} sercon serdis PARENT_SCOPE)
|
||||
|
||||
endfunction()
|
||||
|
||||
@@ -79,16 +79,40 @@ function(px4_nuttx_add_firmware)
|
||||
REQUIRED EXE
|
||||
ARGN ${ARGN})
|
||||
|
||||
set(process_params ${CMAKE_SOURCE_DIR}/Tools/px_process_params.py)
|
||||
set(process_airframes ${CMAKE_SOURCE_DIR}/Tools/px_process_airframes.py)
|
||||
|
||||
|
||||
#TODO handle param_xml
|
||||
add_custom_command(OUTPUT ${OUT}
|
||||
COMMAND ${OBJCOPY} -O binary ${EXE} ${EXE}.bin
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Tools/px_mkfw.py
|
||||
--prototype ${CMAKE_SOURCE_DIR}/Images/${BOARD}.prototype
|
||||
--git_identity ${CMAKE_SOURCE_DIR}
|
||||
--image ${EXE}.bin > ${OUT}
|
||||
DEPENDS ${EXE}
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||
)
|
||||
if(PARAM_XML)
|
||||
add_custom_command(OUTPUT ${OUT}
|
||||
COMMAND ${process_params}
|
||||
--src-path ${CMAKE_SOURCE_DIR}/src
|
||||
--board CONFIG_ARCH_BOARD_${BOARD} --xml
|
||||
COMMAND ${process_airframes}
|
||||
-a ${CMAKE_SOURCE_DIR}/ROMFS/px4fmu_common/init.d
|
||||
--board CONFIG_ARCH_BOARD_${BOARD} --xml
|
||||
COMMAND ${OBJCOPY} -O binary ${EXE} ${EXE}.bin
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Tools/px_mkfw.py
|
||||
--prototype ${CMAKE_SOURCE_DIR}/Images/${BOARD}.prototype
|
||||
--git_identity ${CMAKE_SOURCE_DIR}
|
||||
--parameter_xml parameters.xml
|
||||
--airframe_xml airframe.xml
|
||||
--image ${EXE}.bin > ${OUT}
|
||||
DEPENDS ${EXE}
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||
)
|
||||
else()
|
||||
add_custom_command(OUTPUT ${OUT}
|
||||
COMMAND ${OBJCOPY} -O binary ${EXE} ${EXE}.bin
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Tools/px_mkfw.py
|
||||
--prototype ${CMAKE_SOURCE_DIR}/Images/${BOARD}.prototype
|
||||
--git_identity ${CMAKE_SOURCE_DIR}
|
||||
--image ${EXE}.bin > ${OUT}
|
||||
DEPENDS ${EXE}
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||
)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
#=============================================================================
|
||||
|
||||
Reference in New Issue
Block a user