The specfile syntax for multiple prereqs are not so simple as I first
assumed. This new code will correctly create a prereq with multiple conditions.
This commit is contained in:
parent
079ed3c2c7
commit
d2947215a2
@ -56,6 +56,7 @@ indent4=" "
|
|||||||
indent8=" "
|
indent8=" "
|
||||||
indent12=" "
|
indent12=" "
|
||||||
indent16=" "
|
indent16=" "
|
||||||
|
indent24=" "
|
||||||
# fix_ver(): "normalize" a version-pkgver pair
|
# fix_ver(): "normalize" a version-pkgver pair
|
||||||
# params: $1=version
|
# params: $1=version
|
||||||
# Removes any '.' and '-' characters from a version string
|
# Removes any '.' and '-' characters from a version string
|
||||||
@ -99,11 +100,23 @@ spec_subsys_header()
|
|||||||
echo "$indent12 replaces self"
|
echo "$indent12 replaces self"
|
||||||
echo "$indent12 exp $pkgname.$1.$2"
|
echo "$indent12 exp $pkgname.$1.$2"
|
||||||
}
|
}
|
||||||
|
# spec_subsys_req_header()
|
||||||
|
# param: none
|
||||||
|
spec_subsys_req_header()
|
||||||
|
{
|
||||||
|
echo "$indent16 prereq ("
|
||||||
|
}
|
||||||
# spec_subsys_req()
|
# spec_subsys_req()
|
||||||
# param: $1=prereq
|
# param: $1=prereq
|
||||||
spec_subsys_req()
|
spec_subsys_req()
|
||||||
{
|
{
|
||||||
echo "$indent16 prereq ( $1 )"
|
echo "$indent24 $1"
|
||||||
|
}
|
||||||
|
# spec_subsys_req_footer()
|
||||||
|
# param: none
|
||||||
|
spec_subsys_req_footer()
|
||||||
|
{
|
||||||
|
echo "$indent24"")"
|
||||||
}
|
}
|
||||||
# spec_subsys_footer()
|
# spec_subsys_footer()
|
||||||
# param: none
|
# param: none
|
||||||
@ -396,8 +409,8 @@ create_spec()
|
|||||||
fetch_imageconf
|
fetch_imageconf
|
||||||
fetch_depends
|
fetch_depends
|
||||||
spec_header $pkgname "$name $version-$pkgver" > $specfile
|
spec_header $pkgname "$name $version-$pkgver" > $specfile
|
||||||
pcsize=${#pc[@]}
|
local pcsize=${#pc[@]}
|
||||||
pctopsize=${#pctop[@]}
|
local pctopsize=${#pctop[@]}
|
||||||
for ((i=0; i < $pctopsize; i++))
|
for ((i=0; i < $pctopsize; i++))
|
||||||
do
|
do
|
||||||
local pcidx=0
|
local pcidx=0
|
||||||
@ -408,12 +421,31 @@ create_spec()
|
|||||||
if [ ! "$rv" -eq 0 ]; then # We got a hit!
|
if [ ! "$rv" -eq 0 ]; then # We got a hit!
|
||||||
spec_subsys_header ${pctop[$i]} `echo ${pc[$pcidx]}|$CUT -d . -f 2` "${pd[$pcidx]}" >> $specfile
|
spec_subsys_header ${pctop[$i]} `echo ${pc[$pcidx]}|$CUT -d . -f 2` "${pd[$pcidx]}" >> $specfile
|
||||||
reqsize=${#reqs[@]}
|
reqsize=${#reqs[@]}
|
||||||
|
declare -a reqidlist
|
||||||
|
reqidlidx=0
|
||||||
for ((j=0; j < $reqsize; j++))
|
for ((j=0; j < $reqsize; j++))
|
||||||
do
|
do
|
||||||
if [ "${reqs[$j]}" == "${pc[$pcidx]}" ]; then
|
if [ "${reqs[$j]}" == "${pc[$pcidx]}" ]; then
|
||||||
spec_subsys_req "${reqp[$j]}" >> $specfile
|
reqidlist[$reqidlidx]=$j
|
||||||
|
let "reqidlidx=$reqidlidx + 1"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
reqidlsize=${#reqidlist[@]}
|
||||||
|
if [ "$reqidlsize" -eq 1 ]; then
|
||||||
|
id=${reqidlist[1]}
|
||||||
|
spec_subsys_req_header >> $specfile
|
||||||
|
spec_subsys_req "${reqp[$id]}" >> $specfile
|
||||||
|
spec_subsys_req_footer >> $specfile
|
||||||
|
fi
|
||||||
|
if [ "$reqidlsize" -gt 1 ]; then
|
||||||
|
spec_subsys_req_header >> $specfile
|
||||||
|
for ((j=1; j < $reqidlsize; j++))
|
||||||
|
do
|
||||||
|
id=${reqidlist[$j]}
|
||||||
|
spec_subsys_req "${reqp[$id]}" >> $specfile
|
||||||
|
done
|
||||||
|
spec_subsys_req_footer >> $specfile
|
||||||
|
fi
|
||||||
spec_subsys_footer >> $specfile
|
spec_subsys_footer >> $specfile
|
||||||
fi
|
fi
|
||||||
let "pcidx = $pcidx + 1"
|
let "pcidx = $pcidx + 1"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user