diff options
Diffstat (limited to 'components')
| -rw-r--r-- | components/libc/Kconfig | 24 | ||||
| -rw-r--r-- | components/libc/compilers/SConscript | 9 |
2 files changed, 25 insertions, 8 deletions
diff --git a/components/libc/Kconfig b/components/libc/Kconfig index 47b484744e..9939dbdc4e 100644 --- a/components/libc/Kconfig +++ b/components/libc/Kconfig @@ -1,11 +1,27 @@ menu "C/C++ and POSIX layer" -# This is for external libc(e.g. mlib), -# and NOT for newlib or picolibc which are inherent in the toolchains. -# Usually, the external libc should be a software package and select -# RT_USING_EXTERNAL_LIBC in software package's Kconfig +config RT_USING_INTERNAL_LIBC_ONLY + bool "Only use tool chain internal libc" + default n + help + This option is for RT-Thread Nano version. + If select this option, it will not compile components/libc + folder and only use tool chain internal libc. Normally, the + tool chain internal is only cover ISO standard (e.g. armcc), + but some tool chains' internal libc will cover more than + ISO standard (e.g. newlib). However, no matter the cover level + it is, the rt-thread libc leveling layer will not be involved + at all if select this option. + config RT_USING_EXTERNAL_LIBC + depends on !RT_USING_INTERNAL_LIBC_ONLY bool + help + This is for external libc(e.g. mlib), + and NOT for newlib or picolibc which are inherent in the toolchains. + Usually, the external libc should be a software package and select + RT_USING_EXTERNAL_LIBC in software package's Kconfig + This option is not available for users to select. source "$RTT_DIR/components/libc/compilers/common/Kconfig" source "$RTT_DIR/components/libc/posix/Kconfig" diff --git a/components/libc/compilers/SConscript b/components/libc/compilers/SConscript index 4c815c49b8..772229b18d 100644 --- a/components/libc/compilers/SConscript +++ b/components/libc/compilers/SConscript @@ -7,9 +7,10 @@ cwd = GetCurrentDir() objs = [] list = os.listdir(cwd) -for d in list: - path = os.path.join(cwd, d) - if os.path.isfile(os.path.join(path, 'SConscript')): - objs = objs + SConscript(os.path.join(d, 'SConscript')) +if not GetDepend('RT_USING_INTERNAL_LIBC_ONLY'): + for d in list: + path = os.path.join(cwd, d) + if os.path.isfile(os.path.join(path, 'SConscript')): + objs = objs + SConscript(os.path.join(d, 'SConscript')) Return('objs') |
