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

167 Commits

Author SHA1 Message Date
Gaëtan Harter
3226918e17
newlib.mk: indent comments in conditionnal
Comments inside an if are usually also indented.
2018-08-02 17:06:54 +02:00
Gaëtan Harter
154d64ee47
newlib.mk: get NEWLIB_INCLUDE_DIR absolute and without trailing slash
It replaces

    make BOARD=iotlab-m3 info-debug-variable-NEWLIB_INCLUDE_DIR
    /usr/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/include/

with

    make BOARD=iotlab-m3 info-debug-variable-NEWLIB_INCLUDE_DIR
    /usr/arm-none-eabi/include

Without trailing slash and without relative '..' everywhere.

It also uses `realpath` instead of `abspath` to support Mingw32.
2018-08-02 17:06:51 +02:00
Gaëtan Harter
37a92c4c5e
newlib.mk: Windows/MSYS Bash support: use realpath instead of abspath
Some versions of Mingw32 abspath implementation has trouble working with
windows formatted path.

    $(abspath "C:/A/B") returns "/C/CUR/DIR/C:/A/B" instead of "/C/A/B"

relpath does not have this problem, it does additional symlink resolution but is
not a problem.
Note: on windows it does not remove the trailing `/`.

https://github.com/zephyrproject-rtos/zephyr/issues/2061#issuecomment-331635063

Patched in

941059c69f
2018-08-02 17:06:46 +02:00
Gaëtan Harter
3a4538ee76
newlib.mk: sanitize output before getting include path
Only keep lines that are indeed include path.
It also keeps newlines as they do not matter.

It fixes Mingw32 support where `grep '^\s'` is not working the same way.
It also handles some mac `sed` that do not support `\s`.

Ouput tested with:

    make -C examples/hello-world BOARD=samr21-xpro info-debug-variable-COMPILER_INCLUDE_PATHS
    # by also putting newlines for readability

Now:

    /usr/bin/../lib/gcc/arm-none-eabi/7.2.1/include
    /usr/bin/../lib/gcc/arm-none-eabi/7.2.1/include-fixed
    /usr/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/include

Before:

    /usr/bin/../lib/gcc/arm-none-eabi/7.2.1/cc1 -E -quiet -v -iprefix /usr/bin/../lib/gcc/arm-none-eabi/7.2.1/ -isysroot /usr/bin/../arm-none-eabi -D__USES_INITFINI__ /dev/null
    /usr/bin/../lib/gcc/arm-none-eabi/7.2.1/include
    /usr/bin/../lib/gcc/arm-none-eabi/7.2.1/include-fixed
    /usr/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/include
2018-08-02 17:05:17 +02:00
Gaëtan Harter
18a4ccf315
newlib.mk: fix NEWLIB_INCLUDE_DIR not being set by PATTERNS
As NEWLIB_INCLUDE_DIR has already been set here, with an empty value, it is not
overwriting it because of the '?='.
2018-08-02 17:05:13 +02:00
Gaëtan Harter
a946c2c5bd
newlib.mk: fix: do not require slash terminated NEWLIB_INCLUDE_DIR
When NEWLIB_INCLUDE_DIR is set from other parts than 'COMPILER_INCLUDE_PATHS' it
does not have a trailing slash.
Also, it makes it more problematic when supplying it from the command line.

And anyway having two '/' does not break anything.
2018-08-02 17:05:10 +02:00
Martine Lenders
d4bdac7e5c
Merge pull request #9513 from cladmi/pr/make/llvm/nano
newlib.mk: llvm, fix newlib-nano header not used
2018-08-02 17:00:38 +02:00
Gaëtan Harter
e5c49aa486
makefiles/docker.inc.mk: allow overwriting 'docker' command
Not all users register their user in the docker group and should not run the
whole make process as root to use docker.

They can now overwrite DOCKER with `DOCKER="sudo docker"`.

Creating files as a user is correctly handled as `id -u` is still run as the
original user.
2018-07-26 14:30:39 +02:00
Gaëtan Harter
f8e1419a31
newlib.mk: llvm, fix newlib-nano header not used
In the previous state, with llvm and arm for example, newlib-nano include dir
NEWLIB_NANO_INCLUDE_DIR is placed after NEWLIB_INCLUDES and so the default
'newlib.h' is used instead of the nano version.
2018-07-25 14:29:51 +02:00
Gaëtan Harter
cde5a91a8a
toolchain/gnu: also define NM
llvm is defining NM already and `openthread` is using the symbol.
2018-07-23 17:29:55 +02:00
Gaëtan Harter
a99dd332cc
cflags.inc.mk: fix cflags test for llvm
gcc does an error but not clang, so add -Werror.
2018-07-19 18:59:20 +02:00
Joakim Nohlgård
3c23c95b6f
cflags: add -Wformat=2 -Wformat-overflow -Wformat-truncation 2018-07-18 15:29:06 +02:00
Martine Lenders
9f93745734
Merge pull request #9358 from gebart/pr/cflags-cleanup
makefiles/cflags.inc.mk: Use a template for CFLAGS testing
2018-07-18 14:11:49 +02:00
Gaëtan Harter
3cb57b68c2
Merge pull request #9502 from dylad/pr/update_edbg
dist/tools: update EDBG version
2018-07-12 22:14:02 +02:00
Joakim Nohlgård
843cec5cbd
makefiles/cflags.inc.mk: Use a template for CFLAGS testing 2018-07-10 16:51:29 +02:00
Joakim Nohlgård
a71ef652e7
makefiles/cflags.inc.mk: move excluded patterns out of conditional
The excluded patterns can always be defined as they only set `CFLAGS` that
should not be passed to `CXX`.

This prepares for replacing the cflags support detection by a function.
2018-07-10 16:48:37 +02:00
Joakim Nohlgård
be2169d587
makefiles/cflags.inc.mk: Remove WERROR duplicate handling
WERROR already sets -Werror so this is not necessary.
2018-07-10 16:47:42 +02:00
dylad
5341fc5ae5 makefiles/tools: add Makefile dependency to EDBG 2018-07-10 15:20:14 +02:00
Gaëtan Harter
fb10a181a0
make: Add 'BUILDDEPS' variable
BUILDDEPS are files / make targets that should be build before compiling.
It can include packages source download, generating headers, modules.

It is the equivalent of `APPDEPS` but not limited to the application.
It cannot be done right now with `APPDEPS` as it is used in `BASELIBS` and
fixing it requires changing mips using it for source files.
2018-07-06 18:56:33 +02:00
Gaëtan Harter
a62c8a84dd
pseudomodules: allow defining them in pkg/PKG/Makefile.include
Officially allow packages to define pseudomodules in their Makefile.include as
done in the libcose package.
2018-07-05 16:03:07 +02:00
Martine Lenders
0ef62b9690 gnrc_ndp: add support for building RDNSS option 2018-07-05 11:01:22 +02:00
4ea93f3aea
Merge pull request #8542 from OTAkeys/pr/at_oob
drivers/at: at out-of-band data support for at commands parser
2018-07-04 19:01:28 +02:00
Hauke Petersen
3ccb27d00d tools: add mosquitto.rsmb MQTT-SN broker 2018-07-04 11:36:57 +02:00
4e1f07b895
Merge pull request #8475 from aabadie/pr/common-stlink
boards/stm32: use common place of openocd config files for all boards using stlink
2018-06-28 15:13:48 +02:00
Gaëtan Harter
5e053bffe9
boards: use RIOTTOOLS variable 2018-06-28 14:05:33 +02:00
Marian Buschsieweke
d208c224b0
drivers: Renamed module sht11 to sht1x
The sensor family SHT10, SHT11 and SHT15 only differ in their accuracy (as in
calibration, not as in resolution). Thus, the same driver can be used for all.
The new driver name better reflects this fact.
2018-06-27 08:57:58 +02:00
de15af4c87 boards/common/stm32-link: add common place for stlink
- introduce common place for boards using stlink: same serial, all use openocd
- apply this to nucleos
2018-06-26 20:45:23 +02:00
Sebastian Meiling
d0a3817cb8
Merge pull request #9394 from cgundogan/pr/newlib_includes
newlib: include fixes for newlib-nano
2018-06-26 19:29:28 +02:00
Vincent Dupont
3393888cea drivers/at: add URC registering and parsing feature 2018-06-26 10:03:10 -07:00
Cenk Gündoğan
db6cb1ac65 newlib: include fixes for newlib-nano 2018-06-26 15:45:54 +02:00
Joakim Nohlgård
b36afc3964 make: Clean up WERROR handling 2018-06-26 12:50:02 +02:00
Martine Lenders
a6a7357077 shell_commands: add command for packet buffer stats
I'm using something like this command for a while now for debugging
GNRC. Usually, I just patch it into the application I'm using it with,
but I think there is a benefit to also provide it to RIOT upstream
properly.
2018-06-22 09:51:17 +02:00
Gaëtan Harter
acef97aa15
Merge pull request #9243 from cladmi/pr/warning/missing_include_dirs
makefiles/cflags.inc.mk: add -Wmissing-include-dirs flag
2018-06-18 13:13:54 +02:00
Gaëtan Harter
2c9800d5d8
makefiles/vars.inc.mk: fixup indentation 2018-06-13 13:29:20 +02:00
Gaëtan Harter
08ff1b73a2
makefiles/cflags.inc.mk: add -Wmissing-include-dirs flag
Warn if a user-supplied include directory does not exist.
2018-06-12 14:08:33 +02:00
Toon Stegen
f1c53794fa Revert "newlib-nano: add include directory"
This reverts commit 88aaa62364.
2018-05-30 17:41:21 +02:00
kenrabold
7d1d5e77d8 cpu/fe310: add RISC-V cpu FE310
New CPU FE310 from SiFive based on RISC-V architecture

build: add makefile for RISC-V builds

Makefile for builds using RISC-V tools
2018-05-29 15:21:45 -07:00
ea4aa1e178
Merge pull request #9134 from aabadie/pr/makefiles/riottools
makefiles/tools: use RIOTTOOLS variable
2018-05-28 17:03:00 +02:00
Toon Stegen
88aaa62364 newlib-nano: add include directory
The newlib-nano include directory can be named either newlib-nano or
nano, so we should make sure it is added in both cases.
2018-05-27 07:13:16 +02:00
f04f954a21 makefiles/tools: use RIOTTOOLS variable 2018-05-15 11:29:33 +02:00
0b0fea9a2e
Merge pull request #9101 from cladmi/pr/make/add_debug_variable
makefiles/info.inc.mk: add a info-debug-variable-% target
2018-05-14 11:47:29 +02:00
9312a711bc cpu/cortexm: explicitly set -march=armv6s-m for crotexm0(plus)
Works around a regression in gcc 8.1.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85606.
2018-05-11 23:07:25 +02:00
Gaëtan Harter
e45194d301
mcuboot.mk: use RIOTTOOLS variable 2018-05-09 18:01:51 +02:00
Gaëtan Harter
bd29ac614d
makefiles/info.inc.mk: add a info-debug-variable-% target
Add a target to print an internal variable value.

Usage: make info-debug-variable-VARIABLENAME

Example:

    make info-debug-variable-ELFFILE
    /path/to/riot/examples/hello-world/bin/native/hello-world.elf
2018-05-08 18:19:03 +02:00
smlng
a83d53f2d9
make: add and export RIOTTOOLS directory
Replacing usage will come in further commits/PRs.
2018-05-03 15:56:00 +02:00
Josarn
1dd7ac0575 Makefile.include: add SIZEFLAGS 2018-04-27 12:23:06 +02:00
cladmi
3f145413f5 boards/makefiles: Remove '-Otype' from OFLAGS
* Remove '-Oihex' and '-Obinary' from OFLAGS for all boards
  It is now provided by the Makefile.include rule.
2018-04-09 17:32:46 +02:00
Hauke Petersen
108284670c net: added RD client for simplified registration 2018-04-09 10:37:10 +02:00
Hauke Petersen
49bd85d00a sys/net: added Skald
Skald is a very small and simple, TX-only BLE stack that supports
sending advertisements only. It is useful for building all kinds
of BLE beacons with very minimal memory footprints.
2018-04-06 11:18:53 +02:00
16ff8a51bd
Merge pull request #8795 from gebart/pr/newlib-rm-lnosys
newlib: link without -lnosys
2018-04-04 10:51:09 +02:00