SVN: geninitrd/trunk: Makefile geninitrd mod-udev.sh

glen glen at pld-linux.org
Thu Apr 2 23:49:34 CEST 2009


Author: glen
Date: Thu Apr  2 23:49:34 2009
New Revision: 10279

Added:
   geninitrd/trunk/mod-udev.sh
Modified:
   geninitrd/trunk/Makefile
   geninitrd/trunk/geninitrd
Log:
- udev modularized

Modified: geninitrd/trunk/Makefile
==============================================================================
--- geninitrd/trunk/Makefile	(original)
+++ geninitrd/trunk/Makefile	Thu Apr  2 23:49:34 2009
@@ -1,6 +1,6 @@
 # when making release, make sure you do it as RELEASE document describes
 VERSION		:= 10000.3
-MODS		:= mod-ide.sh mod-luks.sh mod-multipath.sh mod-dmraid.sh mod-lvm.sh mod-md.sh mod-blkid.sh
+MODS		:= mod-ide.sh mod-luks.sh mod-multipath.sh mod-dmraid.sh mod-lvm.sh mod-md.sh mod-blkid.sh mod-udev.sh
 FILES		:= Makefile geninitrd.sysconfig geninitrd functions $(MODS) geninitrd.8 geninitrd.8.xml ChangeLog
 prefix		:= /usr
 mandir		:= $(prefix)/share/man

Modified: geninitrd/trunk/geninitrd
==============================================================================
--- geninitrd/trunk/geninitrd	(original)
+++ geninitrd/trunk/geninitrd	Thu Apr  2 23:49:34 2009
@@ -6,10 +6,6 @@
 #
 # based on mkinitrd from RedHat Linux
 #
-# TODO:
-# - make udev start before insmods
-# - make proper use of USE_UDEV - don't copy rules if USE_UDEV is off no!
-#
 
 RCSID='$Id$'
 R=${RCSID#* * }; VERSION=${R%% *}
@@ -747,37 +743,6 @@
 	inst_exec /sbin/v86d /sbin
 }
 
-initrd_gen_udev() {
-	local udevd udevadm
-
-	debug "Setting up udev..."
-
-	udevd=$(find_tool $initrd_dir/udevd /sbin/initrd-udevd) || die "Couldn't find udevd suitable for initrd"
-	udevadm=$(find_tool $initrd_dir/initrd-udevadm /sbin/initrd-udevadm) || die "Couldn't find udevadm suitable for initrd"
-
-	inst_d /sbin /etc/udev
-	inst_exec $udevd /sbin/udevd
-	inst_exec $udevadm /sbin/udevadm
-	inst /etc/udev/udev.conf /etc/udev/udev.conf
-
-	mount_dev
-	mount_sys
-	add_linuxrc <<-'EOF'
-		: 'Starting udev'
-		/sbin/udevd --daemon
-		/sbin/udevadm trigger
-		/sbin/udevadm settle
-	EOF
-
-}
-
-initrd_gen_stop_udevd() {
-	busybox_applet killall
-	add_linuxrc	<<-'EOF'
-		killall udevd
-	EOF
-}
-
 initrd_gen_bootsplash() {
 	local target="$1"
 
@@ -1057,11 +1022,6 @@
 	die "You need to be root to generate initrd"
 fi
 
-if [ -f /etc/udev/udev.conf -a -x /sbin/initrd-udevd ]; then
-	USE_UDEV=yes
-	. /etc/udev/udev.conf
-fi
-
 # IDE addon
 . /lib/geninitrd/mod-ide.sh
 # cryptsetup luks addon
@@ -1076,6 +1036,8 @@
 . /lib/geninitrd/mod-md.sh
 # blkid addon
 . /lib/geninitrd/mod-blkid.sh
+# udev addon
+. /lib/geninitrd/mod-udev.sh
 
 if [ -r /etc/sysconfig/geninitrd ]; then
 	. /etc/sysconfig/geninitrd
@@ -1260,10 +1222,6 @@
 	fi
 fi
 
-if [ "$kernel_version" -lt "002006" ]; then
-	USE_UDEV=no
-fi
-
 if [ "$kernel_version" -ge "002005" ]; then
 	modext=".ko"
 fi

Added: geninitrd/trunk/mod-udev.sh
==============================================================================
--- (empty file)
+++ geninitrd/trunk/mod-udev.sh	Thu Apr  2 23:49:34 2009
@@ -0,0 +1,45 @@
+#!/bin/sh
+#
+# geninitrd mod: udev
+
+#
+# TODO:
+# - make udev start before insmods
+# - make proper use of USE_UDEV - don't copy rules if USE_UDEV is off no!
+
+udevd=$(find_tool $initrd_dir/udevd /sbin/initrd-udevd)
+udevadm=$(find_tool $initrd_dir/initrd-udevadm /sbin/initrd-udevadm)
+
+if [ "$kernel_version" -ge "002006" -a -x "$udevd" -a -a -x "$udevadm" -f /etc/udev/udev.conf ]; then
+	USE_UDEV=yes
+	. /etc/udev/udev.conf
+else
+	USE_UDEV=no
+fi
+
+# generate initrd fragment
+# @access	public
+initrd_gen_udev() {
+	debug "Setting up udev..."
+
+	inst_d /sbin /etc/udev
+	inst_exec $udevd /sbin/udevd
+	inst_exec $udevadm /sbin/udevadm
+	inst /etc/udev/udev.conf /etc/udev/udev.conf
+
+	mount_dev
+	mount_sys
+	add_linuxrc <<-'EOF'
+		: 'Starting udev'
+		/sbin/udevd --daemon
+		/sbin/udevadm trigger
+		/sbin/udevadm settle
+	EOF
+}
+
+initrd_gen_stop_udevd() {
+	busybox_applet killall
+	add_linuxrc	<<-'EOF'
+		killall udevd
+	EOF
+}


More information about the pld-cvs-commit mailing list