|
|
|
@ -234,6 +234,7 @@ endif |
|
|
|
|
|
|
|
|
|
# Define programs and commands.
|
|
|
|
|
SHELL = sh
|
|
|
|
|
SED = sed
|
|
|
|
|
REMOVE = rm -f
|
|
|
|
|
REMOVEDIR = rmdir
|
|
|
|
|
COPY = cp
|
|
|
|
@ -292,17 +293,15 @@ sym: $(BUILD_DIR)/$(TARGET).sym |
|
|
|
|
LIBNAME=lib$(TARGET).a
|
|
|
|
|
lib: $(LIBNAME) |
|
|
|
|
|
|
|
|
|
# Display size of file.
|
|
|
|
|
HEXSIZE = $(SIZE) --target=$(FORMAT) $(BUILD_DIR)/$(TARGET).hex
|
|
|
|
|
#ELFSIZE = $(SIZE) --mcu=$(MCU) --format=avr $(TARGET).elf
|
|
|
|
|
ELFSIZE = $(SIZE) $(BUILD_DIR)/$(TARGET).elf
|
|
|
|
|
# Display size of file, modifying the output so people don't mistakenly grab the hex output
|
|
|
|
|
BINARY_SIZE = $(SIZE) --target=$(FORMAT) $(BUILD_DIR)/$(TARGET).hex | $(SED) -e 's/\.build\/.*$$/$(TARGET).$(FIRMWARE_FORMAT)/g'
|
|
|
|
|
|
|
|
|
|
sizebefore: |
|
|
|
|
@if test -f $(BUILD_DIR)/$(TARGET).hex; then $(SECHO) $(MSG_SIZE_BEFORE); $(SILENT) || $(HEXSIZE); \
|
|
|
|
|
@if test -f $(BUILD_DIR)/$(TARGET).hex; then $(SECHO) $(MSG_SIZE_BEFORE); $(SILENT) || $(BINARY_SIZE); \
|
|
|
|
|
2>/dev/null; $(SECHO); fi
|
|
|
|
|
|
|
|
|
|
sizeafter: $(BUILD_DIR)/$(TARGET).hex |
|
|
|
|
@if test -f $(BUILD_DIR)/$(TARGET).hex; then $(SECHO); $(SECHO) $(MSG_SIZE_AFTER); $(SILENT) || $(HEXSIZE); \
|
|
|
|
|
@if test -f $(BUILD_DIR)/$(TARGET).hex; then $(SECHO); $(SECHO) $(MSG_SIZE_AFTER); $(SILENT) || $(BINARY_SIZE); \
|
|
|
|
|
2>/dev/null; $(SECHO); fi
|
|
|
|
|
|
|
|
|
|
# Display compiler version information.
|
|
|
|
@ -479,7 +478,7 @@ ifeq ($(findstring avr-gcc,$(CC)),avr-gcc) |
|
|
|
|
SIZE_MARGIN = 1024
|
|
|
|
|
|
|
|
|
|
check-size: |
|
|
|
|
$(eval MAX_SIZE=$(shell n=`$(CC) -E -mmcu=$(MCU) -D__ASSEMBLER__ $(CFLAGS) $(OPT_DEFS) platforms/avr/bootloader_size.c 2> /dev/null | sed -ne 's/\r//;/^#/n;/^AVR_SIZE:/,$${s/^AVR_SIZE: //;p;}'` && echo $$(($$n)) || echo 0))
|
|
|
|
|
$(eval MAX_SIZE=$(shell n=`$(CC) -E -mmcu=$(MCU) -D__ASSEMBLER__ $(CFLAGS) $(OPT_DEFS) platforms/avr/bootloader_size.c 2> /dev/null | $(SED) -ne 's/\r//;/^#/n;/^AVR_SIZE:/,$${s/^AVR_SIZE: //;p;}'` && echo $$(($$n)) || echo 0))
|
|
|
|
|
$(eval CURRENT_SIZE=$(shell if [ -f $(BUILD_DIR)/$(TARGET).hex ]; then $(SIZE) --target=$(FORMAT) $(BUILD_DIR)/$(TARGET).hex | $(AWK) 'NR==2 {print $$4}'; else printf 0; fi))
|
|
|
|
|
$(eval FREE_SIZE=$(shell expr $(MAX_SIZE) - $(CURRENT_SIZE)))
|
|
|
|
|
$(eval OVER_SIZE=$(shell expr $(CURRENT_SIZE) - $(MAX_SIZE)))
|
|
|
|
|