This commit is contained in:
milisbir 2018-07-12 10:52:46 +02:00
parent 2b12304600
commit 41a291fb5d
1 changed files with 18 additions and 44 deletions

62
bin/mps Executable file → Normal file
View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
versiyon="1.2.2 Milis Paket Sistemi" versiyon="1.2.1 Milis Paket Sistemi"
iletisim="milisarge@gmail.com" iletisim="milisarge@gmail.com"
betikad=${0##*/} betikad=${0##*/}
@ -731,47 +731,31 @@ gerekleri_dosyala(){
fi fi
} }
gerekleri_listele(){ deps_recursive(){
local _talimat _deps _temp _pkt _konum _kurkon bagimd local _talimat _deps _temp _pkt _konum _kurkon bagimd
local _ekle=1 local _ekle=1
[ $1 ] && _pkt=$1 || hata_olustu "_talimat_bulunamadi" [ $1 ] && _pkt=$1 || hata_olustu "_talimat_bulunamadi"
[ $2 ] && _kurkon=$2 || echo "kurkon tanımsız" [ $2 ] && _kurkon=$2 || echo "kurkon tanımsız"
[ $3 ] && _depsf=$3 || echo "depsf tanımsız" [ $3 ] && _depsf=$3 || echo "depsf tanımsız"
[ $4 ] && _basf=$4 || echo "basf tanımsız" printf "-"
_konum=$(talimat_bul $_pkt) _konum=$(talimat_bul $_pkt)
if [ ! -d $_konum ];then
printf "$_pkt "
hata_olustu "_talimat_bulunamadi"
fi
echo "@${_pkt}@" >> ${_basf}
_talimat="${_konum}/talimat" _talimat="${_konum}/talimat"
[ $_kurkon -eq 1 ] && [ `kurulu_kontrol $_pkt` = "kurulu" ] && _ekle=0 [ $_kurkon -eq 1 ] && [ `kurulu_kontrol $_pkt` = "kurulu" ] && _ekle=0
[ $_ekle -eq 1 ] && echo "@$bag@" >> ${_depsf}
_deps=$(cat $_talimat | awk '/^#[[:blank:]]*Gerek*/ {print}' | cut -d':' -f2) _deps=$(cat $_talimat | awk '/^#[[:blank:]]*Gerek*/ {print}' | cut -d':' -f2)
if [ -n "$_deps" ]; then if [ -n "$_deps" ]; then
bagimd=`echo "$_deps" | sed 's/,/ /g'` bagimd=`echo "$_deps" | sed 's/,/ /g'`
for bag in $bagimd;do for bag in $bagimd;do
if ([ $_kurkon -eq 1 ] && [ -d $VT/$bag ]);then #[ $_ekle -eq 1 ] && echo "@$bag@" >> ${_depsf}
: _temp=$(grep -rli "@${bag}@" ${_depsf})
else [ ! -z $_temp ] || deps_recursive $bag $_kurkon ${_depsf}
_tbas=$(grep "@${bag}@" ${_basf})
if [ -z $_tbas ];then
_temp=$(grep "@${bag}@" ${_depsf})
# onemli not: recursive () içine alınmalı
[ -z ${_temp} ] && (gerekleri_listele $bag $_kurkon ${_depsf} ${_basf})
if [ -z ${_temp} ];then
[ $_ekle -eq 1 ] && (echo "@${bag}@" >> ${_depsf};printf ".")
fi
fi
fi
done done
fi fi
} }
deps(){
derleme_listyap(){ local _depsf="/tmp/deps"
derleme_listyap_kontrol
local _basf=`mktemp`
local _depsf="gerek.liste"
local _kurkon=0 local _kurkon=0
local _pkt local _pkt
#[ "$2" = "--normal" ] && cikti_renk_ayarla "$2" #[ "$2" = "--normal" ] && cikti_renk_ayarla "$2"
@ -780,16 +764,13 @@ derleme_listyap(){
$_yaz "$1 $_gerekler_belirleniyor" $_yaz "$1 $_gerekler_belirleniyor"
[ $2 ] && [ $2 == "--kurulu_atla" ] && _kurkon=1 [ $2 ] && [ $2 == "--kurulu_atla" ] && _kurkon=1
[ -f ${_depsf} ] && rm -f ${_depsf} && touch ${_depsf} [ -f ${_depsf} ] && rm -f ${_depsf} && touch ${_depsf}
gerekleri_listele $_pkt $_kurkon ${_depsf} ${_basf} deps_recursive $_pkt $_kurkon ${_depsf}
echo ${_pkt} >> ${_depsf}
sed -i 's/@//g' ${_depsf} sed -i 's/@//g' ${_depsf}
sed -i '/^\s*$/d' ${_depsf} #printf "\n"
printf "\n" cat ${_depsf}
cat ${_depsf} | tr "\n" " ";echo
rm -rf $_basf
} }
gerekleri_listele_eski(){ gerekleri_listele(){
derleme_listyap_kontrol derleme_listyap_kontrol
local _paket _konum _pkvt local _paket _konum _pkvt
_konum="$talimatname $ektalimatname" _konum="$talimatname $ektalimatname"
@ -800,7 +781,6 @@ gerekleri_listele_eski(){
echo $_paket | awk -v arama_konum="$_konum" -v PKVT="$_pkvt" \ echo $_paket | awk -v arama_konum="$_konum" -v PKVT="$_pkvt" \
''' '''
function gerekbul(paket,gerekler) { function gerekbul(paket,gerekler) {
if (ISLENDI[paket]) { if (ISLENDI[paket]) {
return return
} }
@ -842,7 +822,6 @@ gerekleri_listele_eski(){
function talimat_bul(ara){ function talimat_bul(ara){
cmd= "find " arama_konum " -name " ara " | head -n1 " cmd= "find " arama_konum " -name " ara " | head -n1 "
_bulundu=0 _bulundu=0
while ( ( cmd | getline talimatyol ) > 0 ) { while ( ( cmd | getline talimatyol ) > 0 ) {
_bulundu=1 _bulundu=1
@ -869,7 +848,7 @@ gerekleri_listele_eski(){
[ -f gerek.liste ] && cat gerek.liste | tr "\n" " ";echo [ -f gerek.liste ] && cat gerek.liste | tr "\n" " ";echo
} }
derleme_listyap_eski(){ derleme_listyap(){
[ "$2" = "--normal" ] && cikti_renk_ayarla "$2" [ "$2" = "--normal" ] && cikti_renk_ayarla "$2"
[ "$3" = "--normal" ] && cikti_renk_ayarla "$3" [ "$3" = "--normal" ] && cikti_renk_ayarla "$3"
$_yaz "$1 $_gerekler_belirleniyor" $_yaz "$1 $_gerekler_belirleniyor"
@ -878,15 +857,10 @@ derleme_listyap_eski(){
# -derlist # -derlist
paket_derle_liste(){ paket_derle_liste(){
local dpkt dpktyer for dpktyer in `cat $1`;do
for dpkt in `cat $1`;do dpkt=`basename $dpktyer`
echo $dpkt "derleniyor...." echo $dpkt "derleniyor...."
zorla_derle="yok" zorla_derle="yok"
dpktyer=$(talimat_bul $_pkt)
if [ ! -d $dpktyer ];then
printf "$dpkt "
hata_olustu "_talimat_bulunamadi"
fi
paket_derle $dpktyer paket_derle $dpktyer
done done
} }
@ -896,7 +870,7 @@ paket_derle_liste(){
paket_derle_kur(){ paket_derle_kur(){
tekrarkur="hayir" tekrarkur="hayir"
derleme_listyap_kontrol derleme_listyap_kontrol
derleme_listyap "$1" && paket_derle_liste gerek.liste derleme_listyap "$1" && paket_derle_liste gerek.konum.liste
} }
# odkp # odkp