--- Begin Message ---
Package: linux-kernel-headers
Version: 2.6.13+0rc3-2.1
Severity: normal
Hi,
#include <asm/io.h>
int main(void) {
}
doesn't compile on ia64, and makes several packages FTBFS:
gcc -Wall test.c -o test
In file included from test.c:1:
/usr/include/asm/io.h:325: error: syntax error before '*' token
/usr/include/asm/io.h: In function '___ia64_readb':
/usr/include/asm/io.h:327: error: syntax error before '__force'
/usr/include/asm/io.h: At top level:
/usr/include/asm/io.h:331: error: syntax error before '*' token
/usr/include/asm/io.h: In function '___ia64_readw':
/usr/include/asm/io.h:333: error: syntax error before '__force'
/usr/include/asm/io.h: At top level:
/usr/include/asm/io.h:337: error: syntax error before '*' token
/usr/include/asm/io.h: In function '___ia64_readl':
/usr/include/asm/io.h:339: error: syntax error before '__force'
/usr/include/asm/io.h: At top level:
/usr/include/asm/io.h:343: error: syntax error before '*' token
/usr/include/asm/io.h: In function '___ia64_readq':
/usr/include/asm/io.h:345: error: syntax error before '__force'
/usr/include/asm/io.h: At top level:
/usr/include/asm/io.h:349: error: syntax error before '*' token
/usr/include/asm/io.h: In function '__writeb':
/usr/include/asm/io.h:351: error: syntax error before '__force'
/usr/include/asm/io.h: At top level:
/usr/include/asm/io.h:355: error: syntax error before '*' token
/usr/include/asm/io.h: In function '__writew':
/usr/include/asm/io.h:357: error: syntax error before '__force'
/usr/include/asm/io.h: At top level:
/usr/include/asm/io.h:361: error: syntax error before '*' token
/usr/include/asm/io.h: In function '__writel':
/usr/include/asm/io.h:363: error: syntax error before '__force'
/usr/include/asm/io.h: At top level:
/usr/include/asm/io.h:367: error: syntax error before '*' token
/usr/include/asm/io.h: In function '__writeq':
/usr/include/asm/io.h:369: error: syntax error before '__force'
/usr/include/asm/io.h: At top level:
/usr/include/asm/io.h:432: error: syntax error before '*' token
/usr/include/asm/io.h: In function 'ioremap':
/usr/include/asm/io.h:435: error: syntax error before '__iomem'
/usr/include/asm/io.h: At top level:
/usr/include/asm/io.h:439: error: syntax error before '*' token
test.c: In function 'main':
test.c:3: warning: control reaches end of non-void function
make: *** [test] Erreur 1
That's because __iomem and __force are defined in include/linux/compiler.h,
but that one is not included. Here is a suggested patch:
--- /usr/include/asm/io-orig.h 2006-03-15 09:48:34.369634120 +0100
+++ /usr/include/asm/io.h 2006-03-15 09:48:41.134349696 +0100
@@ -1,6 +1,8 @@
#ifndef _ASM_IA64_IO_H
#define _ASM_IA64_IO_H
+#include <linux/compiler.h>
+
/*
* This file contains the definitions for the emulated IO instructions
* inb/inw/inl/outb/outw/outl and the "string versions" of the same
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable')
Architecture: ia64
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.8-1-mckinley-smp
Locale: LANG=fr_FR@euro, LC_CTYPE=fr_FR@euro (charmap=ISO-8859-15)
-- no debconf information
--- End Message ---