main/client: simplify code for printing --version string

This commit is contained in:
Craig Barnes 2025-03-14 20:15:11 +00:00
parent d48a1c53f5
commit eb9357709b
5 changed files with 42 additions and 68 deletions

19
main.c
View file

@ -31,7 +31,6 @@
#include "shm.h"
#include "terminal.h"
#include "util.h"
#include "version.h"
#include "xmalloc.h"
#include "xsnprintf.h"
@ -46,20 +45,6 @@ fdm_sigint(struct fdm *fdm, int signo, void *data)
return true;
}
static const char *
version_and_features(void)
{
static char buf[256];
snprintf(buf, sizeof(buf),
"version: %s %cpgo %cime %cgraphemes %cassertions",
FOOT_VERSION,
feature_pgo() ? '+' : '-',
feature_ime() ? '+' : '-',
feature_graphemes() ? '+' : '-',
feature_assertions() ? '+' : '-');
return buf;
}
static void
print_usage(const char *prog_name)
{
@ -377,7 +362,7 @@ main(int argc, char *const *argv)
break;
case 'v':
printf("foot %s\n", version_and_features());
print_version_and_features("foot ");
return EXIT_SUCCESS;
case 'h':
@ -405,7 +390,7 @@ main(int argc, char *const *argv)
argv += optind;
}
LOG_INFO("%s", version_and_features());
LOG_INFO("%s", version_and_features);
{
struct utsname name;