forked from Archive/PX4-Autopilot
Tools to ease nuttx config maintenance (#6452)
* Added tool to restore defconfig sections after make [old|menu]config * Use tool to restore defconfig sections after make [old|menu]config invocation: make px4fmu-v2_default oldconfig_px4fmu-v2 make px4fmu-v2_default menuconfig_px4fmu-v2
This commit is contained in:
parent
72ea5c53db
commit
b3f5a0d51a
|
@ -0,0 +1,48 @@
|
|||
#! /bin/bash
|
||||
|
||||
if [ $# -eq 0 ]
|
||||
then
|
||||
echo "Usage: $0 <path to defconfig>"
|
||||
exit 1
|
||||
fi
|
||||
configsdir=nuttx-configs
|
||||
defconf=$1
|
||||
configsrc=$configsdir${defconf##*$configsdir}
|
||||
|
||||
if [ ! -f $defconf ]
|
||||
then
|
||||
echo "$defconf does not exist"
|
||||
exit 2
|
||||
fi
|
||||
|
||||
|
||||
lastconf=$defconf.last
|
||||
chunk=$defconf.chunk
|
||||
|
||||
echo $configsrc
|
||||
git show HEAD:$configsrc > $lastconf
|
||||
|
||||
lead='^# Board Selection$'
|
||||
tail='^# Common Board Options$'
|
||||
|
||||
cat $lastconf | sed -n "/$lead/,/$tail/p" | sed '1d;$d' > $chunk
|
||||
|
||||
echo "Fix up Board Selection"
|
||||
sed -i -e "/$lead/,/$tail/{ /$lead/{p; r $chunk
|
||||
}; /$tail/p; d }" $defconf
|
||||
|
||||
|
||||
if grep --quiet CONFIG_START_YEAR $lastconf ; then
|
||||
lead='^CONFIG_START_YEAR='
|
||||
tail='^CONFIG_START_DAY='
|
||||
cat $lastconf | sed -n "/$lead/,/$tail/p" > $chunk
|
||||
lead='^# Clocks and Timers$'
|
||||
echo "Fix up Clocks and Timers"
|
||||
sed -i -e "/$lead/{N;{r $chunk
|
||||
}}" $defconf
|
||||
else
|
||||
echo not found
|
||||
fi
|
||||
|
||||
rm $lastconf
|
||||
rm $chunk
|
|
@ -304,14 +304,23 @@ function(px4_nuttx_add_export)
|
|||
WORKING_DIRECTORY ${PX4_BINARY_DIR}
|
||||
COMMENT "Configuring NuttX for ${CONFIG} with ${config_nuttx_config}")
|
||||
|
||||
# manual reconfigure helper
|
||||
add_custom_target(reconfigure_nuttx_${CONFIG}
|
||||
# manual reconfigure helpers
|
||||
add_custom_target(oldconfig_${CONFIG}
|
||||
COMMAND cd ${nuttx_src}/nuttx
|
||||
COMMAND ${MAKE} -C ${nuttx_src}/nuttx CONFIG_ARCH_BOARD=${CONFIG} oldconfig
|
||||
COMMAND ${CP} ${nuttx_src}/nuttx/.config ${PX4_SOURCE_DIR}/nuttx-configs/${CONFIG}/${config_nuttx_config}/defconfig
|
||||
COMMAND ${PX4_SOURCE_DIR}/Tools/nuttx_defconf_tool.sh ${PX4_SOURCE_DIR}/nuttx-configs/${CONFIG}/${config_nuttx_config}/defconfig
|
||||
DEPENDS ${nuttx_src}/nuttx/.config
|
||||
COMMENT "Running NuttX make oldconfig for ${CONFIG} with ${config_nuttx_config}"
|
||||
USES_TERMINAL)
|
||||
|
||||
add_custom_target(menuconfig_${CONFIG}
|
||||
COMMAND cd ${nuttx_src}/nuttx
|
||||
COMMAND ${MAKE} -C ${nuttx_src}/nuttx CONFIG_ARCH_BOARD=${CONFIG} menuconfig
|
||||
COMMAND ${CP} ${nuttx_src}/nuttx/.config ${PX4_SOURCE_DIR}/nuttx-configs/${CONFIG}/${config_nuttx_config}/defconfig
|
||||
COMMAND ${PX4_SOURCE_DIR}/Tools/nuttx_defconf_tool.sh ${PX4_SOURCE_DIR}/nuttx-configs/${CONFIG}/${config_nuttx_config}/defconfig
|
||||
DEPENDS ${nuttx_src}/nuttx/.config
|
||||
COMMENT "Reconfiguring NuttX for ${CONFIG} with ${config_nuttx_config}"
|
||||
COMMENT "Running NuttX make menuconfig for ${CONFIG} with ${config_nuttx_config}"
|
||||
USES_TERMINAL)
|
||||
|
||||
# build and export
|
||||
|
|
Loading…
Reference in New Issue