[projects/geninitrd] Support for 3.18.x kernel compressed modules.

arekm arekm at pld-linux.org
Mon Oct 13 17:25:33 CEST 2014


commit 5d62840ea076b59f5b7db88a4bdba21eeadd3337
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Mon Oct 13 17:25:23 2014 +0200

    Support for 3.18.x kernel compressed modules.

 geninitrd | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)
---
diff --git a/geninitrd b/geninitrd
index f31f00d..84aa09f 100755
--- a/geninitrd
+++ b/geninitrd
@@ -784,9 +784,22 @@ modules_install() {
 		MODULEDIR=${mod%/*}
 		inst_d "/lib/modules/$kernel/$MODULEDIR"
 		cp -a "/lib/modules/$kernel/$mod" "$DESTDIR/lib/modules/$kernel/$mod"
-		gunzip "$DESTDIR/lib/modules/$kernel/$mod" 2> /dev/null
+		case $mod in
+			*.gz)
+				gunzip "$DESTDIR/lib/modules/$kernel/$mod" 2> /dev/null
+				mod=${mod%.gz}
+				;;
+			*.xz)
+				xz -d "$DESTDIR/lib/modules/$kernel/$mod" 2> /dev/null
+				mod=${mod%.xz}
+				;;
+			*.bz2)
+				bzip2 -d "$DESTDIR/lib/modules/$kernel/$mod" 2> /dev/null
+				mod=${mod%.bz2}
+				;;
+		esac
 		if [ "$STRIP" ] && [ -x "$STRIP" ]; then
-			$STRIP -g --remove-section=.comment "$DESTDIR/lib/modules/$kernel/${mod%.gz}"
+			$STRIP -g --remove-section=.comment "$DESTDIR/lib/modules/$kernel/${mod}"
 		fi
 	done
 }
@@ -797,6 +810,8 @@ modules_add_linuxrc() {
 	for mod in "$@"; do
 		# module path without optional compression
 		modpath=${mod%.gz}
+		modpath=${modpath%.xz}
+		modpath=${modpath%.bz2}
 
 		# name of the module
 		local module=${modpath##*/}; module=${module%$modext}
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/projects/geninitrd.git/commitdiff/5d62840ea076b59f5b7db88a4bdba21eeadd3337



More information about the pld-cvs-commit mailing list