Commit 89afa417 authored by Dubiousjim's avatar Dubiousjim Committed by Natanael Copa

apkgrel, functions: refactor calculation of APKBUILD's path

parent b2d6b47b
......@@ -45,9 +45,8 @@ do_add () {
local f= old=
for f; do
[ -n "$only_clean_git" ] \
&& [ -n "$(git diff --name-only "$f")" ] \
&& [ -n "$(git diff --name-only "${f%/*}")" ] \
&& continue
[ -d "$f" ] && f="$f/APKBUILD"
old=$(show_plain "$f")
case $old in
[0-9]*) setto=$((old + 1));;
......@@ -61,7 +60,6 @@ do_verify() {
[ -n "$force" ] && return 0
local f= rc=0
for f; do
[ -d "$f" ] && f="$f/APKBUILD"
if ! grep -q '^pkgrel=[0-9]' "$f"; then
error "no proper \$pkgrel for $f"
rc=1
......@@ -124,6 +122,15 @@ if [ $# -eq 0 ]; then
exit 2
fi
# normalize $@ into paths to APKBUILDs
[ "$(echo "$@" | wc -l)" -eq 1 ] || die "can't handle paths with embedded newlines"
args=$(for a; do p=$(any_buildscript "$a") || die "can't find APKBUILD for $a"; echo "$p"; done)
[ $? -eq 0 ] || exit 1
oldifs=$IFS
IFS=$'\n'
set -- $args
IFS=$oldifs
do_verify "$@" || exit 1
$cmd "$@"
......@@ -30,6 +30,19 @@ aports_buildscript() {
fi
}
# expects $1 to be a file, or a directory containing an APKBUILD, or a package directory in the aports tree
# outputs APKBUILD's path if successful (doesn't verify that it's a valid APKBUILD)
any_buildscript() {
if [ -f "$1" ]; then
echo "$1"
elif [ -d "$1" ]; then
[ -f "$1/APKBUILD" ] || return 1
echo "$1/APKBUILD"
else
aports_buildscript "$1" || return 1
fi
}
# output functions
case $prog in
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment