tests: update unit/cbprintf test to use Kconfig

This commit removes CONFIG defines from main.c and instead uses the
proper Kconfig handling of specifying extra Kconfig options in
testcase.yaml.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
This commit is contained in:
Torsten Rasmussen 2022-08-10 21:38:21 +02:00 committed by Carles Cufí
commit 3217d97375
2 changed files with 188 additions and 103 deletions

View file

@ -28,73 +28,13 @@
*/
#define USE_LIBC 0
#define USE_PACKAGED 0
#define CONFIG_CBPRINTF_COMPLETE 1
#define CONFIG_CBPRINTF_FULL_INTEGRAL 1
#define CONFIG_CBPRINTF_FP_SUPPORT 1
#define CONFIG_CBPRINTF_FP_A_SUPPORT 1
#define CONFIG_CBPRINTF_N_SPECIFIER 1
#define CONFIG_CBPRINTF_LIBC_SUBSTS 1
/* compensate for selects */
#if (CONFIG_CBPRINTF_FP_A_SUPPORT - 0)
#undef CONFIG_CBPRINTF_REDUCED_INTEGRAL
#undef CONFIG_CBPRINTF_FULL_INTEGRAL
#undef CONFIG_CBPRINTF_FP_SUPPORT
#define CONFIG_CBPRINTF_FULL_INTEGRAL 1
#define CONFIG_CBPRINTF_FP_SUPPORT 1
#endif
#if !(CONFIG_CBPRINTF_FP_SUPPORT - 0)
#undef CONFIG_CBPRINTF_FP_SUPPORT
#endif
/* Convert choice selections to one defined flag */
#if !(CONFIG_CBPRINTF_COMPLETE - 0)
#ifdef CONFIG_CBPRINTF_FP_SUPPORT
#error Inconsistent configuration
#endif
#undef CONFIG_CBPRINTF_COMPLETE
#define CONFIG_CBPRINTF_NANO 1
#endif
#if !(CONFIG_CBPRINTF_FULL_INTEGRAL - 0)
#undef CONFIG_CBPRINTF_FULL_INTEGRAL
#define CONFIG_CBPRINTF_REDUCED_INTEGRAL 1
#endif
#else /* VIA_TWISTER */
#if (VIA_TWISTER & 0x01) != 0
#define CONFIG_CBPRINTF_FULL_INTEGRAL 1
#else
#define CONFIG_CBPRINTF_REDUCED_INTEGRAL 1
#endif
#if (VIA_TWISTER & 0x02) != 0
#define CONFIG_CBPRINTF_FP_SUPPORT 1
#endif
#if (VIA_TWISTER & 0x04) != 0
#define CONFIG_CBPRINTF_FP_A_SUPPORT 1
#endif
#if (VIA_TWISTER & 0x08) != 0
#define CONFIG_CBPRINTF_N_SPECIFIER 1
#endif
#if (VIA_TWISTER & 0x40) != 0
#define CONFIG_CBPRINTF_FP_ALWAYS_A 1
#endif
#if (VIA_TWISTER & 0x80) != 0
#define CONFIG_CBPRINTF_NANO 1
#else /* 0x80 */
#define CONFIG_CBPRINTF_COMPLETE 1
#endif /* 0x80 */
#if (VIA_TWISTER & 0x100) != 0
#define CONFIG_CBPRINTF_LIBC_SUBSTS 1
#endif
#if (VIA_TWISTER & 0x200) != 0
#define USE_PACKAGED 1
#else
#define USE_PACKAGED 0
#endif
#if (VIA_TWISTER & 0x400) != 0
#define CONFIG_CBPRINTF_PACKAGE_LONGDOUBLE 1
#endif
#if (VIA_TWISTER & 0x800) != 0
#define AVOID_C_GENERIC 1
#endif

View file

@ -4,146 +4,291 @@ common:
tests:
utilities.prf.m32v00: # REDUCED
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x00
extra_args: M64_MODE=0
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
utilities.prf.m32v01: # FULL
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x01
extra_args: M64_MODE=0
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
utilities.prf.m32v02: # REDUCED + FP
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x02
extra_args: M64_MODE=0
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
utilities.prf.m32v03: # FULL + FP
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x03
extra_args: M64_MODE=0
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
utilities.prf.m32v07: # FULL + FP + FP_A
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x07
extra_args: M64_MODE=0
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
utilities.prf.m32v08: # %n
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x08
extra_args: M64_MODE=0
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
- CONFIG_CBPRINTF_N_SPECIFIER=y
utilities.prf.m32v80: # NANO
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x80
extra_args: M64_MODE=0
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y
utilities.prf.m32v101: # FULL + LIBC
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x101
extra_args: M64_MODE=0
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_LIBC_SUBSTS=y
utilities.prf.m32v181: # NANO + FULL + LIBC
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x181
extra_args: M64_MODE=0
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y
- CONFIG_CBPRINTF_LIBC_SUBSTS=y
utilities.prf.m32v200: # PACKAGED REDUCED
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
utilities.prf.m32v201: # PACKAGED FULL
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x201
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
utilities.prf.m32v207: # PACKAGED FULL + FP + FP_A
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x207
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
utilities.prf.m32v208: # PACKAGED %n
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x208
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
utilities.prf.m32v281: # PACKAGED NANO + FULL
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x281
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y
utilities.prf.m32v1207: # PACKAGED FULL + FP + FP_A + PACKAGE_ALIGN_OFFSET
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x1207
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x1200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
utilities.prf.m32va00: # PACKAGED REDUCED + AVOID_C_GENERIC
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
utilities.prf.m32va01: # PACKAGED FULL + AVOID_C_GENERIC
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa01
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
utilities.prf.m32va07: # PACKAGED FULL + FP + FP_A + AVOID_C_GENERIC
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa07
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
utilities.prf.m32va08: # PACKAGED %n + AVOID_C_GENERIC
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa08
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
utilities.prf.m32va81: # PACKAGED NANO + FULL + AVOID_C_GENERIC
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa81
extra_args: M64_MODE=0 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y
utilities.prf.m64v00: # m64
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x00
extra_args: M64_MODE=1
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
utilities.prf.m64v01: # m64 FULL
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x01
extra_args: M64_MODE=1
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
utilities.prf.m64v03: # m64 FULL & FP
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x03
extra_args: M64_MODE=1
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
utilities.prf.m64v17: # m64 FULL & FP & FP_A
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x07
extra_args: M64_MODE=1
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
utilities.prf.m64v80: # NANO
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x80
extra_args: M64_MODE=1
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y
utilities.prf.m64v101: # FULL + LIBC
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x101
extra_args: M64_MODE=1
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_LIBC_SUBSTS=y
utilities.prf.m64v181: # NANO + FULL + LIBC
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x181
extra_args: M64_MODE=1
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y
- CONFIG_CBPRINTF_LIBC_SUBSTS=y
utilities.prf.m64v200: # PACKAGED REDUCED
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
utilities.prf.m64v201: # PACKAGED FULL
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x201
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
utilities.prf.m64v207: # PACKAGED FULL + FP + FP_A
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x207
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
utilities.prf.m64v208: # PACKAGED %n
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x208
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
- CONFIG_CBPRINTF_N_SPECIFIER=y
utilities.prf.m64v281: # PACKAGED NANO + FULL
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x281
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y
utilities.prf.m64v600: # PACKAGED REDUCED + LONG_DOUBLE PACKAGING
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x600
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
- CONFIG_CBPRINTF_PACKAGE_LONGDOUBLE=y
utilities.prf.m64v601: # PACKAGED FULL + LONG_DOUBLE PACKAGING
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x601
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_PACKAGE_LONGDOUBLE=y
utilities.prf.m64v607: # PACKAGED FULL + FP + FP_A + LONG_DOUBLE PACKAGING
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x607
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
- CONFIG_CBPRINTF_PACKAGE_LONGDOUBLE=y
utilities.prf.m64v608: # PACKAGED %n + LONG_DOUBLE PACKAGING
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x608
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
- CONFIG_CBPRINTF_N_SPECIFIER=y
- CONFIG_CBPRINTF_PACKAGE_LONGDOUBLE=y
utilities.prf.m64v681: # PACKAGED NANO + FULL + LONG_DOUBLE PACKAGING
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x681
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y
- CONFIG_CBPRINTF_PACKAGE_LONGDOUBLE=y
# PACKAGED FULL + FP + FP_A + LONG_DOUBLE PACKAGING + PACKAGE_ALIGN_OFFSET
utilities.prf.m64v1607:
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x1607
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x1200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
- CONFIG_CBPRINTF_PACKAGE_LONGDOUBLE=y
utilities.prf.m64va00: # PACKAGED REDUCED + AVOID_C_GENERIC
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
utilities.prf.m64va01: # PACKAGED FULL + AVOID_C_GENERIC
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa01
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
utilities.prf.m64va07: # PACKAGED FULL + FP + FP_A + AVOID_C_GENERIC
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa07
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
utilities.prf.m64va08: # PACKAGED %n + AVOID_C_GENERIC
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa08
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
- CONFIG_CBPRINTF_N_SPECIFIER=y
utilities.prf.m64va81: # PACKAGED NANO + FULL + AVOID_C_GENERIC
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa81
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0xa00
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y
utilities.prf.m64v2200: # PACKAGED REDUCED + CBPRINTF_PACKAGE_ADD_STRING_IDXS
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x2200
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
utilities.prf.m64v2201: # PACKAGED FULL + CBPRINTF_PACKAGE_ADD_STRING_IDXS
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x2201
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x2200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
utilities.prf.m64v2207: # PACKAGED FULL + FP + FP_A + CBPRINTF_PACKAGE_ADD_STRING_IDXS
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x2207
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x2200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_FP_SUPPORT=y
- CONFIG_CBPRINTF_FP_A_SUPPORT=y
utilities.prf.m64v2208: # PACKAGED %n + CBPRINTF_PACKAGE_ADD_STRING_IDXS
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x2208
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x2200
extra_configs:
- CONFIG_CBPRINTF_REDUCED_INTEGRAL=y
- CONFIG_CBPRINTF_N_SPECIFIER=y
utilities.prf.m64v2281: # PACKAGED NANO + FULL + CBPRINTF_PACKAGE_ADD_STRING_IDXS
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x2281
extra_args: M64_MODE=1 EXTRA_CPPFLAGS=-DVIA_TWISTER=0x2200
extra_configs:
- CONFIG_CBPRINTF_FULL_INTEGRAL=y
- CONFIG_CBPRINTF_NANO=y