pass board dir to scripts instead of board name (#5022)

* pass board dir instead of name

* makefiles

* dead file?

* hw ci

* unit tests

* fix sd card generation while we're here

* actually test sd category

* jar

* clean merge

* jar for good measure

* fix f767 properly
This commit is contained in:
Matthew Kennedy 2023-02-06 04:37:17 -08:00 committed by GitHub
parent 254e067e17
commit 4665e67eb4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 103 additions and 150 deletions

View File

@ -73,216 +73,214 @@ jobs:
include: include:
# Board configurations # Board configurations
- build-target: hellen72 - build-target: hellen72
folder: hellen/hellen72 folder: config/boards/hellen/hellen72
ini-file: rusefi_hellen72.ini ini-file: rusefi_hellen72.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen81 - build-target: hellen81
folder: hellen/hellen81 folder: config/boards/hellen/hellen81
ini-file: rusefi_hellen81.ini ini-file: rusefi_hellen81.ini
skip-rate: 90 skip-rate: 90
- build-target: alphax-2chan - build-target: alphax-2chan
folder: hellen/alphax-2chan folder: config/boards/hellen/alphax-2chan
ini-file: rusefi_alphax-2chan.ini ini-file: rusefi_alphax-2chan.ini
skip-rate: 0 skip-rate: 0
- build-target: alphax-4chan - build-target: alphax-4chan
folder: hellen/alphax-4chan folder: config/boards/hellen/alphax-4chan
ini-file: rusefi_alphax-4chan.ini ini-file: rusefi_alphax-4chan.ini
- build-target: alphax-8chan - build-target: alphax-8chan
folder: hellen/alphax-8chan folder: config/boards/hellen/alphax-8chan
ini-file: rusefi_alphax-8chan.ini ini-file: rusefi_alphax-8chan.ini
- build-target: s105 - build-target: s105
folder: s105 folder: config/boards/s105
ini-file: rusefi_s105.ini ini-file: rusefi_s105.ini
skip-rate: 0 skip-rate: 0
- build-target: m74_9 - build-target: m74_9
folder: m74_9 folder: config/boards/m74_9
ini-file: rusefi_m74_9.ini ini-file: rusefi_m74_9.ini
skip-rate: 0 skip-rate: 0
- build-target: harley81 - build-target: harley81
folder: hellen/harley81 folder: config/boards/hellen/harley81
ini-file: rusefi_harley81.ini ini-file: rusefi_harley81.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen88bmw - build-target: hellen88bmw
folder: hellen/hellen88bmw folder: config/boards/hellen/hellen88bmw
ini-file: rusefi_hellen88bmw.ini ini-file: rusefi_hellen88bmw.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen88bmw_avr - build-target: hellen88bmw_avr
folder: hellen/hellen88bmw folder: config/boards/hellen/hellen88bmw
ini-file: rusefi_hellen88bmw.ini ini-file: rusefi_hellen88bmw.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen-nb1 - build-target: hellen-nb1
folder: hellen/hellen-nb1 folder: config/boards/hellen/hellen-nb1
ini-file: rusefi_hellen-nb1.ini ini-file: rusefi_hellen-nb1.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen-gm-e67 - build-target: hellen-gm-e67
folder: hellen/hellen-gm-e67 folder: config/boards/hellen/hellen-gm-e67
ini-file: rusefi_hellen-gm-e67.ini ini-file: rusefi_hellen-gm-e67.ini
skip-rate: 90 skip-rate: 90
- build-target: hellenNA8_96 - build-target: hellenNA8_96
folder: hellen/hellenNA8_96 folder: config/boards/hellen/hellenNA8_96
ini-file: rusefi_hellenNA8_96.ini ini-file: rusefi_hellenNA8_96.ini
skip-rate: 90 skip-rate: 90
- build-target: hellenNA6 - build-target: hellenNA6
folder: hellen/hellen64_miataNA6_94 folder: config/boards/hellen/hellen64_miataNA6_94
ini-file: rusefi_hellenNA6.ini ini-file: rusefi_hellenNA6.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen128 - build-target: hellen128
folder: hellen/hellen128 folder: config/boards/hellen/hellen128
ini-file: rusefi_hellen128mercedes.ini ini-file: rusefi_hellen128mercedes.ini
skip-rate: 50 skip-rate: 50
- build-target: hellen121vag - build-target: hellen121vag
folder: hellen/hellen121vag folder: config/boards/hellen/hellen121vag
ini-file: rusefi_hellen121vag.ini ini-file: rusefi_hellen121vag.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen121nissan - build-target: hellen121nissan
folder: hellen/hellen121nissan folder: config/boards/hellen/hellen121nissan
ini-file: rusefi_hellen121nissan.ini ini-file: rusefi_hellen121nissan.ini
- build-target: hellen-honda-k - build-target: hellen-honda-k
folder: hellen/hellen-honda-k folder: config/boards/hellen/hellen-honda-k
ini-file: rusefi_hellen-honda-k.ini ini-file: rusefi_hellen-honda-k.ini
- build-target: hellen154hyundai - build-target: hellen154hyundai
folder: hellen/hellen154hyundai folder: config/boards/hellen/hellen154hyundai
ini-file: rusefi_hellen154hyundai.ini ini-file: rusefi_hellen154hyundai.ini
skip-rate: 90 skip-rate: 90
- build-target: cypress - build-target: cypress
folder: cypress folder: config/boards/cypress
ini-file: rusefi_cypress.ini ini-file: rusefi_cypress.ini
- build-target: frankenso_na6 - build-target: frankenso_na6
folder: frankenso folder: config/boards/frankenso
ini-file: rusefi_frankenso_na6.ini ini-file: rusefi_frankenso_na6.ini
skip-rate: 90 skip-rate: 90
- build-target: kinetis - build-target: kinetis
folder: kinetis folder: config/boards/kinetis
ini-file: rusefi_kin.ini ini-file: rusefi_kin.ini
skip-rate: 0 skip-rate: 0
- build-target: mre_f4 - build-target: mre_f4
folder: microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini ini-file: rusefi_mre_f4.ini
- build-target: mre_f4_debug - build-target: mre_f4_debug
folder: microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini ini-file: rusefi_mre_f4.ini
skip-rate: 95 skip-rate: 95
- build-target: mre_f4_recovery - build-target: mre_f4_recovery
folder: microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini ini-file: rusefi_mre_f4.ini
skip-rate: 95 skip-rate: 95
- build-target: mre_f4_hardware_QC_special_build - build-target: mre_f4_hardware_QC_special_build
folder: microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini ini-file: rusefi_mre_f4.ini
skip-rate: 90 skip-rate: 90
- build-target: mre_f7 - build-target: mre_f7
folder: microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f7.ini ini-file: rusefi_mre_f7.ini
console-settings: firmware/config/boards/nucleo_f767/rusefi_console_properties.xml
skip-rate: 90 skip-rate: 90
- build-target: prometheus_405 - build-target: prometheus_405
folder: prometheus folder: config/boards/prometheus
ini-file: rusefi_prometheus_405.ini ini-file: rusefi_prometheus_405.ini
skip-rate: 90 skip-rate: 90
- build-target: prometheus_469 - build-target: prometheus_469
folder: prometheus folder: config/boards/prometheus
ini-file: rusefi_prometheus_469.ini ini-file: rusefi_prometheus_469.ini
skip-rate: 90 skip-rate: 90
- build-target: proteus_f4 - build-target: proteus_f4
folder: proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f4.ini ini-file: rusefi_proteus_f4.ini
- build-target: proteus_f4_hardware_QC_special_build - build-target: proteus_f4_hardware_QC_special_build
folder: proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f4.ini ini-file: rusefi_proteus_f4.ini
- build-target: proteus_f7 - build-target: proteus_f7
folder: proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f7.ini ini-file: rusefi_proteus_f7.ini
- build-target: proteus_f7_hardware_QC_special_build - build-target: proteus_f7_hardware_QC_special_build
folder: proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f7.ini ini-file: rusefi_proteus_f7.ini
skip-rate: 90 skip-rate: 90
- build-target: proteus_h7 - build-target: proteus_h7
folder: proteus folder: config/boards/proteus
ini-file: rusefi_proteus_h7.ini ini-file: rusefi_proteus_h7.ini
skip-rate: 90 skip-rate: 90
- build-target: proteus_legacy - build-target: proteus_legacy
folder: proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f7.ini ini-file: rusefi_proteus_f7.ini
skip-rate: 90 skip-rate: 90
- build-target: stm32f429_nucleo - build-target: stm32f429_nucleo
folder: nucleo_f429 folder: config/boards/nucleo_f429
ini-file: rusefi_stm32f429_nucleo.ini ini-file: rusefi_stm32f429_nucleo.ini
- build-target: stm32f767_nucleo - build-target: stm32f767_nucleo
folder: nucleo_f767 folder: config/boards/nucleo_f767
ini-file: rusefi_stm32f767_nucleo.ini ini-file: rusefi_stm32f767_nucleo.ini
console-settings: firmware/config/boards/nucleo_f767/rusefi_console_properties.xml
skip-rate: 95 skip-rate: 95
- build-target: stm32h743_nucleo - build-target: stm32h743_nucleo
folder: nucleo_h743 folder: config/boards/nucleo_h743
ini-file: rusefi_stm32h743_nucleo.ini ini-file: rusefi_stm32h743_nucleo.ini
skip-rate: 95 skip-rate: 95
- build-target: subaru_eg33_f7 - build-target: subaru_eg33_f7
folder: subaru_eg33 folder: config/boards/subaru_eg33
ini-file: rusefi_subaru_eg33_f7.ini ini-file: rusefi_subaru_eg33_f7.ini
skip-rate: 50 skip-rate: 50
- build-target: f407-discovery - build-target: f407-discovery
folder: f407-discovery folder: config/boards/f407-discovery
- build-target: f429-discovery - build-target: f429-discovery
folder: f429-discovery folder: config/boards/f429-discovery
skip-rate: 95 skip-rate: 95
- build-target: core8 - build-target: core8
folder: core8 folder: config/boards/core8
ini-file: rusefi_core8.ini ini-file: rusefi_core8.ini
skip-rate: 95 skip-rate: 95
- build-target: 48way - build-target: 48way
folder: 48way folder: config/boards/48way
ini-file: rusefi_48way.ini ini-file: rusefi_48way.ini
skip-rate: 95 skip-rate: 95
- build-target: atlas - build-target: atlas
folder: atlas folder: config/boards/atlas
ini-file: rusefi_atlas.ini ini-file: rusefi_atlas.ini
skip-rate: 95 skip-rate: 95
- build-target: tdg-pdm8 - build-target: tdg-pdm8
folder: tdg-pdm8 folder: config/boards/tdg-pdm8
ini-file: rusefi_tdg-pdm8.ini ini-file: rusefi_tdg-pdm8.ini
skip-rate: 95 skip-rate: 95
@ -393,7 +391,7 @@ jobs:
# Build the firmware! # Build the firmware!
- name: Build Firmware - name: Build Firmware
if: ${{ env.skip != 'true' }} if: ${{ env.skip != 'true' }}
run: bash misc/jenkins/compile_other_versions/compile.sh ${{matrix.folder}} ${{matrix.build-target}} ${{matrix.ini-file}} ${{matrix.console-settings}} run: bash misc/jenkins/compile_other_versions/compile.sh ${{matrix.folder}} ${{matrix.build-target}}
- name: Package Bundle - name: Package Bundle
if: ${{( github.event_name == 'push' && github.ref == 'refs/heads/master' && env.skip != 'true' ) || inputs.lts }} if: ${{( github.event_name == 'push' && github.ref == 'refs/heads/master' && env.skip != 'true' ) || inputs.lts }}

View File

@ -15,9 +15,8 @@ jobs:
script: hardware_ci_f4_discovery script: hardware_ci_f4_discovery
runs-on: hw-ci-f4-discovery runs-on: hw-ci-f4-discovery
test-suite: com.rusefi.HwCiF4Discovery test-suite: com.rusefi.HwCiF4Discovery
folder: f407-discovery folder: config/boards/f407-discovery
config-name: all config-name: all
ini-file: rusefi_f4-disco.ini
openocd-script: ../.github/workflows/openocd_ci_f4_discovery.cfg openocd-script: ../.github/workflows/openocd_ci_f4_discovery.cfg
serial-device: /dev/serial/by-id/usb-rusEFI_LLC_rusEFI_Engine_Management_ECU_2B003B000A51343033393930-if01 serial-device: /dev/serial/by-id/usb-rusEFI_LLC_rusEFI_Engine_Management_ECU_2B003B000A51343033393930-if01
@ -25,9 +24,8 @@ jobs:
script: hardware_ci_proteus script: hardware_ci_proteus
runs-on: hw-ci-proteus runs-on: hw-ci-proteus
test-suite: com.rusefi.HwCiF4Proteus test-suite: com.rusefi.HwCiF4Proteus
folder: proteus folder: config/boards/proteus
config-name: proteus_f4 config-name: proteus_f4
ini-file: rusefi_proteus_f4.ini
openocd-script: ../.github/workflows/openocd_ci_proteus.cfg openocd-script: ../.github/workflows/openocd_ci_proteus.cfg
serial-device: /dev/serial/by-id/usb-rusEFI_LLC_rusEFI_Engine_Management_ECU_41003D000451383037343335-if01 serial-device: /dev/serial/by-id/usb-rusEFI_LLC_rusEFI_Engine_Management_ECU_41003D000451383037343335-if01
@ -84,7 +82,7 @@ jobs:
echo "HARDWARE_CI_SERIAL_DEVICE=${{matrix.serial-device}}" >> $GITHUB_ENV echo "HARDWARE_CI_SERIAL_DEVICE=${{matrix.serial-device}}" >> $GITHUB_ENV
- name: Build Firmware - name: Build Firmware
run: bash misc/jenkins/compile_other_versions/compile.sh ${{matrix.folder}} ${{matrix.build-target}} ${{matrix.ini-file}} run: bash misc/jenkins/compile_other_versions/compile.sh ${{matrix.folder}} ${{matrix.build-target}}
- name: Check for STLINK - name: Check for STLINK
run: lsusb | grep 'ST-LINK\|STLINK' run: lsusb | grep 'ST-LINK\|STLINK'

View File

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<java version="1.8.0_202" class="java.beans.XMLDecoder">
<object class="java.util.HashMap">
<void method="put">
<string>root</string>
<object class="com.rusefi.ui.storage.Node" id="Node0">
<void property="config">
<void method="put">
<string>hardware</string>
<string>F7</string>
</void>
</void>
</object>
</void>
</object>
</java>

View File

@ -25,38 +25,38 @@ config/boards/subaru_eg33/config/gen_subaru_config.sh
# #
# #
for BOARD in \ for BOARD in \
"hellen/alphax-2chan alphax-2chan" \ "config/boards/hellen/alphax-2chan alphax-2chan" \
"hellen/alphax-4chan alphax-4chan" \ "config/boards/hellen/alphax-4chan alphax-4chan" \
"hellen/alphax-8chan alphax-8chan" \ "config/boards/hellen/alphax-8chan alphax-8chan" \
"hellen/harley81 harley81" \ "config/boards/hellen/harley81 harley81" \
"hellen/hellen128 hellen128 rusefi_hellen128mercedes.ini" \ "config/boards/hellen/hellen128 hellen128 rusefi_hellen128mercedes.ini" \
"hellen/hellen121vag hellen121vag" \ "config/boards/hellen/hellen121vag hellen121vag" \
"hellen/hellen121nissan hellen121nissan" \ "config/boards/hellen/hellen121nissan hellen121nissan" \
"hellen/hellen-honda-k hellen-honda-k" \ "config/boards/hellen/hellen-honda-k hellen-honda-k" \
"hellen/hellen154hyundai hellen154hyundai" \ "config/boards/hellen/hellen154hyundai hellen154hyundai" \
"hellen/hellen88bmw hellen88bmw" \ "config/boards/hellen/hellen88bmw hellen88bmw" \
"hellen/hellen72 hellen72" \ "config/boards/hellen/hellen72 hellen72" \
"hellen/hellen81 hellen81" \ "config/boards/hellen/hellen81 hellen81" \
"hellen/hellen-nb1 hellen-nb1" \ "config/boards/hellen/hellen-nb1 hellen-nb1" \
"hellen/hellen-gm-e67 hellen-gm-e67" \ "config/boards/hellen/hellen-gm-e67 hellen-gm-e67" \
"hellen/hellen64_miataNA6_94 hellenNA6" \ "config/boards/hellen/hellen64_miataNA6_94 hellenNA6" \
"hellen/hellenNA8_96 hellenNA8_96" \ "config/boards/hellen/hellenNA8_96 hellenNA8_96" \
"microrusefi mre_f7" \ "config/boards/microrusefi mre_f7" \
"microrusefi mre_f4" \ "config/boards/microrusefi mre_f4" \
"core8 core8" \ "config/boards/core8 core8" \
"48way 48way" \ "config/boards/48way 48way" \
"m74_9 m74_9" \ "config/boards/m74_9 m74_9" \
"s105 s105" \ "config/boards/s105 s105" \
"frankenso frankenso_na6" \ "config/boards/frankenso frankenso_na6" \
"prometheus prometheus_469" \ "config/boards/prometheus prometheus_469" \
"prometheus prometheus_405" \ "config/boards/prometheus prometheus_405" \
"proteus proteus_f7" \ "config/boards/proteus proteus_f7" \
"proteus proteus_f4" \ "config/boards/proteus proteus_f4" \
"proteus proteus_h7" \ "config/boards/proteus proteus_h7" \
"f407-discovery f407-discovery" \ "config/boards/f407-discovery f407-discovery" \
"f429-discovery f429-discovery" \ "config/boards/f429-discovery f429-discovery" \
"atlas atlas"\ "config/boards/atlas atlas"\
"tdg-pdm8 tdg-pdm8"\ "config/boards/tdg-pdm8 tdg-pdm8"\
; do ; do
BOARD_NAME=$(echo "$BOARD" | cut -d " " -f 1) BOARD_NAME=$(echo "$BOARD" | cut -d " " -f 1)
BOARD_SHORT_NAME=$(echo "$BOARD" | cut -d " " -f 2) BOARD_SHORT_NAME=$(echo "$BOARD" | cut -d " " -f 2)

View File

@ -15,7 +15,7 @@ if [ -z "$1" ]; then
exit 1 exit 1
fi fi
BOARDNAME=$1 BOARD_DIR=$1
SHORT_BOARDNAME=$2 SHORT_BOARDNAME=$2
if [ -n "$3" ]; then if [ -n "$3" ]; then
INI="$3" INI="$3"
@ -23,16 +23,15 @@ else
INI="rusefi_${SHORT_BOARDNAME}.ini" INI="rusefi_${SHORT_BOARDNAME}.ini"
fi fi
echo "BOARDNAME=${BOARDNAME} SHORT_BOARDNAME=${SHORT_BOARDNAME}" echo "BOARD_DIR=${BOARD_DIR} SHORT_BOARDNAME=${SHORT_BOARDNAME}"
bash gen_signature.sh ${SHORT_BOARDNAME} bash gen_signature.sh ${SHORT_BOARDNAME}
BOARD_DIR=config/boards/${BOARDNAME}
PREPEND_FILE=${BOARD_DIR}/prepend.txt PREPEND_FILE=${BOARD_DIR}/prepend.txt
BOARD_SPECIFIC_URL=$(cat $PREPEND_FILE | grep MAIN_HELP_URL | cut -d " " -f 3 | sed -e 's/^"//' -e 's/"$//') BOARD_SPECIFIC_URL=$(cat $PREPEND_FILE | grep MAIN_HELP_URL | cut -d " " -f 3 | sed -e 's/^"//' -e 's/"$//')
echo "BOARD_SPECIFIC_URL=[$BOARD_SPECIFIC_URL] for [$BOARDNAME] as [$SHORT_BOARDNAME]" echo "BOARD_SPECIFIC_URL=[$BOARD_SPECIFIC_URL] for [$SHORT_BOARDNAME] from [$BOARD_DIR]"
if [ "" = "$BOARD_SPECIFIC_URL" ]; then if [ "" = "$BOARD_SPECIFIC_URL" ]; then
BOARD_SPECIFIC_URL=https://rusefi.com/s/wiki BOARD_SPECIFIC_URL=https://rusefi.com/s/wiki
fi fi
@ -51,7 +50,7 @@ java \
-c_defines controllers/generated/rusefi_generated.h \ -c_defines controllers/generated/rusefi_generated.h \
-c_destination controllers/generated/engine_configuration_generated_structures.h -c_destination controllers/generated/engine_configuration_generated_structures.h
[ $? -eq 0 ] || { echo "ERROR generating TunerStudio config for ${BOARDNAME}"; exit 1; } [ $? -eq 0 ] || { echo "ERROR generating TunerStudio config for ${BOARD_DIR}"; exit 1; }
# we generate both versions of the header but only one would be actually included due to conditional compilation see EFI_USE_COMPRESSED_INI_MSD # we generate both versions of the header but only one would be actually included due to conditional compilation see EFI_USE_COMPRESSED_INI_MSD
# todo: make things consistent by # todo: make things consistent by
@ -62,5 +61,5 @@ java \
hw_layer/mass_storage/create_ini_image.sh ./tunerstudio/generated/${INI} ./hw_layer/mass_storage/ramdisk_image.h 128 ${SHORT_BOARDNAME} ${BOARD_SPECIFIC_URL} hw_layer/mass_storage/create_ini_image.sh ./tunerstudio/generated/${INI} ./hw_layer/mass_storage/ramdisk_image.h 128 ${SHORT_BOARDNAME} ${BOARD_SPECIFIC_URL}
hw_layer/mass_storage/create_ini_image_compressed.sh ./tunerstudio/generated/${INI} ./hw_layer/mass_storage/ramdisk_image_compressed.h 1088 ${SHORT_BOARDNAME} ${BOARD_SPECIFIC_URL} hw_layer/mass_storage/create_ini_image_compressed.sh ./tunerstudio/generated/${INI} ./hw_layer/mass_storage/ramdisk_image_compressed.h 1088 ${SHORT_BOARDNAME} ${BOARD_SPECIFIC_URL}
echo "Happy ${SHORT_BOARDNAME}" echo "Happy ${SHORT_BOARDNAME}!"
exit 0 exit 0

View File

@ -22,5 +22,5 @@ COMMON_GEN_CONFIG="
-signature_destination controllers/generated/signature_${SHORT_BOARDNAME}.h \ -signature_destination controllers/generated/signature_${SHORT_BOARDNAME}.h \
-ts_output_name generated/${INI} \ -ts_output_name generated/${INI} \
-prepend ${BOARD_DIR}/prepend.txt \ -prepend ${BOARD_DIR}/prepend.txt \
-board ${BOARDNAME} \ -board ${BOARD_DIR} \
-definition integration/rusefi_config.txt" -definition integration/rusefi_config.txt"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# file gen_config_default.sh # file gen_config_default.sh
bash gen_config_board.sh f407-discovery f407-discovery rusefi.ini bash gen_config_board.sh config/boards/f407-discovery f407-discovery rusefi.ini
exit $? exit $?

Binary file not shown.

View File

@ -143,7 +143,7 @@ public class ConfigDefinition {
break; break;
case KEY_BOARD_NAME: case KEY_BOARD_NAME:
String boardName = args[i + 1]; String boardName = args[i + 1];
pinoutLogic = PinoutLogic.create(boardName, PinoutLogic.CONFIG_BOARDS); pinoutLogic = PinoutLogic.create(boardName);
if (pinoutLogic != null) { if (pinoutLogic != null) {
for (String inputFile : pinoutLogic.getInputFiles()) for (String inputFile : pinoutLogic.getInputFiles())
state.addInputFile(inputFile); state.addInputFile(inputFile);

View File

@ -19,7 +19,6 @@ import static com.rusefi.output.JavaSensorsConsumer.quote;
public class PinoutLogic { public class PinoutLogic {
private static final Logging log = getLogging(PinoutLogic.class); private static final Logging log = getLogging(PinoutLogic.class);
public static final String CONFIG_BOARDS = "config/boards/";
private static final String CONNECTORS = "/connectors"; private static final String CONNECTORS = "/connectors";
private static final String NONE = "NONE"; private static final String NONE = "NONE";
private static final String QUOTED_NONE = quote(NONE); private static final String QUOTED_NONE = quote(NONE);
@ -196,19 +195,9 @@ public class PinoutLogic {
PinState thisPin = new PinState(id, pinTsName, pinClass); PinState thisPin = new PinState(id, pinTsName, pinClass);
globalList.add(thisPin); globalList.add(thisPin);
} }
/*
public static void main(String[] args) throws IOException {
String boardName = "hellen-gm-e67";
PinoutLogic logic = create(boardName,"../../firmware/config/boards/hellen/");
logic.readFiles();
log.info(logic.toString());
registerPins(boardName, logic.globalList, new VariableRegistry(), new ReaderState()); public static PinoutLogic create(String boardName) {
} String dirPath = boardName + PinoutLogic.CONNECTORS;
*/
public static PinoutLogic create(String boardName, String rootFolder) {
String dirPath = rootFolder + boardName + PinoutLogic.CONNECTORS;
File dirName = new File(dirPath); File dirName = new File(dirPath);
FilenameFilter filter = (f, name) -> name.endsWith(".yaml"); FilenameFilter filter = (f, name) -> name.endsWith(".yaml");
File[] boardYamlFiles = dirName.listFiles(filter); File[] boardYamlFiles = dirName.listFiles(filter);
@ -224,7 +213,7 @@ public class PinoutLogic {
readFiles(); readFiles();
registerPins(boardName, globalList, registry, state, parseState); registerPins(boardName, globalList, registry, state, parseState);
try (FileWriter getTsNameByIdFile = new FileWriter(PinoutLogic.CONFIG_BOARDS + boardName + PinoutLogic.CONNECTORS + File.separator + "generated_ts_name_by_pin.cpp")) { try (FileWriter getTsNameByIdFile = new FileWriter(boardName + PinoutLogic.CONNECTORS + File.separator + "generated_ts_name_by_pin.cpp")) {
getTsNameByIdFile.append(header); getTsNameByIdFile.append(header);
getTsNameByIdFile.append("#include \"pch.h\"\n\n"); getTsNameByIdFile.append("#include \"pch.h\"\n\n");
@ -256,8 +245,7 @@ public class PinoutLogic {
public List<String> getInputFiles() { public List<String> getInputFiles() {
List<String> result = new ArrayList<>(); List<String> result = new ArrayList<>();
for (File yamlFile : boardYamlFiles) { for (File yamlFile : boardYamlFiles) {
result.add(PinoutLogic.CONFIG_BOARDS + boardName + PinoutLogic.CONNECTORS + result.add(boardName + PinoutLogic.CONNECTORS + File.separator + yamlFile.getName());
File.separator + yamlFile.getName());
} }
return result; return result;
} }

View File

@ -1,18 +1,18 @@
#!/bin/bash #!/bin/bash
# for example 'proteus' # fail on error!
BOARD_NAME="$1" set -e
# for example 'mre-f4' # for example 'config/boards/proteus'
BOARD_DIR="$1"
# for example 'proteus_f4'
export BUNDLE_NAME="$2" export BUNDLE_NAME="$2"
export INI_FILE_OVERRIDE="$3"
export RUSEFI_CONSOLE_SETTINGS="$4"
SCRIPT_NAME=compile_and_upload.sh SCRIPT_NAME=compile_and_upload.sh
echo "Entering $SCRIPT_NAME with 1=$1 2=$2 3=$3 4=$4" echo "Entering $SCRIPT_NAME with folder $BOARD_DIR and bundle name $BUNDLE_NAME"
[ -n $BOARD_NAME ] || { echo "BOARD_NAME parameter expected"; exit 1; } [ -n $BOARD_DIR ] || { echo "BOARD_DIR parameter expected"; exit 1; }
[ -n $BUNDLE_NAME ] || { echo "BUNDLE_NAME parameter expected"; exit 1; } [ -n $BUNDLE_NAME ] || { echo "BUNDLE_NAME parameter expected"; exit 1; }
@ -24,24 +24,10 @@ cd ..
root_dir=$(pwd) root_dir=$(pwd)
cd firmware/config/boards cd firmware/$BOARD_DIR
pwd
cd $BOARD_NAME
pwd pwd
echo "Invoking $COMPILE_SCRIPT" echo "Invoking $COMPILE_SCRIPT"
bash $COMPILE_SCRIPT bash $COMPILE_SCRIPT
[ $? -eq 0 ] || { echo "ERROR invoking $COMPILE_SCRIPT"; exit 1; }
echo "We are in" echo "Success for $SCRIPT_NAME!"
pwd
cd ${root_dir}
echo "We are now in"
pwd
[ -e firmware/build/rusefi.hex ] || { echo "Just to confirm - FAILED to compile with $COMPILE_SCRIPT"; exit 1; }
# We are back at root rusEFI folder
pwd
echo "exiting $SCRIPT_NAME"