From 215d1d4c6eebf5e82aa4731ec673d0ff5c9b98c1 Mon Sep 17 00:00:00 2001 From: Meco Man <920369182@qq.com> Date: Sat, 13 Nov 2021 00:17:16 -0500 Subject: [PATCH] [libc][kconfig] update Kconfig --- components/libc/Kconfig | 3 ++- components/libc/compilers/gcc/newlib/syscalls.c | 7 ++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/components/libc/Kconfig b/components/libc/Kconfig index 4506001d4..a6000295e 100644 --- a/components/libc/Kconfig +++ b/components/libc/Kconfig @@ -2,7 +2,8 @@ menu "POSIX layer and C standard library" config RT_USING_LIBC bool "Enable libc APIs from toolchain" - default y + select RT_USING_HEAP + default n if RT_USING_LIBC config RT_LIBC_USING_TIME diff --git a/components/libc/compilers/gcc/newlib/syscalls.c b/components/libc/compilers/gcc/newlib/syscalls.c index 7c25ffac3..f3a2f5bfc 100644 --- a/components/libc/compilers/gcc/newlib/syscalls.c +++ b/components/libc/compilers/gcc/newlib/syscalls.c @@ -80,7 +80,7 @@ void _free_r (struct _reent *ptr, void *addr) void * _sbrk_r(struct _reent *ptr, ptrdiff_t incr) { - LOG_E("Please enable RT_USING_HEAP or RT_USING_LIBC"); + LOG_E("Please enable RT_USING_HEAP"); RT_ASSERT(0); return RT_NULL; } @@ -109,7 +109,12 @@ int _getpid_r(struct _reent *ptr) int _close_r(struct _reent *ptr, int fd) { +#ifdef RT_USING_POSIX return close(fd); +#else + ptr->_errno = ENOTSUP; + return -1; +#endif } int _execve_r(struct _reent *ptr, const char * name, char *const *argv, char *const *env) -- GitLab