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

1028 Commits

Author SHA1 Message Date
Francois Berder
4a31f94cfc many typo fixes
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-23 22:39:07 +01:00
8a76acf060
Merge pull request #12706 from fjmolinas/pr_fix_flake8
RIOT: fix PEP8 errors
2019-11-23 06:47:34 +01:00
Francisco Molina
2e8968fa17 dist/tools/pyterm/pyterm: fix PEP8 F841, unused variable 2019-11-22 11:47:49 +01:00
Francisco Molina
d2e90b2370 dist/tools/ethos/ethos.c: remove unusued var 'escaped' 2019-11-21 11:58:07 +01:00
Francisco Molina
2202b71f99 flake8: fix PEP8 overidentation E127 2019-11-21 10:11:56 +01:00
Leandro Lanzieri
b642f2ea23 dist/tools: Add kconfiglib
Kconfiglib is a Kconfig implementation in Python 2/3.
See https://github.com/ulfalizer/Kconfiglib
2019-11-19 17:46:38 +01:00
588766ab27
Merge pull request #12733 from fjmolinas/pr_jlink_serial
makefiles/tools/jlink.inc.mk: DEBUG_ADAPTER_ID as JLINK_SERIAL
2019-11-18 13:47:26 +01:00
Francisco Molina
f9ebc8658f dist/tools/jlink: cleanup doc 2019-11-18 13:04:42 +01:00
Kevin "Tristate Tom" Weiss
be39169bd4
Merge pull request #11108 from gschorcht/cpu/esp8266/esp-idf/pr
cpu/esp8266: complete reimplementation based on ESP8266 RTOS SDK
2019-11-18 09:34:49 +01:00
Gunar Schorcht
555a7040db cpu/esp8266: reset tool to allow automatic tests 2019-11-14 13:58:48 +01:00
Gunar Schorcht
fe028455e5 cpu/esp8266: esptool.py is provided as tool
The modified version esptool.py from RTOS SDK that is required for flashing an image, is now placed in `dist/tools/esptool.py` and used directly from there. The advantage is that `esptool.py` hasn't to be installed explicitly anymore. Having RIOT is enough. The documentation is adapted accordingly. The oly prerequisite is that python and the pyserial module are installed.
2019-11-14 13:58:48 +01:00
Benjamin Valentin
bff06a4d64 tools: add add_insufficient_memory_board.sh script
This adds a script that automatically compiles all examples & tests for a given
board and updates Makefile.ci if necessary.
2019-11-12 13:52:15 +01:00
86bd4d98a5
tools/build_system_sanity_check: add check for DEVELHELP
This variable should be set directly as it's hanbled after in Makefile.include, and not directly via CFLAGS
2019-11-06 16:32:47 +01:00
d69254b9df
tools/buildsystem_sanity_check: add check for APPLICATION in tests
This check verifies the APPLICATION variable is not set by tests application Makefiles. These applications should include the common test Makefile, where this variable is automatically set
2019-11-05 07:59:57 +01:00
Marian Buschsieweke
809d74bca6
dist/tools: Added script for C11 atomics compat
Added a script to determine the sizes of the default C11 atomic types and
generate an C++ header with preprocessor defines to access the sizes of the
types and an integer type of the same size (and therefore alignment
requirements).
2019-10-24 23:08:35 +02:00
050c077be7 dist/tools/codespell: update ignore list
changed wan -> WAN, codespell help says:
"Words are case sensitive based on how they are written in the dictionary file"
Thus WAN doesn't match but "wan" does.

Also added "dout" (short form of digital out).
2019-10-24 16:47:00 +02:00
62c244608d
tools/pr_check: add REMOVEME in keyword filtered 2019-10-22 08:07:40 +02:00
Francisco Molina
fb0f64630b dist/buildsystem_sanity_check: add check for CPU_FAM/ARCH definition
- Check that CPU_FAM/ARCH is only exported in vars.inc.mk
2019-10-18 08:55:33 +02:00
Francisco
01779508d6
Merge pull request #12394 from aabadie/pr/make/iotlab_support_fix
make/testbed-support: fix error with FLASHFILE not defined
2019-10-17 23:21:12 +02:00
Marian Buschsieweke
b6d23b56ae
dist/tools: Check BOARD_INSUFFICIENT_MEMORY usage
- Enforce that all applications do not manage BOARD_INSUFFICIENT_MEMORY in the
  Makefile
- Match also "BOARD_INSUFFICIENT_MEMORY +=", not only
  "BOARD_INSUFFICIENT_MEMORY :=" or "BOARD_INSUFFICIENT_MEMORY =".
2019-10-17 15:30:21 +02:00
Sebastian Meiling
e00f7a4198
Merge pull request #11767 from MrKevinWeiss/pr/remove/philip
dist/tests/philip: Removed old code and tests
2019-10-17 08:45:40 +02:00
Francisco
02ae803acc
Merge pull request #12395 from aabadie/pr/dist/testbed-support-add-nrf52840-mdk
dist/testbed-support: add nrf52{840,832}mdk in IOTLAB_NODE targets
2019-10-16 15:59:31 +02:00
MrKevinWeiss
7a0e7e378d dist/tests/if_lib: Remove if_lib since we use philip_pal
All if_lib tests are no longer in use so the if_lib is obsolete.
It is replace by robot framework tests, riot_pal, and philip_pal.
Check the RF_Tests repo for more information
2019-10-16 15:57:23 +02:00
bdd3fed598
dist/testbed-support: add nrf52832mdk in IOTLAB_NODE targets 2019-10-16 11:57:21 +02:00
ffc4c84faa
dist/testbed-support: boards: remove useless IOTLAB_FLASHFILE 2019-10-16 11:44:59 +02:00
benpicco
c9b76a9585
Merge pull request #12406 from maribu/pain_in_the_ass
examples: Moved CI infos to Makefile.ci
2019-10-15 14:40:40 +02:00
benpicco
10824e1cd0
Merge pull request #12251 from maz3max/bmp-tool
Add helper script for Black Magic Probe
2019-10-15 13:39:08 +02:00
Maximilian Deubel
30f12c9058 Add helper script for Black Magic Probe
This script can detect [Black Magic Probes](https://github.com/blacksphere/blackmagic/wiki) and act as a flashloader (and more).
It is compatible with Linux and macOS.

All important options that can be set via the monitor command are available as arguments.

Makefiles for using `make flash`, `make erase`, `make debug` and `make term` with the script are included.
2019-10-15 12:58:24 +02:00
Marian Buschsieweke
2c996057c4
dist/tools: Check BOARD_INSUFFICIENT_MEMORY usage
Enforce BOARD_INSUFFICIENT_MEMORY is not managed in the Makefile in the examples
2019-10-15 09:55:07 +02:00
3e3768140c
tools/ci: fix typo in build_and_test.sh script 2019-10-10 15:48:18 +02:00
5d408d68c4
ci: add codespell check to track typos 2019-10-10 15:48:18 +02:00
Francisco
315e455643
Merge pull request #12413 from cladmi/pr/compile_and_test_for_board/flash_targets
tools/compile_and_test_for_board: allow setting the flash targets
2019-10-10 12:46:41 +02:00
Gaëtan Harter
7f2f0b6616
tools/compile_and_test_for_board: allow setting the flash targets
This allow configuring the flash targets in the same way as the
compilation and test targets.

This is part of trying to flash with docker using a different flash target.
2019-10-10 11:39:00 +02:00
5ab8d92702
Merge pull request #11818 from kaspar030/suit-pr
sys/suit: initial support for SUIT firmware updates
2019-10-10 10:38:01 +02:00
Gaëtan Harter
7ac30e471c
boards/slwstk6000b-*: move CPU_MODEL definition to Makefile.features
This is still currently a hack to hardcode it as the value can be deduced
from the `BOARD_MODULE` daughter board name.

But it requires more cleanup and could come in a separate step.

Part of moving CPU/CPU_MODEL definition to Makefile.features to have it
available before Makefile.include.
2019-10-09 18:51:57 +02:00
b899a9f362 examples/suit_update: add SUIT draft v4 example & test
This commit adds an example application showcasing SUIT draft v4
firmware updates.

It includes a test script suitable for local or CI testing.

Co-authored-by: Alexandre Abadie <alexandre.abadie@inria.fr>
Co-authored-by: Koen Zandberg <koen@bergzand.net>
Co-authored-by: Francisco Molina <femolina@uc.cl>
2019-10-09 13:51:29 +02:00
b389b881cf
dist/testbed-support: add nrf52840mdk in IOTLAB_NODE targets 2019-10-08 20:10:08 +02:00
Francisco
1c5c027ee7
Merge pull request #12004 from cladmi/pr/make/dependencies/debug_targets
make: add targets to debug dependencies variables
2019-10-08 17:41:34 +02:00
Gaëtan Harter
ddf3874995
boards/slwstk6000b: migrate to use a common/slwstk6000b
Migrate the board to be implemented with a common/slwstk6000b.

It is a pre step for splitting the board for each "BOARD_MODULE".
2019-10-08 15:36:09 +02:00
Gaëtan Harter
7d0b922e98
buildsystem_sanity_check: script to save deps resolution variables
Add a script saving all applications and boards dependency resolution
variables and also aggregated files to compare between both dependencies
handling.

It is slow but should dump everything.
2019-10-07 14:47:34 +02:00
db96f31a54 tools/flake8: exclude suit_manifest_encoder_04 script
This script is copied as is from an external repository:
https://github.com/ARMmbed/suit-manifest-generator/blob/ex-gen-moran-suit-manifest-04/example-generator-moran-suit-manifest-04/make-examples.py
2019-10-04 15:45:22 +02:00
7f6862c2d3 suit: add SUIT draft v4 manifest tools
This commit adds support tools used by the SUIT firmware upgrade module.

Co-authored-by: Alexandre Abadie <alexandre.abadie@inria.fr>
Co-authored-by: Koen Zandberg <koen@bergzand.net>
Co-authored-by: Francisco Molina <femolina@uc.cl>
2019-10-04 15:45:22 +02:00
0935a5ff20
dist/tools: use external setsid tool for OSX 2019-10-03 12:43:41 +02:00
benpicco
29de470281
Merge pull request #12337 from cladmi/pr/make/cpu/makefile_features/static_test
dist/buildsystem_sanity_check: add check for CPU/CPU_MODEL migration
2019-10-01 20:00:32 +02:00
Gaëtan Harter
cbfab679d3
dist/buildsystem_sanity_check: add check for CPU/CPU_MODEL definition
CPU and CPU_MODEL variables must now be defined by
`boards/**/Makefile.features` or 'cpu/CPU/Makefile.features' files
instead of `**/Makefile.include.

Currently blacklist the slwstk6000b that still define
'CPU_MODEL' in a file that is not a 'Makefile.features.
This allows getting this sanity check script in master

This allow using the variables when parsing dependencies.
2019-10-01 16:02:03 +02:00
Gaëtan Harter
7064f7e0ab
dist/buildsystem_sanity_check: add check for included CPU Makefiles
CPU Makefile.include/Makefile.features/Makefile.dep must not be
included by the board directly anymore.
2019-10-01 15:57:42 +02:00
Gaëtan Harter
c75d5120b4
testrunner: use 'cleanterm' for testing
Use a clean terminal without added decoration on the output for testing.
2019-10-01 14:13:02 +02:00
Gaëtan Harter
a514c9bc12
jlink.sh: use PYTERMFLAGS
Use PYTERMFLAGS for configuring the terminal.
2019-10-01 14:13:02 +02:00
6acb523d35
list-ttys: Add punctuation between name and serial 2019-09-30 18:28:32 +02:00
68aae9c848
Merge pull request #12262 from cladmi/pr/cflags/fix_spaces_and_rebuild
makefiles: do not remove defines from CFLAGS
2019-09-28 09:42:56 +02:00
cladmi
e42b4cc75f
dist/tools/cmake: handle strings with \"
CMake quoted strings do not accept having \ or " inside. So use the
"bracket argument" format.
I migrated all variables to use this format.

Migrate to 'printf' to not rely on having \" inside the string everywhere.

This prepares for having macros defined in the CFLAGS again.
2019-09-27 19:28:32 +02:00
Benjamin Valentin
6a08a78d77 dist/tools/pyterm: drop loglevel from putput
The loglevel on pyterm is always INFO.
Drop it to remove clutter from the output.
2019-09-27 15:16:06 +02:00
Gaëtan Harter
d852ca2b21
pic32prog: add pic32prog programming tool
pic32prog is a program for flashing pic32 boards from command line on Linux.

It works with:
* Microchip PICkit2
* Microchip PICkit3 with script firmware.
* Other ones: https://github.com/sergev/pic32prog/wiki
2019-09-24 17:43:12 +02:00
2e9f443a5b
tools/buildsystem_check: add deprecated pattern for board ci whitelist 2019-09-16 19:02:54 +02:00
0ae86d7775
Merge pull request #12242 from smlng/tools_shebang
tools: fix shebang in scripts
2019-09-16 17:23:50 +02:00
Sebastian Meiling
9e870460fd tools: fix shebang in packer/setup.sh
Change shebang in script from `/bin/bash` to `/usr/bin/env bash`,
which fixed problems when `bash` is not available in standard location,
e.g., on non-Linux OSes such as FreeBSD.
2019-09-16 11:27:36 +02:00
Sebastian Meiling
364c831bf3 tools: fix shebang in openocd.sh
Change shebang in script from `/bin/bash` to `/usr/bin/env bash`,
which fixed problems when `bash` is not available in standard location,
e.g., on non-Linux OSes such as FreeBSD.
2019-09-16 11:27:33 +02:00
Sebastian Meiling
277fbd8386 tools: fix shebang in has_minimal_version.sh
Change shebang in script from `/bin/bash` to `/usr/bin/env bash`,
which fixed problems when `bash` is not available in standard location,
e.g., on non-Linux OSes such as FreeBSD.
2019-09-16 11:27:15 +02:00
Sebastian Meiling
079b2246bd tools: fix shebang for static-test.sh
Change shebang in static-test.sh from `/bin/bash` to `/usr/bin/env bash`
This fixes problems when `bash` is not available in standard location,
but e.g. in `/usr/local/bin/` as on FreeBSD.
2019-09-16 10:23:11 +02:00
Gaëtan Harter
23d743926c
dist/tools/buildsystem_sanity_check: check no PORT exports
Add sanity check for removed exports.
2019-09-12 14:44:00 +02:00
Francisco
2d890db6af
Merge pull request #10440 from jcarrano/no-export-ports
makefiles: remove exports so that PORT is not evaluated if it's not needed.
2019-09-12 13:50:24 +02:00
Francisco Molina
f718cc581a
dist/tools/pyocd: add PYOCD_ADAPTER_INIT
- Pass parameters before flash, debug, reset
2019-09-12 08:13:28 +02:00
abd1cd51b7
Merge pull request #12120 from cladmi/pr/pyterm/configurable_repeat_command_on_empty_line
pyterm: configuring repeating command on empty line
2019-09-10 09:41:05 +02:00
9ea3b2e04f
dist/tools/pyterm: fix handling of reset ANSI escape code 2019-09-09 20:27:16 +02:00
9065f8358c
tools/openocd: correctly check reset_config variable value
This avoids the following warning message when running OpenOCD: 'openocd.sh: line 124: [: : integer expression expected'
2019-09-03 12:44:09 +02:00
Francisco Molina
900875c603 dist/tools/openocd: add OPENOCD_EXTRA_INIT_RESET
- Add a variable to add extra openocd commands before resetting
  a board. These will not be called when `debug`, in contrast
  to OPENOCD_CONFIG, OPENOCD_EXTRA_INIT and OPENOCD_ADAPTER_INIT.
- Add connect_assert_srst to reset config if
  OPENOCD_RESET_USE_CONNECT_ASSERT_SRST=1
2019-09-02 14:53:51 +02:00
Gaëtan Harter
0fc38c58e8
pyterm: configuring repeating command on empty line
Allow configuring that it sends an empty newline when it receives a newline.
2019-08-29 15:15:57 +02:00
Gaëtan Harter
34f69245c3
makefiles: do not locally export compilation variables
These are already exported by `makefiles/vars.inc.mk`.
It is a prerequisite to allow handling compilation without global exports.
2019-08-29 10:35:36 +02:00
Sebastian Meiling
8e08748c60
Merge pull request #7654 from cladmi/pr/arduino_sketches.cpp
arduino/sketches: build sketches as a module
2019-08-21 15:22:45 +02:00
Gaëtan Harter
be30f072e2
sys/arduino/sketches: build sketches as a module
Generate a module for arduino sketches in a subfolder of BINDIR.
This prevents issues when doing concurrent builds or out of tree build with
readonly sources.

Declare all generated files as `BUILDDEPS` to be re-created after
`clean` on parrallel `clean all`.
2019-08-21 11:57:41 +02:00
Juan I Carrano
d2970332fc
Merge pull request #12009 from cladmi/pr/application/board_equal/bug
dist/tools/build_system_sanity_check: check BOARD set as ?=
2019-08-20 16:52:21 +02:00
Gaëtan Harter
e5e9d81cce
testrunner/utils: add helper for test_utils_interactive_sync
Add helper to do the synchronisation.
2019-08-15 12:26:28 +02:00
Gaëtan Harter
74fbf41517
dist/tools/build_system_sanity_check: check BOARD set as ?=
Applications Makefile must not set 'BOARD =' unconditionally but
'BOARD ?='
2019-08-14 17:23:18 +02:00
Sebastian Meiling
950b83e63e
Merge pull request #10252 from jcarrano/flake8-report-existence
tools/ci: correcly report flake8 version.
2019-08-14 11:11:50 +02:00
Martine Lenders
2f8234acb1
Merge pull request #11813 from aabadie/pr/tools/doccheck_detect_duplicate_defgroup
tools/doccheck: extend script to also check for Doxygen groups defined multiple times
2019-08-08 19:57:27 +02:00
Kees Bakker
c1d3128be3 dist/tools: add Coccinelle check for ARRAYSIZE
This Coccinelle script will warn when new code has the potential to use
the macro ARRAYSIZE instead of something like this
     sizeof(some_array) / sizeof(some_array[0])
2019-08-07 21:55:41 +02:00
5837075150
tools/doccheck: optimize display of undefined groups
The printed variable is not computed if no undefined group is found
2019-08-07 10:33:03 +02:00
1876619bf9
tools/doccheck: add check for multiple group definition 2019-08-07 10:33:03 +02:00
Gaëtan Harter
25890c814a
compile_and_test_for_board: add --with-test-only
Add an option to only compile applications that have available test.

The target usage is when running hardware tests to save time by only
compiling what will be tested.
2019-08-02 14:35:05 +02:00
Gaëtan Harter
821c42f5b2
compile_and_test_for_board: add logger info for 'has_test'
Add a logger info printing if the application has a test.
2019-08-02 13:24:52 +02:00
Kevin "Bear Puncher" Weiss
f932999df4
Merge pull request #11853 from sanjuprakashk/testrunner-timeout
dist/pythonlibs/testrunner: dynamic changing of test timeout
2019-07-18 11:57:31 +02:00
Gaëtan Harter
5ed65989ed
dist/jlink.sh: Allow overwriting the 'reset' commands
Add a variable to configure the reset commands.
This is required for board that need a hardware reset.
2019-07-17 15:29:51 +02:00
sanjuprakashk
d30bd7ae47 dist/pythinlibs/testrunner: dynamic changing of test timeout
Few flashers require a longer time to flash code and reset the device and
requires the test script to wait for a longer time before timing out.
This commit adds a environment variable "RIOT_TEST_TIMEOUT"  that can be
set by the user to vary the timeout in accordance to the requirements
of the system

on-behalf-of: @sparkmeter <sanju.kannioth@sparkmeter.io>
2019-07-17 06:25:28 -07:00
21e796d6f9
Merge pull request #11841 from kaspar030/bump_git_cache
dist/tools/git/git-cache: bump version
2019-07-17 13:21:59 +02:00
b33a196e78 dist/tools/git/git-cache: bump version
Upstream contains important fixes:

- improve tag handling
- improve concurrent use
- clean up temporary tags
2019-07-17 12:04:37 +02:00
f74e5e754a dist/tools/ethos: add setup_network.sh script 2019-07-15 12:33:11 +02:00
Juan I Carrano
6349d91277
Merge pull request #11695 from cladmi/pr/buildsystem_sanity_check/bug/never_returns_error
dist/tools/build_system_sanity_check: BUG fix errors being ignored
2019-06-26 11:58:11 +02:00
f1ffa10c7e dist/tools/ethos: adapt README.md to USEMODULE+=stdio_ethos 2019-06-24 09:56:30 +02:00
a66c7cf6e7
tools/nrf52_resetpin_cfg: add stdin dependency 2019-06-20 16:01:45 +02:00
Gaëtan Harter
e4b82be564
dist/tools/build_system_sanity_check: BUG error_on_input always fail
The function was always failing but was hidden by the previous bug too.
2019-06-14 12:24:31 +02:00
Gaëtan Harter
7d65a715ca
dist/tools/build_system_sanity_check: deprecate FEATURES_MCU_GROUP
Add a function to list deprecated variables or patterns and use it for
* FEATURES_MCU_GROUP
2019-06-14 11:34:00 +02:00
Gaëtan Harter
b744ba7f9e
dist/tools/build_system_sanity_check: BUG fix errors being ignored
On error messages the exit code was still 0 due to the typo.
Having error messages again properly return with an exit code of 1.
2019-06-14 10:58:28 +02:00
be1551c180 Revert "REMOVE ME TEST COMMIT"
This reverts commit c7b16bb4b4.
2019-06-14 10:04:33 +02:00
Gaëtan Harter
c7b16bb4b4
REMOVE ME TEST COMMIT 2019-06-13 16:04:04 +02:00
Gaëtan Harter
f37a586183
dist/tools/build_system_sanity_check: add reasons for each error type
Prepend the reason for the matched error pattern.
It will only add the reason if there is an error.
2019-06-13 16:04:04 +02:00
Gaëtan Harter
534ccaf5ee
dist/tools/build_system_sanity_check: handle error by prepending
Handle putting the final error message by prepending the output.
This removes issue with errors being concatenated and gives an
interractive output.

The errors are now send to stderr.
2019-06-13 16:03:51 +02:00
Gaëtan Harter
ef24df7ac0
dist/tools/build_system_sanity_check: add script helper functions
Add helper functions to better handle output and errors.
2019-06-13 16:01:45 +02:00
Leandro Lanzieri
4f3bc12daa dist/tools/edbg: Escape variable values 2019-06-06 14:45:35 +02:00
Juan Carrano
7f1357b721 tools/usb-serial: do not advise people to export PORT.
The example in the tool documentation contains several things that are
wrong:

- exports PORT.
- Defines the port using :=.
- Defines PORT instead of PORT_LINUX, PORT_DARWIN
- ifeq-based logic (which will force an evaluation).

I have not tested the new example script.
2019-06-03 16:31:31 +02:00
Gaëtan Harter
6c529458f1
dist/tools/buildsystem_sanity_check/: check no PORT_ exports
Add sanity check for removed exports.
2019-06-03 16:24:48 +02:00
06013cf443
tools/buildsystem_sanity_check: blacklist PROGRAMMER_SERIAL variable 2019-06-03 10:32:09 +02:00
4b4b5106c9
tools/buildsystem_sanity_check: blacklist new variables
DEBUG_ADAPTER, DEBUG_ADAPTER_ID, STLINK_VERSION are now blacklisted from exported variables
2019-06-03 10:32:08 +02:00
Leandro Lanzieri
79c095ef46 tools/jlink: Exit terminal on Ctrl+C 2019-05-29 09:18:52 +02:00
Leandro Lanzieri
07131b4e4d tools/jlink: Wait for server before pyterm 2019-05-29 09:16:05 +02:00
Gaëtan Harter
d486598fdf
dist/tools/buildsystem_sanity_check: check no PREFLASH* exports
Add sanity check for removed exports.
2019-05-28 09:58:40 +02:00
Gaëtan Harter
ea51cf3174
dist/tools/buildsystem_sanity_check: check no DEBUG* exports
Add sanity check for removed exports.
2019-05-28 09:58:40 +02:00
Gaëtan Harter
734410b9cd
dist/tools/buildsystem_sanity_check: check no RESET/RESET_FLAGS exports
Add sanity check for removed exports.
2019-05-28 09:56:14 +02:00
Gaëtan Harter
95c07c507c
dist/tools/buildsystem_sanity_check: check no FLASHER/FFLAGS exports
Add sanity check for removed exports.
2019-05-28 09:56:14 +02:00
Gaëtan Harter
04e76f323d
dist/tools/buildsystem_sanity_check: handle vars exported in vars.inc.mk
Handle differently variables that are exported in `vars.inc.mk` from the
ones that should not.

This is needed for the upcoming variables change that should also be
removed from `vars.inc.mk` right now.

Keeping the old behavior will help migrating other variables more easily
by keeping them only exported in vars.inc.mk in the first time.
2019-05-28 09:53:40 +02:00
Martine Lenders
0f3ccb2a33
Merge pull request #11227 from maribu/leonardo
boards: Add support for the Arduino-Leonardo
2019-05-24 18:24:21 +02:00
3d6434125e
dist/tools/ci: update print version script in build_and_test.sh 2019-05-24 17:14:06 +02:00
Thomas Perrot
b63121c588
board: add support for arduino-leonardo 2019-05-24 15:12:47 +02:00
Francisco
00c652c8b0
Merge pull request #11223 from cladmi/pr/openocd/flashbin/probe
tools/openocd.sh: try to probe the board for real flash address
2019-05-17 10:28:58 -07:00
Gaëtan Harter
468e4084f2
tools/openocd.sh: probe the board for real flash address on binary flash
Some boards have a configuration of the flash bank with an address of 0
when it actually starts as 0x08000000 but openocd relies on probing
the hardware at runtime.

This now allows to first probe the board to get the actual value.
If probing fail for any reason, return the value from the configuration.
This can happen when the board is unreachable so at least give a valid
output instead of an error.

This will allow correct flash detection on for example the `stm32f3` and
`stm32l4` which have a configured address of 0.

4a6f93c961/tcl/target/stm32f3x.cfg (L64)
4a6f93c961/tcl/target/stm32l4x.cfg (L51)
2019-05-17 18:28:27 +02:00
9363a515a5 tools/pr_check: make sure no pkg makefile defines PKG_SOURCE_LOCAL
The variable is supposed to be used for local development only.
2019-05-16 11:31:32 +02:00
Gaëtan Harter
5bb49b673c
Merge pull request #11517 from cladmi/pr/compile_and_test_for_board/do_not_check_git
tools/compile_and_test_for_board: ignore git tracked or not
2019-05-13 19:43:02 +02:00
Gaëtan Harter
89e5c67f28
tools/compile_and_test_for_board: ignore git tracked or not
Remove the check that directory are git tracked or not.
This should not be done by the script and was a mistake.

If need be to be checked it should be moved to RIOT 'info-applications'
and running tests should be done in a clean environment anyway.
2019-05-13 16:38:41 +02:00
Gaëtan Harter
16f07e571e
tools/compile_and_test_for_board: assert resultdir is valid
Currently giving an absolute or outside of RIOT application breaks the
result directory evaluation which can lead to deleting the application.

Add an assertion to detect it.
2019-05-13 15:47:44 +02:00
Gaëtan Harter
db3847f107
tools/compile_and_test_for_board: add is_in_directory function
Add function testing if a path is inside a directory.
2019-05-13 15:38:27 +02:00
Gaëtan Harter
42b3cd5903
dist/tools/buildsystem_sanity_check: add an export variable check
Check that some variables are not exported in the build system.
This should track variables that managed to not be exported anymore so
that they do not reappear in a BSP.

It is not a whitelist but just a way to keep things cleaned in the
future.
2019-05-06 13:36:46 +02:00
Martine Lenders
bb7936cf21 release-stats: simplify script usage 2019-04-30 16:06:59 +02:00
Martine Lenders
11da5e8e67
Merge pull request #11435 from miri64/dist/fix/backport-tracking
backport_pr: set tracking branch to remotely created branch
2019-04-24 16:37:08 +02:00
Martine Lenders
aef6110b40 backport_pr: set tracking branch to remotely created branch 2019-04-24 15:53:54 +02:00
Martine Lenders
22640396a5 backport_pr: get Head object from new_branch name after creation 2019-04-24 15:52:55 +02:00
Martine Lenders
e3a99c40f6 backport_pr: exclude 'Reviewed' labels from backport 2019-04-24 11:52:54 +02:00
Martine Lenders
292c5dd730 backport_pr: add doc tests for _get_labels() 2019-04-24 11:47:22 +02:00
Gaëtan Harter
a0ef287f82
Merge pull request #11409 from miri64/dist/enh/backport_pr_fixes
dist/tools/backport_pr: several improvements
2019-04-18 14:55:03 +02:00
Semjon Kerner
f72cb846da dist/tools/nrf52_resetpin: delete obsolete register 2019-04-17 15:32:48 +02:00
Martine Lenders
1930368fd5 backport_pr: exit early when backport branch already exists 2019-04-17 12:44:21 +02:00
Martine Lenders
a7459e7463 backport_pr: don't assume devel remote to be 'origin' 2019-04-17 12:42:02 +02:00
Martine Lenders
989e2c6303 backport_pr: add function to find remote by URL 2019-04-17 12:35:14 +02:00
Martine Lenders
a9767889fc backport_pr: make error branch handling more idempotent
Otherwise, when an error occurs (e.g. credentials wrong on git push)
the worktree and the release branch still exists, which might be hard to
remove for a newcomer not knowing about `git worktree`.
2019-04-17 12:11:53 +02:00
Benjamin Valentin
e12f1f2ff8 pyterm: add /sleep function
The init_cmd feature is quite handy for automated pyterm runs but there
is no delay between the commands that are executed.

This adds a /sleep function that can be added between init_cmd commands
to prevent them from overflowing the RX buffer on the target.
2019-04-11 00:09:58 +02:00
Sebastian Meiling
70c30947d0 tools/tunslip: correct typos and refine readme 2019-04-09 17:31:08 +02:00
Martine Lenders
b381c0b24d
Merge pull request #11303 from cladmi/pr/jlink/failonerror
jlink.sh: Exit with an error on failure for JLinkExe commands
2019-03-28 14:48:51 +01:00
Gaëtan Harter
a354b10964
jlink.sh: Exit with an error on failure for JLinkExe commands
On error Jlink exits with a no error code by default.

From the JLink User Guide:

'-ExitOnError' has the same meaning as the 'exitonerror' command

    'exitonerror' command
    This command toggles whether J-Link Commander exits on error or not.

    1: J-Link Commander will now exit on Error.
    0: J-Link Commander will no longer exit on Error.

Executing 'flash/reset' without a board connected now correctly returns an
error. For 'term' it does not show an error due to the way it is handled
internally.

It also returns an error when the board fails to do an operation when it
is in a state where it cannot be flashed for example.
2019-03-28 11:26:24 +01:00
Gaëtan Harter
87a1d08602
compile_and_test_for_board: use 'test/available' to detect test
Use the new 'test/available' target to detect if there are tests.
This prevents issues where calling make would print unrelated debug
messages that would be taken as an output.

The targets executed to check if there are tests can be set with
'--test-available-targets'.
2019-03-26 14:12:25 +01:00
e2a162b79d
tools/pyocd: add option for image offset 2019-03-24 16:48:45 +01:00
danpetry
80d4838b1a jlink: handle flashing at IMAGE_OFFSET
- Handling of flashing address is now similar to that in openocd,
  except FLASH_ADDR is not automatically determined
2019-03-20 16:07:51 +01:00
Martine Lenders
4ee4625f39
Merge pull request #10357 from jcarrano/posix_headers-module
sys/posix: make posix module provide only headers.
2019-03-20 14:07:12 +01:00
Juan Carrano
6b766c3cd3 sys/posix: make posix module provide only headers.
The build system contains several instances of
 INCLUDES += -I$(RIOTBASE)/sys/posix/include

This is bypassing the module management system, by directly accesing
headers without depending on a module. The module is the posix module.

That line is also added when one of the posix_* modules is requested.

According to the docs, the posix module provides headers only, but in
reality there is also inet.c.

This patch:

- Moves `inet.c` into `posix_inet`, leaving `posix` as a headers-only
  module.
- Rename `posix` as `posix_headers` to make it clear the module only
  includes headers.
- Makes `posix_*` modules depend on `posix_headers`, thus removing the
  explicit `INCLUDES+=...` in `sys/Makefile.include`.
- Ocurrences of `INCLUDES+=...` are replaced by an explicit dependency
  on `posix_headers`.
2019-03-20 12:57:13 +01:00
Dylan Laduranty
c99c0f61ab
Merge pull request #11156 from jcarrano/update-edbg
tools/edbg: Update to latest version.
2019-03-19 21:36:28 +01:00
Juan I Carrano
999ef3bc53
Merge pull request #10952 from cladmi/pr/bug/testrunner/matching_local_echo
[BUG] testrunner matching local echo
2019-03-13 15:46:39 +01:00
Juan I Carrano
b50ad9ed4c
Merge pull request #11040 from kaspar030/fix_hifive1_reset
boards/hifive1: fix hifive1 reset
2019-03-12 14:59:36 +01:00
3583b00750 dist/tools/openocd: make "reset run" command configurable
Co-Authored-By: jcarrano <juan@carrano.com.ar>
2019-03-12 11:49:02 +01:00
Juan Carrano
872f850e87 tools/edbg: Update to latest version.
The lastest version of edbg solves a double-reset issue that was
hindering testing (see #11125 and https://github.com/ataradov/edbg/issues/77)

It also adds support for SAMR34 and SAMR35, needed by @dylad for MCU
port.
2019-03-11 15:51:32 +01:00
da2f4747e8
Merge pull request #11079 from cladmi/pr/compile_and_test/bug/update_docstring
tools/compile_and_test_for_board: FIX outdated help docstring
2019-03-06 16:54:42 +01:00
Gaëtan Harter
a1d47cae21
tests/compile_and_test_for_board: remove duplicate 'default' in help
Default values are given by ArgumentDefaultsHelpFormatter so no need to
duplicate 'default' value in manually anymore.
2019-03-06 14:47:45 +01:00
Gaëtan Harter
731dcfc319
testrunner: disable local echo
When local echo is enabled, pexpect will also match on send lines to the
node. So could think a node is echoing when it is only seeing the sent
message.
The sent messages are still written to `logfile` but now only once.

This may show issues with our current tests implementation that expected
this behavior.
2019-03-04 13:26:53 +01:00
Gaëtan Harter
8c15d97629
tools/compile_and_test_for_board: add tests for help message
Verify that the help message matches what is in the docstring.
2019-02-28 13:45:40 +01:00
Gaëtan Harter
998211d738
tools/compile_and_test_for_board: add tests directory
Tests in `tests` will be used by 'tox'.
2019-02-28 13:45:40 +01:00
Gaëtan Harter
94aeb5a223
tools/compile_and_test_for_board: FIX outdated help docstring
Update the help message in the docstring.
It should reflect the content of `--help`.

I replaced the manual line wrapping by disabling the warning on the
docstring.
2019-02-28 13:45:40 +01:00
Martine Lenders
cfee6faf57
Merge pull request #10431 from miri64/dist/enh/testcase-testrunner-wrapper
dist/pythonlibs: provide unittest TestCase wrapper for testrunner
2019-02-26 19:55:24 +01:00
Gaëtan Harter
9af491d2f6
tools/backport_pr: add tox.ini
Adapt tox file from `compile_and_test_for_board.py`.

`tox` is still not working without errors but gives way to start
refactoring.
2019-02-12 15:34:15 +01:00
493cac27f3
dist/tools: Add script for backporting PR's
This script provides functionality to easily backport a merged pull request to
a release branch.

It relies of having a `github` API token stored in `~/.riotgithubtoken` by
default.

The script works by fetching information from the supplied **merged** pull
request. It then looks for the last release branch.
A temporary git `worktree` with a new branch is created based on this release
branch. All commits from the pull request are then cherry-picked into this
branch which is then pushed to `origin`.
It then creates a new pull request on `github` with a reference to the original
pull request. It optionally puts a comment under the original pull request to
the new backport pull request.

Co-authored-by: Gaëtan Harter <gaetan.harter@fu-berlin.de>
2019-02-12 15:34:12 +01:00
Gaëtan Harter
f89bf055b4
pyterm: use python3 by default
Python3 has been the default in our scripts for some time now, but pyterm still
requested python which uses python2 on ubuntu stable.

This pushes toward only needing to install `python3` python
dependencies.
2019-02-11 17:09:13 +01:00
Martine Lenders
4b5b5d910b dist/pythonlibs: provide unittest TestCase wrapper for testrunner
I had this idea when implementing #10382 and #10392 as I introduced a
very similar structure to python's standard unittests in those and it
could also reduce some code duplication between those two tests.
2019-01-29 21:16:39 +01:00
Martine Lenders
b2407e4583 dist/pythonlibs: expose functions to setup/teardown pexpect spawn
This allows for re-usability of those functions in other contexts.
2019-01-29 20:41:49 +01:00
MrKevinWeiss
957cc83cc6 doc: Update copywrites it include HAW 2019-01-28 09:08:50 +01:00
613e05fd42
tools/compile_test_one_board: update documentation README
Provide some notes on how to perform basic checks on the script using tox
2019-01-23 18:23:05 +01:00
148f715689
tools/compile_test_one_board: add tox.ini configuration file
tox.ini configures 3 checks on the python script: doctest (via pytest), pylint and flake8
2019-01-23 18:23:04 +01:00
26a64694dd
tools/compile_test_one_board: rename TestError exception class
Otherwise it conflicts with pytest automatic parsing which tries to execute all classes with name beginning with Test
2019-01-23 16:25:31 +01:00
a4ad366a81
Merge pull request #10818 from cladmi/pr/compile_and_test_board
dist/tools/compile_and_test_for_board: add compile and test script
2019-01-22 08:56:31 +01:00
cladmi
921afa0820
testrunner: fix script when RIOTBASE is not defined
If not defined it was raising a KeyError. Use the 'get' function to
handle non defined value.

It did not put the value in the `default` case as it would have changed
the behavior when `RIOTBASE` is defined but empty.
2019-01-21 12:19:34 +01:00
Gaëtan Harter
204a4bae7f
dist/tools/compile_and_test_for_board: add some TODO
The script was migrated as is from Release-Specs but could benefit from
adaptation as it is run from RIOT.
2019-01-18 16:08:55 +01:00
Gaëtan Harter
ae76d7f364
dist/tools/compile_and_test_for_board: add compile and test script
Move the compile and test script from Release-Specs.
https://github.com/RIOT-OS/Release-Specs/blob/271dc8/02-tests/compile_and_test_for_board.py

By default it should be run as

    ./compile_and_test_for_board.py path_to_riot_directory board_name [results]

The script is migrated as-is so has not been changed to automatically use the
current repository.
2019-01-18 16:08:31 +01:00
Juan Carrano
2209435214 tools/ci: correcly report flake8 version.
If the flake8 executable is not found, the static test script reports
the tool as missing. It may happen that the flake8 module is installed,
but the console entry point is not.

In the flake8 shell script, flake is invoked via `python -m`. The result
is a confusing error message where static-test reports the tools as missing,
yet the flake8 tests are run.

This patch makes the toolchain version script use the same command as the
flake8 script.
2019-01-15 20:10:29 +01:00
Juan Carrano
9926ac1ffa ci/print_toolchain_versions: robust/portable version detection.
Detect command line tool versions without using "command".
Command may be a builting in some shells, leading to unportability.

The new version uses the status code to correctly detect a non-existent
command. This allows it to differentiate between error in the tool and
not-found errors.

It also works with compound commands, for example `python -m callable_module".
2019-01-15 20:02:01 +01:00
Martine Lenders
4887b22ef5 print_toolchain_versions.sh: add xtensa newlibs 2018-12-29 15:26:36 +01:00
Martine Lenders
745574266c print_toolchain_versions.sh: add xtensa toolchains 2018-12-29 14:28:08 +01:00
Martine Lenders
7bdbd163c9 print_toolchain_versions.sh: make lists easily diff-able 2018-12-29 14:27:35 +01:00
f5170bb82c dist/tools/pyocd: provide support for PyOCD programmer 2018-12-21 14:56:26 +01:00
Francisco Acosta
a638f31bce dist/tools: add genhdr tool to generate RIOT image headers
In order to use the RIOT bootloader (riotboot) a header needs to
be created and placed before the firmware. This tool generates
such a header with the expected information by the bootloader.

Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
2018-12-18 19:31:34 +01:00
0cb75c5f10 testbed-support: add nrf51dk to supported archis 2018-12-12 15:36:56 +01:00
Dylan Laduranty
f01bc4dc1d dist/tools/edbg: update to lastest version
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2018-12-07 10:49:38 +01:00
Gaëtan Harter
a0b97ad737
openocd: get flash and debug files from cli
Get FLASH_FILE and ELFFILE from command line instead of environment variable.

The documentation was claiming ELFFILE was given as a command line argument
already, but is was not.
2018-12-05 16:21:03 +01:00
Martine Lenders
37a11e9802 dist/testbed-support: add firefly in IoT-LAB archis 2018-12-04 14:54:26 +01:00
963d06c7de
Merge pull request #10528 from cladmi/pr/make/jlink/flashfile_from_cli
jlink: get flash and debug files from cli
2018-12-03 13:44:39 +01:00
Juan I Carrano
f4e810cfff
Merge pull request #9819 from jcarrano/doccheck-report-total-failure
tools/doccheck: Detect when `make doc` fails to run.
2018-11-29 18:37:15 +01:00
Martine Lenders
2a2ef9bbdf
Merge pull request #10481 from aabadie/pr/tools/pyterm_exception
tools/pyterm: catch serial.Exception when serial port is busy
2018-11-27 17:59:26 +01:00
Gaëtan Harter
adbc214298
Merge pull request #10457 from aabadie/pr/testbed-support/iotlab-phynode
dist/testbed-support: add pba-d-01-kw2x in iotlab archis
2018-11-27 17:34:19 +01:00
98413e43af tools/pyterm: catch serial.Exception when port is busy
This can happen when opening a terminal right after flashing a board that has just been plugged
2018-11-27 17:30:45 +01:00
cladmi
5fcc1210d9
jlink: get flash and debug files from cli
Get BINFILE and ELFFILE from command line instead of environment variable.

Rename 'HEXFILE' to 'BINFILE' in the script as the binary file is used.
The documentation was already talking about 'BINFILE' but 'BINFILE'
was never exported by the build system and it was using 'HEXFILE' in the
implementation.
2018-11-27 15:28:49 +01:00
Juan I Carrano
d3e9eec8fe
Merge pull request #10060 from cladmi/pr/tests/build_system_checks
static_tests: add build system checks
2018-11-27 15:20:45 +01:00
Juan Carrano
ae4cecd14c tools/doccheck: Detect when make doc fails to run.
The previous doccheck would give a false negative when doxygen does
not even run (for example, because of misconfiguration).

Also, when doxygen fails to run, print the full output.
2018-11-22 16:51:07 +01:00
a640957e31 dist/testbed-support: add pba-d-01-kw2x in iotlab archis 2018-11-22 16:38:33 +01:00
17c7ad89a9 dist/testbed-support: add frdm-kw41z in iotlab archis 2018-11-22 10:56:50 +01:00
99fa0e9cf8 dist/tools/tested-support: update samr30 archi mapping
The archi was changed in IoT-LAB: samr30:at86rf215 => samr30:at86rf212b
2018-11-20 21:39:12 +01:00
cladmi
bcf0342cbd
static-test: add buildsystem sanity check 2018-11-19 16:00:46 +01:00
cladmi
143e393fcd
dist/tools: add build system sanity check script
Add a script to execute sanity checks on build system files.
It should prevent bad patterns to re-appear after being cleaned.

Currently adds a check for using the content of `FEATURES` instead of
`USEMODULE`.

Modules should not check the content of FEATURES_PROVIDED/_REQUIRED/OPTIONAL
Handling specific behaviors/dependencies should by checking the content of:
 * `USEMODULE`
 * maybe `FEATURES_USED` if it is not a module (== not a periph_)
2018-11-16 16:40:23 +01:00
Joakim Nohlgård
3deea7dfbf print_toolchain_versions.sh: Add make command version 2018-11-12 14:06:29 +01:00
cladmi
a7779e24c5
openocd.sh: handle 'newline' on osx
https://stackoverflow.com/a/24276470

    In replacement strings used with the s command, assume that NO
    control-character escape sequences are supported (ex '\n')

Replace with an escaped newline character. Current form works in 'bash'.
2018-10-30 19:44:37 +01:00
cladmi
6f02568c84
openocd.sh: split 'sed' commands on different lines
https://stackoverflow.com/a/24276470

    Labels and branching commands (e.g., b) must be followed by an actual
    newline or continuation via a separate -e option.
2018-10-30 19:44:37 +01:00
cladmi
291a80c664
openocd.sh: refactor splitting banks in a separate function
Prepare for other refactoring.
2018-10-30 19:44:37 +01:00
a3f2d20169 dist/testbed-support: add new iotlab archi
nrf52840dk and microbit
2018-10-28 18:57:17 +01:00
Gaëtan Harter
8179038a8c
makefile.iotlab.single.inc.mk: add new IoT-LAB supported nodes
Support for `nrf52dk` and `samr30-xpro` has been added on saclay site.
2018-10-24 15:43:59 +02:00
Gaëtan Harter
599bc2afd2
makefile.iotlab.single.inc.mk: sort IOTLAB_ARCH_ variables definition
Define them in alphabetical order instead on putting the 'iotlab'
specific nodes at first. Prepare for adding new architectures.
2018-10-24 15:12:00 +02:00
Kevin "Bear Puncher" Weiss
7187bbf8cf
Merge pull request #9426 from gschorcht/esp32
ESP32 port
2018-10-16 15:24:25 +02:00
Martine Lenders
a73c499b67
Merge pull request #10117 from miri64/tools/enh/pr-check-label-rename
tools/pr_check: adapt for label categorization
2018-10-12 20:17:57 +02:00
Kevin "Bear Puncher" Weiss
0719442ddc
Merge pull request #10072 from haukepetersen/fix_nrf52xxxdk_resetpin
boards/nrf52xxxdk: make reset pin work
2018-10-12 09:36:30 +02:00