From df7d6667e5c016faacde7fb78d232016d5f39339 Mon Sep 17 00:00:00 2001 From: Justin Davis Date: Tue, 17 Jan 2012 11:07:57 -0500 Subject: Rename makepkgmeta to mkpkgdata. Use files named PKGDATA instead of files named PKGMETA. --- bin/genpkg | 16 ++++++----- bin/makepkgbuild | 12 ++++---- bin/makepkgmeta | 78 -------------------------------------------------- bin/mkpkgdata | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ bin/tweakmeta | 14 ++++----- 5 files changed, 108 insertions(+), 98 deletions(-) delete mode 100755 bin/makepkgmeta create mode 100755 bin/mkpkgdata (limited to 'bin') diff --git a/bin/genpkg b/bin/genpkg index 6693e6f..669f6c2 100755 --- a/bin/genpkg +++ b/bin/genpkg @@ -6,7 +6,7 @@ metad=~/.genpkg/metas templd=~/.genpkg/templ tweakd=~/pkg/tweaks pkgd=~/pkg/dest -vard=~/var +vard=~/.genpkg/var if [ $# -lt 1 ] then @@ -39,9 +39,10 @@ do [ -d "$pkgd/$pkg" ] || mkdir "$pkgd/$pkg" cd "$pkgd/$pkg" - if METABIN="$metad" PKGVAR="$vard" makepkgmeta "$pkg" > PKGMETA + echo "$pkgd/$pkg" + if METABIN="$metad" PKGVAR="$vard" mkpkgdata "$pkg" > PKGDATA then - echo "Generated $pkgd/$pkg/PKGMETA" + echo "Generated PKGDATA." else exit $? fi @@ -49,13 +50,14 @@ do twk="$tweakd/$pkg" if [ -f "$twk" -a -r "$twk" ] then - if ! tweakmeta > PKGMETA.new < "$twk" + if ! tweakmeta < "$twk" > PKGDATA.new then - rm PKGMETA.new + echo "$prog: tweakmeta returned error: $?" 1>&2 + rm PKGDATA.new exit 1 fi - mv PKGMETA.new PKGMETA - echo "Tweaked PKGMETA with $tweakd/$pkg." + mv PKGDATA.new PKGDATA + echo "Tweaked PKGDATA with $twk." fi if TDIR="$templd" makepkgbuild diff --git a/bin/makepkgbuild b/bin/makepkgbuild index 7f9d4bd..67077fc 100755 --- a/bin/makepkgbuild +++ b/bin/makepkgbuild @@ -28,7 +28,7 @@ a" ;; esac txt=$(awk -v r="$regexp" 'BEGIN { FS = "\n"; RS = "" } - $1 ~ r { for (i = 2; i <= NF; i++) print $i }' PKGMETA |\ + $1 ~ r { for (i = 2; i <= NF; i++) print $i }' PKGDATA |\ sed 's/^/ /') [ "$txt" ] || return 0 @@ -41,13 +41,13 @@ END return $? } -[ -r PKGMETA ] || die 1 "PKGMETA could not be read." +[ -r PKGDATA ] || die 1 "PKGDATA could not be read." [ "$TDIR" ] || die 1 "TDIR env. var is unset." [ -d "$TDIR" ] || die 1 "template dir ($TDIR) not found." -tcmd=$(awk 'BEGIN { FS="\n"; RS="" } $1 == "template" { print $2 }' PKGMETA) -[ "$tcmd" ] || die 1 "PKGMETA is missing 'template' entry." +tcmd=$(awk 'BEGIN { FS="\n"; RS="" } $1 == "template" { print $2 }' PKGDATA) +[ "$tcmd" ] || die 1 "PKGDATA is missing 'template' entry." set -- $tcmd cmd="$TDIR/$1" @@ -55,8 +55,8 @@ cmd="$TDIR/$1" || die 2 "template command ($1) not in template dir ($TDIR)" # Generate the PKGBUILD using basic pbfields script plus custom template. -"$TDIR/pbfields" < PKGMETA > PKGBUILD || die 1 "pbfields returned error ${?}." -"$TDIR"/$tcmd < PKGMETA >> PKGBUILD || die 1 "template pipeline ($tcmd) failed" +"$TDIR/pbfields" < PKGDATA > PKGBUILD || die 1 "pbfields returned error ${?}." +"$TDIR"/$tcmd < PKGDATA >> PKGBUILD || die 1 "template pipeline ($tcmd) failed" # Prepand/append text to the package, check, or build functions. for func in package check build diff --git a/bin/makepkgmeta b/bin/makepkgmeta deleted file mode 100755 index 82a7b1f..0000000 --- a/bin/makepkgmeta +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/sh - -prog=makepkgmeta - -lazysource() -{ - awk -v prog="$prog" ' -BEGIN { FS = "\n"; RS = ""; OFS = ORS = "\n\n" } -$1 == "pkgver" { ver = $2 } -$1 == "source" { - len = NF - 1 - for (i = 2; i <= NF; i++) sources[i - 1] = $i - next -} -1 # print everything but sources - -END { - # remember that metas emit no output when they cant match - # a package. - if (NR == 0 || !ver) exit 2 - - ORS="\n" - - # Replace any version strings in the source file with ${pkgver}. - gsub(/[.]/, "\\\\&", ver) - - print "source" - for(i = 1; i <= len; i++) { - gsub(ver, "${pkgver}", sources[i]) - print sources[i] - } - print "" -}' - return $? -} # end of lazysource() - -basicmeta() -{ - printf "pkgname\n%s\n\n" "$1" - printf "pkgrel\n%d\n\n" "${PKGREL:-1}" - printf "packager\n%s\n\n" "${PACKAGER:-Anonymous}" - - if [ "$MAINTAINER" ] - then - printf "maintainer\n%s\n\n" "$MAINTAINER" - fi -} - -case $# in -0) echo "Usage: $prog [pkgname]" 1>&2 - exit 1 -esac - -case "$METABIN" in -'') echo "$prog: set METABIN before calling $prog" 1>&2 - exit 2 -esac - -for flav in "$METABIN"/* -do - [ -f "$flav" -a -x "$flav" ] || continue - PATH="$PATH:$flav.d" "$flav" $1 >PKGMETA.tmp - metaret=$? - case $metaret in - 0) basicmeta $1 - lazysource &2 - exit 1 ;; - 2) ;; # loop - *) echo "makepkgmeta: $flav returned error code $metaret" 1>&2 - exit 1 ;; - esac -done - -echo "makepkgmeta: no matching meta generator found for '$1'" 1>&2 -exit 1 diff --git a/bin/mkpkgdata b/bin/mkpkgdata new file mode 100755 index 0000000..ced31db --- /dev/null +++ b/bin/mkpkgdata @@ -0,0 +1,86 @@ +#!/bin/sh + +prog=mkpkgdata + +lazysource() +{ + awk -v prog="$prog" ' +BEGIN { FS = "\n"; RS = ""; OFS = ORS = "\n\n" } +$1 == "pkgver" { ver = $2 } +$1 == "source" { + len = NF - 1 + for(i = 2; i <= NF; i++) sources[i - 1] = $i + next +} +1 # print everything but sources + +END { + # remember that metas emit no output when they cant match + # a package. + if(NR == 0 || !ver) exit 2 + + ORS="\n" + + # Replace any version strings in the source file with ${pkgver}. + gsub(/[.]/, "\\\\&", ver) + + print "source" + for(i = 1; i <= len; i++){ + gsub(ver, "${pkgver}", sources[i]) + print sources[i] + } + print "" +}' + return $? +} # end of lazysource() + +basicmeta() +{ + printf "pkgname\n%s\n\n" "$1" + printf "pkgrel\n%d\n\n" "${PKGREL:-1}" + printf "packager\n%s\n\n" "${PACKAGER:-Anonymous}" + + if [ "$MAINTAINER" ] + then + printf "maintainer\n%s\n\n" "$MAINTAINER" + fi +} + +case $# in +0) echo "usage: $prog [package name]" 1>&2 + exit 1 +esac + +case "$METABIN" in +'') echo "$prog: set METABIN before calling $prog" 1>&2 + exit 1 +esac + +tmp="/tmp/$prog.$$" +for flav in "$METABIN"/* +do + [ -f "$flav" -a -x "$flav" ] || continue + PATH="$PATH:$flav.d" "$flav" "$1" > "$tmp" + trap 'rm "$tmp"' 1 2 15 + metaret=$? + if [ "$metaret" -eq 0 ] + then + basicmeta "$1" + lazysource < "$tmp" + rm "$tmp" + exit 0 + fi + + rm "$tmp" + trap '' 1 2 5 + case $metaret in + 1) echo "$prog: $flav encountered an error" 1>&2 + exit 1 ;; + 2) ;; # loop + *) echo "$prog: $flav returned error code $metaret" 1>&2 + exit 1 ;; + esac +done + +echo "$prog: no matching meta generator found for '$1'" 1>&2 +exit 1 diff --git a/bin/tweakmeta b/bin/tweakmeta index d38f316..75198a2 100755 --- a/bin/tweakmeta +++ b/bin/tweakmeta @@ -2,24 +2,24 @@ ## # tweakmeta # -# First read a PKGMETA file in the current directory, loading its values. +# First read a PKGDATA file in the current directory, loading its values. # Next read a PKGTWEAK file from standard input. -# The PKGTWEAK file tells us how to modify the PKGMETA data. -# The modified PKGMETA is printed to standard output. +# The PKGTWEAK file tells us how to modify the PKGDATA data. +# The modified PKGDATA is printed to standard output. # # Justin Davis BEGIN { PROG = "tweakmeta" - if (system("test -r PKGMETA") != 0) { - print PROG ": PKGMETA file could not be read." | "cat 1>&2" + if (system("test -r PKGDATA") != 0) { + print PROG ": PKGDATA file could not be read." | "cat 1>&2" exit(errcode = 2) } FS = "\n"; RS = "" - while (getline<"PKGMETA" > 0) + while (getline<"PKGDATA" > 0) for (i = 2; i <= NF; i++) pushval($1, $i) - close("PKGMETA") + close("PKGDATA") FS = " "; RS = "\n" } -- cgit v1.2.3-24-g4f1b