summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorJustin Davis <jrcd83@gmail.com>2012-01-07 18:58:18 +0100
committerJustin Davis <jrcd83@gmail.com>2012-01-07 18:58:18 +0100
commit0fd17fd113f7e6ac696b574c7929444cfb88b52d (patch)
treeb9c24672f5d7c6dd6cbea236e35c3eee25e40759 /bin
parent23b61cc4ac925c0139c3456c4672dc2d306af7fe (diff)
parent65f503976340ea03c030b26af8691e2f373f1377 (diff)
downloadgenpkg-0fd17fd113f7e6ac696b574c7929444cfb88b52d.tar.gz
genpkg-0fd17fd113f7e6ac696b574c7929444cfb88b52d.tar.xz
Merge changed from other puter.
Fix return value snafus, etc.
Diffstat (limited to 'bin')
-rwxr-xr-xbin/genpkg23
-rwxr-xr-xbin/makepkgmeta22
2 files changed, 23 insertions, 22 deletions
diff --git a/bin/genpkg b/bin/genpkg
index 904de8c..e17b984 100755
--- a/bin/genpkg
+++ b/bin/genpkg
@@ -10,29 +10,28 @@ vard=~/var
if [ $# -lt 1 ]
then
echo "usage: $prog [package name]" 1>&2
- exit 1
+ exit 2
fi
if ! [ -d "$tweakd" ]
then
echo "$prog: bad package tweaks dir: $tweakd" 1>&2
- exit 2
+ exit 1
fi
if ! [ -d "$pkgd" ]
then
echo "$prog: bad package dest dir: $pkgd" 1>&2
- exit 2
+ exit 1
fi
if ! [ -d "$vard" ]
then
echo "$prog: bad package var dir: $vard" 1>&2
- exit 2
+ exit 1
fi
cwd=$(pwd)
-set -e
for pkg
do
@@ -40,15 +39,19 @@ do
cd "$pkgd/$pkg"
METABIN=$libd/metas PKGVAR=$vard makepkgmeta "$pkg" >PKGMETA
- case $? in
- 0) echo "Generated $pkgd/$pkg/PKGMETA" ;;
- *) exit $?
- esac
+ case $? in
+ 0) echo "Generated $pkgd/$pkg/PKGMETA" ;;
+ *) exit $?
+ esac
twk=$tweakd/$pkg
if [ -f "$twk" -a -r "$twk" ]
then
- tweakmeta >PKGMETA.new <$twk
+ if ! tweakmeta >PKGMETA.new <$twk
+ then
+ rm PKGMETA.new
+ exit 1
+ fi
mv PKGMETA.new PKGMETA
echo "Tweaked PKGMETA with $tweakd/$pkg."
fi
diff --git a/bin/makepkgmeta b/bin/makepkgmeta
index 476d576..82a7b1f 100755
--- a/bin/makepkgmeta
+++ b/bin/makepkgmeta
@@ -17,13 +17,9 @@ $1 == "source" {
END {
# remember that metas emit no output when they cant match
# a package.
- if (NR == 0) exit 0
+ if (NR == 0 || !ver) exit 2
ORS="\n"
- if (!ver) {
- print prog ": wtf? pkgver is empty!" | "cat 1>&2"
- exit 1
- }
# Replace any version strings in the source file with ${pkgver}.
gsub(/[.]/, "\\\\&", ver)
@@ -63,18 +59,20 @@ esac
for flav in "$METABIN"/*
do
[ -f "$flav" -a -x "$flav" ] || continue
- PATH="$PATH:$flav.d" "$flav" $1 | lazysource
+ PATH="$PATH:$flav.d" "$flav" $1 >PKGMETA.tmp
metaret=$?
case $metaret in
0) basicmeta $1
+ lazysource <PKGMETA.tmp
+ rm PKGMETA.tmp
exit 0 ;;
- 1) ;; # loop
- 2) echo "error: $flav encountered an error" 1>&2
- exit 2 ;;
- *) echo "error: $flav returned error code $metaret" 1>&2
- exit 2 ;;
+ 1) echo "makepkgmeta: $flav encountered an error" 1>&2
+ exit 1 ;;
+ 2) ;; # loop
+ *) echo "makepkgmeta: $flav returned error code $metaret" 1>&2
+ exit 1 ;;
esac
done
-echo "error: no matching meta generator found for '$1'" 1>&2
+echo "makepkgmeta: no matching meta generator found for '$1'" 1>&2
exit 1