Andreas Jochens wrote:
> Package: partimage
> Version: 0.6.4-15
> Severity: serious
> Tags: patch
> 
> When building 'partimage' on amd64/unstable, I get the following error:
> 
> In file included from misc.cpp:61:
> fs/fs_jfs.h:41:1: warning: this is the location of the previous definition
> fs/fs_xfs.h:158: error: conflicting declaration 'typedef long unsigned int 
> __u64'
> /usr/include/asm-x86_64/types.h:24: error: '__u64' has a previous declaration 
> as 'typedef long long unsigned int __u64'
> fs/fs_xfs.h:159: error: conflicting declaration 'typedef long int __s64'
> /usr/include/asm-x86_64/types.h:23: error: '__s64' has a previous declaration 
> as 'typedef long long int __s64'
> make[5]: *** [misc.o] Error 1
> make[5]: Leaving directory `/partimage-0.6.4/src/client'
> 
> This seems to be related to the new version of linux-kernel-headers.
> 
> With the attached patch 'partimage' can be compiled on amd64.

I created a different patch which makes use of stdint.h. As I can't test
it on AMD64 (and ppc64) could you please replace debian/patches/xfs.diff
with the one attached and let me know if it compiles.

Thanks,
Michael

-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
Index: src/client/fs/fs_xfs.h
===================================================================
--- src/client/fs/fs_xfs.h	(Revision 76)
+++ src/client/fs/fs_xfs.h	(Arbeitskopie)
@@ -19,6 +19,7 @@
 #define FS_XFS_H
 
 #include <ctype.h>
+#include <stdint.h>
 
 #include "partimage.h"
 #include "common.h"
@@ -99,22 +100,14 @@
 #define	XFS_BTNUM_INO	((xfs_btnum_t)XFS_BTNUM_INOi)
 
 #define	XFS_SB_MAGIC		0x58465342	// 'XFSB'
-typedef signed char	__int8_t;
-typedef unsigned char	__uint8_t;
-typedef signed short int	__int16_t;
-typedef unsigned short int	__uint16_t;
-typedef signed int	__int32_t;
-typedef unsigned int	__uint32_t;
-#ifdef __ia64__
-typedef signed long int	__int64_t;
-typedef unsigned long int	__uint64_t;
-#elif __alpha__
-typedef signed long int    __int64_t;
-typedef unsigned long int  __uint64_t;
-#else
-typedef signed long long int    __int64_t;
-typedef unsigned long long int  __uint64_t;
-#endif
+typedef int8_t __int8_t;
+typedef uint8_t __uint8_t;
+typedef int16_t __int16_t;
+typedef uint16_t __uint16_t;
+typedef int32_t __int32_t;
+typedef uint32_t __uint32_t;
+typedef int64_t __int64_t;
+typedef uint64_t __uint64_t;
 
 // POSIX Extensions
 typedef unsigned char	uchar_t;
@@ -157,16 +150,8 @@
 typedef	__uint64_t	xfs_dfiloff_t;	// block number in a file 
 typedef	__uint64_t	xfs_dfilblks_t;	// number of blocks in a file 
 
-#ifdef __ia64__
-typedef unsigned long  __u64; 
-typedef signed long    __s64; 
-#elif __alpha__
-typedef unsigned long  __u64; 
-typedef signed long    __s64; 
-#else
-typedef unsigned long long  __u64; 
-typedef signed long long    __s64; 
-#endif
+typedef uint64_t __u64;
+typedef int64_t  __s64;
 
 typedef __u64	xfs_off_t;
 //typedef __s32	xfs32_off_t;

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to