Joakim Nohlgård
d4f2070e8b
make: Correct multilib detection when using LLVM
...
The LLVM makefile needs to be included _after_ the CPU makefiles have
set their CFLAGS in order to get the right multilib directory from GCC.
2016-12-21 13:03:58 +01:00
537b725aed
make: introduce RIOT_CI_BUILD ( #5162 )
2016-12-17 00:17:26 +01:00
560a509036
make: remove trailing slash from BINDIR variable
2016-10-18 23:27:59 +02:00
Cenk Gündoğan
2b3d3995f1
make: export RIOT_VERSION to CFLAGS_WITH_MACROS
...
All macros are filtered out of the `CFLAGS` variable and during this
process, the `CFLAGS` string is destroyed. This is due to the fact that
the `RIOT_VERSION` string contains spaces, but the filtering process does
not take the whole string into account (following the first space). This
leads to some parts of the `RIOT_VERSION` string be sill existent in the
`CFLAGS` string.
Instead of exporting the `RIOT_VERSION` string to the `CFLAGS` macro to
just remove it again from there, I exported it to `CFLAGS_WITH_MACROS`.
Fixes #5859
2016-09-23 09:02:55 +02:00
Martine Lenders
55a08aeb59
Merge pull request #5827 from miri64/make/enh/quiet-per-default
...
make: build quiet as default
2016-09-12 16:59:59 +02:00
Martine Lenders
043eb677dd
make: build quiet as default
2016-09-06 18:20:02 +02:00
Ludwig Knüpfer
dc183736bc
make: include RIOT_VERSION in CFLAGS for riotbuild
...
fixes #5695
2016-07-27 09:23:39 +02:00
kYc0o
9ba2e5372d
Merge pull request #5248 from cgundogan/pr/make/buildrelpath
...
make: BUILDRELPATH without call to git
2016-07-22 17:05:03 +02:00
1b0d9ef14b
make: treat packages like modules when it comes to linking
2016-07-20 19:58:17 +02:00
Joakim Nohlgård
a678e868e9
Makefile.include: Move USEMODULE CFLAGS expansion last
...
Some USEMODULE parts (e.g. defined in ${BOARD}/Makefile.dep) were not
being properly exported to CFLAGS -DMODULE_xxx options.
2016-07-13 16:44:28 +02:00
Joakim Nohlgård
ffb4573667
Merge pull request #5097 from gebart/pr/make-include
...
make: Place most configuration macros in a separate file instead of on the command line
2016-07-07 18:03:18 +02:00
a1f8891a41
make: distclean pkg sources on clean-intermediates target
2016-07-06 17:33:28 +02:00
Joakim Nohlgård
77a15e7886
make: Place most configuration macros in a separate file instead of on the command line
2016-07-05 11:22:58 +02:00
Cenk Gündoğan
1d79e07051
make: BUILDRELPATH without call to git
2016-05-18 08:22:08 +02:00
Cenk Gündoğan
e26bb43a03
make: fix typo
2016-04-21 10:57:26 +02:00
Cenk Gündoğan
7383957a8d
make: remove obsolete check for jenkins
2016-04-21 10:57:19 +02:00
Cenk Gündoğan
8a85725cf9
Merge pull request #5221 from Kijewski/rm-rf-safe
...
make: bail out if there are spaces in the path
2016-04-20 23:47:01 +02:00
René Kijewski
1593bf4d32
make: no need to invoke shell to get dir name
2016-04-20 23:22:43 +02:00
René Kijewski
e71e60e567
make: bail out if there are spaces in the path
...
If we use `rm -r(f)` then we should make sure that we don't delete
random directory trees because there was a whitespace in the path.
2016-04-20 23:22:43 +02:00
René Kijewski
5a6fcbc005
make: always use absolute path
2016-04-19 00:34:01 +02:00
Toon Stegen
f3ccc3b5cb
make: clean up output
...
Remove space at begginning or error output line.
2016-04-01 12:15:46 +02:00
Toon Stegen
0221e6d885
make: don't print some test commands
...
When invoking make with QUIET=0 these test are printed to stdout, which
could be confusing.
2016-04-01 12:15:46 +02:00
Oleg Hahm
506e23f481
Merge pull request #2362 from kaspar030/add_lgpl_compliance_simplified
...
add infrastructure for binary LGPL compliance checks
2016-03-30 13:56:02 +02:00
Cenk Gündoğan
4e82028a9d
Merge pull request #5170 from OTAkeys/use_APPDIR_iso_CURDIR
...
Makefile.include: use defined application directory
2016-03-30 13:19:06 +02:00
Toon Stegen
d5195b6bbc
make: Use defined application directory
...
Instead of looking in the current directory for the application source
files, look into the defined APPDIR directory.
2016-03-30 12:23:26 +02:00
c04877dd95
make: add bindist targets / Makefiles
2016-03-29 22:46:28 +02:00
71e46a5ce6
make: add clean-pkg target (cleaning extracted & patched pkg sources)
2016-03-25 14:28:04 +01:00
Oleg Hahm
91d84b09f3
make: also add pkg include paths
2016-03-22 16:05:29 +01:00
Oleg Hahm
16a3f131a3
Merge pull request #5112 from kaspar030/use_git_cache
...
make: pkg: introduce git-cache
2016-03-21 22:32:33 +01:00
772657253f
dist: tools: add git-cache
2016-03-21 21:22:33 +01:00
Joakim Nohlgård
cad5f08b56
Makefile.include: Set PREFIX if not set
2016-03-21 12:19:30 +01:00
Oleg Hahm
a82556d818
make: always include toolchain dependent Makefile
2016-03-15 12:02:53 +01:00
Cenk Gündoğan
dc509f030d
dist/tools/desvirt: proper integration
2016-03-10 18:29:09 +01:00
Oleg Hahm
8986b98281
make: check if APPLICATION is set
...
Fixes #1282 .
2016-03-08 21:08:04 +01:00
8b7ddb2f70
make: use variable for pkg subdir
2016-03-05 03:05:32 +01:00
Joakim Nohlgård
04c8a18493
Merge pull request #4939 from OlegHahm/version_string_fix
...
make: use single ticks
2016-03-04 15:53:04 +01:00
Oleg Hahm
61579d3be4
Merge pull request #4887 from locicontrols/objdump
...
make: set OBJDUMP = $(PREFIX)objdump for gnu targets.
2016-03-01 23:10:04 +01:00
Oleg Hahm
4c6b59b486
make: use single ticks
...
Otherwise the shell will try to evaluate the parentheses.
2016-03-01 20:38:01 +01:00
Oleg Hahm
7a979e3db4
make: actually make use of APPDEPS for building
2016-02-26 15:03:10 +01:00
Ian Martin
332d8c7818
make: use $(OBJDUMP) and $(OBJDUMPFLAGS) in the main objdump target too.
2016-02-24 12:14:05 -05:00
Hauke Petersen
da485b9e2a
make: add board as default module
2015-12-07 17:53:22 +01:00
test
16e958e3b9
make: include Makefile.iotlab for iotlab-* goals
2015-11-28 21:26:46 +01:00
0117192901
make: add support for additional local Makefile
2015-11-19 11:38:49 +01:00
Lucas Jenss
d80f18de0b
Minor usability improvements for samr21 usage
2015-10-27 19:43:40 +01:00
Thomas Eichinger
24e9de65e1
native: exclude emtpy archives from linking on OSX
...
OS X linker won't link archives consisting of the archives header only.
2015-09-03 11:55:59 +02:00
Iván Briano
5f4a5aecb2
make: Get the git directory from RIOTBASE
...
This allows having applications outside of RIOT's own git directory and
still get the correct branch information for the build.
2015-08-27 16:29:10 -03:00
a670766943
make: add info-modules make target
2015-08-26 08:10:04 +02:00
Martine Lenders
64c6d49cbd
iot-lab_M3: rename to iotlab-m3
2015-08-19 20:59:06 +02:00
Martine Lenders
d46f542220
iot-lab_M3: rename to iotlab_m3
2015-08-19 18:29:17 +02:00
Martine Lenders
58ff31bfe9
gnrc: make all gnrc modules sub-modules of gnrc
2015-08-18 23:00:07 +02:00
c72538a6cf
make: ccache: set ccache basedir to RIOTBASE
2015-08-14 00:31:36 +02:00
Martine Lenders
e1842869da
make: make NG_NETIF_NUMOF available in build system
2015-08-11 02:49:19 +02:00
Joakim Gebart
e95a4c50a9
make: Build with -Werror by default
...
Can be overridden from the environment by setting WERROR=0
also remove reversed logic for Werror in Makefile.buildtest
(a typo caused Werror to be always enabled for all builds)
2015-08-04 08:37:39 +02:00
Oleg Hahm
802b3d9c00
make: remove scan-build folder in clean
2015-07-22 20:30:34 +02:00
Joakim Gebart
13753cca14
Makefile.scan-build: Add make goal for running Clang static code analysis
2015-07-21 18:42:38 +02:00
Thomas Eichinger
85ab42dd30
Merge pull request #3262 from gebart/pr/map-cross-reference
...
Makefile.include: Add --cref to linker options
2015-07-20 17:01:41 +02:00
Martine Lenders
0c424716a6
make: auto-include testbed support for IoT-LAB
2015-07-18 10:54:47 +02:00
Joakim Gebart
ee8a8be09e
Makefile.include: Add clean-intermediates target
2015-07-10 16:49:36 +02:00
Philipp Rosenkranz
538c992919
make: delete emptyarchive after test
2015-07-02 20:16:26 +02:00
Joakim Gebart
726d7e60b2
Makefile.include: Add --cref to linker options
...
The --cref option generates a detailed cross reference list in the map file.
Useful for checking what functions are referenced from where.
2015-06-25 14:59:15 +02:00
Joakim Gebart
b54c9d21ee
dist: Add tool for generating Eclipse setting XML files
...
Usage: make eclipsesym (in application directory)
2015-06-01 17:53:44 +02:00
5a598b64b4
make: introduce RIOT_VERSION_OVERRIDE
...
Allows overriding of -DRIOT_VERSION regardless of the version actually
used. Necessary for reproducable compiles.
2015-05-29 09:45:40 +02:00
Martine Lenders
bac1ac3b59
make: actually disable a DISABLED_MODULE
2015-05-09 19:10:03 +02:00
Joakim Gebart
2682c38ee8
Merge pull request #2923 from gebart/pr/docker-buildtests
...
Docker: allow buildtests inside Docker, refactor environment handling.
2015-05-08 16:20:46 +02:00
BytesGalore
f9a79eee41
RIOT/Makefile.include: added compile time warning on conflicting features
2015-05-07 21:05:08 +02:00
Joakim Gebart
3b85f10217
docker: Refactor Makefile.include, split to Makefile.docker
...
- Better support for passing environment variables to the Docker container.
- Move Docker-related definitions into Makefile.docker.
- Only environment variables that originates from the command line or
the environment will be passed to the Docker container.
2015-05-06 14:03:45 +02:00
haukepetersen
56cce19578
make: added APPDIR as environment variable
2015-04-30 15:08:48 +02:00
Joakim Gebart
8db628b17c
Makefile.include: Add docker target.
...
export BUILD_IN_DOCKER=1 to use Docker for building inside a Docker
container.
GDB debug file paths will be wrong after building inside the container,
use the script provided in `dist/gdbinit-docker` to set the correct GDB
substitution paths (copy and paste the contents into your `~/.gdbinit`)
The environment variable DOCKER_FLAGS can be used to pass extra
parameters to the Docker process.
2015-04-24 16:03:52 +02:00
Oleg Hahm
18bf9529f2
make: check for board existence
2015-02-23 09:09:09 +01:00
Oleg Hahm
20067567d1
make: check for existence of tools
2015-02-23 09:09:04 +01:00
Oleg Hahm
984effd5b8
make: added a check for compiler existence
2015-02-23 09:09:04 +01:00
Joakim Gebart
5e2b9f52ba
Makefile.include: Refactor ar-wrapper test.
...
llvm-ar does not understand `-rc`, but works for creating empty
archives when called with `rc` (without the leading dash). BSD `ar`
which ships with OSX, which the test is written for, understands the
argument with or without the leading dash (but does not support creating
empty archives.)
2015-02-08 20:08:14 +01:00
Oleg Hahm
dbca0d0dd4
make: add target to list available targets
2015-01-28 12:42:08 +01:00
Ludwig Ortmann
66a6aae1a8
make: escape unknown version string
2015-01-05 11:33:19 +01:00
Oleg Hahm
aef6256cc5
make: include DEFAULT_MODULES from cpu and boards
2014-12-25 16:32:56 +01:00
Ludwig Ortmann
049a6880c1
make: change escaped quotation marks
...
The '""' pattern is used so that the variable can be processed as a string
after the preprocessors evaluation. Change to \"\" instead, so that single
quotes can be used externally. The extra quotation marks are unneeded.
Related to #2213
2014-12-20 18:53:51 +01:00
Thomas Eichinger
d7d45482af
make: migrate OS variable for COLOR_ECHO too
2014-12-15 16:16:44 +01:00
René Kijewski
0d6bc7eba6
Merge pull request #1913 from Kijewski/issue-1910
...
make: allow tagged RIOT_VERSION
2014-12-11 17:46:43 +01:00
René Kijewski
19a017cf03
make: term
depends on flash
...
If you provide both `flash` and `term` as Make goals, then `term` needs
to wait for flash.
2014-12-11 14:23:39 +01:00
René Kijewski
bfbb1a353d
Merge pull request #1924 from OlegHahm/strip_application_name
...
make: strip white space from application name
2014-11-23 15:51:42 +01:00
Oleg Hahm
6bdf6a1577
make: strip APPLICATION variable
...
Trailing white spaces in the application Makefile will cause the build
system to fail otherwise.
2014-11-23 15:46:39 +01:00
René Kijewski
e4ae8eaa6e
make: allow tagged RIOT_VERSION
2014-11-21 17:06:46 +01:00
Ludwig Ortmann
6c9907b357
make: reintroduce dependency from flash to all
2014-11-19 15:04:51 +01:00
René Kijewski
3ed9a169b1
make: remove downloader "axel"
...
Breaks for `make -B`. If the file already exists, then `axel` fails
because it does not find the status file for the download.
2014-11-08 15:27:34 +01:00
Ludwig Ortmann
2c9c8bf2e0
make: remove dependency from flash to all
...
* print message when no hex file is found instead
* add objcopy for native so that flash can succeed
2014-10-31 10:31:47 +01:00
René Kijewski
765c88d08a
make: allow drivers to implement features
...
This change allows drivers (or any module for that matter) to provide
features. This is e.g. useful if a board does not have a transceiver,
but your application uses `USEMODULE += some_driver`, which implements
the transceiver interface.
The line `FEATURES_PROVIDED += some_feature` should go to the guarded
block in `{sys,drivers}/Makefile.include`.
2014-10-26 23:54:10 +01:00
René Kijewski
162850b332
make: Implement optional features
...
Fixes #1876
This PR introduces `FEATURES_OPTIONAL` which can be used to tell the
Make system, that the application would like to use some feature, but
the build should proceed even if the selected board cannot provide the
optional feature.
`make buildtest` and `make info-supported-boards` heed this variable
when examining the list of supported boards.
If a word is present in `FEATURES_REQUIRED` and `FEATURES_OPTIONAL`,
then `FEATURES_OPTIONAL` takes precedence.
2014-10-26 23:18:58 +01:00
Ludwig Ortmann
c947dc9858
make: remove $(CLEANFILES), it's superfluous
2014-10-10 15:15:13 +02:00
Ludwig Ortmann
851a02bcb7
make: add clean, distclean for RIOT
...
distclean
removes all build products, also depends on docclean
clean
removes all build products for the current board
also, silence clean target from Makefile.include and let it ignore errors
2014-10-10 15:14:30 +02:00
René Kijewski
f49bd3e660
make: add Makefile.features telling the BOARDs' features
...
Please see #1715 .
Closes #1715 .
This PR implements the new Makefile variables "FEATURES_PROVIDED" and
"FEATURES_REQUIRED". A board *can* have a new file `Makefile.features`
which looks like:
```make
FEATURES_PROVIDED = transceiver
```
An application can have a corresponding line
```make
FEATURES_REQUIRED = transceiver
```
If the selected BOARD does not fulfil the requirements of the
application, then a *warning* is issued at compile time.
This change only includes the feature "transceiver", further features
are expected to be listed in further PRs. The requirement "transceiver"
is automatically added if the application uses the module
"defaulttransceiver".
`make buildtest` understands the new feature listing, so the user won't
need to add boards to `BOARD_BLACKLIST` manually.
Part of the change are the added Make targets
* `info-features-missing`, which prints the required features
`\setminus` the provided features. The output is empty if there are no
features missing.
* `info-boards-features-missing`, the same as `info-features-missing`
but as a table for all boards, but heeded `BOARD_WHITELIST` and
`BOARD_BLACKLIST`.
Applications don't have to use this new feature. This change does not
break existing Makefile.
2014-10-06 17:42:11 +02:00
Martine Lenders
50a185524f
make: Allow for include of modules outside of the RIOTBASE path
2014-10-01 18:19:19 +02:00
Ludwig Ortmann
71b961bef7
make: .PHONY missing targets from Makefile.include
2014-09-27 08:11:44 +02:00
Ludwig Ortmann
9053cfe2de
make: add objdump target
2014-09-27 08:11:29 +02:00
Martine Lenders
248a8531a5
make: Fix TERMFLAGS
...
Sometimes boards/*/Makefile.include (e. g. in case of the msba2) gets included
twice somehow, leading the TERMFLAG to be set twice and faulty. This
fixes that.
2014-08-22 01:09:55 +02:00
René Kijewski
a70ee0f022
make: centralize wget/curl & unzip/7z feature test
...
With many open PRs that could benefit from loading SDKs when needed,
instead adding vast amounts of code to RIOTs master, this PR provides
the "functions" `$(DOWNLOAD_TO_STDOUT)`, `$(DOWNLOAD_TO_FILE)`, and
`$(UNZIP_HERE)`.
The first "function" takes one argument, the URL from where to download
the content. It is then piped to stdout. To be used e.g. with `tar xz`.
The second "function" taken two arguments, the destination file name,
and the source URL. If the previous invocation was interrupted, then the
download gets continued, if possible.
The last "function" takes one argument, the source ZIP file. The file
gets extracted into the cwd, so best use this "function" with
`cd $(SOME_WHERE) &&`.
The clumsy name `$(UNZIP_HERE)` is taken because the program "unzip"
takes the environment variable `UNZIP` as the source file, even if
another file name was given on the command line. The rationale for that
is that the hackers of "unzip" hate their users. Also they sacrifice
hamsters to Satan.
2014-08-21 19:07:52 +02:00
Martine Lenders
04489be771
[SQUASH ME] make: Move buildtest related PHONY targets to Makefile.buildtests
2014-08-13 21:24:07 +02:00
Martine Lenders
86d8dede48
[SQUASH ME] make: Add info prefix for non-building targets in Makefile.buildtests
2014-08-11 11:33:18 +02:00
Martine Lenders
30fc8671cd
[SQUASH ME] make: move info-boards-supported to Makefile.buildtests
2014-08-11 11:28:17 +02:00
Martine Lenders
0c68712fa8
make: Add target to show if boards that are supported by apps
2014-08-09 03:33:45 +02:00
Hauke Petersen
34abdbe5f2
make: added targets 'debug-server' and 'reset'
...
- added targets to Makefile.include
- added DEBUGSERVER and RESET vars to Makefile.vars
- added output of those to Makefile.buildtests
2014-08-05 22:52:34 +02:00
Oleg Hahm
6340123558
make: introduced TERMFLAGS
...
Also added the missing -p flag for the new pyterm version where
necessary.
2014-08-01 17:09:45 +02:00
René Kijewski
b7b7fd3bc1
make: provide BOARD, MCU and CPU name as a string
...
This PR adds the defined `RIOT_BOARD`, `RIOT_CPU` and `RIOT_MCU`.
They each are defined as `BOARD_${BOARD}`, `CPU_${CPU}`, and
`MCU_${CPU}`, resp.
`BOARD_${BOARD}` is defined as the string `"${BOARD}"`, but not in upper
case. Same for the other two.
2014-08-01 02:40:40 +02:00
René Kijewski
f183730917
make: force traversal into PKG's, same as normal modules
2014-07-31 14:22:34 +02:00
Ludwig Ortmann
e677aa4ec0
make: add RIOTBASE to UNKNOWN RIOT_VERSION
2014-07-30 15:50:44 +02:00
Ludwig Ortmann
9d9d2aff93
make: make RIOT_VERSION fail-safe
2014-07-30 15:33:07 +02:00
Ludwig Ortmann
e5613d308a
make: allow setting RIOT_VERSION externally
...
also make the RIOT_VERSION variable available in buildtest
2014-07-29 19:08:41 +02:00
René Kijewski
919cddef19
make: rename VERSION into RIOT_VERSION
...
Building MSP boards gives an error, because `VERSION` is somewhere
defined in their toolchain as an integer.
This PR renames `VERSION` into `RIOT_VERSION`, because that's what it
is.
2014-07-10 21:48:22 +02:00
René Kijewski
747138cf99
make: move exported make vars to one place
2014-07-10 15:20:37 +02:00
Leon George
215c9aae2b
make: allow chosing ld-like over gcc-like options
...
make automatically adds '-Wl,' to linker-options. Supply `LINKFLAGPREFIX :=` to avoid that.
2014-07-05 01:33:08 +02:00
Pham Huu Dang Nhat
f7398f61ff
Changed RIOT/Makefile.include, Makefile.base, Makefile.cflags, and native/Makefile.include to compile C and C++ files.
2014-06-25 22:26:10 +07:00
René Kijewski
2f66319a3a
make: OSX: don't fail for empty .a archives
...
Fixes issue #1333 .
2014-06-24 20:29:32 +02:00
René Kijewski
d19fc447ed
make: make DIRS usable for applications
2014-06-23 15:50:10 +02:00
René Kijewski
35e74ad725
make: refactor make system (parallelism, deduplication)
...
Almost everything was build sequentially in RIOT, because we employed
explicit for-loops to build directories (DIRS). This PR makes our make
system use normal dependencies to build directories.
All our compiling rules were duplicated, once for the application, once
for modules. This PR makes the application a normal module, removing
this duplication.
2014-06-23 15:49:55 +02:00
René Kijewski
35d024fff0
Merge pull request #1340 from Kijewski/evaluate-git-sha-once
...
make: evaluate the Git SHA only once
2014-06-21 19:19:24 +02:00
René Kijewski
1d34522703
make: evaluate the Git SHA only once
2014-06-21 18:29:16 +02:00
Ludwig Ortmann
de4677eb60
make: s/PROJDEPS/APPDEPS/
...
fixes https://github.com/RIOT-OS/RIOT/issues/1284
2014-06-21 18:28:34 +02:00
Oleg Hahm
bd94bd22f6
Merge pull request #1209 from Kijewski/buildinfo
...
make: add comprehensive `buildinfo` list
2014-06-02 14:04:01 +02:00
Thomas Eichinger
1e983c9670
s/PROJECT/APPLICATION/g
...
fixes #548
2014-05-26 13:21:09 +02:00
René Kijewski
054f9fd026
make: fix clean together with TLSF
2014-05-24 19:22:18 +02:00
René Kijewski
4198b7518c
make: add BOARD_INSUFFICIENT_RAM
blacklisting
...
Currently most blacklistings for examples and tests are done because the
board provides too little RAM or ROM. Besides of the actual linking all
the compiling should nevertheless work just fine.
This PR adds the variable `BOARD_INSUFFICIENT_RAM` to tell the
`buildtest` to compile the code for a board, but omit the linking step.
2014-05-23 14:29:38 +02:00
René Kijewski
27ae094413
make: remove clutter
...
Remove some outdated example code.
2014-05-23 14:28:27 +02:00
René Kijewski
9f40d019e3
Merge pull request #1201 from Kijewski/exclusive-make-clean
...
make: make clean usable together with `-j`
2014-05-23 03:48:55 +02:00
René Kijewski
5cb1d03ef4
make: add comprehensive buildinfo
list
...
Sometimes it is difficult to track down build errors for boards that you
are unfamiliar with.
This change adds `make buildinfo` that prints out all the relevant build
information for the selected board and project:
```
PROJECT: default
BOARD: msba2
CPU: lpc2387
MCU: lpc2387
RIOTBASE: /home/kijewski/RIOT/RIOT
RIOTBOARD: /home/kijewski/RIOT/RIOT/boards
RIOTCPU: /home/kijewski/RIOT/RIOT/cpu
DEFAULT_MODULE: auto_init core cpu sys
DISABLE_MODULE:
USEMODULE: arm_common cc110x_ng cc110x_spi config defaulttransceiver gpioint lib lpc_common ltc4150 mci net_help posix protocol_multiplex ps random rtc shell shell_commands sht11 timex transceiver uart0 vtimer
ELFFILE: /home/kijewski/RIOT/RIOT/examples/default/bin/msba2/default.elf
HEXFILE: /home/kijewski/RIOT/RIOT/examples/default/bin/msba2/default.hex
CC: arm-none-eabi-gcc
CFLAGSS:
-DBOARD_MSBA2
-DCPU_LPC2387
-DMODULE_ARM_COMMON
-DMODULE_AUTO_INIT
-DMODULE_CC110X_NG
-DMODULE_CC110X_SPI
-DMODULE_CONFIG
-DMODULE_CORE
-DMODULE_CPU
-DMODULE_DEFAULTTRANSCEIVER
-DMODULE_GPIOINT
-DMODULE_LIB
-DMODULE_LPC_COMMON
-DMODULE_LTC4150
-DMODULE_MCI
-DMODULE_NET_HELP
-DMODULE_POSIX
-DMODULE_PROTOCOL_MULTIPLEX
-DMODULE_PS
-DMODULE_RANDOM
-DMODULE_RTC
-DMODULE_SHELL
-DMODULE_SHELL_COMMANDS
-DMODULE_SHT11
-DMODULE_SYS
-DMODULE_TIMEX
-DMODULE_TRANSCEIVER
-DMODULE_UART0
-DMODULE_VTIMER
-O2
-Wall
-Wstrict-prototypes
-mcpu=arm7tdmi-s
-gdwarf-2
-std=gnu99
-fno-delete-null-pointer-checks
-Wstrict-prototypes
-Werror=strict-prototypes
-Wold-style-definition
-Werror=old-style-definition
LINK: arm-none-eabi-gcc
LINKFLAGS:
-gdwarf-2
-mcpu=arm7tdmi-s
-static
-lgcc
-nostartfiles
-T/home/kijewski/RIOT/RIOT/cpu/lpc2387/linkerscript.x
OBJCOPY: arm-none-eabi-objcopy
OFLAGS: -O ihex
FLASHER: lpc2k_pgm
FFLAGS: /dev/ttyUSB0 /home/kijewski/RIOT/RIOT/examples/default/bin/msba2/default.hex
TERMPROG: /home/kijewski/RIOT/RIOT/dist/tools/pyterm/pyterm.py
PORT: /dev/ttyUSB0
DEBUGGER:
DEBUGGER_FLAGS:
MAKEFILE_LIST:
/home/kijewski/RIOT/RIOT/examples/default/Makefile
/home/kijewski/RIOT/RIOT/Makefile.include
/home/kijewski/RIOT/RIOT/Makefile.modules
/home/kijewski/RIOT/RIOT/Makefile.pseudomodules
/home/kijewski/RIOT/RIOT/Makefile.defaultmodules
/home/kijewski/RIOT/RIOT/boards/msba2/Makefile.include
/home/kijewski/RIOT/RIOT/boards/msba2-common/Makefile.include
/home/kijewski/RIOT/RIOT/boards/msba2-common/Makefile.dep
/home/kijewski/RIOT/RIOT/cpu/lpc2387/Makefile.include
/home/kijewski/RIOT/RIOT/cpu/arm_common/Makefile.include
/home/kijewski/RIOT/RIOT/cpu/lpc_common/Makefile.include
/home/kijewski/RIOT/RIOT/Makefile.dep
/home/kijewski/RIOT/RIOT/Makefile.cflags
/home/kijewski/RIOT/RIOT/sys/Makefile.include
/home/kijewski/RIOT/RIOT/drivers/Makefile.include
/home/kijewski/RIOT/RIOT/Makefile.buildtests
```
2014-05-18 18:59:51 +02:00
René Kijewski
3d6c7008e5
make: make clean usable together with -j
2014-05-16 19:11:55 +02:00
René Kijewski
66a3d7da77
make: fix #1197
...
Partial revert of 85b7eca19e
Fixes #1197 .
2014-05-16 18:18:35 +02:00
René Kijewski
e189064171
make: print error if make was executed in the root
...
Fixes #1104 , alternative to #1178 .
2014-05-15 20:07:32 +02:00
Martine Lenders
47373a9e4a
Merge pull request #1098 from authmillenon/make-addon
...
make: Make make more flexible
2014-05-15 01:19:11 +02:00
René Kijewski
fe8710ce05
make: put buildtest goals into an own file
...
`Makefile.include` is too long as is.
2014-05-14 19:12:09 +02:00
Martin Lenders
8fd09c575c
Make directory creation in object compilation more makey
2014-05-14 18:16:40 +02:00
Martin Lenders
85b7eca19e
Move .elf file to it's own target
2014-05-14 18:16:40 +02:00
Martin Lenders
c710062f86
Introduce macro to define files that should be deleted on make clean
2014-05-14 18:16:39 +02:00
René Kijewski
073bdfe9ec
make: add own file for CFLAGS feature tests
2014-05-12 21:57:09 +02:00
René Kijewski
f02e5b97e2
make: show diffence in buildsizes for two folders
2014-04-23 17:19:19 +02:00
René Kijewski
bb3b3bffa7
make: add maketarget to to show the biggest obj files
2014-04-23 17:18:50 +02:00
René Kijewski
f2e73863cb
make: comprehensive list of the boards' filesizes
2014-04-23 17:18:19 +02:00
René Kijewski
542a2e5d9d
Merge pull request #995 from Kijewski/issue-993
...
Make: exterminate 'clean' buildtarget clutter
2014-04-18 16:11:15 +02:00
René Kijewski
300d6b3e35
Make: exterminate 'clean' buildtarget
...
Closes #993 .
We do not need to descend into the modules to know what to do on
`make clean BOARD=blub`. We can just invoke `rm -rf bin/blub`.
This PR only keeps the descending into the USEPKGs, since they might
want to delete cached/downloaded/extracted data.
2014-04-09 23:07:52 +02:00
René Kijewski
49c3fd666c
Make: fix linebreaks in buildtest
2014-04-09 12:40:58 +02:00
Oleg Hahm
4fd851bccf
Merge pull request #855 from authmillenon/board_macro
...
make: Fix BOARD and CPU macros
2014-04-09 01:24:58 +02:00
René Kijewski
e740fbc800
make: Add DEFAULT_MODULE and DISABLE_MODULE
...
Closes #926
2014-04-01 23:42:00 +02:00
René Kijewski
de29e4184c
Add include paths automatocally for USEMODULES
...
Application developers use `$(USEMODULES)` in their Makefiles to have
the relevant functionally automagically added to their apps. This even
does basic dependency tracking by means of `Makefile.dep`.
But an important thing is missing: the automatic adding of include
paths. This is inconvenient, error prone, and will hinder the RIOT core
developers in future to change folder structures.
2014-03-29 16:27:55 +01:00
Ludwig Ortmann
f1dafdb062
include warnings
...
addresses https://github.com/RIOT-OS/RIOT/pull/883#issuecomment-37833467
2014-03-17 17:39:30 +01:00
Ludwig Ortmann
91cc4a2771
make/buildtest: print errors
...
Display all stderr output but suppress warnings.
implements https://github.com/RIOT-OS/RIOT/issues/835
2014-03-14 09:15:25 +01:00
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
Martin Lenders
c26f2c9d70
Fix BOARD macro
2014-03-04 15:52:44 +01:00
Martin Lenders
e7c3282886
Replace '-' with '_' in BOARD and CPU_… macros
2014-03-04 14:58:34 +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
Oleg Hahm
b64fb65935
Merge branch 'agilefox_clean' of https://github.com/AlaeddineWeslati/RIOT into AlaeddineWeslati-agilefox_clean
...
Conflicts:
sys/include/transceiver.h
sys/transceiver/transceiver.c
Additional changes:
* allow for multi-transceiver initialization
* change packet reception to old implementation
2013-08-15 19:07:14 +02:00
Alaeddine WESLATI
11bb09b7f8
started adding at86rf231 driver
...
at86rf231 TX and RX
driver is using vtimer instead of hwtimer_ functions, TO CHECK
vtimer debug function prototype fix
2013-08-12 15:17:22 +02:00
Oleg Hahm
6239ea2a0b
minor changes according to 7a2cc4ae09
2013-08-09 15:57:34 +02:00
authmillenon
4f363ce0fe
Define phony make targets
2013-08-08 15:44:44 +02:00
Martin Lenders
acc83c676a
Fix mkdir from 065566c
2013-07-31 17:16:05 +02:00
Martin Lenders
065566cd04
Create project's bin directory if it does not exist
2013-07-31 15:20:23 +02:00
Oleg Hahm
19e4034ace
Merge branch 'thomas-mc1322x'
...
Conflicts:
Makefile.modules
core/kernel_init.c
core/thread.c
cpu/arm_common/arm_cpu.c
cpu/arm_common/syscalls.c
cpu/lpc_common/hwtimer_cpu.c
cpu/lpc_common/iap.c
sys/include/transceiver.h
sys/net/sixlowpan/sixlowip.c
sys/net/sixlowpan/sixlowmac.c
sys/net/sixlowpan/sixlowmac.h
sys/net/sixlowpan/sixlowpan.c
sys/transceiver/Makefile
sys/transceiver/transceiver.c
2013-07-24 23:22:11 +02:00
Benjamin Valentin
248267834d
allow external modules to be added to a project
2013-07-23 18:50:26 +02:00
Christian Mehlis
57e70a659c
Remove undefined variables from Makefiles
...
The following variables are included in various Makefiles but never
defined.
$(BOARDINCLUDE)
$(PROJECTINCLUDE)
$(CPUINCLUDE)
2013-06-13 21:41:24 +02:00
Ludwig Ortmann
a4528f3d8c
Link with -lrt if glibc < 2.17 for native on linux
2013-06-03 12:08:08 +02:00
Ludwig Ortmann
35f9062e37
inital OSX support for native port
2013-05-15 17:45:43 +02:00
Thomas Eichinger
3dba62afa6
Merge branch 'mc1322x' of github.com:RIOT-OS/RIOT into mc1322x
2013-04-22 09:56:07 +02:00
Oliver Hahm
d56081ddca
* fixed Makefile.include to compile all *.c files
2013-04-22 00:55:11 +02:00
Oliver Hahm
c39fd9d8dc
* minor changes
2013-04-09 23:30:52 +02:00
Oliver Hahm
95158bd38e
* fixed flasher flags in Makefile.include
2013-04-09 11:26:33 +02:00
Oliver Hahm
f13ef5f500
* restructured cpu folder to distinguish between arm and lpc common files
2013-04-01 00:18:07 +02:00
Oliver Hahm
fc3325b113
* set MCU to CPU if undefined
2013-03-31 22:14:06 +02:00
mikoff
4f638eb887
All files, which used by chronos board were edited according to new texas instruments headers, all warnings fixed
2013-03-30 21:44:16 +01:00
Oliver Hahm
e6177e811a
* moved cpu and board specific parts to corresponding Makefiles
...
* introduced variable for cpu folder
2013-03-23 18:38:12 +01:00
Ludwig Ortmann
2883ca121e
migrate to current Makefile structure
2013-03-19 22:32:22 +01:00
Oliver Hahm
7cef6c4655
* adapted thread_stack_init() for ARM and msp430 to the new prototype introduced by bd5b46628f
2013-03-13 16:49:23 +01:00
Oliver Hahm
c05c8a248c
* added a Makefile.include for generic includes
2013-03-10 16:51:40 +01:00