diff options
author | Lukas Fleischer <archlinux@cryptocrack.de> | 2011-12-12 22:36:57 +0100 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2011-12-23 14:49:46 -0600 |
commit | a77e638c773d8a492f8c48e8c15474030a7e3d71 (patch) | |
tree | ad13d9931fc9e88ba39e7356ca79cfd619014415 /contrib/paclog-pkglist.in | |
parent | cd75ae46ab10fe295c5a3d3054a3b17eff31122a (diff) | |
download | pacman-a77e638c773d8a492f8c48e8c15474030a7e3d71.tar.xz |
contrib/*: Support the "--help" and "--version" options
Add "--help"/"-h" and "--version"/"-V" support to all contrib scripts.
Also, update scripts that used "-v" as a short option for "--version"
and use "-V" for the sake of consistency.
Additionally:
* Move version and usage messages to separate convenience functions in
all scripts.
* Add a workaround to paccache to support "--help" and "--version". This
should be replaced by a proper POSIX-compliant command line parser
that supports long options in a future patch.
* Add a "$myver" variable to all scripts and use it whenever we refer to
the program version (e.g. in version messages). Also, use the pacman
version number everywhere instead of using a different versioning
scheme for each contrib script. This is achieved by adding a
"PACKAGE_VERSION" placeholder that is replaced by sed(1) when the
script is built.
* Ensure we always return with exit status 0 if "--help" is used and
return with exit status 1 if we display the usage message due to
invalid arguments.
* Add "AUTOMAKE_OPTIONS = std-options" and add all scripts to
"bin_SCRIPTS" to make `make installcheck` check that installed scripts
actually support the "--help" and "--version" options.
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'contrib/paclog-pkglist.in')
-rwxr-xr-x | contrib/paclog-pkglist.in | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/contrib/paclog-pkglist.in b/contrib/paclog-pkglist.in index 0b27bf36..222bbc4c 100755 --- a/contrib/paclog-pkglist.in +++ b/contrib/paclog-pkglist.in @@ -18,16 +18,29 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. declare -r myname='paclog-pkglist' +declare -r myver='@PACKAGE_VERSION@' export TEXTDOMAIN='pacman' export TEXTDOMAINDIR='/usr/share/locale' declare logfile=${1:-@localstatedir@/log/pacman.log} +usage() { + printf 'usage: %s [pacman log]\n' "$myname" + printf 'example: %s @localstatedir@/log/pacman.log\n' "$myname" + printf '\ndefaults to: @localstatedir@/log/pacman.log\n' +} + +version() { + printf "%s %s\n" "$myname" "$myver" + echo 'Copyright (C) 2011 Dave Reisner <dave@archlinux.org>' +} + if [[ $1 ]]; then if [[ $1 = -@(h|-help) ]]; then - printf 'usage: %s [pacman log]\n' "$myname" - printf 'example: %s @localstatedir@/log/pacman.log\n' "$myname" - printf '\ndefaults to: @localstatedir@/log/pacman.log\n' + usage + exit 0 + elif [[ $1 = -@(V|-version) ]]; then + version exit 0 elif [[ ! -e $logfile ]]; then printf $"target not found: %s\n" "$1" |