[util] add some more dep calc (wip)

This commit is contained in:
udeved 2015-06-06 09:48:56 +02:00
parent cfba310482
commit c14135d13c

View file

@ -12,6 +12,75 @@ import(){
[[ -r $1 ]] && source $1
}
create_set(){
msg "[$1/${name}.set]"
if [[ -f $1/${name}.set ]];then
msg3 "Backing up $1/${name}.set.orig"
mv "$1/${name}.set" "$1/${name}.set.orig"
fi
local list=$(find * -maxdepth 0 -type d | sort)
for item in ${list[@]};do
if [[ -f $item/$2 ]];then
cd $item
msg2 "Adding ${item##*/}"
echo ${item##*/} >> $1/${name}.set || break
cd ..
fi
done
}
calculate_build_order(){
local is_split=false
for pkg in $(cat /tmp/${name}.set);do
cd $pkg
source PKGBUILD
if [[ -n $pkgbase ]];then
is_split=true; echo "$pkgbase" >> /tmp/${name}.split
fi
for m in ${makedepends[@]};do
echo $m >> /tmp/${name}.makedeps
done
cd ..
done
sort -u /tmp/${name}.split > /tmp/${name}.split.sort
sort -u /tmp/${name}.makedeps > /tmp/${name}.makedeps.sort
rm /tmp/${name}.split
#[[ -f /tmp/${name}.makedeps ]] && rm /tmp/${name}.makedeps
for d in $(cat /tmp/${name}.makedeps.sort);do
for pkg in $(cat /tmp/${name}.set);do
if [[ $pkg == $d ]];then
echo $d >> /tmp/${name}.makedeps
fi
done
done
sort -u /tmp/${name}.makedeps > /tmp/${name}.makedeps.sort
#[[ -f /tmp/${name}.makedeps ]] && rm /tmp/${name}.makedeps
rm /tmp/${name}.*sort
}
remove_set(){
if [[ -f $1/${name}.set ]]; then
msg "Removing [$1/${name}.set] ..."
rm $1/${name}.set
fi
}
show_set(){
local list=$(cat $1/${name}.set)
msg "Content of [$1/${name}.set] ..."
for item in ${list[@]}; do
msg2 "$item"
done
}
get_deps(){
echo $(pactree -u $1)
}
get_timer(){
echo $(date +%s)
}
@ -356,6 +425,8 @@ load_profile_config(){
[[ -z ${displaymanager} ]] && displaymanager="none"
[[ -z ${autologin} ]] && displaymanager="true"
[[ -z ${default_desktop_executable} ]] && default_desktop_executable="none"
[[ -z ${default_desktop_file} ]] && default_desktop_file="none"