diff options
Diffstat (limited to 'components/libc/compilers/common')
| -rw-r--r-- | components/libc/compilers/common/SConscript | 11 | ||||
| -rw-r--r-- | components/libc/compilers/common/readme.md | 1 | ||||
| -rw-r--r-- | components/libc/compilers/common/sys/time.h | 26 | ||||
| -rw-r--r-- | components/libc/compilers/common/termios.h | 17 | ||||
| -rw-r--r-- | components/libc/compilers/common/time.c | 1 | ||||
| -rw-r--r-- | components/libc/compilers/common/unistd.c | 3 |
6 files changed, 37 insertions, 22 deletions
diff --git a/components/libc/compilers/common/SConscript b/components/libc/compilers/common/SConscript index a8d2606820..2407301405 100644 --- a/components/libc/compilers/common/SConscript +++ b/components/libc/compilers/common/SConscript @@ -8,12 +8,15 @@ group = [] CPPPATH = [cwd] if GetDepend('RT_USING_LIBC'): - src += Glob('*.c') + src += Glob('*.c') else: - if GetDepend('RT_LIBC_USING_TIME'): + if GetDepend('RT_LIBC_USING_TIME') and not GetDepend('RT_USING_MINILIBC'): src += ['time.c'] -if (rtconfig.PLATFORM == 'armcc' or rtconfig.PLATFORM == 'iar') and rtconfig.ARCH != 'sim' : - group = DefineGroup('libc', src, depend = [''], CPPPATH = CPPPATH) +if GetDepend('RT_USING_POSIX') == False: + SrcRemove(src, ['unistd.c']) + +if not GetDepend('RT_USING_MINILIBC') and (GetDepend('RT_USING_LIBC') or GetDepend('RT_LIBC_USING_TIME')): + group = DefineGroup('libc', src, depend = [''], CPPPATH = CPPPATH) Return('group') diff --git a/components/libc/compilers/common/readme.md b/components/libc/compilers/common/readme.md new file mode 100644 index 0000000000..cb91d95f45 --- /dev/null +++ b/components/libc/compilers/common/readme.md @@ -0,0 +1 @@ +This folder is "common" for armlibc newlibc and dlib. It's not "common" for minilibc.
\ No newline at end of file diff --git a/components/libc/compilers/common/sys/time.h b/components/libc/compilers/common/sys/time.h index 1d68eeafa3..22f1c17f5e 100644 --- a/components/libc/compilers/common/sys/time.h +++ b/components/libc/compilers/common/sys/time.h @@ -5,6 +5,7 @@ * * Change Logs: * Date Author Notes + * 2020-09-07 Meco Man combine gcc armcc iccarm */ #ifndef _SYS_TIME_H_ #define _SYS_TIME_H_ @@ -15,6 +16,14 @@ extern "C" { #endif +/* + * Skip define timespec for IAR version over 8.10.1 where __VER__ is 8010001. + */ +#if defined ( __ICCARM__ ) && (__VER__ >= 8010001) +#define _TIMESPEC_DEFINED +#endif + + #ifndef _TIMEVAL_DEFINED #define _TIMEVAL_DEFINED /* @@ -27,23 +36,6 @@ struct timeval { }; #endif /* _TIMEVAL_DEFINED */ -/* - * Skip define timespec for IAR version over 8.10.1 where __VER__ is 8010001. - */ -#if defined ( __ICCARM__ ) && (__VER__ >= 8010001) -#define _TIMESPEC_DEFINED -#endif - -#ifndef _TIMESPEC_DEFINED -#define _TIMESPEC_DEFINED -/* - * Structure defined by POSIX.1b to be like a timeval. - */ -struct timespec { - time_t tv_sec; /* seconds */ - long tv_nsec; /* and nanoseconds */ -}; -#endif /* _TIMESPEC_DEFINED */ struct timezone { int tz_minuteswest; /* minutes west of Greenwich */ diff --git a/components/libc/compilers/common/termios.h b/components/libc/compilers/common/termios.h new file mode 100644 index 0000000000..ee2b4d5718 --- /dev/null +++ b/components/libc/compilers/common/termios.h @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2006-2018, RT-Thread Development Team + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + */ +#ifndef _TERMIOS_H__ +#define _TERMIOS_H__ + +#ifdef RT_USING_POSIX_TERMIOS +#include <sys/types.h> +#include <posix_termios.h> +#endif + +#endif diff --git a/components/libc/compilers/common/time.c b/components/libc/compilers/common/time.c index 50a800b259..99dab71eb4 100644 --- a/components/libc/compilers/common/time.c +++ b/components/libc/compilers/common/time.c @@ -6,6 +6,7 @@ * Change Logs: * Date Author Notes * 2019-08-21 zhangjun copy from minilibc + * 2020-09-07 Meco Man combine gcc armcc iccarm */ #include <sys/time.h> diff --git a/components/libc/compilers/common/unistd.c b/components/libc/compilers/common/unistd.c index 04a0886655..4068fc5cf5 100644 --- a/components/libc/compilers/common/unistd.c +++ b/components/libc/compilers/common/unistd.c @@ -8,10 +8,11 @@ * 2020-09-01 Meco Man First Version */ -#include <termios.h> #include <unistd.h> #ifdef RT_USING_POSIX_TERMIOS +#include <termios.h> + int isatty(int fd) { struct termios ts; |
