milis/bin/base_derle
2016-02-24 02:27:23 +02:00

113 rindas
2,6 KiB
Bash
Izpildāma datne

Šī datne satur neviennozīmīgas unikoda rakstzīmes

Šī datne satur unikoda rakstzīmes, kas var tikt sajauktas ar citām rakstzīmēm. Ja šķiet, ka tas ir ar nolūku, šo brīdinājumu var droši neņemt vērā. Jāizmanto atsoļa taustiņš (Esc), lai tās atklātu.

#!/bin/bash
if [ -z "$LOG" ]; then
PASS=`pwd`
PASS=`basename $PASS`
LOG=$HOME/logs/$PASS
fi
if [ ! -d $LOG ]; then
mkdir -p $LOG
fi
error() {
echo "$i hata luştu"
exit 1
}
LIST="$HOME/base/base.list"
for DIR in `cat $LIST`
do
NAME=`basename $DIR`
BUILD="yes"
PKGMK="pkgmk.passes"
if [ -f ${LOG}/$NAME.log ]; then
if ( grep "^=======>" ${LOG}/$NAME.log|grep "succeeded" > /dev/null);then
BUILD="no"
else
BUILD="yes"
fi
fi
if [ "$BUILD" == "yes" ]; then
cd $DIR
case $PASS in
chroot)
PKGMK="pkgmk.passes"
$PKGMK -cf ../../../bin/paketci.conf -kw 2>&1|tee ${LOG}/$NAME.log || exit 1;;
base)
PKGMK="mpsd"
case $NAME in
gcc)
$PKGMK -cf /etc/mpsd.conf -kw 2>&1|tee ${LOG}/$NAME.log || exit 1
rm -fv /usr/lib{,64}/libgcc_s.so{,.1}
rm -fv /usr/lib{,64}/libstdc++.so{,.6}
rm -fv /usr/lib{,64}/libstdc++.la
$PKGMK -d -cf /etc/mpsd.conf -i || exit 1
for i in *mps*
do
echo "=======> Installing '$i' succeeded." >> ${LOG}/$NAME.log
done
;;
bash)
$PKGMK -cf /etc/mpsd.conf -kw 2>&1|tee ${LOG}/$NAME.log || exit 1
rm /bin/bash
rm /bin/sh
echo "bash chroot dışına çıkıp elle kurulmalıdır."
echo "=======> Installing '$NAME' succeeded." >> ${LOG}/$NAME.log
exit 1
$PKGMK -d -cf /etc/mpsd.conf -i
;;
coreutils)
$PKGMK -cf /etc/mpsd.conf -kw 2>&1|tee ${LOG}/$NAME.log || exit 1
rm -f /usr/bin/env
for i in cat echo pwd stty
do
rm -f /bin/$i
done
$PKGMK -d -cf /etc/mpsd.conf -i || exit 1
for i in *mps*
do
echo "=======> Installing '$i' succeeded." >> ${LOG}/$NAME.log
done
;;
perl)
$PKGMK -cf /etc/mpsd.conf -kw 2>&1|tee ${LOG}/$NAME.log || exit 1
rm -f /usr/bin/perl
$PKGMK -d -cf /etc/mpsd.conf -i || exit 1
for i in *mps*
do
echo "=======> Installing '$i' succeeded." >> ${LOG}/$NAME.log
done
;;
cards)
$PKGMK -cf /etc/mpsd.conf -kw 2>&1|tee ${LOG}/$NAME.log || exit 1
rm -f /etc/pkgadd.conf
$PKGMK -d -cf /etc/mpsd.conf -i || exit 1
for i in *mps*
do
echo "=======> Installing '$i' succeeded." >> ${LOG}/$NAME.log
done
;;
kernel)
$PKGMK -d -cf /etc/mpsd.conf -i -kw || exit 1
echo "=======> Installing '$NAME' succeeded." >> ${LOG}/$NAME.log
;;
*)
$PKGMK -cf /etc/mpsd.conf -i -kw 2>&1|tee ${LOG}/$NAME.log || exit 1
;;
esac;;
*)
PKGMK="mpsd -d -i"
$PKGMK 2>&1|tee ${LOG}/$NAME.log || exit 1;;
esac
if ( grep "^=======>" ${LOG}/$NAME.log| tail -1 |grep "ERROR" > /dev/null);then
exit 1
fi
cd -
fi
done