1
0
mirror of https://github.com/arduino/Arduino.git synced 2024-12-11 22:24:13 +01:00
Arduino/hardware/arduino/sam/platform.txt

74 lines
3.6 KiB
Plaintext
Raw Normal View History

2012-01-11 13:59:16 +01:00
# SAM3 compile variables
# ---------------------
2012-01-11 13:59:16 +01:00
name=Atmel SAM3
2012-05-09 15:34:00 +02:00
compiler.path={runtime.ide.path}/hardware/tools/g++_arm_none_eabi/bin/
#compiler.path=C:/arm-none-eabi-gcc-4_6/bin/
2012-01-11 13:59:16 +01:00
compiler.c.cmd=arm-none-eabi-gcc
compiler.c.flags=-c -g -Os -w -mlong-calls -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -Dprintf=iprintf
2012-01-11 13:59:16 +01:00
compiler.c.elf.cmd=arm-none-eabi-gcc
compiler.c.elf.flags=-Os -Wl,--gc-sections
2012-01-11 13:59:16 +01:00
compiler.S.flags=-c -g -assembler-with-cpp
compiler.cpp.cmd=arm-none-eabi-g++
compiler.cpp.flags=-c -g -Os -w -mlong-calls -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -Dprintf=iprintf
2012-01-11 13:59:16 +01:00
compiler.ar.cmd=arm-none-eabi-ar
compiler.ar.flags=rcs
compiler.objcopy.cmd=arm-none-eabi-objcopy
compiler.objcopy.eep.flags=-O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0
compiler.elf2hex.flags=-O binary
compiler.elf2hex.cmd=arm-none-eabi-objcopy
compiler.ldflags=
compiler.size.cmd=arm-none-eabi-size
compiler.define=-DARDUINO=
compiler.libsam.c.flags=-I{build.system.path}/libsam -I{build.system.path}/CMSIS/CMSIS/Include/ -I{build.system.path}/CMSIS/Device/ATMEL/
2012-01-11 13:59:16 +01:00
# SAM3 compile patterns
# ---------------------
2011-06-25 18:53:35 +02:00
## Compile c files
2012-02-13 17:58:30 +01:00
recipe.c.o.pattern={compiler.path}{compiler.c.cmd} {compiler.c.flags} -mcpu={build.mcu} -DF_CPU={build.f_cpu} -D{software}={runtime.ide.version} {build.extra_flags} {compiler.libsam.c.flags} {includes} {source_file} -o {object_file}
2011-06-25 18:53:35 +02:00
## Compile c++ files
2012-02-13 17:58:30 +01:00
recipe.cpp.o.pattern={compiler.path}{compiler.cpp.cmd} {compiler.cpp.flags} -mcpu={build.mcu} -DF_CPU={build.f_cpu} -D{software}={runtime.ide.version} {build.extra_flags} {compiler.libsam.c.flags} {includes} {source_file} -o {object_file}
2011-06-25 18:53:35 +02:00
## Create archives
recipe.ar.pattern={compiler.path}{compiler.ar.cmd} {compiler.ar.flags} {build.path}/{archive_file} {object_file}
2011-06-25 18:53:35 +02:00
## Combine gc-sections, archives, and objects
recipe.c.combine.pattern={compiler.path}{compiler.c.elf.cmd} {compiler.c.elf.flags} -mcpu={build.mcu} -T{build.variant.path}/{build.ldscript} -Wl,-Map,{build.path}/{build.project_name}.map -o {build.path}/{build.project_name}.elf -L{build.path} -lm -lgcc -mthumb -Wl,--cref -Wl,--check-sections -Wl,--gc-sections -Wl,--entry=Reset_Handler -Wl,--unresolved-symbols=report-all -Wl,--warn-common -Wl,--warn-section-align -Wl,--warn-unresolved-symbols -Wl,--start-group {object_files} {build.variant.path}/{build.variant_system_lib} {build.path}/{archive_file} -Wl,--end-group
2011-06-25 18:53:35 +02:00
## Create eeprom
2012-01-11 13:59:16 +01:00
recipe.objcopy.eep.pattern=
2011-06-25 18:53:35 +02:00
## Create hex
2012-02-13 17:58:30 +01:00
recipe.objcopy.hex.pattern={compiler.path}{compiler.elf2hex.cmd} {compiler.elf2hex.flags} {build.path}/{build.project_name}.elf {build.path}/{build.project_name}.bin
2011-06-25 18:53:35 +02:00
2012-02-13 17:58:30 +01:00
## Compute size
recipe.size.pattern={compiler.path}{compiler.size.cmd} -A {build.path}/{build.project_name}.elf
recipe.size.regex=\.text\s+([0-9]+).*
2012-01-11 13:59:16 +01:00
2011-06-25 18:53:35 +02:00
2012-02-13 17:58:30 +01:00
# SAM3 Uploader tools
# -------------------
tools.bossac.cmd=bossac
2012-04-02 18:30:53 +02:00
tools.bossac.cmd.windows=bossac.exe
2012-02-13 17:58:30 +01:00
tools.bossac.path={runtime.ide.path}/hardware/tools
tools.bossac.upload.params.verbose=-i -d
tools.bossac.upload.params.quiet=
tools.bossac.upload.pattern={path}/{cmd} {upload.verbose} --port={serial.port.file} -e -w -v -b {build.path}/{build.project_name}.bin
# specialized tool for adk2 to twiddle the erase line before running bossac
tools.adk2install.cmd=adk2install
tools.adk2install.cmd.windows=bossac.exe
tools.adk2install.path={runtime.ide.path}/hardware/tools
tools.adk2install.upload.params.verbose=
tools.adk2install.upload.params.quiet=
tools.adk2install.upload.pattern={path}/{cmd} {path}/adk2tool {serial.port.file} {path}/bossac {build.path}/{build.project_name}.bin