chiark / gitweb /
[PATCH] Build failure - missing linux/limits.h include?
authorarnd@arndb.de <arnd@arndb.de>
Tue, 2 Dec 2003 08:26:46 +0000 (00:26 -0800)
committerGreg KH <gregkh@suse.de>
Wed, 27 Apr 2005 04:13:04 +0000 (21:13 -0700)
On Tuesday 25 November 2003 00:12, Chris Larson wrote:
> udev fails to compile here unless I'm doing a KLIBC build.  The reason
> appears to be that the normal limits.h in the gcc inc dir doesn't pull
> in linux/limits.h, whereas the limits.h out in the klibc include dirs
> does.  I'd think it'd be best to add a #include <linux/limits.h> to
> udev.h directly, since it uses PATH_MAX.

No, don't include kernel headers directly if you can avoid it.
The problem you are referring to seems to be with old tool chains,
I have the same symptom with my s390 gcc-2.95/glibc-2.1.3.
Including <sys/param.h> instead of <limits.h> seems to fix it.

udev.h

diff --git a/udev.h b/udev.h
index 8994307..0c1951a 100644 (file)
--- a/udev.h
+++ b/udev.h
@@ -24,7 +24,7 @@
 #define UDEV_H
 
 #include "libsysfs/libsysfs.h"
-#include <limits.h>
+#include <sys/param.h>
 
 #ifdef DEBUG
 #include <syslog.h>