1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

69 Commits

Author SHA1 Message Date
591ee417e7 make: buildtest: pass GIT_CACHE_DIR to buildtest targets 2016-03-23 15:10:01 +01:00
91cec4c72c make: buildtest: don't rm BINDIRBASE, make clean all 2016-03-10 21:40:03 +01:00
cc96de027e make: buildtest: don't use ccache on third retry 2016-03-10 11:34:36 +01:00
d005861f5c Merge pull request #4966 from kaspar030/buildtest_always_rebuild
make: buildtest: build with -B
2016-03-06 00:44:31 +01:00
9bbf789d3a make: buildtest: build with -B 2016-03-05 18:47:07 +01:00
8b7ddb2f70 make: use variable for pkg subdir 2016-03-05 03:05:32 +01:00
Cenk Gündoğan
5dda169145 Makefile.buildtest: set CCACHE_DIR only if defined 2016-03-03 14:59:31 +01:00
Joakim Nohlgård
c2a98076c6 Makefile.buildtests: Clean up indentation 2016-02-16 06:35:05 +01:00
Joakim Nohlgård
316116fee0 Makefile.buildtests: Pass TOOLCHAIN variable to sub-make 2016-02-16 06:34:29 +01:00
Joakim Nohlgård
ca66ea0f10 Makefile.buildtests: Pass LTO variable to buildtest subprocesses 2016-02-05 08:51:51 +01:00
Cenk Gündoğan
f793ac25f8 Makefile.buildtests: BOARD_INSUFFICIENT_RAM => BOARD_INSUFFICIENT_MEMORY 2015-08-28 18:19:09 +02:00
Cenk Gündoğan
88c8d2f379 Makefile.buildtests: Fix output of info-objsize 2015-08-21 17:48:44 +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
Philipp Rosenkranz
da1e715473 make/compile_test.py: display compile errors and warnings 2015-07-16 21:22:57 +02:00
Joakim Gebart
0ae1b3194a Makefile.buildtests: Default to -Werror on make buildtest 2015-07-14 08:11:19 +02:00
Joakim Gebart
ba9d3f8929 Makefile.buildtests: Indentation fixes 2015-07-14 08:11:19 +02:00
Joakim Gebart
8724e6c0cc Merge pull request #3358 from gebart/pr/make-info-buildsizes-fixes
make: buildtests, info-buildsizes improvements
2015-07-13 15:12:55 +02:00
Joakim Gebart
df34f0a2fc Makefile.buildtests: silent run info-buildsizes 2015-07-10 16:49:36 +02:00
Joakim Gebart
26938059d6 Makefile.buildtests: Use clean-intermediates instead of clean 2015-07-10 16:49:36 +02:00
Joakim Gebart
e737a3a076 Makefile.buildtests: Avoid parsing error message
"recipe for target xx failed" was printed to stdout when running info-buildsize for missing files
2015-07-10 16:48:59 +02:00
Joakim Gebart
4a23860d0c Makefile.buildtests: Add missing COLOR_ prefixes (typo) 2015-07-10 16:48:51 +02:00
Philipp Rosenkranz
94490ed031 compile_test.py / buildtest: fix output for failed boards 2015-07-10 03:12:04 +02:00
Philipp Rosenkranz
c1365fefd9 make: increase retries for buildtest by one 2015-07-04 18:09:08 +02:00
Philipp Rosenkranz
19364b35a3 make: clean artifacts after build success/fail 2015-07-01 22:42:34 +02:00
Martine Lenders
4878f8a821 make: fix info-files target
aed4be3 broke this command, since the regular expressions here register
the macros that were introduced there, too. With this patch the skipping
of apps in travis works properly again.
2015-06-01 09:42:32 +02:00
2226d14e12 make: buildtest: pass CCACHE_* to buildtests 2015-05-29 09:45:40 +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
68f3c261b0 docker: Add support for buildtests inside Docker. 2015-05-06 14:04:15 +02:00
Martine Lenders
1b7b35ac81 make: add output for all involved files to an application 2015-04-16 15:53:47 +02:00
Philipp Rosenkranz
6087aaf223 make: allow buildtest targets to function without BUILDTEST_MCU_GROUP 2015-03-12 21:33:43 +01:00
Philipp Rosenkranz
02d0c88284 tests/travis: split buildtests into MCU groups. 2015-02-22 15:04:52 +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
Lucas Jenss
de11d59177 Add TERMFLAGS to info-build of Makefile.buildtests
As requested in #1559
2014-11-25 09:13:45 -08:00
René Kijewski
e4ae8eaa6e make: allow tagged RIOT_VERSION 2014-11-21 17:06:46 +01:00
Ludwig Ortmann
75a7a1f1db Merge pull request #1894 from thomaseichinger/buildtest_fix
make: fix make targets buildtest and info-boards-supported
2014-10-28 08:31:09 -07:00
Thomas Eichinger
6394cae938 make: fix make targets buildtest and info-boards-supported
Fixes issues with the make targets buildtest and info-boards-supported
on OS X hosts. Comments and recommentations to simplify and beautify
would be appreciated.
2014-10-28 15:05:49 +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
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
René Kijewski
4d8aad8ad1 make: Centralize color use 2014-10-06 17:36:03 +02:00
René Kijewski
b22c2f4ab5 Merge pull request #1431 from Kijewski/wget-for-everyone-woooohooooo
make: centralize wget/curl & unzip/7z feature test
2014-08-21 21:23:30 +02:00
René Kijewski
94b2e0815a tests: limit concurrency level
Some Travis CI machines have 32 CPUs. This sets our concurrency level to 33.
Travis CI kills our buildtest for obvious reasons.

This PR limits the concurrency level to 8 on Travis CI.
2014-08-21 20:05: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
7306552873 [SQUASH ME] make: remove debugging lines 2014-08-13 21:14:11 +02:00
Martine Lenders
87b68e9382 make: Add supported boards to info-build target 2014-08-13 20:44:16 +02:00
Martine Lenders
e8f251cfa3 [SQUASH ME] make: info-boards-supported is just 2014-08-13 20:43:42 +02:00
Martine Lenders
da779b0dee make: Make BOARDS a global macro for buildtests 2014-08-13 20:39:48 +02:00