summaryrefslogtreecommitdiff
path: root/components
diff options
context:
space:
mode:
authormysterywolf <[email protected]>2020-10-02 12:00:52 +0800
committermysterywolf <[email protected]>2020-10-02 12:00:52 +0800
commitc7aa6f0619318a3730fc4f4689d2cd2e72efed52 (patch)
tree94df2c43c6e5eba1dc84af90ebdcf77a2766e698 /components
parentaeff91b2a7fc846cf3724c01c28fbd7327bd2bac (diff)
[fix bug] #3902
Diffstat (limited to 'components')
-rw-r--r--components/libc/compilers/common/readme.md11
-rw-r--r--components/net/lwip-1.4.1/src/arch/include/arch/cc.h11
-rw-r--r--components/net/lwip-2.0.2/src/arch/include/arch/cc.h11
-rw-r--r--components/net/lwip-2.1.2/src/arch/include/arch/cc.h11
4 files changed, 34 insertions, 10 deletions
diff --git a/components/libc/compilers/common/readme.md b/components/libc/compilers/common/readme.md
index cb91d95f45..0cd56272ff 100644
--- a/components/libc/compilers/common/readme.md
+++ b/components/libc/compilers/common/readme.md
@@ -1 +1,10 @@
-This folder is "common" for armlibc newlibc and dlib. It's not "common" for minilibc. \ No newline at end of file
+# Attention :
+
+1. This folder is "common" for armlibc newlibc and dlib. It's not "common" for minilibc.
+
+2. If you want to add new .c files, please do not forget to fix SConscript file too. eg:
+
+```python
+if GetDepend('RT_USING_POSIX') == False:
+ SrcRemove(src, ['unistd.c'])
+``` \ No newline at end of file
diff --git a/components/net/lwip-1.4.1/src/arch/include/arch/cc.h b/components/net/lwip-1.4.1/src/arch/include/arch/cc.h
index 604477dab8..80e9007459 100644
--- a/components/net/lwip-1.4.1/src/arch/include/arch/cc.h
+++ b/components/net/lwip-1.4.1/src/arch/include/arch/cc.h
@@ -66,7 +66,7 @@ typedef uintptr_t mem_ptr_t;
#endif /* __CC_ARM/__IAR_SYSTEMS_ICC__ */
#endif
-#if defined(RT_USING_LIBC) || defined(RT_USING_MINILIBC) || defined(RT_LIBC_USING_TIME) || defined ( __GNUC__)
+#if defined(RT_USING_LIBC) || defined(RT_USING_MINILIBC) || defined(RT_LIBC_USING_TIME) || (defined( __GNUC__ ) && !defined(__ARMCC_VERSION))
#include <sys/time.h>
#define LWIP_TIMEVAL_PRIVATE 0
#else
@@ -78,10 +78,15 @@ typedef uintptr_t mem_ptr_t;
#define PACK_STRUCT_STRUCT __attribute__ ((__packed__))
#define PACK_STRUCT_BEGIN
#define PACK_STRUCT_END
-#elif defined(__IAR_SYSTEMS_ICC__) /* IAR Compiler */
+#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) /*Arm Compiler 6*/
+#define PACK_STRUCT_FIELD(x) x
+#define PACK_STRUCT_STRUCT __attribute__((packed))
#define PACK_STRUCT_BEGIN
-#define PACK_STRUCT_STRUCT
#define PACK_STRUCT_END
+#elif defined(__IAR_SYSTEMS_ICC__) /* IAR Compiler */
+#define PACK_STRUCT_BEGIN #pragma pack(1)
+#define PACK_STRUCT_STRUCT
+#define PACK_STRUCT_END #pragma pack()
#define PACK_STRUCT_FIELD(x) x
#define PACK_STRUCT_USE_INCLUDES
#elif defined(__GNUC__) /* GNU GCC Compiler */
diff --git a/components/net/lwip-2.0.2/src/arch/include/arch/cc.h b/components/net/lwip-2.0.2/src/arch/include/arch/cc.h
index 00536a8419..8888995bcc 100644
--- a/components/net/lwip-2.0.2/src/arch/include/arch/cc.h
+++ b/components/net/lwip-2.0.2/src/arch/include/arch/cc.h
@@ -45,7 +45,7 @@
#define S32_F "ld"
#define X32_F "lx"
-#if defined(RT_USING_LIBC) || defined(RT_USING_MINILIBC) || defined(RT_LIBC_USING_TIME) || defined ( __GNUC__)
+#if defined(RT_USING_LIBC) || defined(RT_USING_MINILIBC) || defined(RT_LIBC_USING_TIME) || (defined( __GNUC__ ) && !defined(__ARMCC_VERSION))
#include <sys/time.h>
#define LWIP_TIMEVAL_PRIVATE 0
#else
@@ -57,10 +57,15 @@
#define PACK_STRUCT_STRUCT __attribute__ ((__packed__))
#define PACK_STRUCT_BEGIN
#define PACK_STRUCT_END
-#elif defined(__IAR_SYSTEMS_ICC__) /* IAR Compiler */
+#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) /*Arm Compiler 6*/
+#define PACK_STRUCT_FIELD(x) x
+#define PACK_STRUCT_STRUCT __attribute__((packed))
#define PACK_STRUCT_BEGIN
-#define PACK_STRUCT_STRUCT
#define PACK_STRUCT_END
+#elif defined(__IAR_SYSTEMS_ICC__) /* IAR Compiler */
+#define PACK_STRUCT_BEGIN #pragma pack(1)
+#define PACK_STRUCT_STRUCT
+#define PACK_STRUCT_END #pragma pack()
#define PACK_STRUCT_FIELD(x) x
#define PACK_STRUCT_USE_INCLUDES
#elif defined(__GNUC__) /* GNU GCC Compiler */
diff --git a/components/net/lwip-2.1.2/src/arch/include/arch/cc.h b/components/net/lwip-2.1.2/src/arch/include/arch/cc.h
index 6905ecd442..61086b96d3 100644
--- a/components/net/lwip-2.1.2/src/arch/include/arch/cc.h
+++ b/components/net/lwip-2.1.2/src/arch/include/arch/cc.h
@@ -59,7 +59,7 @@
#endif /* __CC_ARM/__IAR_SYSTEMS_ICC__ */
#endif /* RT_USING_LIBC */
-#if defined(RT_USING_LIBC) || defined(RT_USING_MINILIBC) || defined(RT_LIBC_USING_TIME) || defined ( __GNUC__)
+#if defined(RT_USING_LIBC) || defined(RT_USING_MINILIBC) || defined(RT_LIBC_USING_TIME) || (defined( __GNUC__ ) && !defined(__ARMCC_VERSION))
#include <sys/time.h>
#define LWIP_TIMEVAL_PRIVATE 0
#else
@@ -71,10 +71,15 @@
#define PACK_STRUCT_STRUCT __attribute__ ((__packed__))
#define PACK_STRUCT_BEGIN
#define PACK_STRUCT_END
-#elif defined(__IAR_SYSTEMS_ICC__) /* IAR Compiler */
+#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) /*Arm Compiler 6*/
+#define PACK_STRUCT_FIELD(x) x
+#define PACK_STRUCT_STRUCT __attribute__((packed))
#define PACK_STRUCT_BEGIN
-#define PACK_STRUCT_STRUCT
#define PACK_STRUCT_END
+#elif defined(__IAR_SYSTEMS_ICC__) /* IAR Compiler */
+#define PACK_STRUCT_BEGIN #pragma pack(1)
+#define PACK_STRUCT_STRUCT
+#define PACK_STRUCT_END #pragma pack()
#define PACK_STRUCT_FIELD(x) x
#define PACK_STRUCT_USE_INCLUDES
#elif defined(__GNUC__) /* GNU GCC Compiler */