2020-07-09 07:27:20 -07:00
#!/bin/bash
2020-01-02 15:58:28 -08:00
2020-07-05 19:44:45 -07:00
# file gen_config_board.sh
2021-07-20 10:29:41 -07:00
# for example ./gen_config_board.sh hellen/hellen128 hellen128
2020-07-05 19:44:45 -07:00
2021-03-03 04:50:53 -08:00
set -e
2020-01-02 15:58:28 -08:00
2020-07-05 19:39:55 -07:00
echo "This script reads rusefi_config.txt and produces firmware persistent configuration headers"
echo "the storage section of rusefiXXX.ini is updated as well"
2020-01-02 15:58:28 -08:00
if [ -z " $1 " ] ; then
echo "Board name parameter expected"
exit 1
fi
BOARDNAME = $1
2020-06-28 10:39:09 -07:00
SHORT_BOARDNAME = $2
2021-07-17 18:41:45 -07:00
if [ -n " $3 " ] ; then
INI = " $3 "
else
INI = " rusefi_ ${ SHORT_BOARDNAME } .ini "
fi
2020-01-02 15:58:28 -08:00
2020-06-28 10:39:09 -07:00
echo " BOARDNAME= ${ BOARDNAME } SHORT_BOARDNAME= ${ SHORT_BOARDNAME } "
2020-07-09 07:27:20 -07:00
bash gen_signature.sh ${ SHORT_BOARDNAME }
2020-01-02 15:58:28 -08:00
2020-07-05 21:29:30 -07:00
# work in progress: migrating to rusefi_${BUNDLE_NAME}.txt
java -DSystemOut.name= gen_config_board \
-jar ../java_tools/ConfigDefinition.jar \
-definition integration/rusefi_config.txt \
-tool gen_config.sh \
-ts_destination tunerstudio \
2020-07-05 21:48:43 -07:00
-cache ${ SHORT_BOARDNAME } \
2020-07-05 22:01:30 -07:00
-cache_zip_file tunerstudio/generated/cache.zip \
2020-07-05 21:29:30 -07:00
-firing_order controllers/algo/firing_order.h \
2021-07-17 18:41:45 -07:00
-ts_output_name generated/${ INI } \
2020-07-05 22:01:30 -07:00
-signature tunerstudio/generated/signature_${ SHORT_BOARDNAME } .txt \
2020-07-05 21:29:30 -07:00
-signature_destination controllers/generated/signature_${ SHORT_BOARDNAME } .h \
2020-08-14 12:56:59 -07:00
-enumInputFile controllers/algo/rusefi_enums.h \
2021-01-22 09:03:14 -08:00
-enumInputFile controllers/algo/rusefi_hw_enums.h \
-board ${ BOARDNAME } \
2020-07-05 21:29:30 -07:00
-prepend config/boards/${ BOARDNAME } /prepend.txt
2020-07-01 11:09:01 -07:00
[ $? -eq 0 ] || { echo " ERROR generating TunerStudio config for ${ BOARDNAME } " ; exit 1; }
2020-01-02 15:58:28 -08:00
2021-03-12 19:25:03 -08:00
# todo: make things consistent by
# 0) having generated content not in the same folder with the tool generating content?
# 1) using unique file name for each configuration?
2021-05-07 16:18:43 -07:00
# 2) leverage consistent caching mechanism so that image is generated only in case of fresh .ini. Laziest approach would be to return exit code from java process above
2021-03-12 19:25:03 -08:00
#
2021-07-17 18:41:45 -07:00
hw_layer/mass_storage/create_ini_image.sh ./tunerstudio/generated/${ INI } ./hw_layer/mass_storage/ramdisk_image.h
hw_layer/mass_storage/create_ini_image_compressed.sh ./tunerstudio/generated/${ INI } ./hw_layer/mass_storage/ramdisk_image_compressed.h
2021-03-03 04:50:53 -08:00
2020-01-02 15:58:28 -08:00
exit 0