#!/bin/sh
+set -o errexit
+
# First argument of this script is the package name.
# Reading system configuration informations, functions and package versions.
source ../packages-list
# Applying patches (if any)
-apply_patches ${1} &&
-
-cd ${LFS_TMP}/${1} &&
-
-install -dv /lib/{firmware,udev/devices/{pts,shm}} &&
-
-if [ ! -c /lib/udev/devices/null ]; then
- mknod -m0666 /lib/udev/devices/null c 1 3 || exit 1
-fi &&
-
-if [ ! -c /lib/udev/devices/kmsg ]; then
- mknod -m0600 /lib/udev/devices/kmsg c 1 11 || exit 1
-fi &&
-
-if [ ! -h /lib/udev/devices/fd ]; then
- ln -sfv /proc/self/fd /lib/udev/devices/fd || exit 1
-fi &&
+apply_patches ${1}
-if [ ! -h /lib/udev/devices/stdin ]; then
- ln -sfv /proc/self/fd/0 /lib/udev/devices/stdin || exit 1
-fi &&
-
-if [ ! -h /lib/udev/devices/stdout ]; then
- ln -sfv /proc/self/fd/1 /lib/udev/devices/stdout || exit 1
-fi &&
-
-if [ ! -h /lib/udev/devices/stderr ]; then
- ln -sfv /proc/self/fd/2 /lib/udev/devices/stderr || exit 1
-fi &&
-
-if [ ! -h /lib/udev/devices/core ]; then
- ln -sfv /proc/kcore /lib/udev/devices/core || exit 1
-fi &&
-
-cd ${LFS_TMP}/${PACKAGE} &&
+cd ${LFS_TMP}/${1}
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--sbindir=/sbin \
--with-rootlibdir=/lib \
--libexecdir=/lib/udev \
- --docdir=/usr/share/doc/${PACKAGE} \
+ --docdir=/usr/share/doc/${1} \
--disable-extras \
- --disable-introspection \
- ${CONFIGURE_OPTS} &&
-make &&
-make install &&
+ --disable-introspection
+make
+make install
+
+# Udev has to be configured in order to work properly, as its default
+# configuration does not cover all devices. First install two extra
+# rules files from Udev to help support device-mapper and RAID setups:
+install -m644 -v rules/packages/64-*.rules \
+ /lib/udev/rules.d/
-cat > /etc/sysconfig/modules << "EOF" &&
-# Add modules that must be manually loaded in this file,
-# one per line.
+# Now install a file to create symlinks for certain hand-held devices:
+install -m644 -v rules/packages/40-pilot-links.rules \
+ /lib/udev/rules.d/
-EOF
+# Now install a file to handle ISDN devices:
+install -m644 -v rules/packages/40-isdn.rules \
+ /lib/udev/rules.d/
-chmod -v 644 /etc/sysconfig/modules &&
+install -m755 ${SCRDIR}/misc/udev-create-persistent-net.sh /usr/local/bin
ldconfig
-# Return last error
exit $?