Patchwork [8/8] build: fix libiptc build failure on old linux-glibc-devel headers

login
register
mail settings
Submitter Jan Engelhardt
Date Jan. 24, 2013, 7:37 p.m.
Message ID <1359056278-27618-9-git-send-email-jengelh@inai.de>
Download mbox | patch
Permalink /patch/215490/
State Superseded
Headers show

Comments

Jan Engelhardt - Jan. 24, 2013, 7:37 p.m.
On Linux 2.4.x systems, where /usr/include/linux generally contain
unsanitized headers, compilation of libiptc fails with

	  CC       libip4tc.lo
	In file included from libip4tc.c:113:
	libiptc.c:93: error: field `list' has incomplete type

This is because /usr/include/linux/list.h still existed at that time,
but has all its definitions stashed in __KERNEL__. Switching
linux_list.h's guards to another name resolves the problem.

Signed-off-by: Jan Engelhardt <jengelh@inai.de>
---
 libiptc/linux_list.h   |    4 ++--
 libiptc/linux_stddef.h |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)
Pablo Neira - Jan. 28, 2013, 11:41 a.m.
On Thu, Jan 24, 2013 at 08:37:58PM +0100, Jan Engelhardt wrote:
> On Linux 2.4.x systems, where /usr/include/linux generally contain
> unsanitized headers, compilation of libiptc fails with
> 
> 	  CC       libip4tc.lo
> 	In file included from libip4tc.c:113:
> 	libiptc.c:93: error: field `list' has incomplete type
> 
> This is because /usr/include/linux/list.h still existed at that time,
> but has all its definitions stashed in __KERNEL__. Switching
> linux_list.h's guards to another name resolves the problem.

We'll have no more releases of 2.4:

http://lwn.net/Articles/491245/

It's been announced several times that it has entered EOL.
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/libiptc/linux_list.h b/libiptc/linux_list.h
index abdcf88..3a51185 100644
--- a/libiptc/linux_list.h
+++ b/libiptc/linux_list.h
@@ -1,5 +1,5 @@ 
-#ifndef _LINUX_LIST_H
-#define _LINUX_LIST_H
+#ifndef _IPTC_LIST_H
+#define _IPTC_LIST_H
 
 #undef offsetof
 #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
diff --git a/libiptc/linux_stddef.h b/libiptc/linux_stddef.h
index 56416f1..57758c9 100644
--- a/libiptc/linux_stddef.h
+++ b/libiptc/linux_stddef.h
@@ -1,5 +1,5 @@ 
-#ifndef _LINUX_STDDEF_H
-#define _LINUX_STDDEF_H
+#ifndef _IPTC_STDDEF_H
+#define _IPTC_STDDEF_H
 
 #undef NULL
 #if defined(__cplusplus)