Michal Suchanek 9b3ca3
#!/bin/sh -e
Michal Suchanek 9b3ca3
Michal Suchanek 9b3ca3
KREL=$1
Michal Suchanek 9b3ca3
Michal Suchanek 9b3ca3
{ cat /lib/modules/$KREL/modules.dep ;
Michal Suchanek 9b3ca3
cat /lib/modules/$KREL/modules.softdep | grep : | sed -e 's/^softdep //' -e 's/ \(pre\|post\):/:/' ; } \
Michal Suchanek 9b3ca3
	    | \
Michal Suchanek 9b3ca3
while read l ; do
Michal Suchanek 9b3ca3
	MOD=$(echo "$l" | sed -e 's/:.*//')
3b8c4d
	MOD=$(basename $MOD)
3b8c4d
	case $MOD in
3b8c4d
	    *.ko.xz|*.ko.gz|*.ko.zst)
3b8c4d
		MOD=${MOD%.*};;
3b8c4d
	esac
3b8c4d
	MOD=${MOD%.ko}
Michal Suchanek 9b3ca3
	DEPS="$(echo "$l" | sed -e 's/.*://')"
Michal Suchanek 9b3ca3
	moddeps=""
Michal Suchanek 9b3ca3
	for dep in $DEPS ; do
3b8c4d
		dep=$(basename $dep)
3b8c4d
		case $dep in
3b8c4d
		    *.ko.xz|*.ko.gz|*.ko.zst)
3b8c4d
			dep=${dep%.*};;
3b8c4d
		esac
3b8c4d
		dep=${dep%.ko}
Michal Suchanek 9b3ca3
		moddeps="$moddeps $dep"
Michal Suchanek 9b3ca3
	done
Michal Suchanek 9b3ca3
	[ -n "$moddeps" ] && echo $MOD:$moddeps ||:
Michal Suchanek 9b3ca3
done