mps-yeni-dly
This commit is contained in:
parent
00ccb8b7bf
commit
eb613d81a2
151
bin/mps
151
bin/mps
|
@ -708,14 +708,14 @@ paketdepo_analiz(){
|
||||||
|
|
||||||
derleme_listyap_kontrol(){
|
derleme_listyap_kontrol(){
|
||||||
|
|
||||||
if [ -f tumgerekler.liste ];then
|
|
||||||
mv tumgerekler.liste tumgerekler.eski.liste
|
|
||||||
fi
|
|
||||||
if [ -f gerek.liste ];then
|
if [ -f gerek.liste ];then
|
||||||
mv gerek.liste gerek.eski.liste
|
mv gerek.liste gerek.eski.liste
|
||||||
fi
|
fi
|
||||||
touch tumgerekler.liste
|
if [ -f gerek.konum.liste ];then
|
||||||
|
mv gerek.konum.liste gerek.konum.eski.liste
|
||||||
|
fi
|
||||||
touch gerek.liste
|
touch gerek.liste
|
||||||
|
touch gerek.konum.liste
|
||||||
}
|
}
|
||||||
|
|
||||||
gerekleri_dosyala(){
|
gerekleri_dosyala(){
|
||||||
|
@ -724,67 +724,123 @@ gerekleri_dosyala(){
|
||||||
_konum=$(talimat_bul $_altgerek)
|
_konum=$(talimat_bul $_altgerek)
|
||||||
if [[ $konum != "-1" && $konum != "0" ]];then
|
if [[ $konum != "-1" && $konum != "0" ]];then
|
||||||
printf "."
|
printf "."
|
||||||
echo "$_altgerek" >> tumgerekler.liste
|
echo "$_altgerek" >> gerek.liste
|
||||||
if [ ! -d "$talimatname/temel/$_altgerek" ];then
|
if [ ! -d "$talimatname/temel/$_altgerek" ];then
|
||||||
echo "$_konum" >> gerek.liste
|
echo "$_konum" >> gerek.konum.liste
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
ryaz 31 "$1 $_talimat_bulunamadi"
|
ryaz 31 "$1 $_talimat_bulunamadi"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gerekleri_listele(){
|
||||||
|
derleme_listyap_kontrol
|
||||||
|
local _paket _konum
|
||||||
|
_konum="$talimatname $ektalimatname"
|
||||||
|
[ $1 ] && _paket=$1 || hata_olustu "_talimat_bulunamadi"
|
||||||
|
echo $_paket | awk -v arama_konum="$_konum" '''
|
||||||
|
function gerekbul(paket,gerekler) {
|
||||||
|
if (ISLENDI[paket]) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
while((getline satir<paket) >0) {
|
||||||
|
if (satir ~ "# Gerekler:" ){
|
||||||
|
split(satir,gerekb,":");
|
||||||
|
split(gerekb[2], gerekler, /[ ,]+/);
|
||||||
|
if ( length(gerekler) > 0 ){
|
||||||
|
for (i in gerekler){
|
||||||
|
if ( i > 1 && length(gerekler[i]) > 0 ){
|
||||||
|
ara=gerekler[i]
|
||||||
|
konum=talimat_bul(ara);
|
||||||
|
if (konum != ""){
|
||||||
|
gerekbul(konum);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ISLENDI[paket]=1 ;
|
||||||
|
printf "."
|
||||||
|
system("echo $(dirname " paket ") >> gerek.konum.liste")
|
||||||
|
system("echo $(basename $(dirname " paket ")) >> gerek.liste")
|
||||||
|
close(paket)
|
||||||
|
}
|
||||||
|
|
||||||
|
function talimat_bul(ara){
|
||||||
|
cmd= "find " arama_konum " -name " ara " | head -n1 "
|
||||||
|
#print cmd
|
||||||
|
while ( ( cmd | getline talimatyol ) > 0 ) {
|
||||||
|
return talimatyol "/talimat"
|
||||||
|
break
|
||||||
|
}
|
||||||
|
close(cmd)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
#print FILENAME
|
||||||
|
_talimat=$1
|
||||||
|
_paket=talimat_bul(_talimat)
|
||||||
|
if ( length(_paket) > 0 ){gerekbul(_paket);}
|
||||||
|
else {print "_paket talimat bulunumadı!"}
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
'''
|
||||||
|
[ -f gerek.liste ] && cat gerek.liste | tr "\n" " ";echo
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
dly_yeni(){
|
dly_yeni(){
|
||||||
dlymap["$1"]=1
|
local _paket="$1"
|
||||||
altgerekler=($(bagimlilar $1))
|
dlymap+=";${_paket};"
|
||||||
|
altgerekler="$(bagimlilar $_paket)"
|
||||||
if [[ "$altgerekler" != "0" && "$altgerekler" != "-1" ]];then
|
if [[ "$altgerekler" != "0" && "$altgerekler" != "-1" ]];then
|
||||||
for altgerek in ${altgerekler[@]};do
|
for altgerek in ${altgerekler};do
|
||||||
if [[ ! ${dlymap["$altgerek"]} ]] ; then
|
if [[ "$dlymap" != *";${altgerek};"* ]]; then
|
||||||
dly_yeni $altgerek
|
dly_yeni $altgerek
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
dlyD+=("$1")
|
dlyD+="$_paket "
|
||||||
gerekleri_dosyala "$1"
|
gerekleri_dosyala "$_paket"
|
||||||
else
|
else
|
||||||
ryaz 31 "$1 talimatı bulunamadı."
|
ryaz 31 "$_paket talimatı bulunamadı."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
kly_yeni(){
|
kly_yeni(){
|
||||||
#[ ! ${klyD[0]} ] && klyD+=("$1")
|
local _paket="$1"
|
||||||
[ ! -d "$VT/$1" ] && klymap["$1"]=1
|
[ ! -d "$VT/$1" ] && klymap+=";${_paket};"
|
||||||
altgerekler=($(bagimlilar $1))
|
altgerekler="$(bagimlilar $_paket)"
|
||||||
if [[ "$altgerekler" != "0" && "$altgerekler" != "-1" ]];then
|
if [[ "$altgerekler" != "0" && "$altgerekler" != "-1" ]];then
|
||||||
for altgerek in ${altgerekler[@]};do
|
for altgerek in ${altgerekler};do
|
||||||
if [ ! -d "$VT/$altgerek" ] ;then
|
if [ ! -d "$VT/$altgerek" ] ;then
|
||||||
if [[ ! ${klymap["$altgerek"]} ]] ; then
|
if [[ "$klymap" != *";${altgerek};"* ]]; then
|
||||||
#klyD+=("$altgerek")
|
|
||||||
#echo ${klyD[-1]}
|
|
||||||
kly_yeni $altgerek
|
kly_yeni $altgerek
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
klyD+=("$1")
|
klyD+="$_paket "
|
||||||
gerekleri_dosyala ${klyD[-1]}
|
gerekleri_dosyala "$_paket"
|
||||||
else
|
else
|
||||||
ryaz 31 "$1 talimatı bulunamadı."
|
ryaz 31 "$_paket talimatı bulunamadı."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
derleme_listyap(){
|
derleme_listyap(){
|
||||||
ryaz 32 "$1 $_gerekler_belirleniyor"
|
ryaz 32 "$1 $_gerekler_belirleniyor"
|
||||||
local pkt dlyp
|
dlyD=""
|
||||||
dlyD=()
|
dlymap=""
|
||||||
declare -A dlymap
|
|
||||||
derleme_listyap_kontrol
|
derleme_listyap_kontrol
|
||||||
dly_yeni $1
|
dly_yeni $1
|
||||||
echo "${dlyD[@]}"
|
echo "${dlyD}"
|
||||||
}
|
}
|
||||||
|
|
||||||
kurulum_listyap(){
|
kurulum_listyap(){
|
||||||
klyD=()
|
klyD=""
|
||||||
declare -A klymap
|
klymap=""
|
||||||
kly_yeni "$1"
|
kly_yeni "$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -807,7 +863,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
|
||||||
|
@ -822,7 +878,7 @@ oto_derle_kur_paketle(){
|
||||||
else
|
else
|
||||||
paket_derle_kur $1
|
paket_derle_kur $1
|
||||||
fi
|
fi
|
||||||
rm -rf {gerek.eski,gerek,kurulanlar,silinenler,tumgerekler.eski,tumgerekler}.liste
|
rm -rf {gerek.konum.eski,gerek,kurulanlar,silinenler,gerek.eski}.liste
|
||||||
}
|
}
|
||||||
|
|
||||||
paket_kur_oto(){
|
paket_kur_oto(){
|
||||||
|
@ -884,7 +940,7 @@ paket_kur_liste_zorla(){
|
||||||
#otomatik kontrollu kur
|
#otomatik kontrollu kur
|
||||||
paket_kur_oto2(){
|
paket_kur_oto2(){
|
||||||
derleme_listyap_kontrol
|
derleme_listyap_kontrol
|
||||||
derleme_listyap "$1" > /dev/null && mps -ok gerek.liste
|
derleme_listyap "$1" > /dev/null && mps -ok gerek.konum.liste
|
||||||
}
|
}
|
||||||
|
|
||||||
paket_inkur_liste_direk(){
|
paket_inkur_liste_direk(){
|
||||||
|
@ -911,10 +967,9 @@ paket_inkur_oto(){
|
||||||
|
|
||||||
local konum anakonum kurdurum _agdan_kur_onay
|
local konum anakonum kurdurum _agdan_kur_onay
|
||||||
derleme_listyap_kontrol
|
derleme_listyap_kontrol
|
||||||
#derleme_listyap "$1" | grep "bulunamadı"
|
|
||||||
kurulum_listyap "$1" | grep "bulunamadı"
|
kurulum_listyap "$1" | grep "bulunamadı"
|
||||||
local kpkt
|
local kpkt
|
||||||
for paketkonum in `cat gerek.liste`;do
|
for paketkonum in `cat gerek.konum.liste`;do
|
||||||
# önce talimat-anatalimat karşılaştırması yapılır.
|
# önce talimat-anatalimat karşılaştırması yapılır.
|
||||||
kpkt=`basename $paketkonum`
|
kpkt=`basename $paketkonum`
|
||||||
konum="`find "$talimatname" -name $kpkt`"
|
konum="`find "$talimatname" -name $kpkt`"
|
||||||
|
@ -968,16 +1023,23 @@ paket_sil_oto_onayli(){
|
||||||
}
|
}
|
||||||
|
|
||||||
paket_sil_gerekli(){
|
paket_sil_gerekli(){
|
||||||
local _onay
|
local _onay _tbs
|
||||||
if [ -d $VT/$1 ];then
|
if [ -d $VT/$1 ];then
|
||||||
bagimli_bilgi_dosyala "$1"
|
bagimli_bilgi_dosyala "$1"
|
||||||
rm -f /tmp/$1.silinecekler
|
rm -f /tmp/$1.silinecekler
|
||||||
touch /tmp/$1.silinecekler
|
touch /tmp/$1.silinecekler
|
||||||
for pkaltb in $(cat /tmp/$1.gerekler.liste);do
|
_tbsnc=$(ters_bagimli_bilgi $1 "kurulu")
|
||||||
|
_tbs=$(echo $_tbsnc | wc -l)
|
||||||
|
if [ $_tbs -gt 0 ];then
|
||||||
|
ryaz 31 "$1 silinemez."
|
||||||
|
echo "ters gerekleri: $_tbsnc"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
for pkaltb in $(tac /tmp/$1.gerekler.liste);do
|
||||||
if [ -d $VT/$pkaltb ];then
|
if [ -d $VT/$pkaltb ];then
|
||||||
tbsonuc=()
|
tbsonuc=""
|
||||||
tbsonuc=$(ters_bagimli_bilgi $pkaltb "kurulu")
|
tbsonuc=$(ters_bagimli_bilgi $pkaltb "kurulu")
|
||||||
if [ ${#tbsonuc[0]} = 0 ];then
|
if [ $(echo $tbsonuc | wc -l) -eq 0 ];then
|
||||||
ryaz 32 "$pkaltb silinebilir."
|
ryaz 32 "$pkaltb silinebilir."
|
||||||
echo "$pkaltb" >> /tmp/$1.silinecekler
|
echo "$pkaltb" >> /tmp/$1.silinecekler
|
||||||
elif [ "$tbsonuc" = "$1" ];then
|
elif [ "$tbsonuc" = "$1" ];then
|
||||||
|
@ -1033,13 +1095,13 @@ paket_guncelle(){
|
||||||
paket_guncelle_oto(){
|
paket_guncelle_oto(){
|
||||||
derleme_listyap "$1" > /dev/null &&
|
derleme_listyap "$1" > /dev/null &&
|
||||||
local kpkt
|
local kpkt
|
||||||
for kpkt in `cat gerek.liste`;do
|
for kpkt in `cat gerek.konum.liste`;do
|
||||||
durum=`kurulu_kontrol "$kpkt"`
|
durum=`kurulu_kontrol "$kpkt"`
|
||||||
if [ "$durum" = "kurulu" ]; then
|
if [ "$durum" = "kurulu" ]; then
|
||||||
paket_guncelle "$kpkt"
|
paket_guncelle "$kpkt"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
rm gerek.liste tumgerekler.liste
|
rm gerek.konum.liste gerek.liste
|
||||||
}
|
}
|
||||||
|
|
||||||
dongu_gosterge(){
|
dongu_gosterge(){
|
||||||
|
@ -1591,9 +1653,11 @@ yeni_kurulacak_paketler(){
|
||||||
[ -f /tmp/mevcut_kurulu.liste ] && rm -rf /tmp/mevcut_kurulu.liste
|
[ -f /tmp/mevcut_kurulu.liste ] && rm -rf /tmp/mevcut_kurulu.liste
|
||||||
ls $VT > /tmp/mevcut_kurulu.liste
|
ls $VT > /tmp/mevcut_kurulu.liste
|
||||||
derleme_listyap $1 &> /dev/null
|
derleme_listyap $1 &> /dev/null
|
||||||
comm -13 <(sort /tmp/mevcut_kurulu.liste) <(sort tumgerekler.liste)
|
comm -13 <(sort /tmp/mevcut_kurulu.liste) <(sort gerek.liste)
|
||||||
[ -f tumgerekler.liste ] && rm -rf tumgerekler.liste
|
#diff --changed-group-format='***%>' --unchanged-group-format='' --new-group-format='+++%>' \
|
||||||
|
#/tmp/mevcut_kurulu.liste gerek.liste | cut -d' ' -f1 | sort -d
|
||||||
[ -f gerek.liste ] && rm -rf gerek.liste
|
[ -f gerek.liste ] && rm -rf gerek.liste
|
||||||
|
[ -f gerek.konum.liste ] && rm -rf gerek.konum.liste
|
||||||
}
|
}
|
||||||
|
|
||||||
# güncellemelerin alınması talimatname üzerinden
|
# güncellemelerin alınması talimatname üzerinden
|
||||||
|
@ -2968,6 +3032,9 @@ ayarlar() {
|
||||||
-dly|dliste)
|
-dly|dliste)
|
||||||
derleme_listyap "$2"
|
derleme_listyap "$2"
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
glist)
|
||||||
|
gerekleri_listele "$2"
|
||||||
|
exit 0 ;;
|
||||||
### mps -kly paketismi = ilgili paketin ve kurulması gereken altgereklerini verir,oluştur.
|
### mps -kly paketismi = ilgili paketin ve kurulması gereken altgereklerini verir,oluştur.
|
||||||
-kly)
|
-kly)
|
||||||
kurulum_listyap "$2" ;;
|
kurulum_listyap "$2" ;;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Tanım: Açık kaynak web sunucusu.
|
# Tanım: Açık kaynak web sunucusu.
|
||||||
# URL: http://httpd.apache.org/ABOUT_APACHE.html
|
# URL: http://httpd.apache.org/ABOUT_APACHE.html
|
||||||
# Paketçi: milisarge
|
# Paketçi: milisarge
|
||||||
# Gerekler: pcre apr-util sqlite expat
|
# Gerekler: pcre apr-util sqlite
|
||||||
# Grup: ağ
|
# Grup: ağ
|
||||||
|
|
||||||
isim=apache
|
isim=apache
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Tanım: Apache taşınabilir çalışma zamanı yardımcı program kütüphanesi
|
# Tanım: Apache taşınabilir çalışma zamanı yardımcı program kütüphanesi
|
||||||
# URL: http://apr.apache.org/
|
# URL: http://apr.apache.org/
|
||||||
# Paketçi: milisarge
|
# Paketçi: milisarge
|
||||||
# Gerekler: apr expat unixodbc postgresql
|
# Gerekler: apr unixodbc postgresql
|
||||||
# Grup: kütüphane
|
# Grup: kütüphane
|
||||||
|
|
||||||
isim=apr-util
|
isim=apr-util
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Tanım: Freedesktop.org ileti taşıma sistemi
|
# Tanım: Freedesktop.org ileti taşıma sistemi
|
||||||
# URL: http://www.freedesktop.org/wiki/Software/dbus/
|
# URL: http://www.freedesktop.org/wiki/Software/dbus/
|
||||||
# Paketçi: milisarge
|
# Paketçi: milisarge
|
||||||
# Gerekler: expat xorg-libx11 xorg-libsm xorg-libice
|
# Gerekler: xorg-libx11 xorg-libsm xorg-libice
|
||||||
|
|
||||||
isim=dbus
|
isim=dbus
|
||||||
surum=1.10.6
|
surum=1.10.6
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Tanım: Uluslararasılaştırma aracı koleksiyonu
|
# Tanım: Uluslararasılaştırma aracı koleksiyonu
|
||||||
# URL: http://freedesktop.org/wiki/Software/intltool
|
# URL: http://freedesktop.org/wiki/Software/intltool
|
||||||
# Paketçi: milisarge
|
# Paketçi: milisarge
|
||||||
# Gerekler: perl-xml-parser,expat
|
# Gerekler: perl-xml-parser
|
||||||
|
|
||||||
isim=intltool
|
isim=intltool
|
||||||
surum=0.51.0
|
surum=0.51.0
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Tanım: Sonraki nesil python üst düzey betik dili
|
# Tanım: Sonraki nesil python üst düzey betik dili
|
||||||
# URL: http://www.python.org
|
# URL: http://www.python.org
|
||||||
# Paketçi: milisarge
|
# Paketçi: milisarge
|
||||||
# Gerekler: sqlite expat
|
# Gerekler: sqlite
|
||||||
|
|
||||||
isim=python3
|
isim=python3
|
||||||
surum=3.5.1
|
surum=3.5.1
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Tanım: Acik kaynak kodlu OpenGL uyumlu grafik kutuphanesi
|
# Tanım: Acik kaynak kodlu OpenGL uyumlu grafik kutuphanesi
|
||||||
# URL: http://www.xorg-mesa3d.org
|
# URL: http://www.xorg-mesa3d.org
|
||||||
# Paketçi: milisarge
|
# Paketçi: milisarge
|
||||||
# Gerekler: pkg-config libtool wayland xorg-libx11 xorg-libdrm xorg-libxext xorg-libxdamage expat llvm elfutils xorg-libxshmfence wayland libvdpau
|
# Gerekler: pkg-config libtool wayland xorg-libx11 xorg-libdrm xorg-libxext xorg-libxdamage llvm elfutils xorg-libxshmfence wayland libvdpau
|
||||||
|
|
||||||
isim=xorg-mesa
|
isim=xorg-mesa
|
||||||
surum=17.1.8
|
surum=17.1.8
|
||||||
|
|
Loading…
Reference in New Issue