picolibc: model as a feature

This commit is contained in:
Benjamin Valentin 2020-09-11 14:23:25 +02:00 committed by Benjamin Valentin
parent 170b3efddd
commit cff8e862b8
10 changed files with 14 additions and 3 deletions

View File

@ -23,6 +23,7 @@ config CPU_CORE_ARM7TDMI_S
## Declaration of specific features ## Declaration of specific features
config HAS_ARCH_ARM7 config HAS_ARCH_ARM7
bool bool
select HAS_PICOLIBC
help help
Indicates that the core is part of the ARM7 group of cores. Indicates that the core is part of the ARM7 group of cores.

View File

@ -1,7 +1,7 @@
# use common ARM7 periph code # use common ARM7 periph code
USEMODULE += arm7_common_periph USEMODULE += arm7_common_periph
ifeq (1,$(PICOLIBC)) ifneq (,$(filter picolibc,$(FEATURES_USED)))
# Use Picolibc when explicitly selected # Use Picolibc when explicitly selected
USEMODULE += picolibc USEMODULE += picolibc
else else

View File

@ -7,5 +7,6 @@ FEATURES_PROVIDED += arch_arm7
FEATURES_PROVIDED += cpp FEATURES_PROVIDED += cpp
FEATURES_PROVIDED += libstdcpp FEATURES_PROVIDED += libstdcpp
FEATURES_PROVIDED += periph_pm FEATURES_PROVIDED += periph_pm
FEATURES_PROVIDED += picolibc
FEATURES_PROVIDED += puf_sram FEATURES_PROVIDED += puf_sram
FEATURES_PROVIDED += ssp FEATURES_PROVIDED += ssp

View File

@ -39,6 +39,7 @@ config CPU_CORE_CORTEX_M
select HAS_CPU_CORE_CORTEXM select HAS_CPU_CORE_CORTEXM
select HAS_PERIPH_PM select HAS_PERIPH_PM
select HAS_PUF_SRAM select HAS_PUF_SRAM
select HAS_PICOLIBC
select HAS_CPP select HAS_CPP
select HAS_LIBSTDCPP select HAS_LIBSTDCPP
select HAS_CPU_CHECK_ADDRESS select HAS_CPU_CHECK_ADDRESS

View File

@ -4,7 +4,7 @@ USEMODULE += cortexm_common
# include common periph code # include common periph code
USEMODULE += cortexm_common_periph USEMODULE += cortexm_common_periph
ifeq (1,$(PICOLIBC)) ifneq (,$(filter picolibc,$(FEATURES_USED)))
# Use Picolibc when explicitly selected # Use Picolibc when explicitly selected
USEMODULE += picolibc USEMODULE += picolibc
else else

View File

@ -7,6 +7,7 @@ FEATURES_PROVIDED += cpu_core_cortexm
FEATURES_PROVIDED += libstdcpp FEATURES_PROVIDED += libstdcpp
FEATURES_PROVIDED += periph_pm FEATURES_PROVIDED += periph_pm
FEATURES_PROVIDED += puf_sram FEATURES_PROVIDED += puf_sram
FEATURES_PROVIDED += picolibc
FEATURES_PROVIDED += ssp FEATURES_PROVIDED += ssp
# cortex-m4f and cortex-m7 provide FPU support # cortex-m4f and cortex-m7 provide FPU support

View File

@ -8,6 +8,7 @@
config CPU_ARCH_RISCV config CPU_ARCH_RISCV
bool bool
select HAS_ARCH_RISCV select HAS_ARCH_RISCV
select HAS_PICOLIBC
config CPU_CORE_RV32M config CPU_CORE_RV32M
bool bool

View File

@ -1,4 +1,4 @@
ifeq (1,$(PICOLIBC)) ifneq (,$(filter picolibc,$(FEATURES_USED)))
USEMODULE += picolibc USEMODULE += picolibc
else else
USEMODULE += newlib_nano USEMODULE += newlib_nano

View File

@ -7,4 +7,5 @@ FEATURES_PROVIDED += periph_gpio periph_gpio_irq
FEATURES_PROVIDED += periph_plic FEATURES_PROVIDED += periph_plic
FEATURES_PROVIDED += periph_pm FEATURES_PROVIDED += periph_pm
FEATURES_PROVIDED += periph_wdt FEATURES_PROVIDED += periph_wdt
FEATURES_PROVIDED += picolibc
FEATURES_PROVIDED += ssp FEATURES_PROVIDED += ssp

View File

@ -288,6 +288,11 @@ config HAS_PERIPH_WDT_CB
help help
Indicates that the WDT peripheral allows setting a callback. Indicates that the WDT peripheral allows setting a callback.
config HAS_PICOLIBC
bool
help
Indicates that the picolibc C library is available for the platform.
config HAS_PUF_SRAM config HAS_PUF_SRAM
bool bool
help help