{ "build_systems": [ { "name": "compile", "working_dir": "$project_path", "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", // Arduino build process: // https://www.arduino.cc/en/Hacking/BuildProcess "shell_cmd": "\"c:\\Program Files (x86)\\Arduino\\arduino_debug.exe\" --pref build.path=..\\output --verify --board marlinAddon:avr:rambo -v --preserve-temp-files Firmware.ino" }, { "name": "compile & upload", "working_dir": "$project_path", "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", //FIXME // Better to use avrdude directly? // http://www.nongnu.org/avrdude/user-manual/avrdude_4.html // avrdude -F -v -pm168 -cstk500v1 -P\\.\COM4 -b19200 -D -Uflash:w:"file.hex":i // may need add path to avrdude config file: -C"c:\utils\arduino-0016\hardware\tools\avr\etc\avrdude.conf" if Arduino IDE installed in "c:\utils\arduino-0016\" // https://typeunsafe.wordpress.com/2011/07/22/programming-arduino-with-avrdude/ "shell_cmd": "\"c:\\Program Files (x86)\\Arduino\\arduino_debug.exe\" --pref build.path=..\\output --upload --port COM6 --board marlinAddon:avr:rambo -v --preserve-temp-files Firmware.ino" }, { "name": "map-data", "working_dir": "$project_path", // https://sourceware.org/binutils/docs-2.21/binutils/objdump.html // Maybe it is better to generate map files by the linker? // avr-gcc -g -mmcu=atmega8 -Wl,-Map,demo.map -o demo.elf demo.o "shell_cmd": "\"c:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr\\bin\\avr-objdump.exe\" -x -S -C -j .data ..\\output\\Firmware.ino.elf > ..\\output\\Firmware-data.map" }, { "name": "map-bss", "working_dir": "$project_path", // https://sourceware.org/binutils/docs-2.21/binutils/objdump.html "shell_cmd": "\"c:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr\\bin\\avr-objdump.exe\" -x -S -C -j .bss ..\\output\\Firmware.ino.elf > ..\\output\\Firmware-bss.map" }, { "name": "map-all", "working_dir": "$project_path", // https://sourceware.org/binutils/docs-2.21/binutils/objdump.html "shell_cmd": "\"c:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr\\bin\\avr-objdump.exe\" -x -S -C ..\\output\\Firmware.ino.elf > ..\\output\\Firmware-all.map" }, { "name": "disassemble", "working_dir": "$project_path", // https://sourceware.org/binutils/docs-2.21/binutils/objdump.html "shell_cmd": "\"c:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr\\bin\\avr-objdump.exe\" -h -w -S ..\\output\\Firmware.ino.elf > ..\\output\\Firmware.asm" } ], "folders": [ { "path": "." // "folder_exclude_patterns": [".svn", "._d", ".metadata", ".settings"], // "file_exclude_patterns": ["XS.c"] } ] }