From c6eff111cc233ebb4621ee5dd98428e095e38910 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=80=9A=E6=B4=B2?= Date: Mon, 21 Aug 2023 09:22:03 +0800 Subject: [PATCH] Fastfetch: refactor `printVersion()` --- src/fastfetch.c | 36 +++++------------------------------- 1 file changed, 5 insertions(+), 31 deletions(-) diff --git a/src/fastfetch.c b/src/fastfetch.c index 8d485bf82..213d37ec1 100644 --- a/src/fastfetch.c +++ b/src/fastfetch.c @@ -5,6 +5,7 @@ #include "common/io/io.h" #include "common/time.h" #include "common/jsonconfig.h" +#include "detection/version/version.h" #include "util/stringUtils.h" #include "logo/logo.h" #include "fastfetch_datatext.h" @@ -795,37 +796,10 @@ static inline void optionCheckString(const char* key, const char* value, FFstrbu } static void printVersion() - { - #ifndef NDEBUG - #define FF_BUILD_TYPE "-debug" - #else - #define FF_BUILD_TYPE - #endif - - #if defined(__x86_64__) || defined(__x86_64) || defined(__amd64__) || defined(__amd64) - #define FF_ARCHITECTURE "x86_64" - #elif defined(__i386__) || defined(__i386) || defined(__i486__) || defined(__i486) || defined(__i586__) || defined(__i586) || defined(__i686__) || defined(__i686) - #define FF_ARCHITECTURE "i386" - #elif defined(__aarch64__) - #define FF_ARCHITECTURE "aarch64" - #elif defined(__arm__) - #define FF_ARCHITECTURE "arm" - #elif defined(__mips__) - #define FF_ARCHITECTURE "mips" - #elif defined(__powerpc__) || defined(__powerpc) - #define FF_ARCHITECTURE "powerpc" - #elif defined(__riscv__) || defined(__riscv) - #define FF_ARCHITECTURE "riscv" - #elif defined(__s390x__) - #define FF_ARCHITECTURE "s390x" - #else - #define FF_ARCHITECTURE "unknown" - #endif - - puts("fastfetch " FASTFETCH_PROJECT_VERSION FASTFETCH_PROJECT_VERSION_TWEAK FF_BUILD_TYPE " (" FF_ARCHITECTURE ")"); - - #undef FF_ARCHITECTURE - #undef FF_BUILD_TYPE +{ + FFVersionResult result = {}; + ffDetectVersion(&result); + printf("%s %s%s%s (%s)\n", result.projectName, result.version, result.versionTweak, result.debugMode ? "-debug" : "", result.architecture); } static void parseOption(FFdata* data, const char* key, const char* value)