diff --git a/Firmware/Makefile b/Firmware/Makefile index 2dd304b4..347ae37d 100644 --- a/Firmware/Makefile +++ b/Firmware/Makefile @@ -6,7 +6,7 @@ BUILD_DIR = build FIRMWARE = $(BUILD_DIR)/ODriveFirmware.elf all: - tup + @tup --quiet flash: all openocd -f interface/stlink-v2.cfg -f target/stm32f4x.cfg -c init -c reset\ halt -c flash\ write_image\ erase\ $(FIRMWARE) -c reset\ run -c exit diff --git a/Firmware/Tupfile.lua b/Firmware/Tupfile.lua index 171c0d43..3885d8bd 100644 --- a/Firmware/Tupfile.lua +++ b/Firmware/Tupfile.lua @@ -62,7 +62,7 @@ build{ toolchains={toolchain}, --toolchains={LLVMToolchain('x86_64', {'-Ofast'}, {'-flto'})}, packages={'stm_platform'}, - sources={ + sources={ 'MotorControl/utils.c', 'MotorControl/legacy_commands.c', 'MotorControl/low_level.c', diff --git a/Firmware/build.lua b/Firmware/build.lua index 6e4ecdd9..87878b4b 100644 --- a/Firmware/build.lua +++ b/Firmware/build.lua @@ -88,10 +88,12 @@ function GCCToolchain(prefix, builddir, compiler_flags, linker_flags) command=prefix..'g++ %f '.. tostring(linker_flags)..' '.. '-Wl,-Map=%O.map'.. - ' -o %o; '.. - prefix..'size %o', + ' -o %o', outputs={output_name..'.elf', extra_outputs={output_name..'.map'}} } + -- display the size + tup.frule{inputs=output_name..'.elf', command=prefix..'size %f'} + -- create *.hex and *.bin output formats tup.frule{inputs={output_name..'.elf'}, command=prefix..'objcopy -O ihex %f %o', outputs={output_name..'.hex'}} tup.frule{inputs={output_name..'.elf'}, command=prefix..'objcopy -O binary -S %f %o', outputs={output_name..'.bin'}} end