Ludwig Ortmann
9b61d95545
make: don't ignore failures in for loops
...
Add `|| exit 1` to all constructs like `@for i in $(DIRS) ; do "$(MAKE)" -C $$i ; done ;`, so that compilation stops on the first error.
2014-03-12 11:09:04 +01:00
René Kijewski
f58369ff91
Don't build PKGs twice
2014-02-27 01:29:38 +01:00
Oleg Hahm
c1bcfb3516
Merge pull request #722 from Kijewski/fixup-664
...
First apply board includes, then det. CC caps
2014-02-18 13:45:50 +01:00
Christian Mehlis
cb9c5d00de
repace project by application in documentation
2014-02-18 12:28:32 +01:00
René Kijewski
d7834ecbf8
First apply board includes, then det. CC caps
...
In #664 I added a test that determines if the supplied compiler
understands the `-fno-delete-null-pointer-checks` flag. The problem is
that the `$(CC)` supplied on command line or in the application's
Makefile is used, but not the one the `$(BOARD)`'s Makefile sets.
That problem was overlooked as all the boards use GCC, and GCC happens
to know the flag. But if some future board does not use GCC, then the
wrong order of the checks could pose a problem.
2014-02-17 07:04:36 +01:00
Ludwig Ortmann
d3901529c6
use filter instead of findstring in BOARD_BLACKLIST checking
2014-02-15 07:56:46 +01:00
Martin Lenders
b41e36de3a
Merge pull request #535 from authmillenon/board-blacklists-whitelists
...
Introduce board blacklists and board whitelists
2014-02-14 18:29:15 +01:00
René Kijewski
4b012dfa54
Merge pull request #576 from Kijewski/usepkg
...
Add USEPKG variable for Makefiles
2014-02-14 14:40:24 +01:00
René Kijewski
7f4fb027db
Merge pull request #692 from Kijewski/std-flag
...
Do not mandate input language
2014-02-14 14:39:47 +01:00
Martin Lenders
e6d5af4b8f
Introduce board blacklists and board whitelists
2014-02-14 09:49:17 +01:00
René Kijewski
caea069bcf
Do not mandate input language
...
An application might want to use C11 features. The user would assume
that setting `CFLAGS=-std=gnu11` in the Makefile would work. It does not
since the board's Makefile.include shadows the `-std` flag.
This patch removes the `-std=gnu99` from the various Makefile.includes,
and sets the flag in the common Makefile.include of RIOT instead.
If an `-std` flag was provided by an earlier Makefile (the application,
the board, or the CPU [whilst only the former one should]), then no
additional flag is set. It is first tested if the supplied compiler
understands `-std=gnu99`, then `-std=c99`.
2014-02-14 00:06:02 +01:00
Martin Lenders
378b85bfd0
Always use absolute paths with configurable paths variables
2014-02-12 15:23:15 +01:00
René Kijewski
84cffaa0a0
Use include path convention for PKGs
...
Packages have to define a Makefile.include target in pkg/%/Makefile.
pkg/%/Makefile.include will be loaded after all other dependencies.
2014-02-12 13:59:39 +01:00
René Kijewski
5906f18a81
Add USEPKG variable for Makefiles
...
Currently pkg/USING says one should use
`EXTERNAL+=$(RIOTBASE)/pkg/<pkg_name>` to enable PKG modules.
Using this line the PKG will be compiled but not linked.
This change adds a USEPKG variable to be used like
`USEPKG += <pkg_name>`, which looks less clumsy and gets the PKG linked
in the binary.
2014-02-12 13:57:30 +01:00
Christian Mehlis
07c5ae3ca9
Merge pull request #664 from Kijewski/conditional-fno-delete-null-pointer-checks
...
clang does not know fno-delete-null-pointer-checks
2014-02-12 10:48:27 +01:00
Ludwig Ortmann
2525920426
remove trailing whitespace and newlines
2014-02-11 18:45:06 +01:00
Oleg Hahm
3c169de879
Merge pull request #661 from LudwigOrtmann/Makefile_dep
...
move Makefile.dep include
2014-02-11 17:44:59 +01:00
René Kijewski
012fb5f95d
Fix -fno-delete-null-pointer-checks ( #664 )
...
Only use -fno-delete-null-pointer-checks if the supplied compiler knows
the flag. Clang does not understand the flag, and does not need it.
2014-02-10 21:10:31 +01:00
Ludwig Ortmann
d40b6ac5b1
native+osx makefile cleanup
...
* add missing $(AD) to osx $(LINK) invocation
* move osx build determination to native makefile
* move old libc test to native makefile
* set objcopy to "true" - it is superfluous for native no matter what the system is
* add some documentation to natives makefile
2014-02-10 12:25:47 +01:00
Ludwig Ortmann
73a2c4edf2
move Makefile.dep include
...
boards modify USEMODULE which can lead to additional dependencies.
including Makefile.dep last enables it to resolve all dependencies.
2014-02-07 21:24:42 +01:00
Oleg Hahm
48b5dacde8
Merge pull request #620 from LudwigOrtmann/buildtest_fail
...
upgrade buildtest for CI
2014-02-05 22:47:44 +01:00
René Kijewski
c728041f54
Do not assume 0x0 to be an unusable address
2014-02-05 15:16:33 +01:00
Ludwig Ortmann
9ab441e091
make buildtest fail on error
2014-02-05 09:02:29 +01:00
Ludwig Ortmann
351dea1dbd
decolorize buildtest output for jenkins/monochrome
2014-02-05 09:01:43 +01:00
Ludwig Ortmann
3864d33ede
make buildtest more readable
2014-02-05 09:01:32 +01:00
Oleg Hahm
683a078515
Merge pull request #494 from OlegHahm/uniq_obj_file_names
...
prefixing application object files to avoid dups
2014-01-17 04:44:57 -08:00
Oleg Hahm
74a3158cb2
use subfolder instead of file name prefix
2014-01-14 17:58:29 +01:00
Oleg Hahm
e57d94cf44
prefixing application object files to avoid dups
2014-01-10 17:17:26 +01:00
Ludwig Ortmann
5c0000be5b
unsilence link,size,objcopy
2014-01-10 15:43:17 +01:00
Oleg Hahm
fc359cd9f4
strip BOARD variable
2014-01-08 16:46:16 +01:00
Oleg Hahm
cb7de2432e
moved muting "logic" away from application Makefile
2014-01-05 16:11:08 +01:00
Oleg Hahm
9df07f9238
muting compiler and binutils optionally
...
Instead of muting all compiler and other binutils output by default,
introduce a variable to make this behaviour configurable.
2014-01-05 16:11:08 +01:00
Oleg Hahm
79cff89bb0
create BOARDS subdirectory for binaries
2014-01-05 16:11:08 +01:00
Oleg Hahm
02612ff0ca
further Makefile cleanup
2014-01-05 16:11:08 +01:00
Oleg Hahm
f8e349f76e
removed superfluous slash after BINDIR
2014-01-05 16:11:08 +01:00
Oleg Hahm
26c50522d5
simplified and unified cpu build structure
2014-01-05 16:11:07 +01:00
Oleg Hahm
55f31a4829
simplify include structure for boards
...
* do not overwrite CFLAGS in boards Makefile
2014-01-05 16:11:07 +01:00
Oleg Hahm
1e665b49de
build everything in the project directory
2014-01-05 16:11:07 +01:00
Oleg Hahm
8c4b48a93f
make buildtest output coloured
2013-12-24 17:13:46 +01:00
Oleg Hahm
714178afd2
introduce CPU name macro via CFLAG
2013-12-19 15:24:31 +01:00
Ludwig Ortmann
7f7ce44fd8
dont rely on boards/Makefile.base
2013-11-15 12:14:23 +01:00
Ludwig Ortmann
7351a74f5f
include HOME in env
2013-11-14 11:44:15 +01:00
Ludwig Ortmann
5618795027
allow for differing RIOT* paths
2013-11-14 11:44:15 +01:00
Ludwig Ortmann
50a2dbeaa1
implement buildtest target
...
the target runs make for every board in boards
2013-11-14 11:44:15 +01:00
Oleg Hahm
31a0cb90d1
define RIOTBOARD if unset
2013-11-06 10:39:25 -08:00
Oleg Hahm
438e5ed429
Merge pull request #239 from OlegHahm/objcopy_flags
...
Objcopy flags
2013-10-17 09:03:12 -07:00
Oleg Hahm
3d73e84ad6
get flags for objcopy from platform dependent includes
2013-10-11 15:13:03 +02:00
Oleg Hahm
46deefe0f8
make Makefiles proof for spaces in $PATH
2013-10-09 15:28:53 +02:00
authmillenon
7fea5f15cc
Add capability to Makefiles to use PROJBINDIR
...
Fixes bug in build-system that does not allow you to use other
PROJBINDIR than $(CURDIR)/bin
2013-09-18 15:12:58 +02:00
Ludwig Ortmann
3065c5c118
add PROJDEPS to PROJBINDIR target
...
This enables issues like https://github.com/RIOT-OS/projects/issues/26
to be fixed.
2013-08-31 12:40:16 +02:00