1
- /*
2
- * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3
- * All rights reserved.
4
- *
5
- * Redistribution and use in source and binary forms, with or without modification,
6
- * are permitted provided that the following conditions are met:
7
- *
8
- * 1. Redistributions of source code must retain the above copyright notice,
9
- * this list of conditions and the following disclaimer.
10
- * 2. Redistributions in binary form must reproduce the above copyright notice,
11
- * this list of conditions and the following disclaimer in the documentation
12
- * and/or other materials provided with the distribution.
13
- * 3. The name of the author may not be used to endorse or promote products
14
- * derived from this software without specific prior written permission.
15
- *
16
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19
- * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21
- * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24
- * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25
- * OF SUCH DAMAGE.
26
- *
27
- * This file is part of the lwIP TCP/IP stack.
28
- *
29
- * Author: Adam Dunkels <[email protected] >
30
- *
31
- */
32
- #ifndef __CC_H__
33
- #define __CC_H__
1
+ /*
2
+ * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3
+ * All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without modification,
6
+ * are permitted provided that the following conditions are met:
7
+ *
8
+ * 1. Redistributions of source code must retain the above copyright notice,
9
+ * this list of conditions and the following disclaimer.
10
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
11
+ * this list of conditions and the following disclaimer in the documentation
12
+ * and/or other materials provided with the distribution.
13
+ * 3. The name of the author may not be used to endorse or promote products
14
+ * derived from this software without specific prior written permission.
15
+ *
16
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19
+ * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25
+ * OF SUCH DAMAGE.
26
+ *
27
+ * This file is part of the lwIP TCP/IP stack.
28
+ *
29
+ * Author: Adam Dunkels <[email protected] >
30
+ *
31
+ */
32
+ #ifndef __CC_H__
33
+ #define __CC_H__
34
34
35
35
#include <stdint.h>
36
36
#include <stddef.h> /* for size_t */
37
37
#include "mbed_toolchain.h"
38
+ #include "lwipopts.h"
38
39
39
40
#ifdef __cplusplus
40
41
extern "C" {
@@ -48,8 +49,10 @@ extern "C" {
48
49
#define BYTE_ORDER LITTLE_ENDIAN
49
50
#endif
50
51
52
+ #ifndef LWIP_PROVIDE_ERRNO
51
53
/* Use LWIP error codes */
52
54
#define LWIP_PROVIDE_ERRNO
55
+ #endif
53
56
54
57
#if defined(__arm__ ) && defined(__ARMCC_VERSION ) && (__ARMCC_VERSION < 6010050 )
55
58
/* Keil uVision4 tools */
@@ -58,22 +61,22 @@ extern "C" {
58
61
#define PACK_STRUCT_END
59
62
#define PACK_STRUCT_FIELD (fld ) fld
60
63
#define ALIGNED (n ) __align(n)
61
- #elif defined (__IAR_SYSTEMS_ICC__ )
64
+ #elif defined (__IAR_SYSTEMS_ICC__ )
62
65
/* IAR Embedded Workbench tools */
63
66
#define PACK_STRUCT_BEGIN __packed
64
67
#define PACK_STRUCT_STRUCT
65
68
#define PACK_STRUCT_END
66
69
#define PACK_STRUCT_FIELD (fld ) fld
67
70
#define IAR_STR (a ) #a
68
71
#define ALIGNED (n ) _Pragma(IAR_STR(data_alignment= ## n ##))
69
- #else
72
+ #else
70
73
/* GCC tools (CodeSourcery) */
71
74
#define PACK_STRUCT_BEGIN
72
75
#define PACK_STRUCT_STRUCT __attribute__ ((__packed__))
73
76
#define PACK_STRUCT_END
74
77
#define PACK_STRUCT_FIELD (fld ) fld
75
78
#define ALIGNED (n ) __attribute__((aligned (n)))
76
- #endif
79
+ #endif
77
80
78
81
/* Provide Thumb-2 routines for GCC to improve performance */
79
82
#if defined(TOOLCHAIN_GCC ) && defined(__thumb2__ )
@@ -115,7 +118,7 @@ MBED_NORETURN void assert_printf(const char *msg, int line, const char *file);
115
118
#define LWIP_PLATFORM_DIAG (vars ) printf vars
116
119
#define LWIP_PLATFORM_ASSERT (flag ) { assert_printf((flag), __LINE__, __FILE__); }
117
120
#endif // MBED_CONF_LWIP_USE_MBED_TRACE
118
- #endif
121
+ #endif
119
122
120
123
#if TRACE_TO_ASCII_HEX_DUMP
121
124
#define TRACE_TO_ASCII_HEX_DUMPF (prefix , len , data ) trace_to_ascii_hex_dump(prefix, len, data)
@@ -180,4 +183,4 @@ SET_MEMP_SECTION(memp_memory_TCPIP_MSG_API_base);
180
183
}
181
184
#endif
182
185
183
- #endif /* __CC_H__ */
186
+ #endif /* __CC_H__ */
0 commit comments