From: Heiko Carstens Date: Tue, 6 Sep 2011 00:52:56 +0000 (+0200) Subject: lscpu: add --version option X-Git-Tag: v2.21-rc1~450 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=44de912cdfc21f734e6556f6f65822d89ae74c72;p=thirdparty%2Futil-linux.git lscpu: add --version option Add a --version option like most other tools have it. Signed-off-by: Heiko Carstens Signed-off-by: Karel Zak --- diff --git a/sys-utils/lscpu.1 b/sys-utils/lscpu.1 index ae613f3777..b7b4fe96c4 100644 --- a/sys-utils/lscpu.1 +++ b/sys-utils/lscpu.1 @@ -6,7 +6,7 @@ lscpu \- display information on CPU architecture .SH SYNOPSIS .B lscpu -.RB [ \-hpx ] +.RB [ \-hpxV ] .RB [ \-s .IR directory ] .SH DESCRIPTION @@ -47,6 +47,9 @@ a snapshot from a different system. .BR \-x , " \-\-hex" Use hexadecimal masks for CPU sets (e.g. 0x3). The default is to print the sets in list format (e.g. 0,1). +.TP +.BR \-V , " \-\-version" +Output version information and exit. .SH BUGS The basic overview about CPU family, model, etc. is always based on the first CPU only. diff --git a/sys-utils/lscpu.c b/sys-utils/lscpu.c index 1e37471ac4..90821de5cc 100644 --- a/sys-utils/lscpu.c +++ b/sys-utils/lscpu.c @@ -1178,7 +1178,8 @@ static void __attribute__((__noreturn__)) usage(FILE *out) fputs(_(" -h, --help print this help\n" " -p, --parse print out a parsable instead of a readable format\n" " -s, --sysroot use directory DIR as system root\n" - " -x, --hex print hexadecimal masks rather than lists of CPUs\n\n"), out); + " -x, --hex print hexadecimal masks rather than lists of CPUs\n" + " -V, --version print version information and exit\n\n"), out); exit(out == stderr ? EXIT_FAILURE : EXIT_SUCCESS); } @@ -1195,6 +1196,7 @@ int main(int argc, char *argv[]) { "parse", optional_argument, 0, 'p' }, { "sysroot", required_argument, 0, 's' }, { "hex", no_argument, 0, 'x' }, + { "version", no_argument, 0, 'V' }, { NULL, 0, 0, 0 } }; @@ -1202,7 +1204,7 @@ int main(int argc, char *argv[]) bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); - while ((c = getopt_long(argc, argv, "hp::s:x", longopts, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "hp::s:xV", longopts, NULL)) != -1) { switch (c) { case 'h': usage(stdout); @@ -1233,6 +1235,10 @@ int main(int argc, char *argv[]) case 'x': hex = 1; break; + case 'V': + printf(_("%s from %s\n"), program_invocation_short_name, + PACKAGE_STRING); + return EXIT_SUCCESS; default: usage(stderr); }