Hi,
On Tue, 2006-04-11 at 06:14:58 +0300, Guillem Jover wrote:
> This patch by Andreas Jochens <[EMAIL PROTECTED]>, fixes a build failure
> on amd64 due to types clashing by including 'dfb_types.h' instead
> of 'asm/types.h' (needs to be applied after the fbdev one, or just
> ignore the error from the missing file).
There has been another build failure on Debian GNU/Linux amd64, due
to the redefinition of kernel types from userland. Here's a better
approach, rename all kernel types from userland to proper userland
ones. I've chosen the inet types as they are the ones currently used
in "dfb_types.h", but those could be changed to use <stdint.h> as well.
I include an incremental patch over the other one I sent, and a script
to do a mass rename over the whole source tree (because the patch
generated was 430 KiB).
regards,
guillem
#DPATCHLEVEL=0
--- include/dfb_types.h 2005-07-26 23:58:50.000000000 +0300
+++ include/dfb_types.h 2006-04-14 14:42:16.000000000 +0300
@@ -3,29 +3,17 @@
#include <sys/types.h>
-#ifndef USE_KOS
+#ifdef USE_KOS
-#define __u8 u_int8_t
-#define __u16 u_int16_t
-#define __u32 u_int32_t
-#define __u64 u_int64_t
-
-#define __s8 int8_t
-#define __s16 int16_t
-#define __s32 int32_t
-#define __s64 int64_t
-
-#else
-
-#define __u8 uint8
-#define __u16 uint16
-#define __u32 uint32
-#define __u64 uint64
-
-#define __s8 sint8
-#define __s16 sint16
-#define __s32 sint32
-#define __s64 sint64
+typedef uint8 u_int8_t;
+typedef uint16 u_int16_t;
+typedef uint32 u_int32_t;
+typedef uint64 u_int64_t;
+
+typedef sint8 int8_t;
+typedef sint16 int16_t;
+typedef sint32 int32_t;
+typedef sint64 int64_t;
#endif
#!/bin/sh
grep -lsr '__[su][8136]' * | grep -vE '(ChangeLog|NEWS|dfb_types\.h)' | \
xargs sed -i \
-e 's:__u8:u_int8_t:g' \
-e 's:__s8:int8_t:g' \
-e 's:__u16:u_int16_t:g' \
-e 's:__s16:int16_t:g' \
-e 's:__u32:u_int32_t:g' \
-e 's:__s32:int32_t:g' \
-e 's:__u64:u_int8_t:g' \
-e 's:__s64:int64_t:g'
_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev