Improve portability of linux headers cleanup inside grml_cleanup_chroot
[grml-live.git] / etc / grml / fai / grml / grml_cleanup_chroot
index e93f175..6d75ea1 100755 (executable)
@@ -52,9 +52,21 @@ einfo "Setting up /etc/inittab"
 cp /etc/inittab.grml  /etc/inittab
 eend $?
 
-einfo "Cleaning up /usr/src/linux-headers-$KERNEL"
-( cd /usr/src && make clean && make symlinks )
-eend $?
+if [ -x /usr/bin/make -a -r /usr/src/Makefile ] ; then
+   einfo "Cleaning up /usr/src/linux-headers-$KERNEL"
+   ( cd /usr/src
+   VER=$(/bin/ls -d /usr/src/linux-headers-* | head -1)
+   VER=${VER##/usr/src/linux-headers-}
+   if [ -n "$VER" ] ; then
+      VER=$VER make clean && \
+      VER=$VER make symlinks
+   else
+      make clean && \
+      make symlinks
+   fi
+   )
+   eend $?
+fi
 
 if [ -L /usr/include/linux ] ; then
   einfo "/usr/include/linux is ok" ; eend 0
@@ -62,8 +74,7 @@ elif [ -n "$GRML64" ] ; then
     if [ -d /usr/src/linux-headers-"$KERNEL" ] ; then
        einfo "grml64 detected, assuming /usr/src/linux-headers-$KERNEL is ok." ; eend 0
     else
-       eerror "/usr/src/linux-headers-$KERNEL not found, exiting." ; eend 1
-       exit 10
+       ewarn "/usr/src/linux-headers-$KERNEL not found, exiting." ; eend 0
     fi
 elif [ -d /usr/src/linux-headers-"$KERNEL" ] ; then
      eerror "/usr/include/linux is NOT a symlink to /usr/src/linux/include/linux/ - error"