#!/bin/bash

function print_step() {
  echo -n "$STEP) $1: "
  STEP=$[$STEP+1]
}

CFG=.config
CFG1="$CFG""1"
echo "AUTO_CONFIG=OK" > $CFG1
STEP=1
#
#
#
print_step "/proc filesystem check"
if [ -d /proc/1 ]; then
  echo "mounted"
else
  echo "not mounted"
  exit
fi
#
#
#
print_step "CPU check"
CPUID=`cat /proc/cpuinfo | grep cpu | grep -v "cpu family" | grep -v cpuid | cut -d : -f 2 | colrm 1 1 | head -n 1`
if [ "${CPUID}xx" = "xx" ]; then
  CPUID=`cat /proc/cpuinfo | grep "cpu family" | cut -d : -f 2 | colrm 1 1 | head -n 1`
  if [ "$CPUID" != "alpha" ] && [ "$CPUID" != "Alpha" ]; then
    CPUID="${CPUID}86"
  fi
fi
echo -n "$CPUID"
SMP_POSSIBLE=yes
if [ "$CPUID" = "386" ]; then
  echo "ARCH_i386=OK" >> $CFG1
else
if [ "$CPUID" = "486" ]; then
  echo "ARCH_i486=OK" >> $CFG1
else
if [ "$CPUID" = "586" ]; then
  echo "ARCH_pentium=OK" >> $CFG1
else
if [ "$CPUID" = "686" ]; then
  echo "ARCH_ppro=OK" >> $CFG1
else
if [ "$CPUID" = "alpha" ] || [ "$CPUID" = "Alpha" ]; then
  echo "ARCH_alpha=OK" >> $CFG1
  SMP_POSSIBLE=no
else
  echo " <- unknown CPU"
  exit
fi
fi
fi
fi
fi
echo " - passed"
#
#
#
if [ "$SMP_POSSIBLE" = "yes" ]; then
  print_step "SMP check"
  CPUNUM=`cat /proc/cpuinfo | grep processor | wc -l`
  CPUNUM=$[$CPUNUM+0]
  if [ $CPUNUM -le 1 ]; then
    CPUNUM=1
  fi
  echo -n "$CPUNUM CPU unit(s) found"
  if [ $CPUNUM -gt 1 ]; then
    echo "ARCH_MP_SMP=OK" >> $CFG1
    echo "ARCH_NUMCPU=$CPUNUM" >> $CFG1
    echo " - passed"
  else
    echo " - SMP not used"
  fi
fi
#
#
#
mv $CFG1 $CFG
#
#
#
echo "-----"
echo "Success... Press 'make' for more help..."
