contrib/*: Support the "--help" and "--version" options
On Tue, Dec 6, 2011 at 3:29 PM, Lukas Fleischer
<archlinux@cryptocrack.de> wrote: > Can some autotools wizard please check if I broke anything here? `make > distcheck` still looks good to me but I'm not 100% sure what I broke by > adding all scripts to "bin_SCRIPTS" :) Before: `make install` does not install contrib/. After: `make install` installs contrib/. So probably not what we want, at least recursively or by default. It would be nice that if you were actually in contrib, `make install` would do what one expected (and kill the ugly hardcoding of each script needed to currently install [1]). Autotools probably makes a setup like this a bitch though. Thoughts from anyone else? -Dan [1] http://projects.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/pacman-contrib&id=375c3222509ba830de48a3365ceb8ae72d491a7 c |
contrib/*: Support the "--help" and "--version" options
On Tue, Dec 06, 2011 at 04:38:41PM -0600, Dan McGee wrote:
> On Tue, Dec 6, 2011 at 3:29 PM, Lukas Fleischer > <archlinux@cryptocrack.de> wrote: > > Can some autotools wizard please check if I broke anything here? `make > > distcheck` still looks good to me but I'm not 100% sure what I broke by > > adding all scripts to "bin_SCRIPTS" :) > > Before: `make install` does not install contrib/. > After: `make install` installs contrib/. So probably not what we want, > at least recursively or by default. It would be nice that if you were > actually in contrib, `make install` would do what one expected (and > kill the ugly hardcoding of each script needed to currently install > [1]). Autotools probably makes a setup like this a bitch though. > Thoughts from anyone else? How about removing "contrib" from "SUBDIRS" in our main Makefile.am and adding something like "DIST_SUBDIRS = $(SUBDIRS) contrib"? This way, contrib scripts won't be installed when running `make install` in the top level source directory but can be easily installed by running `make install` in "contrib/"... > > -Dan > > [1] http://projects.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/pacman-contrib&id=375c3222509ba830de48a3365ceb8ae72d491a7 c |
contrib/*: Support the "--help" and "--version" options
On Tue, Dec 6, 2011 at 4:58 PM, Lukas Fleischer
<archlinux@cryptocrack.de> wrote: > On Tue, Dec 06, 2011 at 04:38:41PM -0600, Dan McGee wrote: >> On Tue, Dec 6, 2011 at 3:29 PM, Lukas Fleischer >> <archlinux@cryptocrack.de> wrote: >> > Can some autotools wizard please check if I broke anything here? `make >> > distcheck` still looks good to me but I'm not 100% sure what I broke by >> > adding all scripts to "bin_SCRIPTS" :) >> >> Before: `make install` does not install contrib/. >> After: `make install` installs contrib/. So probably not what we want, >> at least recursively or by default. It would be nice that if you were >> actually in contrib, `make install` would do what one expected (and >> kill the ugly hardcoding of each script needed to currently install >> [1]). Autotools probably makes a setup like this a bitch though. >> Thoughts from anyone else? > > How about removing "contrib" from "SUBDIRS" in our main Makefile.am and > adding something like "DIST_SUBDIRS = $(SUBDIRS) contrib"? This way, > contrib scripts won't be installed when running `make install` in the > top level source directory but can be easily installed by running `make > install` in "contrib/"... The problem there is it completely stops make from descending in there, and as I've seen many times before (namely with docs), it gets ugly when I have to package it. I think you'd be out of luck because your Makefile wouldn't even be generated in there, and thus *.in never gets converted to the scripts and other files. -Dan |
contrib/*: Support the "--help" and "--version" options
On Tue, Dec 06, 2011 at 05:05:20PM -0600, Dan McGee wrote:
> On Tue, Dec 6, 2011 at 4:58 PM, Lukas Fleischer > <archlinux@cryptocrack.de> wrote: > > On Tue, Dec 06, 2011 at 04:38:41PM -0600, Dan McGee wrote: > >> On Tue, Dec 6, 2011 at 3:29 PM, Lukas Fleischer > >> <archlinux@cryptocrack.de> wrote: > >> > Can some autotools wizard please check if I broke anything here? `make > >> > distcheck` still looks good to me but I'm not 100% sure what I broke by > >> > adding all scripts to "bin_SCRIPTS" :) > >> > >> Before: `make install` does not install contrib/. > >> After: `make install` installs contrib/. So probably not what we want, > >> at least recursively or by default. It would be nice that if you were > >> actually in contrib, `make install` would do what one expected (and > >> kill the ugly hardcoding of each script needed to currently install > >> [1]). Autotools probably makes a setup like this a bitch though. > >> Thoughts from anyone else? > > > > How about removing "contrib" from "SUBDIRS" in our main Makefile.am and > > adding something like "DIST_SUBDIRS = $(SUBDIRS) contrib"? This way, > > contrib scripts won't be installed when running `make install` in the > > top level source directory but can be easily installed by running `make > > install` in "contrib/"... > > The problem there is it completely stops make from descending in > there, and as I've seen many times before (namely with docs), it gets > ugly when I have to package it. I think you'd be out of luck because > your Makefile wouldn't even be generated in there, and thus *.in never > gets converted to the scripts and other files. It doesn't completely stop make from descending in there. As discussed on IRC, directories listed in "DIST_SUBDIRS" will still be honored when running `make dist`. The only difference is that we would have to run `make` and `make install` separately in "contrib/". This makes sense to me because: * I consider contrib scripts a sub-project of (and not part of) pacman. If you say that they actually do belong to pacman, there should be a possibility to install contrib scripts when using make(1) (e.g. by introducing a configure option like "--with-contrib"). This seems very natural, at least. Given that we probably do not want to install contrib scripts together with pacman and prefer separate install trees/procedures, it doesn't make any sense to build contrib scripts in the same procedure we use for building pacman, also. Basically, saying that you will have to run `make install` separately since it's a different sub-project but build it when building the main project feels a bit obscure... tl;dr: To me, only one of these options make sense: - Make contrib scripts optional but build *and* install them together with pacman (that means "introduce a configure option"). - Use a different build *and* install procedure for contrib scripts (that means "use DIST_SUBDIRS"!). * "I am used to run `make` in the top level source directory to build everything." might be a valid reason for you but isn't a valid point for me. We should do things right and look at things from a user perspective, laziness doesn't count :p * This makes the pacman-contrib PKGBUILD damn easy (just cd(1) to the "contrib/" directory instead of the pacman top level source directory and run the usual `make` in build(), `make install` in package()). Just my two cents... |
contrib/*: Support the "--help" and "--version" options
On 08/12/11 02:49, Lukas Fleischer wrote:
> On Tue, Dec 06, 2011 at 05:05:20PM -0600, Dan McGee wrote: >> On Tue, Dec 6, 2011 at 4:58 PM, Lukas Fleischer >> <archlinux@cryptocrack.de> wrote: >>> On Tue, Dec 06, 2011 at 04:38:41PM -0600, Dan McGee wrote: >>>> On Tue, Dec 6, 2011 at 3:29 PM, Lukas Fleischer >>>> <archlinux@cryptocrack.de> wrote: >>>>> Can some autotools wizard please check if I broke anything here? `make >>>>> distcheck` still looks good to me but I'm not 100% sure what I broke by >>>>> adding all scripts to "bin_SCRIPTS" :) >>>> >>>> Before: `make install` does not install contrib/. >>>> After: `make install` installs contrib/. So probably not what we want, >>>> at least recursively or by default. It would be nice that if you were >>>> actually in contrib, `make install` would do what one expected (and >>>> kill the ugly hardcoding of each script needed to currently install >>>> [1]). Autotools probably makes a setup like this a bitch though. >>>> Thoughts from anyone else? >>> >>> How about removing "contrib" from "SUBDIRS" in our main Makefile.am and >>> adding something like "DIST_SUBDIRS = $(SUBDIRS) contrib"? This way, >>> contrib scripts won't be installed when running `make install` in the >>> top level source directory but can be easily installed by running `make >>> install` in "contrib/"... >> >> The problem there is it completely stops make from descending in >> there, and as I've seen many times before (namely with docs), it gets >> ugly when I have to package it. I think you'd be out of luck because >> your Makefile wouldn't even be generated in there, and thus *.in never >> gets converted to the scripts and other files. > > It doesn't completely stop make from descending in there. As discussed > on IRC, directories listed in "DIST_SUBDIRS" will still be honored when > running `make dist`. The only difference is that we would have to run > `make` and `make install` separately in "contrib/". This makes sense to > me because: > > * I consider contrib scripts a sub-project of (and not part of) pacman. > If you say that they actually do belong to pacman, there should be a > possibility to install contrib scripts when using make(1) (e.g. by > introducing a configure option like "--with-contrib"). This seems very > natural, at least. > > Given that we probably do not want to install contrib scripts together > with pacman and prefer separate install trees/procedures, it doesn't > make any sense to build contrib scripts in the same procedure we use > for building pacman, also. Basically, saying that you will have to > run `make install` separately since it's a different sub-project but > build it when building the main project feels a bit obscure... > > tl;dr: To me, only one of these options make sense: > > - Make contrib scripts optional but build *and* install them together > with pacman (that means "introduce a configure option"). > > - Use a different build *and* install procedure for contrib scripts > (that means "use DIST_SUBDIRS"!). This option makes sense to me (and I have seen that sort of idea used elsewhere). One query about this approach... Will running ./configure still generate the Makefile in contrib/ when doing this? Because having to maintain a separate configure script that does the same substitutions as the main one would be annoying. Allan |
contrib/*: Support the "--help" and "--version" options
On Sat, Dec 10, 2011 at 09:28:03PM +1000, Allan McRae wrote:
> On 08/12/11 02:49, Lukas Fleischer wrote: > > On Tue, Dec 06, 2011 at 05:05:20PM -0600, Dan McGee wrote: > >> On Tue, Dec 6, 2011 at 4:58 PM, Lukas Fleischer > >> <archlinux@cryptocrack.de> wrote: > >>> On Tue, Dec 06, 2011 at 04:38:41PM -0600, Dan McGee wrote: > >>>> On Tue, Dec 6, 2011 at 3:29 PM, Lukas Fleischer > >>>> <archlinux@cryptocrack.de> wrote: > >>>>> Can some autotools wizard please check if I broke anything here? `make > >>>>> distcheck` still looks good to me but I'm not 100% sure what I broke by > >>>>> adding all scripts to "bin_SCRIPTS" :) > >>>> > >>>> Before: `make install` does not install contrib/. > >>>> After: `make install` installs contrib/. So probably not what we want, > >>>> at least recursively or by default. It would be nice that if you were > >>>> actually in contrib, `make install` would do what one expected (and > >>>> kill the ugly hardcoding of each script needed to currently install > >>>> [1]). Autotools probably makes a setup like this a bitch though. > >>>> Thoughts from anyone else? > >>> > >>> How about removing "contrib" from "SUBDIRS" in our main Makefile.am and > >>> adding something like "DIST_SUBDIRS = $(SUBDIRS) contrib"? This way, > >>> contrib scripts won't be installed when running `make install` in the > >>> top level source directory but can be easily installed by running `make > >>> install` in "contrib/"... > >> > >> The problem there is it completely stops make from descending in > >> there, and as I've seen many times before (namely with docs), it gets > >> ugly when I have to package it. I think you'd be out of luck because > >> your Makefile wouldn't even be generated in there, and thus *.in never > >> gets converted to the scripts and other files. > > > > It doesn't completely stop make from descending in there. As discussed > > on IRC, directories listed in "DIST_SUBDIRS" will still be honored when > > running `make dist`. The only difference is that we would have to run > > `make` and `make install` separately in "contrib/". This makes sense to > > me because: > > > > * I consider contrib scripts a sub-project of (and not part of) pacman. > > If you say that they actually do belong to pacman, there should be a > > possibility to install contrib scripts when using make(1) (e.g. by > > introducing a configure option like "--with-contrib"). This seems very > > natural, at least. > > > > Given that we probably do not want to install contrib scripts together > > with pacman and prefer separate install trees/procedures, it doesn't > > make any sense to build contrib scripts in the same procedure we use > > for building pacman, also. Basically, saying that you will have to > > run `make install` separately since it's a different sub-project but > > build it when building the main project feels a bit obscure... > > > > tl;dr: To me, only one of these options make sense: > > > > - Make contrib scripts optional but build *and* install them together > > with pacman (that means "introduce a configure option"). > > > > - Use a different build *and* install procedure for contrib scripts > > (that means "use DIST_SUBDIRS"!). > > This option makes sense to me (and I have seen that sort of idea used > elsewhere). > > One query about this approach... Will running ./configure still > generate the Makefile in contrib/ when doing this? Because having to > maintain a separate configure script that does the same substitutions as > the main one would be annoying. Yeah, it will still generate the Makefile. I tested this running `./autoclean.sh; ./autogen.sh; ./configure`. > > Allan |
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> --- * Use "[[ $1 = -@(h|-help) ]]" instead of "[[ $1 == "--help" || $1 == "-h" ]]" everywhere. * Deal with new contrib script pacsysclean. contrib/Makefile.am | 14 ++++++++++++++ contrib/bacman.in | 18 ++++++++++-------- contrib/paccache.in | 20 +++++++++++++++++--- contrib/pacdiff.in | 12 +++++++++++- contrib/paclist.in | 21 ++++++++++++++++++++- contrib/paclog-pkglist.in | 19 ++++++++++++++++--- contrib/pacscripts.in | 10 ++++++++-- contrib/pacsearch.in | 20 +++++++++++++++----- contrib/pacsysclean.in | 13 +++++++++++-- 9 files changed, 122 insertions(+), 25 deletions(-) diff --git a/contrib/Makefile.am b/contrib/Makefile.am index c9f6365..8751fd9 100644 --- a/contrib/Makefile.am +++ b/contrib/Makefile.am @@ -1,3 +1,9 @@ +# enforce that all scripts have a --help and --version option +AUTOMAKE_OPTIONS = std-options + +bin_SCRIPTS = + $(OURSCRIPTS) + OURSCRIPTS = bacman paccache @@ -30,9 +36,17 @@ EXTRA_DIST = # Files that should be removed, but which Automake does not know. MOSTLYCLEANFILES = $(OURSCRIPTS) $(OURFILES) *.tmp +if USE_GIT_VERSION +GIT_VERSION := $(shell sh -c 'git describe --abbrev=4 --dirty | sed s/^v//') +REAL_PACKAGE_VERSION = $(GIT_VERSION) +else +REAL_PACKAGE_VERSION = $(PACKAGE_VERSION) +endif + edit = sed -e 's|@sysconfdir[@]|$(sysconfdir)|g' -e 's|@localstatedir[@]|$(localstatedir)|g' + -e 's|@PACKAGE_VERSION[@]|$(REAL_PACKAGE_VERSION)|g' -e 's|@SIZECMD[@]|$(SIZECMD)|g' -e '1s|!/bin/bash|!$(BASH_SHELL)|g' diff --git a/contrib/bacman.in b/contrib/bacman.in index 00d0691..9362356 100755 --- a/contrib/bacman.in +++ b/contrib/bacman.in @@ -24,7 +24,7 @@ shopt -s extglob shopt -s nullglob declare -r myname='bacman' -readonly progver="0.2.1" +declare -r myver='@PACKAGE_VERSION@' # # User Friendliness @@ -35,19 +35,21 @@ usage() { echo "Example: $myname kernel26" } +version() { + printf "%s %s " "$myname" "$myver" + echo 'Copyright (C) 2008 locci <carlocci_at_gmail_dot_com>' +} + if (( $# != 1 )); then usage exit 1 fi -if [[ $1 == "--help" || $1 == "-h" ]]; then +if [[ $1 = -@(h|-help) ]]; then usage exit 0 -fi - -if [[ $1 == "--version" || $1 == "-v" ]]; then - echo "$myname version $progver" - echo "Copyright (C) 2008 locci" +elif [[ $1 = -@(V|-version) ]]; then + version exit 0 fi @@ -177,7 +179,7 @@ pkg_size=$(du -sk | awk '{print $1 * 1024}') # TODO adopt makepkg's write_pkginfo() into this or scripts/library # echo Generating .PKGINFO metadata... -echo "# Generated by $myname $progver" > .PKGINFO +echo "# Generated by $myname $myver" > .PKGINFO if [[ $INFAKEROOT == "1" ]]; then echo "# Using $(fakeroot -v)" >> .PKGINFO fi diff --git a/contrib/paccache.in b/contrib/paccache.in index b95b964..da65f47 100755 --- a/contrib/paccache.in +++ b/contrib/paccache.in @@ -21,6 +21,7 @@ shopt -s extglob declare -r myname='paccache' +declare -r myver='@PACKAGE_VERSION@' declare -a candidates=() cmdopts=() whitelist=() blacklist=() declare -i delete=0 dryrun=0 filecount=0 move=0 needsroot=0 totalsaved=0 verbose=0 @@ -202,19 +203,32 @@ containing pacman package tarballs. EOF } +version() { + printf "%s %s " "$myname" "$myver" + echo 'Copyright (C) 2011 Dave Reisner <dreisner@archlinux.org>' +} + if (( ! UID )); then error "Do not run this script as root. You will be prompted for privilege escalation." exit 42 fi -while getopts ':a:c:dfhi:k:m:rsuvz' opt; do +# TODO: remove this workaround and use a sane command line parser (like the +# parse_options library from scripts/) here +if [[ $1 = -@(h|-help) ]]; then + usage + exit 0 +elif [[ $1 = -@(V|-version) ]]; then + version + exit 0 +fi + +while getopts ':a:c:dfi:k:m:rsuvz' opt; do case $opt in a) scanarch=$OPTARG ;; c) cachedir=$OPTARG ;; d) dryrun=1 ;; f) cmdopts=(-f) ;; - h) usage - exit 0 ;; i) if [[ $OPTARG = '-' ]]; then [[ ! -t 0 ]] && IFS=$' ' read -r -d ' -a ign else diff --git a/contrib/pacdiff.in b/contrib/pacdiff.in index 79cf809..bfafda2 100755 --- a/contrib/pacdiff.in +++ b/contrib/pacdiff.in @@ -18,6 +18,7 @@ # declare -r myname='pacdiff' +declare -r myver='@PACKAGE_VERSION@' diffprog=${DIFFPROG:-vimdiff} diffsearchpath=${DIFFSEARCHPATH:-/etc} @@ -32,6 +33,11 @@ usage() { echo "Example : DIFFPROG=meld DIFFSEARCHPATH="/boot /etc /usr" $myname" } +version() { + printf "%s %s " "$myname" "$myver" + echo 'Copyright (C) 2007 Aaron Griffin <aaronmgriffin@gmail.com>' +} + cmd() { if [ $locate -eq 1 ]; then locate -0 -e -b *.pacnew *.pacorig *.pacsave @@ -44,8 +50,12 @@ if [ $# -gt 0 ]; then case $1 in -l|--locate) locate=1;; - *) + -V|--version) + version; exit 0;; + -h|--help) usage; exit 0;; + *) + usage; exit 1;; esac fi diff --git a/contrib/paclist.in b/contrib/paclist.in index 8623049..7883e21 100755 --- a/contrib/paclist.in +++ b/contrib/paclist.in @@ -18,6 +18,7 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. declare -r myname='paclist' +declare -r myver='@PACKAGE_VERSION@' export TEXTDOMAIN='pacman' export TEXTDOMAINDIR='/usr/share/locale' @@ -29,13 +30,31 @@ if ! type gettext &>/dev/null; then } fi -if [[ -z $1 || $1 = -@(h|-help) ]]; then +usage() { printf '%s - List all packages installed from a given repo ' "$myname" printf 'Usage: %s <repo> ' "$myname" printf 'Example: %s testing ' "$myname" +} + +version() { + printf "%s %s " "$myname" "$myver" + echo 'Copyright (C) 2008 Dan McGee <dpmcgee@gmail.com>' + echo 'Copyright (C) 2011 Dave Reisner <dreisner@archlinux.org>' +} + +if [[ -z $1 ]]; then + usage exit 1 fi +if [[ $1 = -@(h|-help) ]]; then + usage + exit 0 +elif [[ $1 = -@(V|-version) ]]; then + version + exit 0 +fi + printf -v installed '[%s]' "$(gettext installed)" pacman -Sl $1 | awk -v i="$installed" '$NF == i { print $2,$3 }' diff --git a/contrib/paclog-pkglist.in b/contrib/paclog-pkglist.in index 0b27bf3..222bbc4 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] ' "$myname" + printf 'example: %s @localstatedir@/log/pacman.log ' "$myname" + printf ' defaults to: @localstatedir@/log/pacman.log ' +} + +version() { + printf "%s %s " "$myname" "$myver" + echo 'Copyright (C) 2011 Dave Reisner <dave@archlinux.org>' +} + if [[ $1 ]]; then if [[ $1 = -@(h|-help) ]]; then - printf 'usage: %s [pacman log] ' "$myname" - printf 'example: %s @localstatedir@/log/pacman.log ' "$myname" - printf ' defaults to: @localstatedir@/log/pacman.log ' + usage + exit 0 + elif [[ $1 = -@(V|-version) ]]; then + version exit 0 elif [[ ! -e $logfile ]]; then printf $"target not found: %s " "$1" diff --git a/contrib/pacscripts.in b/contrib/pacscripts.in index 967f782..8468714 100755 --- a/contrib/pacscripts.in +++ b/contrib/pacscripts.in @@ -25,7 +25,7 @@ set -o nounset set -o errexit declare -r myname='pacscripts' -progver="0.4" +declare -r myver='@PACKAGE_VERSION@' conf="@sysconfdir@/pacman.conf" @@ -57,6 +57,12 @@ usage() { echo "Example: $myname gconf-editor-2.24.1-1-x86_64.pkg.tar.gz" } +version() { + printf "%s %s " "$myname" "$myver" + echo 'Copyright (c) 2009 Giulio "giulivo" Fidente <giulivo.navigante@gmail.com>' + echo 'Copyright (c) 2009 Xavier Chantry <shiningxc@gmail.com>' +} + spacman() { if [ $EUID -eq 0 ]; then pacman "$@" @@ -127,6 +133,6 @@ fi case "$1" in --help|-h) usage; exit 0 ;; - --version|-v) echo "$myname version $progver"; exit 0 ;; + --version|-V) version; exit 0 ;; *) print_scriptlet $1 ;; esac diff --git a/contrib/pacsearch.in b/contrib/pacsearch.in index 794110e..b1db8ab 100755 --- a/contrib/pacsearch.in +++ b/contrib/pacsearch.in @@ -25,21 +25,31 @@ use strict; use warnings; my $myname = 'pacsearch'; -my $version = "2.0"; +my $myver = '@PACKAGE_VERSION@'; -if ($#ARGV lt 0 || $ARGV[0] eq "--help" || $ARGV[0] eq "-h") { +sub usage { print "$myname - Add color and install information to a pacman -Ss search "; print "Usage: $myname <pattern> "; print "Example: $myname ^gnome "; +} + +sub version { + printf "%s %s ", $myname, $myver; + print "Copyright (C) 2008-2011 Dan McGee <dan@archlinux.org> "; + print "Based off original shell script version: "; + print "Copyright (C) 2006-2007 Dan McGee <dan@archlinux.org> "; +} + +if ($#ARGV lt 0 || $ARGV[0] eq "--help" || $ARGV[0] eq "-h") { + usage; if ($#ARGV lt 0) { exit 1; } exit 0; } -if ($ARGV[0] eq "--version" || $ARGV[0] eq "-v") { - print "$myname version $version "; - print "Copyright (C) 2006-2011 Dan McGee "; +if ($ARGV[0] eq "--version" || $ARGV[0] eq "-V") { + version; exit 0; } diff --git a/contrib/pacsysclean.in b/contrib/pacsysclean.in index c87082e..17f7681 100755 --- a/contrib/pacsysclean.in +++ b/contrib/pacsysclean.in @@ -2,23 +2,32 @@ # pacsysclean - Sort installed packages by decreasing installed size. Useful for system clean-up. +declare -r myname='pacsysclean' +declare -r myver='@PACKAGE_VERSION@' + PACMAN_OPTS= usage() { - echo "pacsysclean - Sort installed packages by decreasing installed size." + echo "$myname - Sort installed packages by decreasing installed size." echo - echo "Usage: pacsysclean [options]" + echo "Usage: $myname [options]" echo echo "Options:" echo " -o <options> Specify custom pacman query options (e.g., dt)" echo " -h, --help Show this help message and exit" } +version() { + printf "%s %s " "$myname" "$myver" + echo 'Copyright (C) 2011 Eric Bélanger <snowmaniscool@gmail.com>' +} + if [ -n "$1" ]; then case "$1" in -o) PACMAN_OPTS="${2}" ;; -h|--help) usage; exit 0 ;; + -V|--version) version; exit 0 ;; *) usage; exit 1 ;; esac fi -- 1.7.8 |
| All times are GMT. The time now is 01:00 AM. |
VBulletin, Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.