Compiling the bootloader: surprising result

Hi everyone,

I'm using Win7 x64 and I'm trying to compile the bootloader located in arduino-0022\hardware\arduino\bootloaders\atmega for the ATmega1280. I have gcc version 4.3.3 (WinAVR 20100110).

The size of the HEX file ATmegaBOOT_168_atmega1280.hex shipped with Arduino IDE is 10,921 bytes.
But when I try to compile it from ATmegaBOOT_168.c the resulting file is only 7,027 bytes long.

Below is the output from the Windows console:

c:\Program Files (x86)\arduino-0022\hardware\arduino\bootloaders\atmega>make mega
avr-gcc -g -Wall -O2 -mmcu=atmega1280 -DF_CPU=16000000L '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=0' -DBAUD_RATE=57600 -c -o ATmegaBOOT_168.o ATmegaBOOT_168.c
avr-gcc -g -Wall -O2 -mmcu=atmega1280 -DF_CPU=16000000L '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=0' -DBAUD_RATE=57600 -Wl,--section-start=.text=0x1F000 -o ATmegaBOOT_168_atmega1280.elf ATmegaBOOT_168.o
avr-objcopy -j .text -j .data -O ihex ATmegaBOOT_168_atmega1280.elf ATmegaBOOT_168_atmega1280.hex
rm ATmegaBOOT_168.o ATmegaBOOT_168_atmega1280.elf

Is there something wrong with the options? What am I missing?

Thanks a lot