Ninjatrappeur's systemd working tree
Go to file
arnd@arndb.de c076a2bde4 [PATCH] Build failure - missing linux/limits.h include?
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.
2005-04-26 21:13:04 -07:00
docs [PATCH] updated the documentation. 2005-04-26 21:01:38 -07:00
etc/init.d [PATCH] fix udev init.d script to handle all class devices in sysfs. 2005-04-26 21:13:02 -07:00
extras [PATCH] udev-007/extras/multipath update 2005-04-26 21:13:04 -07:00
klibc [PATCH] sync up with the 0.84 version of klibc 2005-04-26 21:13:02 -07:00
libsysfs [PATCH] quick fix for libsysfs bus 2005-04-26 21:13:04 -07:00
tdb [PATCH] klibc makefile fixes 2005-04-26 21:13:02 -07:00
test [PATCH] add test for checking the BUS value. 2005-04-26 21:13:04 -07:00
COPYING [PATCH] added initial documentation and gpl license 2005-04-26 21:00:32 -07:00
ChangeLog [PATCH] v007 Changelog 2005-04-26 21:13:02 -07:00
FAQ [PATCH] Add FAQ for udev 2005-04-26 21:01:41 -07:00
Makefile [PATCH] fix udev parallel builds with klibc 2005-04-26 21:13:04 -07:00
README [PATCH] 005 release 2005-04-26 21:06:22 -07:00
TODO [PATCH] update the TODO list with more items that people can easily do. 2005-04-26 21:06:25 -07:00
klibc_fixups.c [PATCH] get rid of functions in klibc_fixups that are now in klibc 2005-04-26 21:13:02 -07:00
klibc_fixups.h [PATCH] get rid of functions in klibc_fixups that are now in klibc 2005-04-26 21:13:02 -07:00
list.h [PATCH] Initial namedev parsing of config files 2005-04-26 21:01:38 -07:00
logging.c [PATCH] overall whitespace + debug text conditioning 2005-04-26 21:13:03 -07:00
namedev.c [PATCH] fix problem where we were not looking at the BUS value. 2005-04-26 21:13:04 -07:00
namedev.h [PATCH] overall whitespace + debug text conditioning 2005-04-26 21:13:03 -07:00
udev-add.c [PATCH] overall whitespace + debug text conditioning 2005-04-26 21:13:03 -07:00
udev-remove.c [PATCH] overall whitespace + debug text conditioning 2005-04-26 21:13:03 -07:00
udev.8 [PATCH] add test and documentation for new %D devfs format modifier 2005-04-26 21:13:04 -07:00
udev.c [PATCH] changed the default location of the database to /udev/.udev.tdb to be LSB compliant 2005-04-26 21:13:04 -07:00
udev.config [PATCH] add test and documentation for new %D devfs format modifier 2005-04-26 21:13:04 -07:00
udev.config.demo [PATCH] updated demo config file. 2005-04-26 21:06:24 -07:00
udev.h [PATCH] Build failure - missing linux/limits.h include? 2005-04-26 21:13:04 -07:00
udev.permissions [PATCH] added debian's version of udev.permissions. 2005-04-26 21:06:25 -07:00
udev.permissions.debian [PATCH] added debian's version of udev.permissions. 2005-04-26 21:06:25 -07:00
udev.spec [PATCH] 007_bk version change to Makefile. 2005-04-26 21:13:02 -07:00
udevdb.c [PATCH] overall whitespace + debug text conditioning 2005-04-26 21:13:03 -07:00
udevdb.h [PATCH] overall whitespace + debug text conditioning 2005-04-26 21:13:03 -07:00

README

udev - a userspace implementation of devfs

For more information on the design, and structure of this project, see the
files in the docs/ directory.

To use:

- You must be running a 2.6 version of the Linux kernel.

- Make sure sysfs is mounted.  udev will figure out where sysfs is mounted, but
  the traditional place for it is at /sys.  You can mount it by hand by running:
  	mount -t sysfs none /sys

- Make sure you have the latest version of the linux-hotplug scripts.  They are
  available at linux-hotplug.sf.net or from your local kernel.org mirror at:
	kernel.org/pub/linux/utils/kernel/hotplug/
  They are required in order for udev to work properly.

  If for some reason you do not install the hotplug scripts, you must tell the
  kernel to point the hotplug binary at wherever you install udev at.  This can
  be done by:
	echo "/sbin/udev" > /proc/sys/kernel/hotplug

- Build the project:
	make

- Install the project:
	make install

  This will put the udev binary in /sbin, create the /udev and /etc/udev
  directories, and place the udev configuration files in /etc/udev.  You
  will probably want to edit the namedev.* files to create custom naming
  rules.  More info on how the config files are set up are contained in
  comments in the files, and is located in the documentation.

- Add and remove devices from the system and marvel as nodes are created
  and removed in /udev/ based on the device types.

- If you later get sick of it, uninstall it:
	make uninstall


Things are still quite rough, and it's a bit beyond proof of concept
code.  Help is very much appreciated, see the TODO file for a list of
things left to be done.

If you want to build using klibc, use the Makefile.klibc file:
	- read the klibc/klibc/README file for how to set up the linux
	  symlink properly.
	- make clean
	- make -f Makefile.klibc
and marvel at the tiny binary you just created :)

Any comment/questions/concerns please let me know.

greg k-h
greg@kroah.com