summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--install/ata25
-rw-r--r--mkinitcpio14
2 files changed, 39 insertions, 0 deletions
diff --git a/install/ata b/install/ata
new file mode 100644
index 0000000..a374aeb
--- /dev/null
+++ b/install/ata
@@ -0,0 +1,25 @@
+# vim: set ft=sh:
+
+install ()
+{
+ MODULES=" $(checked_modules "ata/*")"
+
+ MODULES=$(echo ${MODULES}) #trim whitespace
+ if [ "x${MODULES}" != "x" ]; then
+ MODULES="${MODULES} sd_mod sr_mod"
+ fi
+
+ BINARIES=""
+ FILES=""
+ SCRIPT=""
+}
+
+help ()
+{
+cat<<HELPEOF
+ This hook loads the necessary modules for sata or pata root device
+ with the new ata subsystem on kernels >=2.6.19.
+ Detection will take place at runtime. To minimize the modules
+ in the image, add the autodetect hook too.
+HELPEOF
+}
diff --git a/mkinitcpio b/mkinitcpio
index c22cc2d..330faf2 100644
--- a/mkinitcpio
+++ b/mkinitcpio
@@ -137,6 +137,20 @@ for hook in $HOOKS; do
unset BINARIES
unset FILES
install () { msg "${hook}: no install function..."; }
+ # Deprecation check
+ # A hook is considered deprecated if it is a symlink
+ # within $INSTDIR.
+ if [ -L "${INSTDIR}/${hook}" ]; then
+ newhook="$(readlink -ne "${INSTDIR}/${hook}")"
+ if [ -n "${newhook}" -a "${INSTDIR}/$(basename ${newhook})" -ef "${newhook}" ]; then
+ newhook="$(basename ${newhook})"
+ echo " -------------------------------------------------------------------"
+ echo " WARNING: Hook \"${hook}\" is deprecated."
+ echo " Replace it with \"${newhook}\" in your configuration file."
+ echo " -------------------------------------------------------------------"
+ hook="${newhook}"
+ fi
+ fi
if grep "install" "${INSTDIR}/${hook}" >/dev/null 2>&1; then
source "${INSTDIR}/${hook}"
echo ":: Parsing hook [${hook}]"