theo doukas wrote:
> Hi,
>
> building of DirectFB, both CVS and 1.0-rc2 fails on my system (amd64,
> debian etch rc1) due to a type conflict:
>
> In file included from /usr/include/asm/types.h:8,
> from /usr/include/linux/agpgart.h:54,
> from agp.h:32,
> from fbdev.h:40,
> from fbdev.c:84:
> /usr/include/asm-x86_64/types.h:23: error: conflicting types for 's64'
> ../../include/dfb_types.h:31: error: previous declaration of 's64' was here
> /usr/include/asm-x86_64/types.h:24: error: conflicting types for 'u64'
> ../../include/dfb_types.h:26: error: previous declaration of 'u64' was here
>
It seems the Debian guys have modified the header because those types
should be __s64 and __u64 instead of s64 and u64.
See the attached header (linux-2.6.18).
--
Regards,
Claudio Ciccani
[EMAIL PROTECTED]
http://directfb.org
http://sf.net/projects/php-directfb
#ifndef _X86_64_TYPES_H
#define _X86_64_TYPES_H
#ifndef __ASSEMBLY__
typedef unsigned short umode_t;
/*
* __xx is ok: it doesn't pollute the POSIX namespace. Use these in the
* header files exported to user space
*/
typedef __signed__ char __s8;
typedef unsigned char __u8;
typedef __signed__ short __s16;
typedef unsigned short __u16;
typedef __signed__ int __s32;
typedef unsigned int __u32;
typedef __signed__ long long __s64;
typedef unsigned long long __u64;
#endif /* __ASSEMBLY__ */
/*
* These aren't exported outside the kernel to avoid name space clashes
*/
#ifdef __KERNEL__
#define BITS_PER_LONG 64
#ifndef __ASSEMBLY__
typedef signed char s8;
typedef unsigned char u8;
typedef signed short s16;
typedef unsigned short u16;
typedef signed int s32;
typedef unsigned int u32;
typedef signed long long s64;
typedef unsigned long long u64;
typedef u64 dma64_addr_t;
typedef u64 dma_addr_t;
typedef u64 sector_t;
#define HAVE_SECTOR_T
#endif /* __ASSEMBLY__ */
#endif /* __KERNEL__ */
#endif
_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev