home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / lib / ubiquity / base-installer / kernel.sh
Encoding:
Text File  |  2006-08-30  |  2.7 KB  |  135 lines

  1. arch_get_kernel_flavour () {
  2.     VENDOR=`grep '^vendor_id' "$CPUINFO" | cut -d: -f2`
  3.     FAMILY=`grep '^cpu family' "$CPUINFO" | cut -d: -f2`
  4.     case "$VENDOR" in
  5.         " AuthenticAMD"*)
  6.             case "$FAMILY" in
  7.                 " 6")    echo k7 ;;
  8.                 " 5")    echo k6 ;;
  9.                 *)    echo 386 ;;
  10.             esac
  11.         ;;
  12.         " GenuineIntel"|" GenuineTMx86"*)
  13.             case "$FAMILY" in
  14.                 " 6"|" 15")    echo 686 ;;
  15.                 " 5")        echo 586tsc ;;
  16.                 *)        echo 386 ;;
  17.             esac
  18.         ;;
  19.         *) echo 386 ;;
  20.     esac
  21.     return 0
  22. }
  23.  
  24. arch_check_usable_kernel () {
  25.     if expr "$1" : '.*-server.*' >/dev/null; then return 0; fi
  26.     if expr "$1" : '.*-386.*' >/dev/null; then return 0; fi
  27.     if [ "$2" = 386 ]; then return 1; fi
  28.     if expr "$1" : '.*-586.*' >/dev/null; then return 0; fi
  29.     if [ "$2" = 586tsc ]; then return 1; fi
  30.     if [ "$2" = 686 ]; then
  31.         if expr "$1" : '.*-686.*' >/dev/null; then return 0; fi
  32.         return 1
  33.     fi
  34.     if expr "$1" : '.*-k6.*' >/dev/null; then return 0; fi
  35.     if [ "$2" = k6 ]; then return 1; fi
  36.     if expr "$1" : '.*-k7.*' >/dev/null; then return 0; fi
  37.  
  38.     # default to usable in case of strangeness
  39.     warning "Unknown kernel usability: $1 / $2"
  40.     return 0
  41. }
  42.  
  43. arch_get_kernel_etch () {
  44.     if [ "$KERNEL_MAJOR" = 2.4 ]; then
  45.         # Kernel images are identical with Sarge
  46.         return
  47.     else
  48.         imgbase=linux-image
  49.     fi
  50.  
  51.     if [ "$1" = k7 ]; then
  52.         if [ "$SMP" ]; then
  53.             echo "linux-k7$SMP"
  54.             echo "linux-image-k7$SMP"
  55.         fi
  56.         echo "linux-k7"
  57.         echo "linux-image-k7"
  58.         set k6
  59.     fi
  60.     if [ "$1" = k6 ]; then
  61.         if [ "$KERNEL_MAJOR" = 2.4 ]; then
  62.             echo "linux-k6"
  63.             echo "linux-image-k6"
  64.         fi
  65.         set 586tsc
  66.     fi
  67.  
  68.     if [ "$1" = 686 ]; then
  69.         if [ "$SMP" ]; then
  70.             echo "linux-686$SMP"
  71.             echo "linux-image-686$SMP"
  72.         fi
  73.         echo "linux-686"
  74.         echo "linux-image-686"
  75.         set 586tsc
  76.     fi
  77.     if [ "$1" = 586tsc ]; then
  78.         if [ "$KERNEL_MAJOR" = 2.4 ]; then
  79.             echo "linux-586tsc"
  80.             echo "linux-image-586tsc"
  81.         fi
  82.         set 386
  83.     fi
  84.     echo "linux-386"
  85.     echo "linux-image-386"
  86.  
  87.     echo "linux-server"
  88.     echo "linux-image-server"
  89.     echo "linux-server-bigiron"
  90.     echo "linux-image-server-bigiron"
  91. }
  92.  
  93. arch_get_kernel_sarge () {
  94.     imgbase=kernel-image
  95.  
  96.     if [ "$1" = k7 ]; then
  97.         if [ "$SMP" ]; then
  98.             echo "$imgbase-$KERNEL_MAJOR-k7$SMP"
  99.         fi
  100.         echo "$imgbase-$KERNEL_MAJOR-k7"
  101.         set k6
  102.     fi
  103.     if [ "$1" = k6 ]; then
  104.         if [ "$KERNEL_MAJOR" = 2.4 ]; then
  105.             echo "$imgbase-$KERNEL_MAJOR-k6"
  106.         fi
  107.         set 586tsc
  108.     fi
  109.  
  110.     if [ "$1" = 686 ]; then
  111.         if [ "$SMP" ]; then
  112.             echo "$imgbase-$KERNEL_MAJOR-686$SMP"
  113.         fi
  114.         echo "$imgbase-$KERNEL_MAJOR-686"
  115.         set 586tsc
  116.     fi
  117.     if [ "$1" = 586tsc ]; then
  118.         if [ "$KERNEL_MAJOR" = 2.4 ]; then
  119.             echo "$imgbase-$KERNEL_MAJOR-586tsc"
  120.         fi
  121.         set 386
  122.     fi
  123.     echo "$imgbase-$KERNEL_MAJOR-386"
  124. }
  125.  
  126. arch_get_kernel () {
  127.     if [ -n "$NUMCPUS" ] && [ "$NUMCPUS" -gt 1 ]; then
  128.         SMP=-smp
  129.     else
  130.         SMP=
  131.     fi
  132.  
  133.     arch_get_kernel_etch "$1"
  134. }
  135.