[PATCH 1/2] git version --build-options: report the build platform, too
From: Johannes Schindelin <hidden>
Date: 2017-12-08 17:02:38
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: Adric Norris <redacted> When asking for bug reports to include the output of `git version --build-options`, the idea is that we get a better idea of the environment where said bug occurs. In this context, it is useful to distinguish between 32 and 64-bit builds. We start by distinguishing between x86 and x86_64 (hoping that interested parties will extend this to other architectures in the future). In addition, all 32-bit variants (i686, i586, etc.) are collapsed into `x86'. An example of the output is: $ git version --build-options git version 2.9.3.windows.2.826.g06c0f2f sizeof-long: 4 machine: x86_64 The label of `machine' was chosen so the new information will approximate the output of `uname -m'. Signed-off-by: Adric Norris <redacted> Signed-off-by: Johannes Schindelin <redacted> --- help.c | 2 ++ help.h | 13 +++++++++++++ 2 files changed, 15 insertions(+)
diff --git a/help.c b/help.c
index 88a3aeaeb9f..df1332fa3c9 100644
--- a/help.c
+++ b/help.c@@ -390,6 +390,7 @@ const char *help_unknown_cmd(const char *cmd) int cmd_version(int argc, const char **argv, const char *prefix) { + static char build_platform[] = GIT_BUILD_PLATFORM; int build_options = 0; const char * const usage[] = { N_("git version [<options>]"),
@@ -413,6 +414,7 @@ int cmd_version(int argc, const char **argv, const char *prefix) if (build_options) { printf("sizeof-long: %d\n", (int)sizeof(long)); + printf("machine: %s\n", build_platform); /* NEEDSWORK: also save and output GIT-BUILD_OPTIONS? */ } return 0;
diff --git a/help.h b/help.h
index b21d7c94e8c..42dd9852194 100644
--- a/help.h
+++ b/help.h@@ -33,3 +33,16 @@ extern void list_commands(unsigned int colopts, struct cmdnames *main_cmds, stru */ extern void help_unknown_ref(const char *ref, const char *cmd, const char *error); #endif /* HELP_H */ + +/* + * identify build platform + */ +#ifndef GIT_BUILD_PLATFORM + #if defined __x86__ || defined __i386__ || defined __i586__ || defined __i686__ + #define GIT_BUILD_PLATFORM "x86" + #elif defined __x86_64__ + #define GIT_BUILD_PLATFORM "x86_64" + #else + #define GIT_BUILD_PLATFORM "unknown" + #endif +#endif
--
2.15.1.windows.2