Working on param xml gen. Haven't updated qurt config yet.

This commit is contained in:
James Goppert
2015-09-10 17:44:27 -04:00
parent 2bd0c2479e
commit 6966331a88
7 changed files with 141 additions and 78 deletions
@@ -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()
+39 -2
View File
@@ -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()
+33 -9
View File
@@ -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()
#=============================================================================