diff -u /usr/share/genkernel/gen_funcs.sh ./gen_funcs.sh --- /usr/share/genkernel/gen_funcs.sh 2007-07-19 18:27:02.000000000 -0400 +++ ./gen_funcs.sh 2007-07-19 18:41:44.000000000 -0400 @@ -372,39 +372,37 @@ rm -f "${BOOTDIR}/${symlinkName}.old" fi - # We only erase the old image when it is the exact same version as the - # current and new images. Different version old images are left behind. - # This is consistent with how "make install" of the manual kernel build - # works. - if [ "${currDestImage}" == "${fullDestName}" -a \ - "${prevDestImage}" == "${currDestImage}.old" ] + # We only erase the .old image when it is the exact same version as the + # current and new images. Different version .old (and current) images are + # left behind. This is consistent with how "make install" of the manual + # kernel build works. + if [ "${currDestImage}" == "${fullDestName}" ] then # - # Case for new, currrent, and old of the same base version. + # Case for new and currrent of the same base version. # print_info 5 " Same base version. May have to delete old image to make room." if [ "${currDestImageExists}" -eq '1' ] then - if [ "${prevDestImageExists}" -eq '1' ] + if [ -e "${BOOTDIR}/${currDestImage}.old" ] then print_info 5 " Deleting old identical version ${symlinkName}." - rm -f "${BOOTDIR}/${prevDestImage}" + rm -f "${BOOTDIR}/${currDestImage}.old" fi print_info 5 " Moving ${BOOTDIR}/${currDestImage}" print_info 5 " to ${BOOTDIR}/${currDestImage}.old" mv "${BOOTDIR}/${currDestImage}" "${BOOTDIR}/${currDestImage}.old" || gen_die "Could not rename the old ${symlinkName} image!" + prevDestImage="${currDestImage}.old" + prevDestImageExists=1 fi else # - # Case for current / old not of the same base version. + # Case for new / current not of the same base version. # print_info 5 " Different base version. Do not delete old images." - if [ "${currDestImageExists}" -eq 1 ] - then - prevDestImage="${currDestImage}" - fi + prevDestImage="${currDestImage}" currDestImage="${fullDestName}" fi @@ -420,7 +418,7 @@ pushd ${BOOTDIR} >/dev/null ln -s "${currDestImage}" "${symlinkName}" || gen_die "Could not create the ${symlinkName} symlink!" - if [ "${currDestImageExists}" -eq '1' ] + if [ "${prevDestImageExists}" -eq '1' ] then print_info 5 " ${symlinkName}.old -> ${prevDestImage}" ln -s "${prevDestImage}" "${symlinkName}.old" || diff -u /usr/share/genkernel/genkernel.8 ./genkernel.8 --- /usr/share/genkernel/genkernel.8 2007-07-19 18:27:02.000000000 -0400 +++ ./genkernel.8 2007-07-19 18:20:21.000000000 -0400 @@ -93,7 +93,7 @@ \fB\-\-\fR[no\-]\fBinstall\fR Installs, or does not install the kernel to .I /boot -after building. If MOUNTBOOT is set in +after building. The default is --install. If MOUNTBOOT is set in .I /etc/genkernel.conf then .I /boot