Meco Man 4 years ago
parent
commit
69dc37e1aa

+ 7 - 1
components/libc/compilers/common/unistd.c

@@ -50,7 +50,13 @@ int usleep(useconds_t usec)
 }
 RTM_EXPORT(usleep);
 
-pid_t getpid(void)
+pid_t
+#if defined (RT_USING_NEWLIB)
+__rt_libc_getpid
+#else
+getpid
+#endif
+(void)
 {
     /*TODO*/
     return 0;

+ 7 - 3
components/libc/compilers/newlib/syscalls.c

@@ -35,6 +35,13 @@ __errno ()
 }
 #endif
 
+int
+_getpid_r(struct _reent *ptr)
+{
+    extern pid_t __rt_libc_getpid(void);
+    return __rt_libc_getpid();
+}
+
 int
 _close_r(struct _reent *ptr, int fd)
 {
@@ -332,7 +339,4 @@ int flock(int fd, int operation)
 These functions are implemented and replaced by the 'common/time.c' file
 int _gettimeofday_r(struct _reent *ptr, struct timeval *__tp, void *__tzp);
 _CLOCK_T_  _times_r(struct _reent *ptr, struct tms *ptms);
-
-These functions are implemented and replaced by the "common/unistd.c" file
-int _getpid_r(struct _reent *ptr);
 */