All good tools should have --help and --version output :) * tools/virt-xml-validate.in: Add option parsing. Output errors to stderr. Update documentation to match. * tools/Makefile.am (virt-xml-validate): Substitute version. Signed-off-by: Eric Blake <eblake@xxxxxxxxxx> --- tools/Makefile.am | 5 +++-- tools/virt-xml-validate.in | 44 +++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 44 insertions(+), 5 deletions(-) diff --git a/tools/Makefile.am b/tools/Makefile.am index f85c35c..03c9fd0 100644 --- a/tools/Makefile.am +++ b/tools/Makefile.am @@ -77,8 +77,9 @@ dist_man8_MANS = virt-sanlock-cleanup.8 endif virt-xml-validate: virt-xml-validate.in Makefile - $(AM_V_GEN)sed -e 's|[@]schemadir@|$(pkgdatadir)/schemas|' < $< > $@ \ - || (rm $@ && exit 1) && chmod +x $@ + $(AM_V_GEN)sed -e 's|[@]schemadir@|$(pkgdatadir)/schemas|g' \ + -e 's|[@]VERSION@|$(VERSION)|g' \ + < $< > $@ || (rm $@ && exit 1) && chmod +x $@ virt-xml-validate.1: virt-xml-validate.in $(top_srcdir)/configure.ac $(AM_V_GEN)$(POD2MAN) --name VIRT-XML-VALIDATE $< $(srcdir)/$@ \ diff --git a/tools/virt-xml-validate.in b/tools/virt-xml-validate.in index 9c584ed..9744612 100644 --- a/tools/virt-xml-validate.in +++ b/tools/virt-xml-validate.in @@ -17,16 +17,39 @@ set -e +case $1 in + -h | --h | --he | --hel | --help) + cat <<EOF +Usage: + $0 XML-FILE [SCHEMA-NAME] + $0 OPTION + +Options: + -h | --help Display program help + -V | --version Display program version +EOF + exit ;; + -V | --v | --ve | --ver | --vers | --versi | --versio | --version) + cat <<EOF +$0 (libvirt) @VERSION@ +EOF + exit ;; + --) shift ;; + -*) + echo "$0: unrecognized option '$1'" >&2 + exit 1 ;; +esac + XMLFILE="$1" TYPE="$2" if [ -z "$XMLFILE" ]; then - echo "syntax: $0 XMLFILE [TYPE]" + echo "syntax: $0 XMLFILE [TYPE]" >&2 exit 1 fi if [ ! -f "$XMLFILE" ]; then - echo "$0: document $XMLFILE does not exist" + echo "$0: document $XMLFILE does not exist" >&2 exit 2 fi @@ -78,6 +101,7 @@ exit 0 =head1 SYNOPSIS virt-xml-validate XML-FILE [SCHEMA-NAME] + virt-xml-validate OPTION =head1 DESCRIPTION @@ -117,6 +141,20 @@ The schema for the XML format used to declare driver capabilities =back +=head1 OPTIONS + +=over + +=item B<-h, --help> + +Display command line help usage then exit. + +=item B<-V, --version> + +Display version information then exit. + +=back + =head1 EXIT STATUS Upon successful validation, an exit status of 0 will be set. Upon @@ -134,7 +172,7 @@ Alternatively report bugs to your software distributor / vendor. =head1 COPYRIGHT -Copyright (C) 2009-2012 by Red Hat, Inc. +Copyright (C) 2009-2013 by Red Hat, Inc. Copyright (C) 2009 by Daniel P. Berrange =head1 LICENSE -- 1.8.3.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list