#!/bin/bash

cd atsame70-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../atsame70-ra && cp *.hex ../../atsame70-ra
cd ..

cd lpc1114fn28
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../lpc1114fn28 && cp *.hex ../../lpc1114fn28
cd ..

cd lpc1114fn28-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../lpc1114fn28-ra && cp *.hex ../../lpc1114fn28-ra
cd ..

cd lpc1114fbd48
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../lpc1114fbd48 && cp *.hex ../../lpc1114fbd48
cd ..

cd lpc1114fbd48-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../lpc1114fbd48-ra && cp *.hex ../../lpc1114fbd48-ra
cd ..

cd lpc1115fbd48
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../lpc1115fbd48 && cp *.hex ../../lpc1115fbd48
cd ..

cd lpc1115fbd48-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../lpc1115fbd48-ra && cp *.hex ../../lpc1115fbd48-ra
cd ..

cd kl25z128
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../kl25z128 && cp *.srec ../../kl25z128
cd ..

cd kl25z128-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../kl25z128-ra && cp *.srec ../../kl25z128-ra
cd ..

cd kl46z256
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../kl46z256 && cp *.srec ../../kl46z256
cd ..

cd kl46z256-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../kl46z256-ra && cp *.srec ../../kl46z256-ra
cd ..

cd mk20dx256
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../mk20dx256 && cp *.hex ../../mk20dx256
cd ..

cd mk64fn1m0
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../mk64fn1m0 && cp *.srec ../../mk64fn1m0
cd ..

cd mk64fn1m0-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../mk64fn1m0-ra && cp *.srec ../../mk64fn1m0-ra
cd ..

cd nrf51822
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../nrf51822 && cp *.hex ../../nrf51822
cd ..

cd microbit
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../microbit && cp *.hex ../../microbit
cd ..

cd microbit-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../microbit-ra && cp *.hex ../../microbit-ra
cd ..

cd msp432p401r
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../msp432p401r
cd ..

cd msp432p401r-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../msp432p401r-ra
cd ..

cd lm4f120
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../lm4f120
cd ..

cd lm4f120-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../lm4f120-ra
cd ..

cd lm4f232
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../lm4f232
cd ..

cd tm4c1294
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../tm4c1294
cd ..

cd tm4c1294-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../tm4c1294-ra
cd ..

cd stm32f030f4
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f030f4
cd ..

cd stm32f030k6
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f030k6
cd ..

cd stm32f030k6-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f030k6-ra
cd ..

cd stm32f042f6
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f042f6
cd ..

cd stm32f042f6-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f042f6-ra
cd ..

cd stm32f051
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f051
cd ..

cd stm32f051-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f051-ra
cd ..

cd stm32l053c8
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32l053c8
cd ..

cd stm32l053c8-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32l053c8-ra
cd ..

cd stm32l073rz
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32l073rz
cd ..

cd stm32l073rz-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32l073rz-ra
cd ..

cd stm32l152
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32l152
cd ..

cd stm32l152rb
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32l152rb
cd ..

cd stm32l432-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32l432-ra
cd ..

cd stm32f100
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f100
cd ..

cd stm32f103
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f103
cd ..

cd stm32f103-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f103-ra
cd ..

cd stm32f207zg
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f207zg
cd ..

cd stm32f207zg-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f207zg-ra
cd ..

cd stm32f303
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f303
cd ..

cd stm32f303-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f303-ra
cd ..

cd stm32f303k8
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f303k8
cd ..

cd stm32f303k8-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f303k8-ra
cd ..

cd stm32f303re-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f303re-ra
cd ..

cd stm32f401
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f401
cd ..

cd stm32f401cd-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f401cd-ra
cd ..

cd stm32f407
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f407
cd ..

cd stm32f407-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f407-ra
cd ..

cd stm32f411
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f411
cd ..

cd stm32f429
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f429
cd ..

cd stm32l476
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32l476
cd ..

cd stm32l476-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32l476-ra
cd ..

cd stm32f746-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../stm32f746-ra && cp *.hex ../../stm32f746-ra
cd ..

cd xmc1100
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../xmc1100 && cp *.hex ../../xmc1100
cd ..

cd xmc1100-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../xmc1100-ra && cp *.hex ../../xmc1100-ra
cd ..

cd efm32gg990
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../efm32gg990
cd ..

cd efm32gg990-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../efm32gg990-ra
cd ..

cd efm32hg322
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../efm32hg322
cd ..

cd efm32hg322-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../efm32hg322-ra
cd ..

cd cy8c4245axi
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../cy8c4245axi && cp *.hex ../../cy8c4245axi
cd ..

cd nuc123
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../nuc123 && cp *.hex ../../nuc123
cd ..

cd nuc123-ra
make clean all && ls -l *.bin && md5sum *.bin && cp *.bin ../../nuc123-ra && cp *.hex ../../nuc123-ra
cd ..

# Intel Hex images for STM targets:

cd ..

cd stm32f030f4
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f030f4.bin mecrisp-stellaris-stm32f030f4.hex
cd ..

cd stm32f030k6
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f030k6.bin mecrisp-stellaris-stm32f030k6.hex
cd ..

cd stm32f030k6-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f030k6.bin mecrisp-stellaris-stm32f030k6.hex
cd ..

cd stm32f042f6
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f042f6.bin mecrisp-stellaris-stm32f042f6.hex
cd ..

cd stm32f042f6-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f042f6.bin mecrisp-stellaris-stm32f042f6.hex
cd ..

cd stm32f051
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f051.bin mecrisp-stellaris-stm32f051.hex
cd ..

cd stm32f051-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f051.bin mecrisp-stellaris-stm32f051.hex
cd ..

cd stm32l053c8
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32l053c8.bin mecrisp-stellaris-stm32l053c8.hex
cd ..

cd stm32l053c8-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32l053c8.bin mecrisp-stellaris-stm32l053c8.hex
cd ..

cd stm32l073rz
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32l073rz.bin mecrisp-stellaris-stm32l073rz.hex
cd ..

cd stm32l073rz-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32l073rz.bin mecrisp-stellaris-stm32l073rz.hex
cd ..

cd stm32l152
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32l152.bin mecrisp-stellaris-stm32l152.hex
cd ..

cd stm32l152rb
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32l152rb.bin mecrisp-stellaris-stm32l152rb.hex
cd ..

cd stm32l432-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32l432.bin mecrisp-stellaris-stm32l432.hex
cd ..

cd stm32f100
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f100.bin mecrisp-stellaris-stm32f100.hex
cd ..

cd stm32f103
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f103.bin mecrisp-stellaris-stm32f103.hex
cd ..

cd stm32f103-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f103.bin mecrisp-stellaris-stm32f103.hex
cd ..

cd stm32f207zg
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f207zg.bin mecrisp-stellaris-stm32f207zg.hex
cd ..

cd stm32f207zg-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f207zg.bin mecrisp-stellaris-stm32f207zg.hex
cd ..

cd stm32f303
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f303.bin mecrisp-stellaris-stm32f303.hex
cd ..

cd stm32f303-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f303.bin mecrisp-stellaris-stm32f303.hex
cd ..

cd stm32f303k8
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f303k8.bin mecrisp-stellaris-stm32f303k8.hex
cd ..

cd stm32f303k8-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f303k8.bin mecrisp-stellaris-stm32f303k8.hex
cd ..

cd stm32f303re-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f303re.bin mecrisp-stellaris-stm32f303re.hex
cd ..

cd stm32f401
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f401.bin mecrisp-stellaris-stm32f401.hex
cd ..

cd stm32f401cd-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f401cd.bin mecrisp-stellaris-stm32f401cd.hex
cd ..

cd stm32f407
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f407.bin mecrisp-stellaris-stm32f407.hex
cd ..

cd stm32f407-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f407.bin mecrisp-stellaris-stm32f407.hex
cd ..

cd stm32f411
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f411.bin mecrisp-stellaris-stm32f411.hex
cd ..

cd stm32f429
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32f429.bin mecrisp-stellaris-stm32f429.hex
cd ..

cd stm32l476
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32l476.bin mecrisp-stellaris-stm32l476.hex
cd ..

cd stm32l476-ra
arm-none-eabi-objcopy --change-addresses 0x08000000 -I binary -O ihex mecrisp-stellaris-stm32l476.bin mecrisp-stellaris-stm32l476.hex
cd ..

# Special target for running on ARM Linux and Android:

cd mecrisp-stellaris-source

cd linux
./assemble
cp mecrisp-stellaris-linux ../../linux
cd ..

cd linux-ra
./assemble
cp mecrisp-stellaris-linux ../../linux-ra
cd ..
