Utilities

Utilities and helper functionality. More...

Detailed Description

Utilities and helper functionality.

   Additional scripts and configuration options to ease RIOT
   development.

Macros

#define DEVELHELP
 This global macro activates functionality to help developers. More...
 
#define CONFIG_THREAD_NAMES
 This global macro enable storage of thread names to help developers. More...
 
#define TEST_SUITES
 This global macro activates functionality that is needed for automated testing but not needed otherwise.
 

Macro Definition Documentation

◆ CONFIG_THREAD_NAMES

#define CONFIG_THREAD_NAMES

This global macro enable storage of thread names to help developers.

     To activate it set environment variable `THREAD_NAMES=1`, or use Kconfig.
     It is automatically enabled if `DEVELHELP` is.

Definition at line 70 of file doc.txt.

◆ DEVELHELP

#define DEVELHELP

This global macro activates functionality to help developers.

To activate it set environment variable DEVELHELP=1, or disable explicitly with DEVELHELP=0.

The following list of what DEVELHELP=1 enables is not comprehensive, but should give a rough impression of what to expect:

  • Many runtime checks are enabled (stack overflow protection by means of mpu_stack_guard or SCHED_TEST_STACK, warnings when sending messages to invalid PIDs, …), some of which just log errors to stdout, some even halt the system.
  • Some structures contain additional information, e.g. threads store their names and stack sizes.
  • Some error paths that are active even at DEVELHELP=0 perform more complex tasks to give useful output.
  • The assert() function is only evaluated with DEVELHELP=1 (or when FORCE_ASSERTS=1). Otherwise, the build system sets NDEBUG and thus skips assertions entirely.
  • On a panic, the system halts (or enters the bootloader) instead of restarting.

Definition at line 59 of file doc.txt.