Commit graph

594 commits

Author SHA1 Message Date
Matthijs Kooijman
1329730dfe Don't try to read version.txt when it does not exist
This can happen for example when the arduino directory is a checkout
from git instead of a released version. Before, cat would show an error
which is now prevented. The version still defaults to 100 just like
before.
2013-05-30 19:27:11 +02:00
Matthijs Kooijman
ae10f71dd4 Output configuration info only once
Before, the configuration info would be shown again when running a
recursive make call, or when make restarted after regenerating the
dependencies file. Now, it only shows the info the first time.

Closes: #46
2013-05-30 19:27:11 +02:00
Matthijs Kooijman
5ea2437311 Fix raw_upload and reset for normal uploads
In commit 90e3c9ad (Fix upload in case of parallelized make), some
dependencies were shuffled to (I assume) prevent the reset from
happening before or at the same time as the upload when running a
parallel make. However, this introduced two problems:
 - The upload and raw_upload became effectively the same, and both of
   them did a reset (even though raw_upload should do the upload without
   a reset).
 - The reset target does not depend on $(TARGET_HEX) or verify_size, so
   in a parallel make the reset is executed before / at the same time as
   the actual compilation (since the reset doesn't seem to be needed for
   at least the Arduino Uno, apparently avrdude handles this, this
   probably wasn't noticed by anyone).

Because we can't force a specific ordering of dependencies in parallel
make and because adding dependencies to the reset target doesn't seem
appropriate (you should be able to do a "make reset" without needing to
compile everything first), this commit changes the uploading to call
$(MAKE) again to do the actual upload.

The current approach ensures that:
 - raw_upload does a compile, size check and upload and upload does the
   same plus a reset.
 - A reset is not done if the compilation fails or the size check fails.
 - verify_size is called only once.
2013-05-30 19:27:10 +02:00
Matthijs Kooijman
c64f38ae6d Check that there is exactly one .pde or .ino file
When there are none (and no .cpp files either), the build would stall
trying to cat all the .d files together (which would result in cat
getting no arguments and thus waiting for input on stdin).

When there are multiple .ino and/or .pde files, the build could
technically work out, the Arduino IDE concatenates all .ino / .pde files
together and compiles them as a single compile unit, so unless we
implement that as well, it's better to just error out.
2013-05-30 13:14:20 +02:00
Matthijs Kooijman
e1bed90404 Let MONITOR_BAUDRATE detection also look in .pde files
Before, it would only look in .ino files. If you had no .ino file but
only a .pde file, this would cause the build to hang, since grep would
be waiting for input on its stdin.
2013-05-30 13:09:15 +02:00
Matthijs Kooijman
05ce9fd14b When detecting MONITOR_BAUDRATE, use $(LOCAL_INO_SRCS)
Now that this detection code is moved down a bit, it can use the same
.ino list as all the other code.
2013-05-30 13:08:02 +02:00
Matthijs Kooijman
14fd6e7126 Move MONITOR_BAUDRATE detection further down
No changes are made to the code, it is only moved. This allows it to use
LOCAL_INO_SRCS and LOCAL_INO_PDE_SRCS in the next commit.
2013-05-30 12:55:10 +02:00
Sudar
cb5ce2c9af Updated readme to add information about change in maintainers 2013-05-19 16:33:59 +05:30
Sudar
fdf6a75d8b Merge pull request #38 from sudar/master
Merge all changes from Sudar's fork into upstream
2013-05-18 21:34:52 -07:00
Sudar
6e08e2356e Merge pull request #12 from jeffkowalski/master
removed unnecessary .DS_Store from examples/BlinkWithoutDelay/
2013-03-18 18:27:49 -07:00
Jeff Kowalski
5634d8ba51 removed unnecessary .DS_Store 2013-03-16 00:19:56 -07:00
Daniel Esteban Nombela
79243b8397 Added ifndef ARDUINO_VAR_PATH for compiling for the attiny 2013-02-10 15:13:44 +01:00
gabriel
3d4ec88dfd Allow adding extra common dependencies 2013-01-31 22:14:07 +01:00
gabriel
ccd17539e2 Merge branch 'master' of https://github.com/sudar/Arduino-Makefile 2013-01-24 12:10:27 +01:00
Sudar
cd36eb6abb Updated Readme 2013-01-21 21:17:39 +05:30
Sudar
0deef0dd4c Merge branch 'master' of git://github.com/fr0sty1/Arduino-Makefile 2013-01-21 21:15:57 +05:30
fr0sty1
c8253f60ce Update README.md 2013-01-21 00:01:09 -06:00
Sudar
e9f5897d19 Fixed the automatic baudrate detection script that was broken if the line already had the tab character 2013-01-03 22:31:24 +05:30
Sudar
0966e8e5f3 Auto detect sketchbook location even in MAC 2012-12-23 15:42:30 +05:30
Sudar
5045345467 Merge pull request #10 from gaftech/master
EEPROM upload support
2012-12-17 04:45:56 -08:00
gabriel
142098be08 Merge branch 'master' of https://github.com/sudar/Arduino-Makefile 2012-12-17 13:33:33 +01:00
Sudar
ec7f239bce Check if ARDUINO_DIR Env variable is defined or not 2012-12-17 17:12:12 +05:30
gabriel
e3b86053eb merge changes from https://github.com/sudar 2012-12-16 17:06:23 +01:00
Sudar
4446705995 Merged changes from https://github.com/alohr 2012-12-15 19:54:02 +05:30
Sudar
ee59c7ca26 Merge branch 'master' of git://github.com/ASzc/Arduino-Makefile 2012-12-15 19:46:51 +05:30
Sudar
e3844dfc60 Merge branch 'shebang' of git://github.com/anm/Arduino-Makefile 2012-12-15 19:41:59 +05:30
Sudar
addd140302 Enabled warnings 2012-12-15 19:35:58 +05:30
Adam Dunlap
9ebae306d0 Show original line number for error messages 2012-12-15 19:31:37 +05:30
Sudar
3afe25ba5a Added verify_size action 2012-12-15 18:57:08 +05:30
Sudar
2ffdb5b480 Merged all changes from rpavlik 2012-12-15 18:00:52 +05:30
Sudar
b55f3d99a1 updated readme 2012-12-15 17:34:48 +05:30
Sudar
c039f5f39b Merged all commits from upstream 2012-12-15 17:29:59 +05:30
Sudar
ac01a2609b Merged all commits from upstream 2012-12-15 17:07:00 +05:30
gabriel
86165af726 make build dir (OBJDIR) changeable 2012-12-14 23:10:03 +01:00
gabriel
168292425f add eeprom upload support 2012-11-17 22:18:56 +01:00
Fabio Pugliese Ornellas
bfd9dac216 Added dummy file to verify_size to avoid always being run. 2012-11-12 22:13:03 -02:00
Fabio Pugliese Ornellas
b5448a64dc Added sketch size verification. 2012-11-12 21:34:51 -02:00
Sudar
bb172d1c42 Merge pull request #8 from jgosmann/master
Fixing hanging uploads
2012-11-10 21:41:49 -08:00
gabriel
1e078625cb removing -w from CPPFLAGS (warnings can be usefull) 2012-11-06 14:33:10 +01:00
Jan Gosmann
90e3c9ad0b Fix upload in case of parallelized make. 2012-11-02 12:51:53 +01:00
Ryan Pavlik
edd514d65c Make the makefile error if the arduino port is not present. 2012-11-01 10:57:11 -05:00
Ryan Pavlik
ee98d0c89b Make everybody depend on the makefile, in case cflags are changed, etc. 2012-11-01 10:34:09 -05:00
Ryan Pavlik
a814a9c276 Be able to silence configuration output 2012-11-01 10:33:46 -05:00
Jan Gosmann
bc8caf8358 Fixing problem of hanging upload. 2012-11-01 12:03:32 +01:00
Alistair MacLeod
86b7b034dc Changed shebang to use /usr/bin/env 2012-10-21 21:05:56 +01:00
Andreas Lohr
4241eccacc added MacPorts 2012-10-07 11:54:14 +02:00
Andreas Lohr
77f8ee0d77 use perl from /opt/local 2012-10-07 10:33:22 +02:00
Andreas Lohr
adbd6532f9 set USB_VID and USB_PID only for leonardo boards 2012-10-07 10:28:10 +02:00
Alex Szczuczko
184b482a98 Update boards_txt path in bin/ard-parse-boards to include environment variable ARDUINO_DIR
This corrects the behaviour of  ard-parse-boards --boards  , which would
fail if the path to boards.txt on the system didn't match the value
which was hardcoded.
2012-09-25 21:34:26 -04:00
Ryan Pavlik
84648978fb Provide symbol_sizes and generated_assembly targets.
Also update existing auxiliary targets with help, and
make the .PHONY list complete and in order.
2012-09-20 11:30:46 -05:00