summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Xiong <[email protected]>2020-09-04 08:49:11 +0800
committerGitHub <[email protected]>2020-09-04 08:49:11 +0800
commit86e4216275ded5f6e2cb28bbc33e754942910173 (patch)
tree8b740b0b3d86edf6b9945ee61af29221ca176652
parentcf442c2c2edf32a41aa309a7d4f702014aa0ac9d (diff)
parent5721fa8990e4178a427564a1e546df507c87c2b4 (diff)
Merge pull request #3869 from mysterywolf/master
[fix/add/bug] 修改armlibc多处,重新提交了[请求优先通过!!]
-rw-r--r--components/libc/compilers/armlibc/fcntl.h2
-rw-r--r--components/libc/compilers/armlibc/sys/ioctl.h15
-rw-r--r--components/libc/compilers/armlibc/sys/unistd.h4
-rw-r--r--components/libc/compilers/armlibc/unistd.h1
-rw-r--r--components/libc/compilers/common/unistd.c25
-rw-r--r--components/libc/compilers/dlib/sys/unistd.h4
-rw-r--r--components/libc/termios/posix_termios.c9
-rw-r--r--components/libc/termios/posix_termios.h4
8 files changed, 54 insertions, 10 deletions
diff --git a/components/libc/compilers/armlibc/fcntl.h b/components/libc/compilers/armlibc/fcntl.h
index 80cf1b4409..3e650a8471 100644
--- a/components/libc/compilers/armlibc/fcntl.h
+++ b/components/libc/compilers/armlibc/fcntl.h
@@ -9,6 +9,8 @@
#ifndef FCNTL_H__
#define FCNTL_H__
+#include <rtconfig.h>
+
#ifdef RT_USING_DFS
#include <dfs_posix.h>
#endif
diff --git a/components/libc/compilers/armlibc/sys/ioctl.h b/components/libc/compilers/armlibc/sys/ioctl.h
new file mode 100644
index 0000000000..033a57014a
--- /dev/null
+++ b/components/libc/compilers/armlibc/sys/ioctl.h
@@ -0,0 +1,15 @@
+/*
+ * 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
+ */
+#ifndef _SYS_IOCTL_H
+#define _SYS_IOCTL_H
+
+
+
+#endif
diff --git a/components/libc/compilers/armlibc/sys/unistd.h b/components/libc/compilers/armlibc/sys/unistd.h
index 33f0561e72..3199b01e0e 100644
--- a/components/libc/compilers/armlibc/sys/unistd.h
+++ b/components/libc/compilers/armlibc/sys/unistd.h
@@ -46,4 +46,8 @@
#define O_SYNC _FSYNC
#endif
+
+int isatty (int fd);
+char * ttyname (int desc);
+
#endif /* _SYS_UNISTD_H */
diff --git a/components/libc/compilers/armlibc/unistd.h b/components/libc/compilers/armlibc/unistd.h
index 70187722d8..736fc219a8 100644
--- a/components/libc/compilers/armlibc/unistd.h
+++ b/components/libc/compilers/armlibc/unistd.h
@@ -7,3 +7,4 @@
* Date Author Notes
*/
#include "sys/unistd.h"
+
diff --git a/components/libc/compilers/common/unistd.c b/components/libc/compilers/common/unistd.c
new file mode 100644
index 0000000000..04a0886655
--- /dev/null
+++ b/components/libc/compilers/common/unistd.c
@@ -0,0 +1,25 @@
+/*
+ * 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_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*/
+}
diff --git a/components/libc/compilers/dlib/sys/unistd.h b/components/libc/compilers/dlib/sys/unistd.h
index 29f68f24f8..9564daba8d 100644
--- a/components/libc/compilers/dlib/sys/unistd.h
+++ b/components/libc/compilers/dlib/sys/unistd.h
@@ -36,4 +36,8 @@
#endif
+
+int isatty (int fd);
+char * ttyname (int desc);
+
#endif /* _SYS_UNISTD_H */
diff --git a/components/libc/termios/posix_termios.c b/components/libc/termios/posix_termios.c
index 75c876dd33..9c736c3184 100644
--- a/components/libc/termios/posix_termios.c
+++ b/components/libc/termios/posix_termios.c
@@ -5,7 +5,7 @@
*
* Change Logs:
* Date Author Notes
- * 2017/08/30 Bernard The first version
+ * 2017/08/30 Bernard The first version
*/
#include <stdlib.h>
#include <string.h>
@@ -111,13 +111,6 @@ int tcdrain(int fd)
return 0;
}
-int isatty (int fd)
-{
- struct termios term;
-
- return tcgetattr (fd, &term) == 0;
-}
-
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
void cfmakeraw(struct termios *t)
{
diff --git a/components/libc/termios/posix_termios.h b/components/libc/termios/posix_termios.h
index 6d4be129ff..c61191b7dc 100644
--- a/components/libc/termios/posix_termios.h
+++ b/components/libc/termios/posix_termios.h
@@ -5,13 +5,13 @@
*
* Change Logs:
* Date Author Notes
- * 2017/08/30 Bernard The first version
+ * 2017/08/30 Bernard The first version
*/
#ifndef TERMIOS_H__
#define TERMIOS_H__
#include <rtthread.h>
-#include <termios.h>
+#include <sys/types.h>
#ifdef __cplusplus
extern "C" {