summaryrefslogtreecommitdiffstats
path: root/usr.bin/units
diff options
context:
space:
mode:
authoreadler <eadler@FreeBSD.org>2014-07-04 21:21:05 +0000
committereadler <eadler@FreeBSD.org>2014-07-04 21:21:05 +0000
commit95eba0cb942fc53327b6271fe285df82e8ca0cac (patch)
treedbb08840997e856fcdf05b0bab0c81f980aadc6f /usr.bin/units
parentb944ca9811c42e3568635ee3664b0d8f5e6ee249 (diff)
downloadFreeBSD-src-95eba0cb942fc53327b6271fe285df82e8ca0cac.zip
FreeBSD-src-95eba0cb942fc53327b6271fe285df82e8ca0cac.tar.gz
units(1): add long options
Things brings additional compatibility with units 2.10 Discussed with: wblock (man page)
Diffstat (limited to 'usr.bin/units')
-rw-r--r--usr.bin/units/units.112
-rw-r--r--usr.bin/units/units.c12
2 files changed, 17 insertions, 7 deletions
diff --git a/usr.bin/units/units.1 b/usr.bin/units/units.1
index dff0f58..f971d9c 100644
--- a/usr.bin/units/units.1
+++ b/usr.bin/units/units.1
@@ -13,17 +13,19 @@
.Sh OPTIONS
The following options are available:
.Bl -tag -width indent
-.It Fl f Ar filename
+.It Fl f Ar filename No , Fl -file Ar filename
Specify the name of the units data file to load.
-.It Fl q
+.It Fl q No , Fl -quiet
Suppress prompting of the user for units and the display of statistics
about the number of units loaded.
-.It Fl U
+.It Fl U No , Fl -unitsfile
If the default unit file exists prints its location. If not, print
.Qo
Units data file not found
.Qc
-.It Fl V
+.It Fl v No , Fl -verbose
+Print the units in the conversion output. Be more verbose in general.
+.It Fl V No , Fl -version
Print the version number, usage, and then exit.
.It Ar from-unit to-unit
Allow a single unit conversion to be done directly from the command
@@ -31,8 +33,6 @@ line.
The program will not print prompts.
It will print out the
result of the single specified conversion.
-.It Fl v
-Print the units in the conversion output. Be more verbose in general.
.El
.Sh DESCRIPTION
The
diff --git a/usr.bin/units/units.c b/usr.bin/units/units.c
index be52adf7..a0e3772 100644
--- a/usr.bin/units/units.c
+++ b/usr.bin/units/units.c
@@ -24,6 +24,7 @@ static const char rcsid[] =
#include <err.h>
#include <errno.h>
#include <histedit.h>
+#include <getopt.h>
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
@@ -702,6 +703,15 @@ usage(void)
exit(3);
}
+static struct option longopts[] = {
+ {"file", required_argument, NULL, 'f'},
+ {"quiet", no_argument, NULL, 'q'},
+ {"verbose", no_argument, NULL, 'v'},
+ {"unitsfile", no_argument, NULL, 'U'},
+ {"version", no_argument, NULL, 'V'},
+ { 0, 0, 0, 0 }
+};
+
int
main(int argc, char **argv)
@@ -718,7 +728,7 @@ main(int argc, char **argv)
quiet = false;
readfile = false;
- while ((optchar = getopt(argc, argv, "f:qvUV")) != -1) {
+ while ((optchar = getopt_long(argc, argv, "+f:qvUV", longopts, NULL)) != -1) {
switch (optchar) {
case 'f':
readfile = true;
OpenPOWER on IntegriCloud