Commit Graph

13 Commits

Author SHA1 Message Date
Phil Hord a3e956e70b Regressiontests: give SIM a "standard" config.
We should not fail the regression test if the user's config is
missing or misconfigured.

Also turn on -Werror for simulator validation, too. This might be
a bit presumptuous since we are dependent on the user's installed
gcc instance; but we already depending on him to be able to build
the simulator at all, so this doesn't seem to be too much of a
stretch.
2015-07-17 13:27:25 +02:00
Markus Hitter 1eb7e73273 Introduce regression tests.
For now this is just a number of different configurations and a
makefile target, "make regressiontests", to build with them.
Further tests, e.g. using SimulAVR or the hostside simulator
to check actual behaviour of the firmware are welcome.
2015-07-13 14:00:33 +02:00
Markus Hitter 01621cfbdb Makefiles: adjust comments.
- "Traumflug" and "Markus Hitter" are the same, mention him only
   once.

 - Add more common F_CPU choices in comments.

 - Hint to another choice in Makefile-example.
2015-04-21 02:51:31 +02:00
Markus Hitter 5cc84a069a Canned G-code: setup right in config.h.
This works with Arduino IDE as well and should be easier to figure
for inexperienced users.
2014-08-31 19:31:39 +02:00
Michael Moon aed4bfdb5b Canned G-code: implement continuous replay of G-code stored on flash. 2014-08-31 19:19:21 +02:00
Phil Hord e4cfffee42 DRY: Reduce duplication in platform Makefiles
Move builds for non-avr target (simulator) into a $(BUILD_FLAVOR)
build subdir (build/sim) to isolate it more completely and
cleanly from the AVR builds.  This allows AVR and SIM to use common
build rules again.

Move newly bits out of Makefile-{SIM,AVR} and into Makefile-common.
2014-03-04 19:56:46 +01:00
Phil Hord 21e5343552 Add config.h wrapper to simplify test automation
Test code which wants to customize config.h can do so without
touching config.h itself by wrapping config.h in a macro variable
which is passed in to the compiler.  It defaults to "config.h" if
no override is provided.

This change would break makefile dependency checking since the selection
of a different header file on the command line is not noticed by make
as a build-trigger.  To solve this, we add a layer to the BUILDDIR path
so build products are now specific to the USER_CONFIG choice if it is
not "config.h".
2014-03-04 19:56:23 +01:00
Markus Hitter 8a476e2fba Makefile: get rid of the config.h check.
This doesn't work well for developers, because config.h.default is
rewritten all the time when switching branches.
2013-12-06 19:24:58 +01:00
Phil Hord 28cc8d3f84 Makefiles: auto-dependencies cleanup.
Dependency automation seems a bit confused in these makefiles.
Clean it up following ancient sage wisdom here:
http://mad-scientist.net/make/autodep.html

In short, use -MMD to generate dependency files for each .o target,
and then use a sed script to extend that to avoiding "missing file"
dependencies when headers are renamed/removed.

Also, make everything dependent on makefiles other than our
autodependency (*.P) makefiles.

Make the BUILDDIR an order-only prerequisite for our targets so any
changed file therein does not cause all other files to appear to be
out of date.
2013-12-06 19:24:58 +01:00
Phil Hord d8f61faaac Split Makefile-SIM out from Makefile-AVR.
Also, some makefile cleanup:

 - Remove obsolete 'depend' target.
 - Move AVR-specific targets to AVR makefile.
 - Add TARGET variable to identify target to make and to clean.
 - Tidy up dependency make.
2013-12-06 19:24:58 +01:00
Markus Hitter 03d49a1a87 Makefiles can have various names now. 2013-02-05 14:11:17 +01:00
Markus Hitter 73658afc33 Makefiles: build into a dedicated directory.
This makes finding source files for editing quite a bit simpler.
2013-02-05 14:11:03 +01:00
Markus Hitter 19066069a5 Rewrite upper half of the Makefile.
We have now Makefile-AVR - AVR specific stuff - and
Makefile-common - common build instructions.

This effort is the begin of preparing Teacup for ARM targets.
To build the target, copy or link Makefile-AVR or Makefile-ARM
(depending on your target) to Makefile.
2013-02-05 14:10:39 +01:00