diff options
author | Jeff Hostetler <jeffhost@microsoft.com> | 2021-10-21 14:24:59 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-10-21 13:18:25 -0700 |
commit | cd6d50b3babaea3cba750d880fa7925274c59aae (patch) | |
tree | 5cd6e2fcfb71e878610133dba567463214cd494c | |
parent | 9623fe916d3fdcbe37f1263bd093cf6a07b681b5 (diff) |
help: include fsmonitor--daemon feature flag in version info
Add the "feature: fsmonitor--daemon" message to the output of
`git version --build-options`.
The builtin FSMonitor is only available on certain platforms and
even then only when certain Makefile flags are enabled, so print
a message in the verbose version output when it is available.
This can be used by test scripts for prereq testing. Granted, tests
could just try `git fsmonitor--daemon status` and look for a 128 exit
code or grep for a "not supported" message on stderr, but this is
rather obscure.
The main advantage is that the feature message will automatically
appear in bug reports and other support requests.
Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | help.c | 4 | ||||
-rw-r--r-- | t/test-lib.sh | 6 |
2 files changed, 10 insertions, 0 deletions
@@ -12,6 +12,7 @@ #include "refs.h" #include "parse-options.h" #include "prompt.h" +#include "fsmonitor-ipc.h" struct category_description { uint32_t category; @@ -695,6 +696,9 @@ void get_version_info(struct strbuf *buf, int show_build_options) strbuf_addf(buf, "sizeof-size_t: %d\n", (int)sizeof(size_t)); strbuf_addf(buf, "shell-path: %s\n", SHELL_PATH); /* NEEDSWORK: also save and output GIT-BUILD_OPTIONS? */ + + if (fsmonitor_ipc__is_supported()) + strbuf_addstr(buf, "feature: fsmonitor--daemon\n"); } } diff --git a/t/test-lib.sh b/t/test-lib.sh index 151da80c56..4013ef8906 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -1736,3 +1736,9 @@ test_lazy_prereq SHA1 ' # Tests that verify the scheduler integration must set this locally # to avoid errors. GIT_TEST_MAINT_SCHEDULER="none:exit 1" + +# Does this platform support `git fsmonitor--daemon` +# +test_lazy_prereq FSMONITOR_DAEMON ' + git version --build-options | grep "feature:" | grep "fsmonitor--daemon" +' |