aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-01-11Populate USB_PRODUCT and USB_MANUFACTURER if in boards file using CaterinaJohn Whittington
2018-12-24Add 'sam' flag to ardmk-init to include Sam.mk rather than Arduino.mkJohn Whittington
2018-11-27Updated historySimon John
Added ArchLinux documentation uplift
2018-11-27Merge pull request #593 from Akram-Chehaima/masterSimon John
Change & add repo to install package on Arch linux
2018-11-27Change & add repo to install package onArch linuxAkram Chehaima
yaourt is "Discontinued" it's not save must use alternatives like yay On Arch Linux add commands to install python-pyserial on Arch Linux
2018-11-17Merge pull request #592 from dewhisna/cpu_speed_selectSimon John
Add support for BOARD_CLOCK setting
2018-11-11Change BOARD_SPEED to BOARD_CLOCK setting and extend to menu.clock and ↵Donna Whisnant
menu.speed. This is needed to specify CPU speed and fuses for boards.txt files that use this format: "{board_tag}.menu.clock.{board_clock}.build.f_cpu" "{board_tag}.menu.clock.{board_clock}.bootloader.low_fuses" "{board_tag}.menu.clock.{board_clock}.bootloader.high_fuses" "{board_tag}.menu.clock.{board_clock}.bootloader.extended_fuses" For example ATtiny processors. It also works for speed-only settings like the Watterott ATmega328PB library: https://github.com/watterott/ATmega328PB-Testing "{board_tag}.menu.speed.{board_clock}.build.f_cpu"
2018-11-11Update documentation for BOARD_SPEED.Donna Whisnant
2018-11-11Add support for BOARD_SPEED setting.Donna Whisnant
This is needed to specify CPU speed for boards.txt files that use this format: "{board_tag}.menu.speed.{board_speed}.build.f_cpu" For example, the Watterott ATmega328PB library: https://github.com/watterott/ATmega328PB-Testing
2018-10-07Merge pull request #583 from wingunder/move_core_link_lastSudar Muthu
Moved CORE_LIB to the last position of the defined linked objects.
2018-10-03Merge remote-tracking branch 'origin/fix-travis-sudo-required' into ↵Pieter du Preez
move_core_link_last
2018-10-03Fix "does not allow use of 'sudo'" error in travisPieter du Preez
Pull requests seem to fail with the following error: > This job is running on container-based infrastructure, which does not allow use of 'sudo', setuid, and setgid executables. > If you require sudo, add 'sudo: required' to your .travis.yml This commit fixes it, by adding 'sudo: required' to .travis.yml, as suggested by the error message.
2018-10-02Added a test case for moving CORE_LIB in PR #583.Pieter du Preez
This patch is meant to test the link order, if the OTHER_OBJS variable gets used to add 3rd party archives, that depend on the Arduino core lib (the archive pointed to by the CORE_LIB variable). The examples/Blink3rdPartyLib directory contains a stripped down Blink and includes a library in the examples/Blink3rdPartyLib/Toggle sub-directory. The archive, built inside the Toggle directory mimics a 3rd party library. The archive gets built and linked in by using the OTHER_OBS variable in examples/Blink3rdPartyLib/Makefile.
2018-10-02Merge remote-tracking branch 'org/master' into move_core_link_lastPieter du Preez
2018-09-30Merge pull request #580 from wingunder/masterSudar Muthu
Moved the PARSE_BOARD macro and added the TOOL_PREFIX variable for setting up tool chains.
2018-09-30Merge pull request #582 from tuna-f1sh/masterSudar Muthu
Pass OpenOCD options to debug_init target
2018-09-30Moved CORE_LIB to the last position of the defined linked objects.Pieter du Preez
The linking order was changed from: $(LOCAL_OBJS) $(CORE_LIB) $(OTHER_OBJS) $(OTHER_LIBS) to: $(LOCAL_OBJS) $(OTHER_OBJS) $(OTHER_LIBS) $(CORE_LIB) This makes more sense, as OTHER_OBJS would rather depend on CORE_LIB, than the other way around. Apart from libc and libm, CORE_LIB should conceptually _always_ be the last lib in the link list, as it is the core (base of everything). BTW, this was implemented correctly for the 'sam' architecture.
2018-09-28Pass OpenOCD options to debug_init targetJohn Whittington
2018-09-15Moved the BOARDS_TXT section and stop if BOARDS_TXT is not a file.Pieter du Preez
The section of Arduino.mk that calculates BOARDS_TXT was moved to just before the point where it gets used for the first time (a call to PARSE_BOARD). An error gets generated if BOARDS_TXT is not pointing to a valid file, directly after the BOARDS_TXT calculation. In addition, the PARSE_BOARD macro will now be bypassed if the BOARDS_TXT variable points to a non-existing file. If a user makefile uses PARSE_BOARD before including Arduino.mk, and the BOARDS_TXT is wrong, the error will only be caught in the Arduino.mk file, which is probably acceptable.
2018-09-14Added the TOOL_PREFIX variable for setting up the executable tools.Pieter du Preez
Currently three different tool chains seem to be used: * avr-* * pic32-* * arm-none-eabi-* These all get set up independently. This patch centralizes the definitions of the executable tools and does it generically, by means of the newly introduced TOOL_PREFIX variable. Setting up a tool chain is now simply a matter of defining the TOOL_PREFIX variable. For the currently supported tool chains it gets set to avr, pic32 or arm-none-eabi. Arbitrary tool chains can now easily be set up, by the TOOL_PREFIX variable. Although the use of the OVERRIDE_EXECUTABLES variable is now almost not justifiable, it was left as-is, in order to assure backwards compatibility.
2018-09-13Moved the PARSE_BOARD macro from Arduino.mk to Common.mk.Pieter du Preez
There seems to be 3 different macros to parse the boards.txt file. This patch moves the PARSE_BOARD macro from Arduino.mk to Common.mk. The PARSE_OPENCM and PARSE_TEENSY macros in Teensy.mk and OpenCM.mk were removed and the common PARSE_BOARD is now being called from everywhere. Advantages of this fix are: 1. Less code, i.e. no redundant parse macros. 2. A single standardized algorithm to parse the boards.txt file.
2018-08-10Merge pull request #578 from TE-HiroakiYamazoe/fix_typo_of_avrdude_isp_optSimon John
Fix typo of AVRDUDE_ISP_OPT
2018-08-09Fix typo of AVRDUDE_ISP_OPTHiroaki Yamazoe
2018-06-22Merge pull request #567 from tuna-f1sh/dueSudar Muthu
Support for Arduino Due added
2018-06-14Support for Arduino Due addedJohn Whittington
Update HISTORY.md Add avr core emulation to C sources
2018-03-18Merge pull request #556 from wingunder/masterSudar Muthu
Added the DIAGNOSTICS_COLOR_WHEN var for controlling diagnostics-color.
2018-03-18Added the DIAGNOSTICS_COLOR_WHEN var for controlling diagnostics-color.Pieter du Preez
Some IDEs do not work nicely with the recently added diagnostics-color compiler switch. This patch adds the DIAGNOSTICS_COLOR_WHEN variable, for controlling diagnostics-color switch. The default was chosen to be 'always', which makes the Arduino.mk file backwards compatible with everything up to commit fa82c3a9db (Sat Sep 2 15:32:52 2017 +0100). The supported values for DIAGNOSTICS_COLOR_WHEN are: `always`, `never` and `auto`, and as with all Arduino.mk variables, it can easily be overridden. For more details on the diagnostics-color compiler switch, see: https://gcc.gnu.org/onlinedocs/gcc-4.9.2/gcc/Language-Independent-Options.html#Language-Independent-Options
2018-02-24Merge pull request #546 from kierdavis/disable-prog-types-compatSimon John
Allow compatibility with old pgmspace API to be disabled by the user
2018-02-24Merge branch 'master' into disable-prog-types-compatSimon John
2018-02-24Merge pull request #533 from doronbehar/detect-archlinuxSimon John
Set `ARDMK_VENDOR` differently if OS is Arch Linux.
2018-02-24Merge pull request #543 from tuna-f1sh/samSimon John
Arduino Atmel SAM family Support (ARM architecture) Thanks @tuna-f1sh !
2018-02-24SAMD Cortex M0 device support (Zero, MKR1000, etc)John Whittington
Compilation improvements by adding variant as other obj but not working on device Arduino Zero devices with OpenOCD working Created ARM_TOOLS_DIR and define arm toolchain executables in Sam.mk Check avr-gcc on last AVR_TOOLS_DIR detect and indenting formatting GDB debugging and programming added Documentation updates and define ARDMK_VENDOR rather than include Sam.mk Expand all parse_boards when defined rather than when used Trim extra defines regex working on both macOS and Linux but need better fix Print USB ids and added debug usage to readme Add note on Arduino package dir and made board.txt work Do ARM ARDUINO_ARCH define in Arduino.mk] Add MZeroBlink to non-testable examples for now Remove \B from extra defines grep Add ARDUINO_PACKAGE_DIR for board support files Fix a typo in the README Fix typo in arduino-mk-vars.md Prevent re-including Arduino.mk from Sam.mk when make restarts for upload Add catrina to ARD_REST_OPTS if/else Remove realpath in Sam.mk for cygwin compatability SAMD bootloader support in ard-reset using --zero Enters bootloader using open/close of port at 1200 BAUD, then polls the attached devices for new port enumerating (bootloader). This is how the Arduino IDE operates Bossa support for Zero, MKR1000 etc Re-word Arm README section after Native USB development Reset for zero refactored like IDE Zero bootloader reset tested on macOS and comments added Re-word ARM bootloader and remove imports from testing Patch changes ARDMK_VENDOR->ARCHITECHTURE, show_config_vars, ignore CORE_VER if emtpy Common.mk header guard, openocd/bossac avoid separator, typos Documentation update for patch changes Move ARM tools to Sam.mk and auto-detect include Correct accidental commit of Blink Makefile change Lib fix with alternative core and documentation Append zero to ARD_RESET_OPTS rather than set Prioritise package ARM upload tools over path installed Add note in README on ARM tools versions Move openocd variant config script flag to OPTS
2018-01-25Merge pull request #548 from kierdavis/fix-typoSudar Muthu
Fix typo in arduino-mk-vars.md
2018-01-24Fix typo in arduino-mk-vars.mdKier Davis
2018-01-24Allow compatibility with old pgmspace API to be disabled by the userKier Davis
When this compatibility mode is enabled, code that is entirely compliant with the new pgmspace API can still raise deprecation warnings when symbols present in both the old and new APIs (for example, PGM_P) are used. Clearly, these warnings are false positives. They can be avoided by disabling the compatibility mode. This functionality is achieved by prepending the flag that enables the compatibility mode to CPPFLAGS instead of appending it, thus allowing the user to override the default behaviour and disable the compatibility mode by putting the negation of the flag in the CPPFLAGS variable in their top-level Makefile.
2018-01-22Merge pull request #545 from kierdavis/fix-readme-typoSudar Muthu
Fix a typo in the README
2018-01-21Fix a typo in the READMEKier Davis
2018-01-12Merge pull request #530 from tuna-f1sh/masterSimon John
ardmk-init - Makefile initialisation and template project utility
2018-01-03Merge remote-tracking branch 'upstream/master'John Whittington
2017-12-28Merge pull request #541 from sej7278/masterSimon John
Moved ATtiny examples from Blink to ATtinyBlink Probably the last merge of 2017? ;-)
2017-12-28Moved ATtiny examples from Blink to ATtinyBlink and updated the instructions ↵Simon John
(issue #537). Updated the alternate core instructions for e.g. ATmega644p for IDE 1.8
2017-12-22Merge pull request #540 from sej7278/masterSimon John
Moved -e flag for avrdude from set_fuses to ispload
2017-12-22Moved -e flag for avrdude from set_fuses to ispload as you wouldn't want a ↵Simon John
chip erase operation when only setting the fuses. ispload probably should erase the flash+eeprom+lockbits as that's when you upload the sketch. setting fuses should be just that, not deleting anything.
2017-11-07ardmk-init runs without prompt by default, cli arg added to avoid clint ↵John Whittington
dependency
2017-10-13Update Fedora spec fileJohn Whittington
2017-10-12Merge remote-tracking branch 'upstream/master'John Whittington
2017-10-12Run ardmk-init without dependancy if running quietJohn Whittington
2017-10-06Add ardmk-init manpage and correct typosJohn Whittington
2017-10-06Set `ARDMK_VENDOR` differently if OS is Arch Linux.Doron Behar
2017-10-03Recognize serial monitors with full path in MONITOR_CMDSZEDER Gábor
When assembling the command line for the various supported serial monitors, MONITOR_CMD must match the name of one of the supported commands to be recognized. Serial monitors given with leading path components are not recognized, and a command like make MONITOR_CMD=~/src/picocom/picocom monitor errors out as the fallback monitor command is executed instead of the picocom-specific one. However, sometimes it's necessary to specify a supported serial monitor with its full path, because e.g. the user wants to tests a freshly compiled version before installing it. Sure, the user could just run the serial monitor directly, but that's cumbersome because he has to pay attention to use the right baud rate and USB port. So strip all leading path components, if present, from MONITOR_CMD using the 'nondir' make function before checking whether it's one of the supported serial monitors. This way commands like the above would just work. While at it, remove the single quotes around 'putty': they are both unnecessary and inconsistent with similar constructs throughout Arduino.mk.