forked from mirrored-repos/manjaro-tools
[util] some more calc build deps work; experimental
This commit is contained in:
parent
2f878504f0
commit
72648f7271
1 changed files with 38 additions and 26 deletions
42
lib/util.sh
42
lib/util.sh
|
@ -30,36 +30,48 @@ create_set(){
|
||||||
}
|
}
|
||||||
|
|
||||||
calculate_build_order(){
|
calculate_build_order(){
|
||||||
local is_split=false
|
local is_split=false path=/tmp/calc
|
||||||
for pkg in $(cat /tmp/${name}.set);do
|
mkdir -p $path
|
||||||
|
#[[ -f $path/*.{sort,set,makedeps,split} ]] &&
|
||||||
|
rm $path/*
|
||||||
|
pacman -Qqg base-devel > $path/base-devel.set
|
||||||
|
|
||||||
|
for pkg in $(cat $1/${name}.set);do
|
||||||
cd $pkg
|
cd $pkg
|
||||||
source PKGBUILD
|
source PKGBUILD
|
||||||
if [[ -n $pkgbase ]];then
|
if [[ -n $pkgbase ]];then
|
||||||
is_split=true; echo "$pkgbase" >> /tmp/${name}.split
|
is_split=true; echo "$pkgbase" >> $path/${name}.split
|
||||||
fi
|
fi
|
||||||
for m in ${makedepends[@]};do
|
for m in ${makedepends[@]};do
|
||||||
echo $m >> /tmp/${name}.makedeps
|
echo $m >> $path/${name}.makedeps
|
||||||
done
|
done
|
||||||
cd ..
|
cd ..
|
||||||
done
|
done
|
||||||
sort -u /tmp/${name}.split > /tmp/${name}.split.sort
|
[[ -f $path/${name}.split ]] && sort -u $path/${name}.split > $path/${name}.split.sort
|
||||||
sort -u /tmp/${name}.makedeps > /tmp/${name}.makedeps.sort
|
sort -u $path/${name}.makedeps > $path/${name}.makedeps.sort
|
||||||
|
|
||||||
rm /tmp/${name}.split
|
[[ -f $path/${name}.split ]] && rm $path/${name}.split
|
||||||
#[[ -f /tmp/${name}.makedeps ]] && rm /tmp/${name}.makedeps
|
|
||||||
|
|
||||||
for d in $(cat /tmp/${name}.makedeps.sort);do
|
for d in $(cat $path/${name}.makedeps.sort);do
|
||||||
for pkg in $(cat /tmp/${name}.set);do
|
for pkg in $(cat $1/${name}.set);do
|
||||||
if [[ $pkg == $d ]];then
|
if [[ $pkg == $d ]];then
|
||||||
echo $d >> /tmp/${name}.makedeps
|
echo $d >> $path/${name}.makedeps
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
sort -u $path/${name}.makedeps > $path/${name}.makedeps.sort
|
||||||
|
rm $path/${name}.makedeps
|
||||||
|
sort -u $path/${name}.makedeps.sort $path/base-devel.set > $path/filter.set
|
||||||
|
|
||||||
|
|
||||||
|
for b in $(cat $path/base-devel.set);do
|
||||||
|
for m in $(cat $path/filter.set);do
|
||||||
|
if [[ $b == $m ]];then
|
||||||
|
sed "/$m/d" -i $path/filter.set
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
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(){
|
remove_set(){
|
||||||
|
|
Loading…
Reference in a new issue