This works on Windows and doesn't assume *nix terminal with Perl installed.
@$(REMOVE) -f $(PROJECT).elf $(QUIET)
size: $(PROJECT).elf
- @echo
- @echo $$' \033[1;4m SIZE LPC1769 \033[0m'
- @$(OBJDUMP) -h $^ | perl -MPOSIX -ne '/.(text|rodata)\s+([0-9a-f]+)/ && do { $$a += eval "0x$$2" }; END { printf " FLASH %6d bytes %2d%% of %3dkb\n", $$a, ceil($$a * 100 / (512 * 1024)), 512 }'
- @$(OBJDUMP) -h $^ | perl -MPOSIX -ne '/.(data|bss)\s+([0-9a-f]+)/ && do { $$a += eval "0x$$2" }; END { printf " RAM %6d bytes %2d%% of %3dkb\n", $$a, ceil($$a * 100 / ( 16 * 1024)), 16 }'
+ @$(SIZE) $(PROJECT).elf
-include $(DEPFILES)