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

1458 Commits

Author SHA1 Message Date
e785d43003
ci/build_system_check: fix typo in function name 2020-06-25 10:15:23 +02:00
Francisco
a665fcc542
Merge pull request #14123 from jue89/fix/ztimer_pseudomodules
ztimer: relocate PSEUDOMODULES definitions
2020-06-24 22:56:07 +02:00
c36109516a
dist/buildsystem_check: ensure no export of toolchains vars 2020-06-24 11:01:01 +02:00
d69036f08d
dist/tools/git-cache: don't export GIT_CACHE_DIR in script 2020-06-23 14:54:25 +02:00
1084d6593f
dist/buildsystem_check: ensure no export of GITCACHE/GIT_CACHE_DIR 2020-06-23 14:54:25 +02:00
d0f966734a
dist/tools: remove unneccessary redefinition of GITCACHE 2020-06-23 14:54:25 +02:00
Leandro Lanzieri
d90140e121
Merge pull request #13221 from miri64/tools/feat/pktbuf-parser
dist/tools: provide tool to parse `pktbuf` output
2020-06-23 13:50:36 +02:00
Martine S. Lenders
697f16eab7
dist/tools: provide tool to parse pktbuf output 2020-06-23 11:12:33 +02:00
3332f7d643
dist/tools/flatc: configure cmake for out-of-source build 2020-06-19 14:23:49 +02:00
Francisco
315b97939f
Merge pull request #14246 from leandrolanzieri/pr/cpu_arch_to_cpu_core
cpu: Rename CPU_ARCH to CPU_CORE
2020-06-16 13:48:08 +02:00
Leandro Lanzieri
4d65bc8e0a
cpu: Rename CPU_ARCH to CPU_CORE 2020-06-16 12:05:40 +02:00
be5db69ea9
dist/tools/mosquitto_rsmb: fix stand-alone build 2020-06-15 09:53:46 +02:00
1ed0d659ed
Merge pull request #13320 from bergzand/pr/stdio/semihosting
stdio_semihosting: Initial include of Semihosting-based STDIO
2020-06-09 16:52:44 +02:00
aff18b9599
tools/openocd: add OPENOCD_DBG_EXTRA_CMD 2020-06-09 10:14:57 +02:00
Leandro Lanzieri
5ba7ef6d6f
dist/tools/kconfiglib: Add remove command to delete files
The 'remove' target removes the downloaded files from the tool.
2020-06-04 15:31:40 +02:00
0e1e0a5b6a dist/tools/flatc: compile with ccache (if CCACHE is set) 2020-06-02 21:42:27 +02:00
Leandro Lanzieri
1783a56767
buildsystem_check: Add check for features provided
This checks that providing features for boards and CPUs is only being
done in Makefile.features.
2020-05-29 11:07:09 +02:00
Juergen Fitschen
0a4beec345 buildsystem_sanity_check: don't touch PSEUDOMODULES in Makefile.dep 2020-05-23 16:35:05 +02:00
eb9bf4b601 dist/tools/uncrustify: add ztimer files to whitelist 2020-05-07 14:59:13 +02:00
87b0c1d909 dist/tools/uncrustify: temporarily disable error on check failure 2020-05-07 13:57:09 +02:00
fda6ef6ac6 dist/tools/uncrustify/uncrustify.sh: fix uncrustify check logic
Previously, uncrustify.sh would fail (report uncrustifying necessary) if
there was any output of uncrustify. Turns out uncrustify sometimes
outputs something.

This commit changes the logic to use uncrustify's output value as
indicator.

Also, adds printing which file causes the check to fail.
2020-04-29 09:51:36 +02:00
e531bdbcec
Merge pull request #8519 from jia200x/uncrustify
uncrustify: add auto uncrustify with blacklist
2020-04-29 09:16:27 +02:00
Leandro Lanzieri
fe09fd3502
Merge pull request #13891 from miri64/testrunner/fix/SIGKILL-last-resort
testrunner: use SIGKILL only as last resort
2020-04-28 20:15:00 +02:00
Martine S. Lenders
aee9f09386
testrunner: use SIGKILL only as last resort
When the child has a clean-up step (closing files, killing
sub-processes, deleting operational files, etc.), this currently is not
executed by the test, as the `testrunner` just does a hard `SIGKILL`
for the child's PPID. This change makes this a `SIGTERM` and only uses
`SIGKILL` if there are still processes lingering a second after the
`SIGTERM`.
2020-04-28 19:42:07 +02:00
Jose Alamos
bb7c7a7496 uncrustify: add core to whitelist 2020-04-28 12:35:26 +02:00
Jose Alamos
bf1e2431ac ci/static_tests: call uncrustify check 2020-04-28 12:35:25 +02:00
Jose Alamos
9f1b2f2550 uncrustify: add CI check
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
2020-04-28 12:35:25 +02:00
Leandro Lanzieri
8023aa3d47
dist/tools/kconfiglib: Add riot_kconfig to override default behaviours
This also patches menuconfig.py to use the new class. For now it
implements a version of _parse_help which removes Doxygen markers.
2020-04-27 12:29:40 +02:00
Martine Lenders
55a7010a0a
Merge pull request #13157 from nmeum/pr/fuzzing_tcp_only
Add AFL-based fuzzing setup for network modules
2020-04-18 10:54:14 +02:00
Sören Tempel
24468bead6 fuzzing: Initialize
This adds a new subdirectory called `fuzzing/` which will contain
applications for fuzzing various RIOT network modules in the future.
This subdirectory is heavily inspired by the `examples/` subdirectory.

The fuzzing applications use AFL as a fuzzer. Each application contains
Makefiles, source code, and an input corpus used by AFL to generate
input for fuzzing.
2020-04-17 17:11:15 +02:00
Benjamin Valentin
0943f867db dist/tools: add sliptty to host-tools 2020-04-16 23:59:31 +02:00
benpicco
ecd266f3d3
Merge pull request #13801 from miri64/tools/fix/start_network-interface-init
dist/tools/*/start_network.sh: ensure TUN/TAP interface
2020-04-08 12:51:03 +02:00
1aa6ce901e
dist/tools: add bossa version for nrf52 2020-04-08 09:58:21 +02:00
Benjamin Valentin
079aea8775 sliptty/start_network.sh: fix with DHCPv6
The `start_network.sh` script creates a `${TUN}` interface, so
the `${TAP}` variable will always be empty.

This means start_dhcpd() will always fail as the DHCPv6 script is lacking
an interface.
2020-04-07 21:15:07 +02:00
Benjamin Valentin
0e4fa19bda sliptty/start_network.sh: don't default to DHCPv6
DHCPv6 is enabled by the `-d` option.
It should not be enabled in absence of this option.
2020-04-07 20:12:53 +02:00
Leandro Lanzieri
d60295db3c
Merge pull request #13720 from aabadie/pr/native_no_export
native: only export NATIVEINCLUDES in vars.inc.mk
2020-04-07 12:55:45 +02:00
010aca2638
Merge pull request #13719 from aabadie/pr/boards/flash_export_remove
boards*: remove remaining uses of export with some openocd related variables
2020-04-07 11:58:28 +02:00
benpicco
f6eacda9f8
Merge pull request #13609 from miri64/dhcpv6-pd_ia/feat/initial
dhcpv6-pd_ia: initial import of a DHCPv6 server bootstrapper
2020-04-03 20:40:38 +02:00
Martine S. Lenders
0c51285b9b
dist/tools: provide DHCPv6 server support for network setup scripts 2020-04-03 17:47:39 +02:00
Martine S. Lenders
e6510cb89e
dhcpv6-pd_ia: initial import of a DHCPv6 server bootstrapper 2020-04-03 17:32:51 +02:00
Leandro Lanzieri
98fd746656
dist/testrunner: Capture number of unittests that passed 2020-04-03 14:52:48 +02:00
Martine S. Lenders
d726af2cac
dist/tools/*/start_network.sh: ensure TUN/TAP interface
Previously, when the creation of the TUN/TAP interface failed in one of
the `start_network.sh` scripts, the script will fail with a cryptic
error like

> dist/tools/ethos/start_network.sh: 68: [: -eq: unexpected operator

This fix ensures, that the value of this variable checked is always set
such that in the error case, `ethos`/`sliptty` won't start.
2020-04-03 13:39:09 +02:00
Martine S. Lenders
e731397bae
dist/tools/tapsetup: fix deletion when UPLINK unset 2020-03-31 18:58:55 +02:00
Jose Alamos
e451570219 gnrc_netif: remove GNRC_NETIF_NUMOF macro 2020-03-26 11:12:23 +01:00
27811518a0
ci/buildsystem: ensure NATIVEINCLUDES is only exported in vars 2020-03-26 10:26:14 +01:00
405c0cfef5
makefiles/openocd: export OPENOCD_CMD_RESET_RUN only when required 2020-03-26 10:00:37 +01:00
0e86aae445
ci/buildsystem: ensure PRE_FLASH_CHECK_SCRIPT is not exported 2020-03-26 09:37:41 +01:00
08adbb283c
ci/buildsystem: ensure OPENOCD_PRE_FLASH_CMDS is not exported 2020-03-26 09:31:22 +01:00
4aa351c746
ci/buildsystem: ensure OPENOCD_PRE_VERIFY_CMDS is not exported 2020-03-26 09:31:21 +01:00
39ea73d48d
dist/testbed-support: use BINFILE for flashing on iotlab
This is a new feature in cli-tools v3 and is supported by all boards except wsn430 and firefly
2020-03-24 13:25:25 +01:00
Martine Lenders
522de7df5a
Merge pull request #13689 from benpicco/ethos_fix
dist/tools/ethos: fix typo for compiling baud rate 230400
2020-03-23 16:40:03 +01:00
Thomas Stilwell
41ffaed583 dist/tools/ethos: fix typo for compiling baud rate 230400 2020-03-23 16:01:00 +01:00
d18b77f6e5
dist/testbed-support: fix firefly board mapping 2020-03-23 10:21:54 +01:00
7d0c475113
Merge pull request #13486 from bergzand/pr/suit/ietf_v3
SUIT: Update to draft-ietf-v3
2020-03-20 14:44:29 +01:00
Benjamin Valentin
ac3e996252 tapsetup: provide --uplink option
Add an --uplink option to tapsetup to bridge the tap-network with an
IPv6 enabled uplink interface, providing IPv6-WAN connectivity to native.
2020-03-20 14:12:43 +01:00
829f5920f0
flake8: move exception from SUITv4 to SUITv3
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
2020-03-19 22:56:01 +01:00
fb643b348b
dist/testrunner: add common function to check unittests 2020-03-19 10:39:33 +01:00
009a317b14
dist/tools/suit_v3: Add ietf-v3 manifest generator
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
2020-03-18 14:13:12 +01:00
Francisco
efb113696d
Merge pull request #12304 from aabadie/pr/boards/arduino-mkr_stdio
boards/arduino-mkr: feather-m0: sodaq-*: provide stdio over USB and setup automatic flash with bossa
2020-03-18 11:24:17 +01:00
8814e60fd4
Merge pull request #10482 from miri64/pyterm/enh/try-reconnect-on-error
pyterm: try to reconnect on SerialException during connect
2020-03-18 11:23:22 +01:00
a91c4bf7e6
dist/testrunner: add optional delay before opening serial
This option is null by default but is useful when used with boards exposing their stdio over USB
2020-03-18 10:53:17 +01:00
Francisco Molina
a31003a23c
tests: add interactive_sync adapted to shell 2020-03-17 17:23:27 +01:00
Martine Lenders
34788abedf
Merge pull request #13618 from janosbrodbeck/pr/sliptty_shift_fix
sliptty/start_network.sh: fix if no argument is given
2020-03-11 19:07:27 +01:00
János Brodbeck
4cf4ac124f
sliptty/start_network.sh: fix if no argument is given
fix for 'shift: can't shift that many'
2020-03-11 16:47:00 +01:00
1e8037670b
Merge pull request #10420 from gschorcht/drivers_apds99xx
drivers: add driver for APDS99XX ambient light and proximity sensors
2020-03-11 16:27:53 +01:00
Martine Lenders
1aeae204c3
pyterm: return errno on OSError 2020-03-11 14:55:05 +01:00
Martine Lenders
7a9010fefa
pyterm: try to reconnect on SerialException during connect
This is what the user would do anyway.
2020-03-11 14:55:04 +01:00
Gunar Schorcht
bd3ccc4697 tools/codespell: ignore ALS (Ambient Light Sensing) 2020-03-11 14:21:47 +01:00
benpicco
d294e1d01c
Merge pull request #9572 from maribu/atmega-debug
On-Chip Debugging for AVR/ATmega based boards
2020-03-11 11:40:40 +01:00
Marian Buschsieweke
fa189c4c1d
dist/tools/avarice: Detect GDB automatically
While some users likely still use avr-gdb, more and more systems are starting
to use gdb-multiarch. In order to work in both cases, the script now just
checks which version is installed. (If both are installed, gdb-multiarch is
preferred.)
2020-03-11 10:51:40 +01:00
ad5b9d7faf
ci/buildsystem_check: force no export of JLINK_PRE_FLASH 2020-03-10 16:31:50 +01:00
5e85994abf
ci/buildsystem_check: force no export of JLINK_RESET_FILE 2020-03-10 16:30:57 +01:00
c586db5ae2
ci/buildsystem_check: ensure JLINK_IF is not exported 2020-03-10 16:29:20 +01:00
9c2e5c9b7c
ci/buildsystem_check: ensure JLINK_DEVICE is not exported 2020-03-10 16:28:26 +01:00
Marian Buschsieweke
edd93411fe
dist: De-duplicated AVR debug config & scripts
Use common debug.sh, debug_srv.sh and gdb.conf for all AVR boards.
2020-03-10 12:54:51 +01:00
980e06bcd6
ci/buildssytem: ensure PYOCD_ADAPTER_INIT is not exported 2020-03-08 15:12:44 +01:00
c27870face
ci/buildssytem: ensure FLASH_TARGET_TYPE is not exported 2020-03-08 15:12:44 +01:00
benpicco
2cc3d386fd
Merge pull request #13572 from miri64/sliptty/enh/global-addr
sliptty/start_network.sh: configure global address for SLIP interface
2020-03-08 15:04:45 +01:00
Martine S. Lenders
d43ff6df12
sliptty/start_network.sh: configure global address for SLIP interface
This way hosts without pre-configured IPv6 addresses can also reach
global addresses within a downstream network.
2020-03-06 11:45:05 +01:00
Martine S. Lenders
45ef9f9fe7
sliptty/start_network.sh: do not provide sliptty with -e argument 2020-03-06 11:44:42 +01:00
Martine S. Lenders
20ce69c361
sliptty/start_network.sh: add missing argument to usage 2020-03-06 11:39:37 +01:00
Benjamin Valentin
ed4d871835 dist/tools/cc2538-bsl: use upstream version
Automatically fetch the upstream version of cc2538-bsl.py instead
of maintaining our own fork of the tool.

fixes #13566
2020-03-06 11:13:21 +01:00
benpicco
0b1dce36ac
Merge pull request #10477 from miri64/sliptty/feat/initial
sliptty: introduce a new SLIP to TUN tool
2020-03-05 18:08:40 +01:00
Martine Lenders
917ba19b35
sliptty: introduce a new SLIP to TUN tool 2020-03-05 15:55:10 +01:00
af3cc3b476
dist/testbed-support: fix iotlab-term target 2020-03-05 09:00:09 +01:00
5d84dd9061
testbed-support: add compatibility with cli-tools v3 2020-03-05 09:00:08 +01:00
Karl Fessel
563f4f6d9d tools/backport_pr: Add Token Scope check 2020-03-04 14:30:12 +01:00
Kevin "Tristate Tom" Weiss
21395f0396
Merge pull request #13514 from benpicco/cc2538-bsl-fix
cc2538-bsl.py: fix ERROR: string argument without an encoding
2020-03-04 09:53:13 +01:00
ca3c256e49
Merge pull request #13430 from kaspar030/split_static_tests
dist: factor out static tests from build_and_test.sh
2020-03-03 18:41:25 +01:00
Martine Lenders
47eeafc553
Merge pull request #13178 from miri64/dist/fix/iotlab-improvements
dist/testbed-support: several improvements
2020-03-03 18:39:26 +01:00
95d607b54d
Merge pull request #13480 from aabadie/pr/tools/openocd_export_variables
tools/openocd: export configuration variables only to required targets
2020-03-03 18:16:05 +01:00
Martine S. Lenders
d455662a02
dist/testbed-support: Make tmux optional with iotlab-term 2020-03-03 15:24:02 +01:00
Martine S. Lenders
59ecc48eb6
dist/testbed-support: Wait for flash to be done when provided with term
Compare https://github.com/RIOT-OS/RIOT/pull/12468
2020-03-03 15:24:01 +01:00
Martine S. Lenders
2fec1f7adc
dist/testbed-support: Use IOTLAB_EXP_ID when trying to login at site 2020-03-03 15:24:00 +01:00
Martine S. Lenders
d169a6ac9f
dist/testbed-support: Fix IOTLAB_SITE determination 2020-03-03 15:24:00 +01:00
f7bb189d3e dist/tools/ci/static_tests.sh: tag base branch for Murdock 2020-03-03 14:38:13 +01:00
294b999d34 dist/tools/ci/static_tests.sh: fix shellcheck errors 2020-03-03 14:38:13 +01:00
a9768151dd
ci/buildssytem: ensure APPDEPS not exported 2020-03-03 14:19:55 +01:00
b27ae335af
ci/buildsystem_check: ensure OPENOCD_ADAPTER_INIT is not exported 2020-03-03 11:42:20 +01:00
39733a5c30
ci/buildsystem_check: ensure OPENOCD_RESET... is not exported 2020-03-03 11:42:19 +01:00
Benjamin Valentin
ffc28c4b0f cc2538-bsl.py: fix python3 error
Fix the

    ERROR: string argument without an encoding

error that would appear without `python3-magic` library installed.
2020-02-29 02:24:43 +01:00
Francisco
5af4c5a9c5
Merge pull request #13470 from kfessel/fix13179
boards/nucleo-f767zi: Fix13179 make nucleo-f767zi debuggable again
2020-02-28 17:42:10 +01:00
Karl Fessel
f00f1254ec tools/openocd: Fix Flash probing for nucleo-f747zi 2020-02-28 13:53:20 +01:00
Karl Fessel
979b4d5cf7 Revert "boards/nucleo-f767zi: add correct flash bank openocd config"
This reverts commits:
    - 1dec5ba61b
    - 53f60db66f
2020-02-28 13:51:58 +01:00
Benjamin Valentin
541265ee79 cc2538-bsl.py: use python3
support for python2 has ended and the script works just as well
with python3.
2020-02-27 14:17:37 +01:00
ef8daaf7be
suit: remove moran-v4 version of the parser
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
2020-02-26 14:54:16 +01:00
Martine S. Lenders
21807d40a5
start_networking.sh: add capability to not start uhcpd
As we now also support DHCPv6 we might want to use the setup-routine of
start_networking.sh but not start the UHCP server.
2020-02-26 12:40:03 +01:00
09538c5a75 dist: split out static tests from build_and_test.sh 2020-02-26 12:36:50 +01:00
f451eb692c
Merge pull request #13452 from aabadie/pr/tools/openocd_config_export
tools/openocd: only export OPENOCD_CONFIG to required targets
2020-02-25 15:11:38 +01:00
785052e410
Merge pull request #13468 from aabadie/pr/tools/bossa_rework
tools/bossa: split between 1.8 and 1.9 versions
2020-02-25 13:32:38 +01:00
d5e13fe4fa
dist/tools/bossa-1.9: add version 1.9.1 2020-02-25 11:49:10 +01:00
e16a9753d9
dist/tools/bossa: move to bossa-1.8 directory 2020-02-25 11:47:32 +01:00
e119bf6681
Merge pull request #13080 from aabadie/pr/make/remove_useless_exports_all
make: even more useless exports removed
2020-02-25 11:30:03 +01:00
fadd361a67
Merge pull request #12574 from aabadie/pr/tools/codespell_ignore_list
tools/codespell: improve ignored words list + enable colored output
2020-02-25 11:09:41 +01:00
dca7d96148
ci/buildsystem_sanity: ensure TARGET_ARCH no export 2020-02-25 09:42:12 +01:00
2e7202ef2e
ci/buildsystem_sanity: ensure UNDEF not exported 2020-02-25 09:40:34 +01:00
benpicco
4671fd2fe4
Merge pull request #10475 from chrysn-pull-requests/openocd-for-stk3700
boards/any silabs: Allow selecting OpenOCD
2020-02-24 19:12:43 +01:00
99d1404d2f
ci/buildsystem_check: ensure OPENOCD_CONFIG is not exported 2020-02-24 10:04:12 +01:00
bd081cd980
tools/openocd: remove default OPENOCD_CONFIG value
The default value is already set in openocd.inc.mk
2020-02-24 10:04:11 +01:00
Gunar Schorcht
b132698cd5 cpu/esp*: move parition table tool to dist/tools/esptool
The same tool 'gen_esp32part.py' is used for the generation of partition tables on ESP8266 as well as n ESP32. The tool is therefore added to 'dist/tools/esptool'
2020-02-21 09:09:08 +01:00
562cc9007c
tools/packer: adapt for Ubuntu 18.04
This change is also a complete refactoring of the generation of the vagrant image
2020-02-19 19:23:07 +01:00
Jose Alamos
eaf2fecd20 vera++: remove non-zero exit code 2020-02-18 19:53:08 +01:00
Sebastian Meiling
2aaf811d84
Merge pull request #9778 from jia200x/pr/vera++
style-check/vera++: add style validator and scripts
2020-02-18 10:04:38 +01:00
Jose Alamos
d0b13281d8 ci: invoke vera++ from CI 2020-02-14 14:17:17 +01:00
Jose Alamos
c455efba36 vera++: add README file 2020-02-14 14:17:17 +01:00
Jose Alamos
6057d1fba9 vera++: add check.sh script 2020-02-14 14:17:17 +01:00
Jose Alamos
6352c3cf48 style-check/vera++: add RIOT vera++ files 2020-02-14 14:17:16 +01:00
chrysn
1dbf07f926 openocd: Add instructions for overriding OPENOCD 2020-02-14 09:42:20 +01:00
chrysn
ac8ed1eb13 openocd: Allow using OpenOCD-shipped configs
OpenOCD already ships config files for the EFM32 and EFR32 family, no
need to duplicate them in RIOT; this removes the "file exists" check for
files that are clearly OpenOCD-shipped board configurations, as the
script can't (and shouldn't) know OpenOCD's include paths.
2020-02-14 09:24:25 +01:00
077bf8aa73
tools/toolchain_version: remove extra underlying - 2020-02-13 10:54:42 +01:00
acf3ea0636
tools/codespell: enable colored output 2020-02-12 11:22:22 +01:00
19fb4bbcb7
tools/codespell: use file for setting ignored words 2020-02-12 11:22:22 +01:00
ab9c67e621
Merge pull request #13257 from fjmolinas/pr_creating_boards_md
doc/doxygen: add creating boards doc
2020-02-12 08:40:53 +01:00
f1799b9910 dist/tools/codespell: add interactive mode 2020-02-11 13:23:47 +01:00
Francisco Molina
e86a5d43ed
dist/tools/buildsystem_sanity_check: exclude .md files
Exclude .md files from check_cpu_cpu_model_defined_in_makefile_features
2020-02-05 14:25:40 +01:00
5d5cee0fa5
ci/buildsystem_sanity: ensure not export USEMODULE_INCLUDES 2020-02-05 10:27:58 +01:00
ad234d1f38
ci/buildsystem_sanity_check: ensure USEMODULE is not exported 2020-02-05 10:27:58 +01:00
Benjamin Valentin
baea542532 tools/edbg: update to latest upstream version
This version has changed the target names, so add a edbg-devices.inc.mk
to automatically select the right target.
2020-01-31 09:35:27 +01:00
98995f685b
Merge pull request #13179 from fjmolinas/pr_openocd_stm32f7_probe
boards/nucleo-f767zi: add correct flash bank openocd config
2020-01-28 10:48:23 +01:00
Francisco Molina
53f60db66f dist/tools/openocd/openocd.sh: add FLASH_BANK
Allow specifying index of `flash bank` to read configuration from
in cases where the configuration provided in openocd is incorrect.

This is the case for the majority of stm32 boards where it relies
on `flash probe` to get the correct value.
2020-01-27 22:32:00 +01:00
8509e1e213
Merge pull request #13119 from nmeum/pr/ssp_random_canary
sys/spp: randomize canary value on each build
2020-01-20 20:56:16 +01:00
Sören Tempel
1e52ac21e4 tools: add tool for generating random hexadecimal values
This tool generates a random hexadecimal value of a given maximum size.
This is useful for generating random canary values during compile-time
for the ssp module which currently uses a constant value.
2020-01-20 14:51:26 +01:00
benpicco
8a99824e66
Merge pull request #11095 from benpicco/pyterm_sleep
pyterm: add /sleep function
2020-01-15 18:25:29 +01:00
Leandro Lanzieri
50f1b1423a
Merge pull request #12999 from fjmolinas/pr_native_makefile_include_explicit_path
boards: use explicit paths for file inclusion
2020-01-13 16:00:48 +01:00
Francisco Molina
6a0eaec82f dist/tools/buildsystem_sanity_check: check \ not in boards/ 2020-01-13 12:43:36 +01:00
9de6047097
dist/tools: add support for flatc compiler 2020-01-13 09:41:22 +01:00
8416974b3c
Merge pull request #13074 from fjmolinas/pr_riotboot_gen_hdr_type
dist/tools/riotboot_gen_hdr/genhdr: use unsigned long
2020-01-10 13:38:37 +01:00
Francisco Molina
d2c99989dc dist/tools/riotboot_gen_hdr/genhdr: use unsigned long 2020-01-10 12:56:07 +01:00
c6a2b39a0b
testrunner: allow setting custom delay before reset
On some boards, such as hifive1b, resetting right after flashing could crash the running firmware
2020-01-10 08:34:17 +01:00
Gaëtan Harter
f08116f3ce dist/tools/*: adapt to new state file targets
Prepare for handling pkg state with files. So it requires having the
path defined before declaring targets. In addition, it cleans up the
old git-download target.
2020-01-08 20:55:19 +01:00
ff285cb3e0
Merge pull request #13042 from fjmolinas/pr_compile_and_test_args
dist/tools/compile_and_test_for_board: pass parser as main arg
2020-01-08 09:01:14 +01:00
Francisco Molina
413f401b97 dist/tools/compile_and_test_for_board: pass parser as main arg 2020-01-08 08:32:42 +01:00
Juan Carrano
02b72ab385 print_toolchain_versions: print system and make's default shell.
Some systems use dash as system shell, others use bash. The shell used
by make can also be different, and unrelated to the system shell.
Differences in this variable can cause problems when testing PRs and
reporting bugs.

The default shell is important system information that should be reported.
2020-01-07 09:28:46 +01:00
Francisco
2729580cf1
Merge pull request #13027 from gschorcht/dist/tools/esp8266_version_check
dist/tools/ci:  print toolchain version update for esp8266
2020-01-06 17:31:00 +01:00
Gunar Schorcht
0252af6572 dist/tools/ci: print toolchain version update for esp8266
The new ESP8266 port in PR #11108 requires a different tool chain than the previous implementation. The version check must be updated accordingly.
2020-01-04 17:23:28 +01:00
Francisco
f6f4469542
Merge pull request #11889 from miri64/tapsetup/enh/sudo
tapsetup: require to be executed with sudo
2020-01-04 10:43:06 +01:00
Martine S. Lenders
08b11d424d tapsetup: require to be executed with sudo 2020-01-03 21:00:54 +01:00
970008a74c
ci/build_system_sanity_check: check LINKFLAGS not exported 2020-01-03 16:07:15 +01:00
ac33697af7
tools/compile_test_board: allow use of wildcards for applications 2019-12-19 15:58:47 +01:00
70e6e0aedf
Merge pull request #12862 from fjmolinas/pr_dont_reset_sync
dist/pythonlibs/testrunner: reset before term
2019-12-19 14:42:46 +01:00
Francisco Molina
a77594a348 dist/pythonlibs/testrunner: reset before term
For some boards `make reset` is only possible if a serial connection
is not already open or its execution might disrupt it. This
causes some tests to fail since before running a test the board
is reset.

`make reset` is currently used as a synchronization mechanism between
the application and the test script. With `test_utils_interactive_sync`
this is no longer needed so call `make reset` before `cleanterm` instead
of after when `test_utils_interactive_sync` is used.

Allow setting TESTRUNNER_RESET_AFTER_TERM=1 to keep the previous
behaviour for `examples/%/tests`.
2019-12-19 09:32:37 +01:00
Dylan Laduranty
bd7f105428
Merge pull request #12978 from smlng/pr_freebsd_osprint
tools: correctly detect and print FreeBSD OS
2019-12-18 14:56:57 +01:00
Sebastian Meiling
c185307025 tools: correctly detect and print FreeBSD OS
Currently the `print_toolchain_versions` script only supports Linux
and Apple macOS when printing OS name and version. This adds support
for FreeBSD.
2019-12-18 10:25:29 +01:00
Sebastian Meiling
5eee821f6e makefiles: move exports to vars.inc.mk 2019-12-18 10:07:50 +01:00
211cec8b3e
tools/buildsystem_check: exclude tests/external_board_native path
This test application must act as a regular application to showcase how to provide a board support from an external directory
2019-12-16 15:35:06 +01:00
Gaëtan Harter
41a891f284
tools: use 'BOARDSDIR' for the boards directory
Replace uses of 'RIOTBOARD' by 'BOARDSDIR' for tools.
2019-12-16 15:35:04 +01:00
55ef046728
dist/testrunner: make interactive test retries/delay configurable 2019-12-12 09:44:16 +01:00
Sebastian Meiling
80d86b42ee tools/kconfig: replace GNU cp -t with UNIX cp
UNIX `cp` command does not have the `-t` option like its GNU variant.
Hence, it usage breaks building RIOT e.g. on FreeBSD.
2019-12-05 09:12:33 +01:00
benpicco
61353e04eb
Merge pull request #12860 from aabadie/pr/tools/ethos_fix_warning
tools/ethos: fix compilation warning in strncpy
2019-12-03 15:08:36 +01:00
Francisco
372ae95d28
Merge pull request #12628 from aabadie/pr/make/develhelp_cleanup
make/develhelp: make usage consistent + add ci check
2019-11-28 09:26:52 +01:00
Gaëtan Harter
eb9cb198a0 testrunner: auto sync with test_utils_interactive_sync if present
Automatically call the test_utils_interactive_sync synchronization if it
is used.
2019-11-27 15:07:42 +01:00
abc99024df
tools/ethos: fix compilation warning in strncpy 2019-11-26 16:26:35 +01:00
Martine S. Lenders
ccc10432be
dist/tools/ci/print_toolchain_versions.sh: add ccache 2019-11-26 09:28:28 +01:00
Martine Lenders
95c6a785de
Merge pull request #12695 from leandrolanzieri/pr/dist/tools/add_kconfiglib
dist/tools: Add Kconfiglib
2019-11-25 11:51:02 +01:00
31fe89e4a2 dist/tools/uhcpd: fix typos 2019-11-23 22:39:37 +01:00
5c92411b3e dist/tools/pic32prog: fix typos 2019-11-23 22:39:37 +01:00
801c5e3dd5 dist/tools/packer: fix typos 2019-11-23 22:39:37 +01:00
f012f88c2b dist/tools/lazysponge: fix typos 2019-11-23 22:39:37 +01:00
f3538a2248 dist/tools/buildsystem_sanity_check: fix typos 2019-11-23 22:39:37 +01:00
09e8e1f612 dist/tools/backport_pr: fix typos 2019-11-23 22:39:37 +01:00
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
Martine Lenders
6f8fd1d6df doccheck: exclude dist/tools directory from group check 2018-10-11 15:16:09 +02:00
Sebastian Meiling
239b3dfe86
Merge pull request #10132 from MrKevinWeiss/pr/adaptphil
dist/tests/if_lib: Update to riot_pal
2018-10-11 11:47:55 +02:00
Pekka Nikander
371134264a dist/tools/commit-msg/check.sh: Enhance reporting 2018-10-10 14:06:33 +03:00
MrKevinWeiss
5b83137fd1 dist/tests/if_lib: Update to riot_pal
This removes all non-application based driver/devices and replaces with riot_pal.
riot_pal (riot protocol abstraction layer) can be installed with pip install riot_pal.
The purpose is ti simplify and modularize the interfaces and tests.
All tests using the if_lib interface are updated too.
2018-10-09 21:21:17 +02:00
Schorcht
32e602680b cpu: add esp32 vendor files 2018-10-08 12:20:49 +02:00
Martine Lenders
055ec38fff tools/pr_check: adapt for label categorization
In [#10030][1] it was decided to rename all labels to reflect their
respective category. The labels "NEEDS SQUASHING" and "Waiting For Other
PR" are used in the `dist/tools/pr_check/pr_check.sh` script however, so
that script needs to be adapted.

[1]: https://github.com/RIOT-OS/RIOT/issues/10030
2018-10-05 19:07:32 +02:00
Francisco Acosta
cb8e78da13
Merge pull request #9916 from kYc0o/pr/tools/fix_kill_testrunner
dist/tools/jlink.sh: fix testrunner on stdio_rtt based devices
2018-10-04 17:31:58 +02:00
Hauke Petersen
0ca02de0a2 tools: add nrf52_resetpin_cfg tool
This new tool allows configuring the reset pin for nRF52-based
boards. As the reset pin configuration is persistent, it does not
make sense to include it into the board code...
2018-09-28 16:50:58 +02:00
Martine Lenders
442df8227b
Merge pull request #9839 from MrKevinWeiss/pr/doc/repoupdate
doc: Add deprecation warnings for new repos
2018-09-25 23:15:07 +02:00
Martine Lenders
5ac02f5134
Merge pull request #10010 from smlng/pr/fix/cppcheck-suppress
dist/cppcheck: fix missing cppcheck-suppression reasons
2018-09-25 13:52:28 +02:00
smlng
d7942cd974 dist/tools: fix tunslip6 strncat num param
Cppcheck was (correctly) warning here that concat to strings might
result in buffer overflow because the terminating `\0` was not considered.
This is fixed here, making the cppcheck suppression also obsolete.
2018-09-25 12:03:58 +02:00
smlng
3f811c44db cppcheck: extend cppcheck README example
Extend the cppcheck suppression example to show that each suppression
should have a reason describing the intentional suppression of a
cppcheck warning or error.
2018-09-25 12:03:58 +02:00
smlng
59e299635b cppcheck: add/correct reason for cppcheck-suppress
Adding and correcting description/rational on why certain cppcheck
warnings or errors are intentionally suppressed.
2018-09-25 12:03:58 +02:00
smlng
6d24033bd6 dist/tools: print OS and Kernel version
Add output to print_toolchain_version script to include info
on the operating system and its kernel version.
2018-09-25 09:22:42 +02:00
smlng
87505f0334 dist/tools: fix whitespace in print_toolchain_versions 2018-09-25 09:22:41 +02:00
smlng
c73ed667c1 dist/tools: print more tool versions
This adds openocd, python, python2, and python3 to the helper
script print_toolchain_versions.sh.
2018-09-25 09:22:41 +02:00
smlng
424830b06b dist/tools: parse version info from stderr
Currently version information of commands and tools is only parsed
from STDOUT, however some tools like openocd print version info
to STDERR only. This commits adds parsing of STDERR for version
infos if STDOUT does not contain such info.
2018-09-25 09:22:41 +02:00
Leandro Lanzieri
31fa4fd64d dist/tools: Add stm32loader flash utility 2018-09-18 18:07:42 +02:00
Francisco Acosta
89fa4da4c3 dist/tools/jlink: remove duplicated check 2018-09-11 17:29:12 +02:00
Francisco Acosta
ad87b2875e dist/tools/jlink: remove setsid for launching JLinkExe for term
When executing `make test` on devices using JLink, testrunner
launches `make term` which calls `jlink.sh term_rtt`. When finished
the father process is killed but `setsid` has launched JLinkExe
as another subprocess, which is not killed by `os.killpg` from
testrunner since it doesn't belong to the same group.
2018-09-11 00:46:18 +02:00
Francisco Acosta
dfd349a05b dist/tools/jlink: send output to /dev/null
While running `make term` JLinkExe is expecting commands and thus
can be disturbed by other JLink commands, e.g. `make reset`.
This enable `make test` (which runs those two commands at the same
time) on target using JLinkExe as a programmer/debugger.
2018-09-11 00:46:18 +02:00
0c1a207bf9
Merge pull request #9867 from kaspar030/pr/unify_app_folder_search
make: unify app folder search (examples/*, tests/*, ...)
2018-09-06 09:30:12 +02:00
de55265835 dist/tools/compile_test: make use of makefiles/app_dirs.inc.mk 2018-09-05 12:03:09 +02:00
Schorcht
e528fb8e2d cpu: add esp8266 vendor files 2018-09-05 02:39:50 +02:00
cladmi
bc7e53f3d4
openocd.sh: include base address in IMAGE_OFFSET for binfiles
Add the rom base address to the flash address when flashing binaries.
This allows flashing binaries with the default openocd configuration.

It is an API change to IMAGE_OFFSET with binary files as it should now
only be an offset to the base address.

Force openocd type to '.bin' in case we want to flash hex/elf objects or
files not automatically recognized as bin.
2018-09-04 13:53:38 +02:00
cladmi
36b51467dd
openocd.sh: add functions to access board flash address
This allows getting the ROM base address.

It may not be available in the build system directly so better extract it from
openocd. Also openocd is board specific and this address is cpu specific
so would have definition order issue in the build system.
2018-09-04 13:50:46 +02:00
cladmi
5748d6a75f
openocd.sh: add a _is_binfile function
Returns 0 if it is true.

The test is based on the file extension, but also use the IMAGE_TYPE variable
to force setting to binary.
2018-09-04 13:49:45 +02:00
cladmi
60aac4a75b
openocd.sh: fix verify_image with IMAGE_OFFSET
When flashing with an IMAGE_OFFSET, it should also be passed to
verify_image. It is handling the base address in the image too.

This works with both elf files and binaries with the base address added.
2018-09-04 13:48:16 +02:00
cladmi
09f0930f59
openocd.sh: add a debug message when flashing with an offset 2018-09-04 13:48:12 +02:00
cladmi
5bb9babfe0
openocd.sh: update to bash
Update to bash to have `local` variables and `=~` regex matching.
Will be used in upcoming commits.
2018-09-04 13:46:25 +02:00
75dba75fbb dist/tools/pyterm: handle ctrl+d nicely 2018-09-03 17:34:23 +02:00
a5714cc7c7 dist/tools/compile_test: fix flake8 issues 2018-08-31 08:50:52 +02:00
MrKevinWeiss
223ed1a26b doc: Add deprecation warnings for new repos
This PR add deprication warning to notify anyone using the if_lib files that it is being removed from RIOT repo and making it's own repo (RIOT-OS/lib_if).
This is intended to help wil modularization since it is not only being used within RIOT but in other areas as well.
README files are updated to indicate the change and if the if_lib is used it will throw a warning indicating the deprecation.
2018-08-25 10:34:32 +02:00
Semjon Kerner
a01eb37b6f dist/tools/pyterm: change deprecated warn to warning 2018-08-23 12:23:59 +02:00
Leandro Lanzieri
28b832ad1f dist/tools: Add option to set the value of RTS and DTR pins in pyterm 2018-08-22 11:13:45 +02:00
Leandro Lanzieri
9b0dd23ebf dist/tools: Add option to invert DTR and RTS logic values in pyterm 2018-08-22 09:00:06 +02:00
Gaëtan Harter
cc63d2d21c
genconfigheader: use lazysponge for file management
Remove file management from `genconfigheader` script and use `lazysponge` in
Makefile.include.

Use --verbose option when in non QUIET building mode.
2018-08-20 11:34:55 +02:00
Gaëtan Harter
0528e0903f
dist/tools: add lazysponge tool
Write stdin to <outfile> if it is different from the previous content.

If data provided in stdin is the same as the data that was in <outfile>, it is
not modified so `last modification date` is not changed.
2018-08-20 11:34:49 +02:00
Gaëtan Harter
31aba49a31
Merge pull request #9759 from smlng/pr/pythonlibs/testrunner
dist: move testrunner to pythonlibs as package
2018-08-16 11:54:02 +02:00
Gaëtan Harter
a3c7d26a7d
dist/tools/has_minimal_version: add tool to check minimal version
usage: has_minimal_version.sh <version> <minimal_version> [toolname]
      Checks that version >= minimal_version
      Version format MAJOR.MINOR.PATCH ex 3.1.4
2018-08-14 15:26:51 +02:00
smlng
dd9a43bdc9 dist: move testrunner to pythonlibs as package
As testrunner is moved to dist/pythonlibs which is exported
via PYTHONPATH, testrunner is found by all test scripts.
2018-08-13 14:11:22 +02:00
smlng
68a6ba8987 make: introduce common Python lib path
Introduce dist/pythonlibs directory to store RIOT python packages.
This directory is exported via PYTHONPATH by the build system to
make it commonly available.
2018-08-10 11:37:43 +02:00
Yegor Yefremov
ea7fa8bb63 dist/tests/if_lib: use '==' for string comparison
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2018-08-06 10:19:43 +02:00
Yegor Yefremov
87ecb78d2f dist/tests/if_lib: don't invoke super class __init__
Python invokes super class __init__ automatically
unless it is overridden.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2018-08-06 09:55:43 +02:00
Yegor Yefremov
ff525eb354 dist/tests/if_lib: move testing infrastructure files to a stand-alone package
Create if_lib package containing all the modules and adapt the *.py files
to import each other using the intra-package references.

The idea behind a package is to invoke test.py either by permanently
modifying PYTHONPATH in user profile via adding path to $RIOTBASE/dist/tests
or make temporary PYTHONPATH changes during the invocation:

PYTHONPATH=$PYTHONPATH:$RIOTBASE/dist/tests python3 test.py

Leave periph_i2c_if.py in the same folder as test.py as this file is
just a Python wrapper around periph specific main.c.

Update BPT memory map. Use definitions generated with the latest code
generator. Both routine names and mapping have changed.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2018-08-02 13:34:47 +02:00
Cenk Gündoğan
36529e3d61
Merge pull request #9586 from miri64/dist/fix/iotlab-term
iotlab-support: use iotlab command to check credentials
2018-08-02 09:26:07 +02:00
Gaëtan Harter
5284849621
Merge pull request #9063 from bergzand/pr/shellcheck/initial
shellcheck: Add CI check script
2018-07-30 13:52:58 +02:00
c5c3903617
shellcheck: Add CI check script 2018-07-29 15:28:13 +02:00
Martine Lenders
ad65aadb37 iotlab-support: use iotlab command to check credentials
Since the `iotlab-term` target uses `tmux` error messages are not really
printed, so it took me a while to find out why at some sites this target
wasn't working for me anymore.

If the IoT-LAB password was changed, just checking if `.iotlabrc`
exists isn't enough, so I use `iotlab-experiment` to check if I'm logged
in properly to prompt the password input in case I'm not.
2018-07-17 13:02:54 +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
dylad
edf0360103 dist/tools: update EDBG version
update to the current lastest version of EDBG to allow user to reflash a bricked board due to sleep mode or wrong clock assignment. this avoid the use of Atmel Studio to erase flash.
2018-07-10 15:10:40 +02:00
Martine Lenders
49036c7065 mosquitto_rsmb: add MQTT listener to config
This helped me a lot while testing #9464 to interact with the broker
using the mosquitto shell command clients.
2018-07-05 13:17:59 +02:00
Hauke Petersen
3ccb27d00d tools: add mosquitto.rsmb MQTT-SN broker 2018-07-04 11:36:57 +02:00
Juan Carrano
6cfafc8923 tools/mkconstfs: Add an improved tool.
The new tool (mkconstfs2) features:

* more robust filename handling: no need for mangling,
  and works on Windows.
* Better output generation: nothing is written in case
  of failures.
* Allows more control over the files that are included:
 - does not traverse directories, filenames must be explicitly
   given.
 - The "root" can be explicitly given (thus the tool can get
   the same result independently of the CWD).

Thanks to MichelRottleuthner for making it work with Windows paths.
2018-07-02 10:15:56 +02:00
Gaëtan Harter
1087e49379
dist/tools/usb-serial: use RIOTTOOLS variable 2018-06-28 14:05:33 +02:00
Gaëtan Harter
b0b2835503
dist/tools/jlink: use RIOTTOOLS variable 2018-06-28 14:05:33 +02:00
Gaëtan Harter
41105bb23f
pic32prog: add a documentation on how to update PICkit3
To use pic32prog, the PICkit3 must be updated with a scripting mode firmware.
This describes how to do it on Linux using a windows VM (free).
2018-06-18 10:21:37 +02:00
Gaëtan Harter
7e81f54205
makefile.iotlab.single: add 'info-iotlab-node' target
Add a target to show the value of IOTLAB_NODE. Can be used to get the result of
using IOTLAB_NODE=auto or IOTLAB_NODE=auto-ssh.
2018-06-15 15:37:33 +02:00
Gaëtan Harter
124f9ec9bb
makefile.iotlab.single: check iotlab-node/iotlab-ssh return value
Format the output to be '0' on success and check it with grep.

This makes command fail when they failed on IoT-LAB.
2018-06-15 15:37:29 +02:00
Gaëtan Harter
d900e0a548
makefile.iotlab.single: add auto and auto-ssh modes
Usage:

    make BOARD=iotlab-m3 IOTLAB_NODE=auto-ssh all flash term

Add support to select node number in auto mode
2018-06-15 15:37:25 +02:00
Gaëtan Harter
3bba0c5895
makefile.iotlab.single: add IoT-LAB testbed support for one node
Add support to do flash/reset/term on an IoT-LAB node.
It also allow running test using 'testrunner'.

Configuration variables are:

* `IOTLAB_NODE` which should be set to your node url
  * The full url including site to use from your computer `m3-1.grenoble.iot-lab.info`
  * The short url when used on the IoT-LAB frontend `m3-1`
* `IOTLAB_EXP_ID` for your experiment id for flash and reset.
  By default it tries to use your currently running experiment if you have only one
* `IOTLAB_USER`: is read from `${HOME}/.iotlabrc` as saved by `iotlab-auth`
  * It is expected to have run `iotlab-auth` beforehand.
2018-06-15 15:37:18 +02:00
Gaëtan Harter
ec2fe9a308
Merge pull request #9294 from smlng/pr/tools/cwd
tools: allow static checks to be run from any directory
2018-06-12 12:39:42 +02:00
Cenk Gündoğan
2706264908
Merge pull request #9292 from smlng/pr/tools/doccheck
tools/doccheck: adapt script to run on macOS
2018-06-12 10:28:43 +02:00
00828bb62d dist/tools/doccheck: enable group check in CI 2018-06-11 19:12:02 +02:00
Martine Lenders
5cb5717a1f
Merge pull request #9293 from smlng/pr/tools/flake8
tools/flake8: fix regex in check script
2018-06-11 11:17:08 +02:00
smlng
cba319079c tools/doccheck: adapt script to run on macOS 2018-06-11 09:50:32 +02:00
2f21e16915 dist/tools/doccheck: add check for undefined groups 2018-06-07 19:29:38 +02:00
smlng
1adb5852ec tools: allow static checks to be run from any directory 2018-06-06 14:03:31 +02:00
smlng
c5f2ea6320 tools/flake8: add files exclude pattern for imported scripts 2018-06-05 15:22:07 +02:00
smlng
1891d42bc8 tools/flake8: fix files regex for macOS 2018-06-05 15:21:26 +02:00