New Makefile

ChibiOS public support forum for topics related to the Atmel AVR family of micro-controllers.

Moderators: utzig, tfAteba

User avatar
tfAteba
Posts: 402
Joined: Fri Oct 16, 2015 11:03 pm
Location: Chartres, France
Has thanked: 50 times
Been thanked: 29 times

New Makefile

Postby tfAteba » Mon Sep 11, 2017 10:23 pm

Hi All,

When I started to use ChibiOS, I made a test with two boards the stm32f401re Nucleo board and the Arduino uno. I was quite surprise by the difference on the output of the two boards:

Nucleo output:

Code: Select all

Compiler Options
arm-none-eabi-gcc -c -mcpu=cortex-m4 -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -ffunction-sections -fdata-sections -fno-common -flto -Wall -Wextra -Wundef -Wstrict-prototypes -Wa,-alms=build/lst/ -DCORTEX_USE_FPU=FALSE -DTHUMB_PRESENT -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -MD -MP -MF .dep/build.d -I. -I../../../os/license -I../../../os/common/startup/ARMCMx/compilers/GCC -I../../../os/common/startup/ARMCMx/devices/STM32F4xx -I../../../os/common/ext/CMSIS/include -I../../../os/common/ext/CMSIS/ST/STM32F4xx -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../os/common/ports/ARMCMx -I../../../os/common/ports/ARMCMx/compilers/GCC -I../../../os/hal/osal/rt -I../../../os/hal/include -I../../../os/hal/ports/common/ARMCMx -I../../../os/hal/ports/STM32/STM32F4xx -I../../../os/hal/ports/STM32/LLD/ADCv2 -I../../../os/hal/ports/STM32/LLD/CANv1 -I../../../os/hal/ports/STM32/LLD/DACv1 -I../../../os/hal/ports/STM32/LLD/DMAv2 -I../../../os/hal/ports/STM32/LLD/EXTIv1 -I../../../os/hal/ports/STM32/LLD/GPIOv2 -I../../../os/hal/ports/STM32/LLD/I2Cv1 -I../../../os/hal/ports/STM32/LLD/MACv1 -I../../../os/hal/ports/STM32/LLD/OTGv1 -I../../../os/hal/ports/STM32/LLD/QUADSPIv1 -I../../../os/hal/ports/STM32/LLD/RTCv2 -I../../../os/hal/ports/STM32/LLD/SPIv1 -I../../../os/hal/ports/STM32/LLD/SDIOv1 -I../../../os/hal/ports/STM32/LLD/TIMv1 -I../../../os/hal/ports/STM32/LLD/USARTv1 -I../../../os/hal/ports/STM32/LLD/xWDGv1 -I../../../os/hal/boards/ST_NUCLEO64_F401RE -I../../../test/lib -I../../../test/rt/source/test -I../../../os/various main.c -o main.o

Compiling crt0_v7m.S
Compiling chcoreasm_v7m.S
Compiling crt1.c
Compiling vectors.c
Compiling chsys.c
Compiling chdebug.c
Compiling chtrace.c
Compiling chvt.c
Compiling chschd.c
Compiling chthreads.c
Compiling chtm.c
Compiling chregistry.c
Compiling chsem.c
Compiling chmtx.c
Compiling chcond.c
Compiling chevents.c
Compiling chmsg.c
Compiling chdynamic.c
Compiling chmboxes.c
Compiling chmemcore.c
Compiling chheap.c
Compiling chmempools.c
Compiling chcore.c
Compiling chcore_v7m.c
Compiling osal.c
Compiling hal.c
Compiling hal_st.c
Compiling hal_buffers.c
Compiling hal_queues.c
Compiling hal_mmcsd.c
Compiling hal_pal.c
Compiling hal_serial.c
Compiling nvic.c
Compiling stm32_isr.c
Compiling hal_lld.c
Compiling stm32_dma.c
Compiling hal_pal_lld.c
Compiling hal_st_lld.c
Compiling hal_serial_lld.c
Compiling board.c
Compiling ch_test.c
Compiling test_root.c
Compiling test_sequence_001.c
Compiling test_sequence_002.c
Compiling test_sequence_003.c
Compiling test_sequence_004.c
Compiling test_sequence_005.c
Compiling test_sequence_006.c
Compiling test_sequence_007.c
Compiling test_sequence_008.c
Compiling test_sequence_009.c
Compiling test_sequence_010.c
Compiling test_sequence_011.c
Compiling test_sequence_012.c
Compiling main.c
Linking build/ch.elf
Creating build/ch.hex
Creating build/ch.bin
Creating build/ch.dmp

   text      data       bss       dec       hex   filename
  30476       656     98128    129260     1f8ec   build/ch.elf
Creating build/ch.list

Done


Arduino uno output:

Code: Select all

-------- begin --------
avr-gcc (GCC) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Compiling C: ../../../os/rt/src/chsys.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chsys.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chsys.o.d ../../../os/rt/src/chsys.c -o ../../../os/rt/src/chsys.o

Compiling C: ../../../os/rt/src/chdebug.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chdebug.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chdebug.o.d ../../../os/rt/src/chdebug.c -o ../../../os/rt/src/chdebug.o

Compiling C: ../../../os/rt/src/chtrace.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chtrace.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chtrace.o.d ../../../os/rt/src/chtrace.c -o ../../../os/rt/src/chtrace.o

Compiling C: ../../../os/rt/src/chvt.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chvt.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chvt.o.d ../../../os/rt/src/chvt.c -o ../../../os/rt/src/chvt.o

Compiling C: ../../../os/rt/src/chschd.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chschd.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chschd.o.d ../../../os/rt/src/chschd.c -o ../../../os/rt/src/chschd.o

Compiling C: ../../../os/rt/src/chthreads.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chthreads.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chthreads.o.d ../../../os/rt/src/chthreads.c -o ../../../os/rt/src/chthreads.o

Compiling C: ../../../os/rt/src/chregistry.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chregistry.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chregistry.o.d ../../../os/rt/src/chregistry.c -o ../../../os/rt/src/chregistry.o

Compiling C: ../../../os/rt/src/chsem.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chsem.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chsem.o.d ../../../os/rt/src/chsem.c -o ../../../os/rt/src/chsem.o

Compiling C: ../../../os/rt/src/chmtx.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chmtx.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chmtx.o.d ../../../os/rt/src/chmtx.c -o ../../../os/rt/src/chmtx.o

Compiling C: ../../../os/rt/src/chcond.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chcond.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chcond.o.d ../../../os/rt/src/chcond.c -o ../../../os/rt/src/chcond.o

Compiling C: ../../../os/rt/src/chevents.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chevents.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chevents.o.d ../../../os/rt/src/chevents.c -o ../../../os/rt/src/chevents.o

Compiling C: ../../../os/rt/src/chmsg.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/rt/src/chmsg.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chmsg.o.d ../../../os/rt/src/chmsg.c -o ../../../os/rt/src/chmsg.o

Compiling C: ../../../os/common/oslib/src/chmboxes.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/common/oslib/src/chmboxes.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chmboxes.o.d ../../../os/common/oslib/src/chmboxes.c -o ../../../os/common/oslib/src/chmboxes.o

Compiling C: ../../../os/common/ports/AVR/chcore.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/common/ports/AVR/chcore.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/chcore.o.d ../../../os/common/ports/AVR/chcore.c -o ../../../os/common/ports/AVR/chcore.o

Compiling C: ../../../os/hal/osal/rt/osal.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/osal/rt/osal.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/osal.o.d ../../../os/hal/osal/rt/osal.c -o ../../../os/hal/osal/rt/osal.o

Compiling C: ../../../os/hal/src/hal.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/src/hal.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal.o.d ../../../os/hal/src/hal.c -o ../../../os/hal/src/hal.o

Compiling C: ../../../os/hal/src/hal_st.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/src/hal_st.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_st.o.d ../../../os/hal/src/hal_st.c -o ../../../os/hal/src/hal_st.o

Compiling C: ../../../os/hal/src/hal_buffers.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/src/hal_buffers.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_buffers.o.d ../../../os/hal/src/hal_buffers.c -o ../../../os/hal/src/hal_buffers.o

Compiling C: ../../../os/hal/src/hal_queues.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/src/hal_queues.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_queues.o.d ../../../os/hal/src/hal_queues.c -o ../../../os/hal/src/hal_queues.o

Compiling C: ../../../os/hal/src/hal_mmcsd.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/src/hal_mmcsd.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_mmcsd.o.d ../../../os/hal/src/hal_mmcsd.c -o ../../../os/hal/src/hal_mmcsd.o

Compiling C: ../../../os/hal/src/hal_pal.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/src/hal_pal.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_pal.o.d ../../../os/hal/src/hal_pal.c -o ../../../os/hal/src/hal_pal.o

Compiling C: ../../../os/hal/src/hal_serial.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/src/hal_serial.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_serial.o.d ../../../os/hal/src/hal_serial.c -o ../../../os/hal/src/hal_serial.o

Compiling C: ../../../os/hal/ports/AVR/MEGA/ATMEGAxx/hal_lld.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/ports/AVR/MEGA/ATMEGAxx/hal_lld.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_lld.o.d ../../../os/hal/ports/AVR/MEGA/ATMEGAxx/hal_lld.c -o ../../../os/hal/ports/AVR/MEGA/ATMEGAxx/hal_lld.o

Compiling C: ../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1/hal_pal_lld.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1/hal_pal_lld.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_pal_lld.o.d ../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1/hal_pal_lld.c -o ../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1/hal_pal_lld.o

Compiling C: ../../../os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_st_lld.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_st_lld.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_st_lld.o.d ../../../os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_st_lld.c -o ../../../os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_st_lld.o

Compiling C: ../../../os/hal/ports/AVR/MEGA/LLD/USARTv1/hal_serial_lld.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/ports/AVR/MEGA/LLD/USARTv1/hal_serial_lld.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/hal_serial_lld.o.d ../../../os/hal/ports/AVR/MEGA/LLD/USARTv1/hal_serial_lld.c -o ../../../os/hal/ports/AVR/MEGA/LLD/USARTv1/hal_serial_lld.o

Compiling C: ../../../os/hal/boards/ARDUINO_MEGA/board.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/hal/boards/ARDUINO_MEGA/board.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/board.o.d ../../../os/hal/boards/ARDUINO_MEGA/board.c -o ../../../os/hal/boards/ARDUINO_MEGA/board.o

Compiling C: ../../../test/lib/ch_test.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/lib/ch_test.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/ch_test.o.d ../../../test/lib/ch_test.c -o ../../../test/lib/ch_test.o

Compiling C: ../../../test/rt/source/test/test_root.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_root.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_root.o.d ../../../test/rt/source/test/test_root.c -o ../../../test/rt/source/test/test_root.o

Compiling C: ../../../test/rt/source/test/test_sequence_001.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_001.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_001.o.d ../../../test/rt/source/test/test_sequence_001.c -o ../../../test/rt/source/test/test_sequence_001.o

Compiling C: ../../../test/rt/source/test/test_sequence_002.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_002.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_002.o.d ../../../test/rt/source/test/test_sequence_002.c -o ../../../test/rt/source/test/test_sequence_002.o

Compiling C: ../../../test/rt/source/test/test_sequence_003.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_003.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_003.o.d ../../../test/rt/source/test/test_sequence_003.c -o ../../../test/rt/source/test/test_sequence_003.o

Compiling C: ../../../test/rt/source/test/test_sequence_004.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_004.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_004.o.d ../../../test/rt/source/test/test_sequence_004.c -o ../../../test/rt/source/test/test_sequence_004.o

Compiling C: ../../../test/rt/source/test/test_sequence_005.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_005.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_005.o.d ../../../test/rt/source/test/test_sequence_005.c -o ../../../test/rt/source/test/test_sequence_005.o

Compiling C: ../../../test/rt/source/test/test_sequence_006.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_006.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_006.o.d ../../../test/rt/source/test/test_sequence_006.c -o ../../../test/rt/source/test/test_sequence_006.o

Compiling C: ../../../test/rt/source/test/test_sequence_007.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_007.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_007.o.d ../../../test/rt/source/test/test_sequence_007.c -o ../../../test/rt/source/test/test_sequence_007.o

Compiling C: ../../../test/rt/source/test/test_sequence_008.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_008.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_008.o.d ../../../test/rt/source/test/test_sequence_008.c -o ../../../test/rt/source/test/test_sequence_008.o

Compiling C: ../../../test/rt/source/test/test_sequence_009.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_009.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_009.o.d ../../../test/rt/source/test/test_sequence_009.c -o ../../../test/rt/source/test/test_sequence_009.o

Compiling C: ../../../test/rt/source/test/test_sequence_010.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_010.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_010.o.d ../../../test/rt/source/test/test_sequence_010.c -o ../../../test/rt/source/test/test_sequence_010.o

Compiling C: ../../../test/rt/source/test/test_sequence_011.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_011.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_011.o.d ../../../test/rt/source/test/test_sequence_011.c -o ../../../test/rt/source/test/test_sequence_011.o

Compiling C: ../../../test/rt/source/test/test_sequence_012.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../test/rt/source/test/test_sequence_012.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/test_sequence_012.o.d ../../../test/rt/source/test/test_sequence_012.c -o ../../../test/rt/source/test/test_sequence_012.o

Compiling C: ../../../os/various/evtimer.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./../../../os/various/evtimer.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/evtimer.o.d ../../../os/various/evtimer.c -o ../../../os/various/evtimer.o

Compiling C: main.c
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./main.lst -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/main.o.d main.c -o main.o

Linking: ch.elf
avr-gcc -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=../../../os/rt/src/chsys.o -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -MF .dep/ch.elf.d ../../../os/rt/src/chsys.o ../../../os/rt/src/chdebug.o ../../../os/rt/src/chtrace.o ../../../os/rt/src/chvt.o ../../../os/rt/src/chschd.o ../../../os/rt/src/chthreads.o ../../../os/rt/src/chregistry.o ../../../os/rt/src/chsem.o ../../../os/rt/src/chmtx.o ../../../os/rt/src/chcond.o ../../../os/rt/src/chevents.o ../../../os/rt/src/chmsg.o ../../../os/common/oslib/src/chmboxes.o ../../../os/common/ports/AVR/chcore.o ../../../os/hal/osal/rt/osal.o ../../../os/hal/src/hal.o ../../../os/hal/src/hal_st.o ../../../os/hal/src/hal_buffers.o ../../../os/hal/src/hal_queues.o ../../../os/hal/src/hal_mmcsd.o ../../../os/hal/src/hal_pal.o ../../../os/hal/src/hal_serial.o ../../../os/hal/ports/AVR/MEGA/ATMEGAxx/hal_lld.o ../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1/hal_pal_lld.o ../../../os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_st_lld.o ../../../os/hal/ports/AVR/MEGA/LLD/USARTv1/hal_serial_lld.o ../../../os/hal/boards/ARDUINO_MEGA/board.o ../../../test/lib/ch_test.o ../../../test/rt/source/test/test_root.o ../../../test/rt/source/test/test_sequence_001.o ../../../test/rt/source/test/test_sequence_002.o ../../../test/rt/source/test/test_sequence_003.o ../../../test/rt/source/test/test_sequence_004.o ../../../test/rt/source/test/test_sequence_005.o ../../../test/rt/source/test/test_sequence_006.o ../../../test/rt/source/test/test_sequence_007.o ../../../test/rt/source/test/test_sequence_008.o ../../../test/rt/source/test/test_sequence_009.o ../../../test/rt/source/test/test_sequence_010.o ../../../test/rt/source/test/test_sequence_011.o ../../../test/rt/source/test/test_sequence_012.o ../../../os/various/evtimer.o main.o --output ch.elf -Wl,-Map=ch.map,--cref,--gc-sections   -Wl,-u,vfprintf -lprintf_min -Wl,-u,vfscanf -lscanf_min -lm

Creating load file for Flash: ch.hex
avr-objcopy -O ihex -R .eeprom ch.elf ch.hex

Creating load file for Flash: ch.bin
avr-objcopy -O binary -R .eeprom ch.elf ch.bin

Creating load file for EEPROM: ch.eep
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \
--change-section-lma .eeprom=0 --no-change-warnings -O ihex ch.elf ch.eep || exit 0

Creating Extended Listing: ch.lss
avr-objdump -h -S ch.elf > ch.lss

Creating Symbol Table: ch.sym
avr-nm -n ch.elf > ch.sym

Size after:
AVR Memory Usage
----------------
Device: atmega2560

Program:   30986 bytes (11.8% Full)
(.text + .data + .bootloader)

Data:       4914 bytes (60.0% Full)
(.data + .bss + .noinit)



-------- end --------


The AVR one is too nosy, there are too many informations.
After comparing the makefiles, I found that the Nucleo makefile allow to play with a flag so that the build process can be more or less verbose. It was not the case whit the Arduino uno makefile, in general it was not the case with the AVR family makefile.

Today, some cool features are added to ChibiOS such as "Portable multi-device/board ChibiOS applications" for instance.
This can not be added to AVR family because of the makefile use at the moment.

So for all that reasons, I decide to write a new makefile :) based on makefile used in the STM32 family. By hopping that it will have the advantage to be clear at the build process and at the same time will allow to support new ChibiOS features.

The makefile is not completely finished, but I already have a good result with the current state. It can still be improve so all ideas and comments are welcome :)
Attachments
new-makefile.zip
(4.56 KiB) Downloaded 7 times
regards,

Theo.

User avatar
tfAteba
Posts: 402
Joined: Fri Oct 16, 2015 11:03 pm
Location: Chartres, France
Has thanked: 50 times
Been thanked: 29 times

Re: New Makefile

Postby tfAteba » Mon Sep 11, 2017 10:24 pm

Here is the output for demos/AVR/RT-ARDUINO-MEGA/ for example when using the New makefile.

Code: Select all

Compiler Options
avr-gcc -c -mmcu=atmega2560 -I. -gdwarf-2 -DF_CPU=16000000UL -O2 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=build/lst/ -std=gnu11 -mrelax -fdata-sections -ffunction-sections -Wundef -MMD -MP -I. -I../../../os/license -I../../../os/common/ports/AVR -I../../../os/common/ports/AVR/compilers/GCC -I../../../os/rt/include -I../../../os/common/oslib/include -I../../../test/lib -I../../../test/rt/source/test -I../../../os/hal/include -I../../../os/hal/osal/rt -I../../../os/hal/ports/AVR/MEGA/ATMEGAxx -I../../../os/hal/ports/AVR/MEGA/LLD/ADCv1 -I../../../os/hal/ports/AVR/MEGA/LLD/EXTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/GPIOv1 -I../../../os/hal/ports/AVR/MEGA/LLD/I2Cv1 -I../../../os/hal/ports/AVR/MEGA/LLD/SPIv1 -I../../../os/hal/ports/AVR/MEGA/LLD/TIMv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USARTv1 -I../../../os/hal/ports/AVR/MEGA/LLD/USBv1 -I../../../os/hal/boards/ARDUINO_MEGA -I../../../os/various main.c -o main.o

Compiling chsys.c
Compiling chdebug.c
Compiling chtrace.c
Compiling chvt.c
Compiling chschd.c
Compiling chthreads.c
Compiling chregistry.c
Compiling chsem.c
Compiling chmtx.c
Compiling chcond.c
Compiling chevents.c
Compiling chmsg.c
Compiling chmboxes.c
Compiling chcore.c
Compiling osal.c
Compiling hal.c
Compiling hal_st.c
Compiling hal_buffers.c
Compiling hal_queues.c
Compiling hal_mmcsd.c
Compiling hal_pal.c
Compiling hal_serial.c
Compiling hal_lld.c
Compiling hal_pal_lld.c
Compiling hal_st_lld.c
Compiling hal_serial_lld.c
Compiling board.c
Compiling ch_test.c
Compiling test_root.c
Compiling test_sequence_001.c
Compiling test_sequence_002.c
Compiling test_sequence_003.c
Compiling test_sequence_004.c
Compiling test_sequence_005.c
Compiling test_sequence_006.c
Compiling test_sequence_007.c
Compiling test_sequence_008.c
Compiling test_sequence_009.c
Compiling test_sequence_010.c
Compiling test_sequence_011.c
Compiling test_sequence_012.c
Compiling evtimer.c
Compiling main.c
Linking build/ch.elf
Creating build/ch.hex
Creating build/ch.bin
Creating build/ch.eep
Creating build/ch.lss
Creating build/ch.sym

   text      data       bss       dec       hex   filename
  27654      3332      1582     32568      7f38   build/ch.elf


AVR Memory Usage
----------------
Device: atmega2560

Program:   30986 bytes (11.8% Full)
(.text + .data + .bootloader)

Data:       4914 bytes (60.0% Full)
(.data + .bss + .noinit)



Done



As in the STM, the makefile is now splited in two files (Makefile and rules.mk) for the moment rules.mk is also locate in the demo folder. It can be remove from this location if need.
The output of the build process is now clear :D and for people who still want the verbose log, there is a flag to play with.
All the binaries (elf, bin, hex ...), the list files and the object files are in a build directory. The output directory look like this:

Code: Select all

build/
├── ch.bin
├── ch.eep
├── ch.elf
├── ch.hex
├── ch.lss
├── ch.sym
├── lst
│   ├── board.lst
.
.
.
└── obj
    ├── board.d
    ├── board.o
.
.

So after the build process, you will have a directory named build with all the output binaries.

There is still need to add support for C++ compilation and Debug.

Giovanni, Utzig, what do you think about this makefile? Can I replace the current makefile by this one on all the AVR demos? Is there some thing that I'm missing?

Thanks you in advance for your comments, recommendations, improvements.
regards,

Theo.

e_l_tang
Posts: 31
Joined: Sun Jul 03, 2016 7:58 pm
Been thanked: 2 times

Re: New Makefile

Postby e_l_tang » Mon Sep 11, 2017 10:44 pm

So far my preferred method for building AVR projects has been to use DMBS. There is a good summary of DMBS on its GitHub page. It's a very different way of using make and I'm not sure how well it would work with the existing ChibiOS build system, but I thought I'd mention it just so everyone knows it's a thing.

User avatar
tfAteba
Posts: 402
Joined: Fri Oct 16, 2015 11:03 pm
Location: Chartres, France
Has thanked: 50 times
Been thanked: 29 times

Re: New Makefile

Postby tfAteba » Wed Sep 13, 2017 11:11 am

Hi E_l_tang,

Thank you for pointing it out. This tools is very useful.

But I prefer to use just one or two files to build my project instead of having a tools with a lot of files.
Some time you can have license problem too.

AVR is a part of ChibiOS, so I have to follow the line define by Giovanni and the community.

My goal is also to make AVR to be similar to the STM as possible :) .
regards,

Theo.

User avatar
tfAteba
Posts: 402
Joined: Fri Oct 16, 2015 11:03 pm
Location: Chartres, France
Has thanked: 50 times
Been thanked: 29 times

Re: New Makefile

Postby tfAteba » Sun Sep 17, 2017 10:12 pm

Hi all,

Just a quick message to said that the new makefile have been added to the trunk repository.

All AVR Makefile have been updated (demos and testhal).

Any feedback and suggestion is welcome as usual.

Thanks.
regards,

Theo.

User avatar
wurstnase
Posts: 6
Joined: Tue Oct 17, 2017 2:24 pm
Has thanked: 4 times
Contact:

Re: New Makefile

Postby wurstnase » Tue Oct 17, 2017 2:31 pm

Nice work.

I'm working with STM32 and sometimes also on AVRs.
Playing with this, I had some issues using link time optimization on AVR.

Are you already working on this?

When I find some time, I will check my last test and error-log.

Here is the log:

Code: Select all

Linking build/ch.elf
..\Local\Temp\ccQjG52u.ltrans4.ltrans.o: In function `_port_thread_start':
<artificial>:(.text._port_thread_start+0x8): undefined reference to `chThdExit'
collect2.exe: error: ld returned 1 exit status
make: *** [build/ch.elf] Error 1
\o/ Nico

User avatar
tfAteba
Posts: 402
Joined: Fri Oct 16, 2015 11:03 pm
Location: Chartres, France
Has thanked: 50 times
Been thanked: 29 times

Re: New Makefile

Postby tfAteba » Tue Oct 17, 2017 10:36 pm

Hi wurstnase,

Nice work.

Thank you,

I presume that you are playing with trunk repo?

Could you give more information about your manipulation so that I can help?
(chibios version, board, option use during compilation)

Are you already working on this?

Yes I'm still working on that, every help is welcome :)

Thanks
regards,

Theo.

User avatar
wurstnase
Posts: 6
Joined: Tue Oct 17, 2017 2:24 pm
Has thanked: 4 times
Contact:

Re: New Makefile

Postby wurstnase » Wed Oct 18, 2017 6:23 am

Hi Theo,

I'm always trying to help where I can. :)

I'm currently not using the SVN. I'm more familiar with git. But this should be close to the SVN-trunk.
Unfortunately the current trunk doesn't work with the AVR-demos.

I'm in /ChibiOS/demos/AVR/RT-ARDUINO-MEGA

Code: Select all

makefile:96: ../../../test/rt/test.mk: No such file or directory
make: *** No rule to make target `../../../test/rt/test.mk'.  Stop.


and when I replace test.mk with rt_test.mk

Code: Select all

In file included from ../../../test/rt/source/test/rt_test_root.c:43:0:
../../../test/rt/source/test/rt_test_root.h:25:21: fatal error: ch_test.h: No such file or directory
 #include "ch_test.h"
 
 compilation terminated.
make: *** [build/obj/rt_test_root.o] Error 1


So I go little bit in the past.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@10809 35acf78f-673a-0410-8e92-d51de3d6d3f4

So first I only extend the UST_OPT flags with -flto.

Code: Select all

# Compiler options here.
ifeq ($(USE_OPT),)
  USE_OPT = -O2 -flto
endif
\o/ Nico

User avatar
tfAteba
Posts: 402
Joined: Fri Oct 16, 2015 11:03 pm
Location: Chartres, France
Has thanked: 50 times
Been thanked: 29 times

Re: New Makefile

Postby tfAteba » Wed Oct 18, 2017 8:00 am

Hi Nico,

You can use Git to clone the svn repo, it is not a problem :)

Giovanni is improving the rt test suite at the moment an he made some modifications, that why you have trouble. For the moment did'nt update the AVR port according his modifications.

I will resolve this tonigth, sorry but I can't work on that before 7:30PM.

I will post when the corrections will be made.

Thanks.
regards,

Theo.

User avatar
tfAteba
Posts: 402
Joined: Fri Oct 16, 2015 11:03 pm
Location: Chartres, France
Has thanked: 50 times
Been thanked: 29 times

Re: New Makefile

Postby tfAteba » Wed Oct 18, 2017 9:20 pm

Hi Nico,

I'm currently not using the SVN. I'm more familiar with git. But this should be close to the SVN-trunk.
Unfortunately the current trunk doesn't work with the AVR-demos.

I'm in /ChibiOS/demos/AVR/RT-ARDUINO-MEGA

Code:
makefile:96: ../../../test/rt/test.mk: No such file or directory
make: *** No rule to make target `../../../test/rt/test.mk'. Stop.


I have also got this error while compiling the lastest trunk version.
This is normal, take a look at this post: http://www.chibios.com/forum/viewtopic.php?f=3&t=4278

So I try to resolve you problem while using the -flto compilation option.

I base my investigation on the revision: 10831, this is the last safe revision.
To get the trunk with git, you can do this for example: git svn clone -r10831 https://svn.code.sf.net/p/chibios/svn/trunk chibios-svn

After building the demo/AVR/RT-ARDUINO-MEGA demo with you compilation option, I got this message due to linking error.

Code: Select all

Linking build/ch.elf
`chThdExit' referenced in section `.text._port_thread_start' of /tmp/ccsyWCy7.ltrans0.ltrans.o: defined in discarded section `.text' of build/obj/chthreads.o (symbol from plugin)
collect2: error: ld returned 1 exit status
../../../os/common/ports/AVR/compilers/GCC/rules.mk:201: recipe for target 'build/ch.elf' failed
make: *** [build/ch.elf] Error 1


This is a know gcc issieu, you can take a look at: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51205

So to resolve the problem, you have to add

Code: Select all

__attribute__((used));
to the chThdExit function prototype. You can find it at os/rt/include/chthreads.h line 250. You must have this:

Code: Select all

void chThdExit(msg_t msg) __attribute__((used));


This fix the problem.

I will add the solution to the repository sources when trunk will be safe again.

Can you make the test to your side with your revision and give feedback please?

Thanks in advance.
regards,

Theo.


Return to “AVR Support”

Who is online

Users browsing this forum: No registered users and 1 guest