Browse Source

修复common文件夹,该文件夹为armlibc/newlib/dlib的共同文件的文件夹

mysterywolf 4 years ago
parent
commit
237a71de27

+ 1 - 2
components/libc/compilers/common/SConscript

@@ -13,7 +13,6 @@ else:
         if GetDepend('RT_LIBC_USING_TIME'):
         if GetDepend('RT_LIBC_USING_TIME'):
                 src += ['time.c']
                 src += ['time.c']
 
 
-if (rtconfig.PLATFORM == 'armcc' or rtconfig.PLATFORM == 'iar') and rtconfig.ARCH != 'sim' :
-        group = DefineGroup('libc', src, depend = [''], CPPPATH = CPPPATH)
+group = DefineGroup('libc', src, depend = [''], CPPPATH = CPPPATH)
 
 
 Return('group')
 Return('group')

+ 1 - 0
components/libc/compilers/common/readme.md

@@ -0,0 +1 @@
+This folder is "common" for armlibc newlibcand dlib. It's not "common" for minilibc.

+ 9 - 17
components/libc/compilers/common/sys/time.h

@@ -5,6 +5,7 @@
  *
  *
  * Change Logs:
  * Change Logs:
  * Date           Author       Notes
  * Date           Author       Notes
+ * 2020-09-07     Meco Man     combine gcc armcc iccarm
  */
  */
 #ifndef _SYS_TIME_H_
 #ifndef _SYS_TIME_H_
 #define _SYS_TIME_H_
 #define _SYS_TIME_H_
@@ -15,6 +16,14 @@
 extern "C" {
 extern "C" {
 #endif
 #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
 #ifndef _TIMEVAL_DEFINED
 #define _TIMEVAL_DEFINED
 #define _TIMEVAL_DEFINED
 /*
 /*
@@ -27,23 +36,6 @@ struct timeval {
 };
 };
 #endif /* _TIMEVAL_DEFINED */
 #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 {
 struct timezone {
   int tz_minuteswest;   /* minutes west of Greenwich */
   int tz_minuteswest;   /* minutes west of Greenwich */

+ 0 - 0
components/libc/compilers/armlibc/termios.h → components/libc/compilers/common/termios.h


+ 1 - 0
components/libc/compilers/common/time.c

@@ -6,6 +6,7 @@
  * Change Logs:
  * Change Logs:
  * Date           Author       Notes
  * Date           Author       Notes
  * 2019-08-21     zhangjun     copy from minilibc
  * 2019-08-21     zhangjun     copy from minilibc
+ * 2020-09-07     Meco Man     combine gcc armcc iccarm
  */
  */
 
 
 #include <sys/time.h>
 #include <sys/time.h>

+ 0 - 0
components/libc/compilers/armlibc/unistd.c → components/libc/compilers/common/unistd.c


+ 0 - 17
components/libc/compilers/dlib/termios.h

@@ -1,17 +0,0 @@
-/*
- * 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

+ 0 - 29
components/libc/compilers/dlib/unistd.c

@@ -1,29 +0,0 @@
-/*
- * Copyright (c) 2006-2018, RT-Thread Development Team
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Change Logs:
- * Date           Author       Notes
- * 2020-09-01     Meco Man     First Version
- */
-
-#include <termios.h>
-#include <unistd.h>
-
-#ifdef RT_USING_POSIX
-
-#ifdef RT_USING_POSIX_TERMIOS
-int isatty(int fd)
-{
-    struct termios ts;
-    return(tcgetattr(fd,&ts) != -1);/*true if no error (is a tty)*/
-}
-#endif
-
-char *ttyname(int fd)
-{
-    return "/dev/tty0"; /*TODO: need to add more specific*/
-}
-
-#endif

+ 0 - 17
components/libc/compilers/newlib/termios.h

@@ -1,17 +0,0 @@
-/*
- * 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

+ 0 - 82
components/libc/compilers/newlib/time.c

@@ -1,82 +0,0 @@
-/*
- * Copyright (c) 2006-2018, RT-Thread Development Team
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Change Logs:
- * Date           Author       Notes
- */
-#include <sys/time.h>
-#include <rtthread.h>
-
-#ifdef RT_USING_DEVICE
-int gettimeofday(struct timeval *tp, void *ignore)
-{
-    time_t time;
-    rt_device_t device;
-
-    device = rt_device_find("rtc");
-    RT_ASSERT(device != RT_NULL);
-
-    rt_device_control(device, RT_DEVICE_CTRL_RTC_GET_TIME, &time);
-    if (tp != RT_NULL)
-    {
-        tp->tv_sec = time;
-        tp->tv_usec = 0;
-    }
-
-    return time;
-}
-#endif
-
-/**
- * Returns the current time.
- *
- * @param time_t * t the timestamp pointer, if not used, keep NULL.
- *
- * @return time_t return timestamp current.
- *
- */
-/* for IAR 6.2 later Compiler */
-#if defined (__IAR_SYSTEMS_ICC__) &&  (__VER__) >= 6020000
-#pragma module_name = "?time"
-time_t (__time32)(time_t *t) /* Only supports 32-bit timestamp */
-#else
-time_t time(time_t *t)
-#endif
-{
-    time_t time_now = 0;
-
-#ifdef RT_USING_RTC
-    static rt_device_t device = RT_NULL;
-
-    /* optimization: find rtc device only first. */
-    if (device == RT_NULL)
-    {
-        device = rt_device_find("rtc");
-    }
-
-    /* read timestamp from RTC device. */
-    if (device != RT_NULL)
-    {
-        if (rt_device_open(device, 0) == RT_EOK)
-        {
-            rt_device_control(device, RT_DEVICE_CTRL_RTC_GET_TIME, &time_now);
-            rt_device_close(device);
-        }
-    }
-#endif /* RT_USING_RTC */
-
-    /* if t is not NULL, write timestamp to *t */
-    if (t != RT_NULL)
-    {
-        *t = time_now;
-    }
-
-    return time_now;
-}
-
-RT_WEAK clock_t clock(void)
-{
-    return rt_tick_get();
-}

+ 0 - 29
components/libc/compilers/newlib/unistd.c

@@ -1,29 +0,0 @@
-/*
- * Copyright (c) 2006-2018, RT-Thread Development Team
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Change Logs:
- * Date           Author       Notes
- * 2020-09-01     Meco Man     First Version
- */
-
-#include <termios.h>
-#include <unistd.h>
-
-#ifdef RT_USING_POSIX
-
-#ifdef RT_USING_POSIX_TERMIOS
-int isatty(int fd)
-{
-    struct termios ts;
-    return(tcgetattr(fd,&ts) != -1);/*true if no error (is a tty)*/
-}
-#endif
-
-char *ttyname(int fd)
-{
-    return "/dev/tty0"; /*TODO: need to add more specific*/
-}
-
-#endif