Commit graph

721 commits

Author SHA1 Message Date
Simon John
dff6492a4b Fixed SyntaxWarning: "is" vs "==" 2020-08-04 23:28:36 +01:00
Simon John
207253abc6 Rebased python3 branch with some changes from tuna-f1sh@87d5241 2020-08-04 23:19:49 +01:00
Sudar Muthu
6f786a96b0
Merge pull request #628 from ladislas/fix-monitor_baudrate-typo
Fix monitor baudrate typo for user config
2020-03-21 19:48:11 +05:30
Ladislas de Toldi
95d99dd3cc
fix monitor baudrate typo for user config 2020-03-21 13:47:48 +01:00
Simon John
e870443f48
Merge pull request #613 from TaylorZowtuk/master
Fixed syntax error of make monitor on windows/cygwin
2019-08-25 15:18:09 +01:00
Taylor Zowtuk
fa2146080c Updated changelog 2019-07-19 11:11:58 -06:00
Taylor Zowtuk
54c941fa88 Syntax fix and documentation of MONITOR_PARAMS 2019-07-19 11:00:25 -06:00
Simon John
0e462fcff1
Merge pull request #599 from szeder/build-api
Build the ArduinoCore API (fixes issue #607)
2019-07-05 07:03:50 +01:00
SZEDER Gábor
d4ae799795 Build the ArduinoCore API
As part of the big modularizing efforts of the Arduino project they
split out the hardware-independent layer of the Arduino "language"
from the hardware-specific cores into the dedicated 'ArduinoCore-API'
repository.  As described in 'ArduinoCore-API's README, the API source
files won't reside directly in the directory of the standard Arduino
core, i.e. in 'ARDUINO_CORE_PATH', but in its 'ARDUINO_CORE_PATH/api'
subdirectory.  Consequently, Arduino-Makefile won't be able to build
any projects when using an Arduino core following the new directory
structure.

Prepare for the upcoming new Arduino core directory structure by
building all 'ARDUINO_CORE_PATH/api/*.cpp' source files as well.  Out
of caution, look out for and build any .c source files in that
directory, too: though there are no .c source files in the
'ArduinoCore-API' repository at the moment, in the future there might
be.  Furthermore, add this directory to the list of directories to be
searched for header files: though it's not necessary to explicitly and
directly include any header file from this directory ('Arduino.h'
includes all there is), some projects might nonetheless do so, and
their build would then break.

Note that a 'make clean' will be most likely necessary when
re-building a project after switching to the new directory structure.
2019-07-04 22:19:18 +02:00
Sudar Muthu
95cae69d7c
Merge pull request #608 from mumme74/master
Allow custom link script (Teensy)
2019-07-03 09:06:19 +05:30
Fredrik Johansson
19d5aafd10 Allow custom link script 2019-07-02 19:02:57 +02:00
Sudar Muthu
3f1ef10d40
Merge pull request #586 from SearchAThing-forks/master
allow to enable AVRDUDE_AUTOERASE_FLASH
2019-06-19 09:05:02 +05:30
Simon John
cf5d016746
Merge pull request #605 from szeder/quiet-0
Show the configuration when ARDUINO_QUIET=0
2019-06-12 20:28:02 +01:00
SZEDER Gábor
dafdaafabd Show the configuration when ARDUINO_QUIET=0
There is a bit of inconsistency between documentation and code
regarding the ARDUINO_QUIET variable: 'arduino-mk-vars.md' states
that ARDUINO_QUIET "Defaults to `0` (unset/disabled)", but the code
only checks whether it's defined or not, and doesn't check whether
it's set to '0' or something else.

Consequently, having 'ARDUINO_QUIET=0' in the Makefile or running
'make ARDUINO_QUIET=0' contadicts the documentation and doesn't print
the configuration.  It also means that if someone in general prefers
not to see a screenful of configuration on each build and therefore
has 'ARDUINO_QUIET = 1' in the project's Makefile or 'config.mak',
then there is no way to override it from the command line in the odd
case when showing the configuration is desired.

Modify the corresponding condition in Arduino.mk to check whether
ARDUINO_QUIET is set to 0 and treat an undefined ARDUINO_QUIET
variable as "set to 0" as well.
2019-06-12 17:15:27 +02:00
Sudar Muthu
3817dbeb28
Merge pull request #604 from stv0g/fix-issue-601
Fix regression: PARSE_BOARD chops off flags which contain '=' signs
2019-06-03 11:52:05 +05:30
Steffen Vogel
6cf275f0e7 fix regression: PARSE_BOARD chops off flags which contain '=' signs (closes #601) 2019-05-03 20:07:13 +02:00
Sudar Muthu
8c85ca7001
Merge pull request #598 from Dukejung/master
Add OpenCR.mk for OpenCR 1.0 board example sketch
2019-04-20 14:37:12 +05:30
Simon John
4e465c693c
Update HISTORY.md 2019-04-01 10:30:33 +01:00
Simon John
f5893dc7a1
Merge pull request #603 from tuna-f1sh/master
add swtich for ARM 'avr-size' so that .elf is passed as arg
2019-04-01 10:26:33 +01:00
John Whittington
9783e68bc8 add swtich for ARM 'avr-size' so that .elf is passed as arg
`avr-size` was defaulting to AVR non-aware when using ARM builds, which
meant passing .hex rather than .elf to size and limiting size readout.
Adding a switch for defining `avr-size` and SIZEFLAGS to Sam.mk seems
like the best way to include proper ARM support (despite conflicting
naming).
2019-03-25 13:36:03 +00:00
Simon John
591855b890
Merge pull request #600 from HorkusBoy/samd-typo-pr
Fixed typo in variable name BOARDS_TXT in Sam.mk
2019-03-02 23:38:21 +00:00
Ben B
d2d7d4ec16 Fixed typo in var name BOARDS_TXT in Sam.mk 2019-03-02 10:01:25 -06:00
Dukejung
12c62dd200
Update runtests.sh 2019-02-11 18:04:09 +09:00
Dukejung
c9d9c9f34d
Update HISTORY.md 2019-02-11 17:50:05 +09:00
Dukejung
17a69524ee Add OpenCR.mk for OpenCR 1.0 board and add example code(example/BlinkOpenCR) 2019-02-11 16:54:35 +09:00
Simon John
4452f7790a
Merge pull request #597 from tuna-f1sh/master
Fix #594 and sam flag for ardmk-init
2019-01-11 19:55:14 +00:00
John Whittington
e3a99fdf4e Only add USB_PRODUCT and USB_MANUFACTURER to flags if defined 2019-01-11 13:49:40 +00:00
John Whittington
8a313c5d94 Populate USB_PRODUCT and USB_MANUFACTURER if in boards file using Caterina 2019-01-11 11:17:16 +00:00
John Whittington
e88f7e1a9f Add 'sam' flag to ardmk-init to include Sam.mk rather than Arduino.mk 2018-12-24 09:24:14 +00:00
Simon John
fd24677719
Updated history
Added ArchLinux documentation uplift
2018-11-27 15:45:59 +00:00
Simon John
2938a0f5b4
Merge pull request #593 from Akram-Chehaima/master
Change & add repo to install package on Arch linux
2018-11-27 14:18:37 +00:00
Akram Chehaima
ccd3a5289c
Change & add repo to install package onArch linux
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-27 13:59:12 +01:00
Simon John
d3be28b500
Merge pull request #592 from dewhisna/cpu_speed_select
Add support for BOARD_CLOCK setting
2018-11-17 18:59:48 +00:00
Donna Whisnant
35fece8b9c Change BOARD_SPEED to BOARD_CLOCK setting and extend to menu.clock and 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-11 17:14:11 -06:00
Donna Whisnant
66e0211878 Update documentation for BOARD_SPEED. 2018-11-11 13:27:11 -06:00
Donna Whisnant
0f02622467 Add support for BOARD_SPEED setting.
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-11-11 13:01:52 -06:00
Lorenzo Delana
ec1947a7cd allow to enable AVRDUDE_AUTOERASE_FLASH 2018-10-13 02:28:32 +02:00
Lorenzo Delana
b351ab375d
Update arduino-mk-vars.md 2018-10-13 02:21:47 +02:00
Sudar Muthu
5a0c80bf0c
Merge pull request #583 from wingunder/move_core_link_last
Moved CORE_LIB to the last position of the defined linked objects.
2018-10-07 11:19:56 +05:30
Pieter du Preez
ed608ce658 Merge remote-tracking branch 'origin/fix-travis-sudo-required' into move_core_link_last 2018-10-03 21:19:16 +02:00
Pieter du Preez
50e883b640
Fix "does not allow use of 'sudo'" error in travis
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-03 14:36:49 +02:00
Pieter du Preez
a285810cb5 Added a test case for moving CORE_LIB in PR #583.
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-02 23:00:14 +02:00
Pieter du Preez
d4d3d3d6c3 Merge remote-tracking branch 'org/master' into move_core_link_last 2018-10-02 22:53:12 +02:00
Sudar Muthu
fe84c59194
Merge pull request #580 from wingunder/master
Moved the PARSE_BOARD macro and added the TOOL_PREFIX variable for setting up tool chains.
2018-09-30 20:13:29 +05:30
Sudar Muthu
089b535601
Merge pull request #582 from tuna-f1sh/master
Pass OpenOCD options to debug_init target
2018-09-30 20:12:49 +05:30
Pieter du Preez
ddf7210407 Moved CORE_LIB to the last position of the defined linked objects.
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-30 00:27:18 +02:00
John Whittington
0692c13e98 Pass OpenOCD options to debug_init target 2018-09-28 18:25:56 +01:00
Pieter du Preez
62d23d66a2 Moved the BOARDS_TXT section and stop if BOARDS_TXT is not a file.
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-15 14:31:39 +02:00
Pieter du Preez
e44540043e Added the TOOL_PREFIX variable for setting up the executable tools.
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-14 16:14:14 +02:00
Pieter du Preez
2442dafb4f Moved the PARSE_BOARD macro from Arduino.mk to Common.mk.
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-09-13 23:44:12 +02:00