* [PATCH] mini-os: build fixes for lwip 1.3.2
@ 2013-01-28 15:39 David Vrabel
2013-01-28 16:39 ` Samuel Thibault
0 siblings, 1 reply; 2+ messages in thread
From: David Vrabel @ 2013-01-28 15:39 UTC (permalink / raw)
To: xen-devel; +Cc: David Vrabel
From: David Vrabel <david.vrabel@citrix.com>
Various fixes to mini-os needed to build lwip 1.3.2:
- Don't build the tests.
- Endianness macros #defined in arch/cc.h.
- free() is called via a function pointer so it needs to be a real
function.
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
---
| 2 +-
| 2 +-
| 4 ++++
| 3 ++-
| 5 +++++
5 files changed, 13 insertions(+), 3 deletions(-)
--git a/extras/mini-os/Makefile b/extras/mini-os/Makefile
index 2302a23..50d038b 100644
--- a/extras/mini-os/Makefile
+++ b/extras/mini-os/Makefile
@@ -136,7 +136,7 @@ arch_lib:
ifeq ($(CONFIG_LWIP),y)
# lwIP library
-LWC := $(shell find $(LWIPDIR)/ -type f -name '*.c')
+LWC := $(shell find $(LWIPDIR)/src -type f -name '*.c')
LWC := $(filter-out %6.c %ip6_addr.c %ethernetif.c, $(LWC))
LWO := $(patsubst %.c,%.o,$(LWC))
LWO += $(OBJ_DIR)/lwip-arch.o
--git a/extras/mini-os/README b/extras/mini-os/README
index 41573aa..710a303 100644
--- a/extras/mini-os/README
+++ b/extras/mini-os/README
@@ -19,7 +19,7 @@ This includes:
- to build it just type make.
-- to build it with TCP/IP support, download LWIP 1.3 source code and type
+- to build it with TCP/IP support, download LWIP 1.3.2 source code and type
make LWIPDIR=/path/to/lwip/source
--git a/extras/mini-os/include/arch/cc.h b/extras/mini-os/include/arch/cc.h
index 85cfbdb..131d500 100644
--- a/extras/mini-os/include/arch/cc.h
+++ b/extras/mini-os/include/arch/cc.h
@@ -63,6 +63,10 @@ extern void lwip_die(char *fmt, ...);
#include <endian.h>
#endif
+#define BYTE_ORDER __BYTE_ORDER
+#define BIG_ENDIAN __BIG_ENDIAN
+#define LITTLE_ENDIAN __LITTLE_ENDIAN
+
#include <inttypes.h>
#define S16_F PRIi16
#define U16_F PRIu16
--git a/extras/mini-os/include/xmalloc.h b/extras/mini-os/include/xmalloc.h
index 13b242e..bd37942 100644
--- a/extras/mini-os/include/xmalloc.h
+++ b/extras/mini-os/include/xmalloc.h
@@ -15,9 +15,10 @@
#define DEFAULT_ALIGN (sizeof(unsigned long))
#define malloc(size) _xmalloc(size, DEFAULT_ALIGN)
-#define free(ptr) xfree(ptr)
#define realloc(ptr, size) _realloc(ptr, size)
+extern void free(void *ptr);
+
/* Free any of the above. */
extern void xfree(const void *);
--git a/extras/mini-os/lib/xmalloc.c b/extras/mini-os/lib/xmalloc.c
index 015cd31..8e5e245 100644
--- a/extras/mini-os/lib/xmalloc.c
+++ b/extras/mini-os/lib/xmalloc.c
@@ -296,6 +296,11 @@ void *_realloc(void *ptr, size_t size)
return new;
}
+
+void free(void *ptr)
+{
+ xfree(ptr);
+}
#endif
/*
--
1.7.2.5
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH] mini-os: build fixes for lwip 1.3.2
2013-01-28 15:39 [PATCH] mini-os: build fixes for lwip 1.3.2 David Vrabel
@ 2013-01-28 16:39 ` Samuel Thibault
0 siblings, 0 replies; 2+ messages in thread
From: Samuel Thibault @ 2013-01-28 16:39 UTC (permalink / raw)
To: David Vrabel; +Cc: xen-devel
David Vrabel, le Mon 28 Jan 2013 15:39:12 +0000, a écrit :
> - Endianness macros #defined in arch/cc.h.
These should rather go to endian.h, I guess lwip would be able to find
them there, shouldn't it?
> - free() is called via a function pointer so it needs to be a real
> function.
For coherency, could you do the same with malloc and realloc?
> #define malloc(size) _xmalloc(size, DEFAULT_ALIGN)
> -#define free(ptr) xfree(ptr)
> #define realloc(ptr, size) _realloc(ptr, size)
Samuel
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-01-28 16:39 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-28 15:39 [PATCH] mini-os: build fixes for lwip 1.3.2 David Vrabel
2013-01-28 16:39 ` Samuel Thibault
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).