* unittest - fix duplicate symbols in unittests
Some symbols were declared again
With clang -fcommon, this resulted in allocatin in common segment and
prevented error.
(tentative definitions in C standard).
-fno-common (now default in clang https://reviews.llvm.org/D75056)
causes compilation errors.
Declarations are now marked extern.
* unittest - fix scheduler array size for unittest
Unittest needs extra space for canary
* unittest - fix missing include (needed for clang-16)
* unittest - remove unused varibles
-Werror in clang 15+
* unittest - increase max supported version to clang-16
* unittest - conditionaly disable useless output in unittests
* unittest - C++11 version of STATIC_ASSERT
* unittest - fix initializers for g++
- Change order of initializers to match order in struct
- make valueTable initializion consistent (necessary for C++)
- adapt controlRateConfig
* unittest - adapt scheduler_unitest for g++
scheduler_stubs.c is necessary to initialize task_attributes
* unittest - fix ledstrip unittest
only part of config was zeroed
* unittest - fix g++ warnings
- memcpy when length is known and \0 is not copied
- isError is local stub, no extern
- serialReadStub - don't memcpy into object, use initializer
* cli - cleanup cliGetSettingIndex
- compare only passed bytes (old version may read data after
name)
- input string is const
* unittest - fix ld warning from PG sections
move pg data sections after .rodata. Sections were marked as writable
due to relocation (!?). That marked .text output section
(containing .pg_data) as writable too and linker correctly complained
that executable section is writable.
* unittest - cleanup
* unittest - adapt after code cleanup, add gcc
- remove clang flags that are not necessary now (tested on clang-11
and clang-16)
- add support for gcc ( make test CC=gcc CXX=g++ )
- add suport for different optimization level (detects some code
problems) : make test OPTIMIZE=-O2
- fallback to clang on Linux too
* fixup! unittest - conditionaly disable useless output in unittests
Requires configurator update.
LED strip Cleanup.
New LED functions:
- GPS (G)
- Battery (L)
- RSSI (S)
- Larson Scanner (O)
- Blink (B)
- Blink on landing (N)
Mode colors and special colors are configurable (mode_color in CLI, MSP_LED_STRIP_MODECOLOR & MSP_SET_LED_STRIP_MODECOLOR)
This is first part of new softserial code. Main timer code is changed, changes to rest of code are kept to minimum.
macros for BASEPRI based synchronization are added to project (atomic.h)
TIMER_PERIOD fixed in pwm_rx.c