@@ -2,7 +2,7 @@ bin_PROGRAMS = cec-ctl
man_MANS = cec-ctl.1
cec_ctl_SOURCES = cec-ctl.cpp cec-pin.cpp cec-ctl.h
-cec_ctl_CPPFLAGS = -I$(top_srcdir)/utils/libcecutil
+cec_ctl_CPPFLAGS = -I$(top_srcdir)/utils/libcecutil $(GIT_COMMIT_CNT)
cec_ctl_LDADD = -lrt ../libcecutil/libcecutil.la
EXTRA_DIST = cec-ctl.1
@@ -133,6 +133,7 @@ enum Option {
OptVendorCommandWithID,
OptVendorRemoteButtonDown,
OptCustomCommand,
+ OptVersion,
};
struct node {
@@ -218,6 +219,8 @@ static struct option long_options[] = {
{ "unregistered", no_argument, 0, OptUnregistered },
{ "help-all", no_argument, 0, OptHelpAll },
+ { "version", no_argument, 0, OptVersion },
+
CEC_PARSE_LONG_OPTS
{ "vendor-remote-button-down", required_argument, 0, OptVendorRemoteButtonDown }, \
@@ -231,6 +234,13 @@ static struct option long_options[] = {
{ 0, 0, 0, 0 }
};
+static void print_version()
+{
+#define STR(x) #x
+#define STRING(x) STR(x)
+ printf("cec-ctl %s%s\n", PACKAGE_VERSION, STRING(GIT_COMMIT_CNT));
+}
+
static void usage()
{
printf("Usage:\n"
@@ -262,6 +272,7 @@ static void usage()
" --help-all Show all help messages\n"
" -T, --trace Trace all called ioctls\n"
" -v, --verbose Turn on verbose reporting\n"
+ " --version Show version information\n"
" -w, --wall-clock Show timestamps as wall-clock time (implies -v)\n"
" -W, --wait-for-msgs Wait for messages and events for up to --monitor-time secs.\n"
" --cec-version-1.4 Use CEC Version 1.4 instead of 2.0\n"
@@ -2296,6 +2307,10 @@ int main(int argc, char **argv)
break;
}
+ case OptVersion:
+ print_version();
+ std::exit(EXIT_SUCCESS);
+
default:
if (ch >= OptHelpAll) {
cec_parse_usage_options(options);
Add a --version option to cec-ctl to retrieve the version of cec-ctl. Signed-off-by: Paul Elder <paul.elder@ideasonboard.com> --- Changes in v4: - add git commit count to version Changes in v3: - embed PACKAGE_VERSION instead of string concatenation --- utils/cec-ctl/Makefile.am | 2 +- utils/cec-ctl/cec-ctl.cpp | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-)