#!/bin/sh prog=genpkg metad=~/.genpkg/metas templd=~/.genpkg/templ tweakd=~/pkg/tweaks pkgd=~/pkg/dest vard=~/.genpkg/var mergefile() { fname="$1" shift if [ -f "$fname.$$" ] then echo "$prog: error: temp file already exists: $fname.$$" 1>&2 return 1 fi while [ "$#" -gt 0 ] do sect="$1" shift getpkgtree "$fname" "$sect" >> "$fname.$$" case "$?" in 0) ;; 101) echo "$prog: error: missing file in PKGTREE: $fname" 1>&2 return 101 ;; 102) continue ;; # empty section so don't echo a newline below *) echo "$prog: unknown error from getpkgtree: $?" 1>&2 return 1 ;; esac [ "$#" -gt 0 ] && echo >> "$fname.$$" done if du "$fname.$$" | awk '$1 == 0 { exit 1 }' then mv "$fname.$$" "$fname" return 0 else rm "$fname.$$" return 1 fi } if [ $# -lt 1 ] then echo "usage: $prog [package name]" 1>&2 exit 2 fi if ! [ -d "$tweakd" ] then echo "$prog: bad package tweaks dir: $tweakd" 1>&2 exit 1 fi if ! [ -d "$pkgd" ] then echo "$prog: bad package dest dir: $pkgd" 1>&2 exit 1 fi if ! [ -d "$vard" ] then echo "$prog: bad package var dir: $vard" 1>&2 exit 1 fi for pkg do [ -d "$pkgd/$pkg" ] || mkdir "$pkgd/$pkg" cd "$pkgd/$pkg" if [ -d PKGTREE ] then echo "$prog: warning: removing old PKGTREE" 1>&2 rm -rf PKGTREE fi mkdir PKGTREE if METABIN="$metad" PKGVAR="$vard" mkpkgmeta "$pkg" then echo "$pkgd/$pkg" else exit "$?" fi #twk="$tweakd/$pkg" #if [ -f "$twk" -a -r "$twk" ] && modmetapkg #then # echo "Modified metapackage." 1>&2 #fi pbfields < PKGDATA | putpkgtree PKGBUILD prefix body || exit "$?" mergefile PKGBUILD prefix build check package suffix || exit "$?" done