summaryrefslogtreecommitdiff
path: root/components/libc/compilers/common
diff options
context:
space:
mode:
authorxqyjlj <[email protected]>2023-03-27 17:09:37 +0800
committerguo <[email protected]>2023-03-31 10:56:37 +0800
commit157dc0959c30ef0296cfa582d9ae8e610a0f0709 (patch)
tree3ab3c6d42667abbb9cf796c5071dd43ee6f97611 /components/libc/compilers/common
parentc3b08d4288e4f61b300217d4eeb327aa1d3be04a (diff)
✨ feat(components): add uname support
Diffstat (limited to 'components/libc/compilers/common')
-rw-r--r--components/libc/compilers/common/include/sys/utsname.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/components/libc/compilers/common/include/sys/utsname.h b/components/libc/compilers/common/include/sys/utsname.h
new file mode 100644
index 0000000000..5089f24b89
--- /dev/null
+++ b/components/libc/compilers/common/include/sys/utsname.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (c) 2006-2023, RT-Thread Development Team
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Change Logs:
+ * Date Author Notes
+ * 2023-03-27 xqyjlj add uname
+ */
+
+#ifndef __SYS_UTSNAME_H__
+#define __SYS_UTSNAME_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef RT_USING_MUSLLIBC
+/* this is required for musl <sys/utsname.h> */
+#ifndef _POSIX_SOURCE
+#define _POSIX_SOURCE
+#include_next <sys/utsname.h>
+/* limiting influence of _POSIX_SOURCE */
+#undef _POSIX_SOURCE
+
+#else /* def _POSIX_SOURCE */
+#include_next <sys/utsname.h>
+#endif
+#else
+
+struct utsname
+{
+ char sysname[65];
+ char nodename[65];
+ char release[65];
+ char version[65];
+ char machine[65];
+ char domainname[65];
+};
+
+int uname(struct utsname *);
+
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif