From b77143cfc0a8099731f6c26cab3389e839cf3c0c Mon Sep 17 00:00:00 2001 From: lnd3 Date: Wed, 7 Aug 2024 04:12:15 +0200 Subject: [PATCH] Move platform code. --- .../tools/include/tools/platform/Platform.h | 44 +++++++++++++++++-- .../tools/source/common/platform/Platform.cpp | 41 ----------------- 2 files changed, 40 insertions(+), 45 deletions(-) diff --git a/packages/tools/include/tools/platform/Platform.h b/packages/tools/include/tools/platform/Platform.h index f3d4d7f3..8144e9ba 100644 --- a/packages/tools/include/tools/platform/Platform.h +++ b/packages/tools/include/tools/platform/Platform.h @@ -25,10 +25,46 @@ enum class platform { UNKNOWN }; - bool IsPlatformPosixCompatible(); - std::string_view GetPlatformName(); - std::string_view GetPlatformVersion(); - platform GetPlatform(); + bool constexpr IsPlatformPosixCompatible() { + #if defined(BSYSTEM_PLATFORM_Linux) || defined(BSYSTEM_PLATFORM_Android) || defined(BSYSTEM_PLATFORM_CYGWIN) || defined(BSYSTEM_PLATFORM_MSYS) || defined(BSYSTEM_PLATFORM_GNU) || defined(BSYSTEM_PLATFORM_iOS) || defined(BSYSTEM_PLATFORM_Darwin) + return true; + #endif + return false; + } + + std::string_view constexpr GetPlatformName() { + return BSYSTEM_PLATFORM; + } + + std::string_view constexpr GetPlatformVersion() { + return BSYSTEM_VERSION; + } + + platform constexpr GetPlatform() { + #if defined(BSYSTEM_PLATFORM_Windows) + return platform::WINDOWS; + #elif defined(BSYSTEM_PLATFORM_WindowsStore) + return platform::UWP; + + #elif defined(BSYSTEM_PLATFORM_Linux) + return platform::LINUX; + #elif defined(BSYSTEM_PLATFORM_Android) + return platform::ANDROID; + #elif defined(BSYSTEM_PLATFORM_CYGWIN) + return platform::CYGWIN; + #elif defined(BSYSTEM_PLATFORM_MSYS) + return platform::MSYS; + #elif defined(BSYSTEM_PLATFORM_GNU) + return platform::GNU; + + #elif defined(BSYSTEM_PLATFORM_iOS) + return platform::IOS; + #elif defined(BSYSTEM_PLATFORM_Darwin) + return platform::OSX; + #else + return platform::UNKNOWN; + #endif + } class FS { public: diff --git a/packages/tools/source/common/platform/Platform.cpp b/packages/tools/source/common/platform/Platform.cpp index 9aa9b485..67d30bf6 100644 --- a/packages/tools/source/common/platform/Platform.cpp +++ b/packages/tools/source/common/platform/Platform.cpp @@ -13,47 +13,6 @@ namespace platform { std::wstring params; } - bool constexpr IsPlatformPosixCompatible() { -#if defined(BSYSTEM_PLATFORM_Linux) || defined(BSYSTEM_PLATFORM_Android) || defined(BSYSTEM_PLATFORM_CYGWIN) || defined(BSYSTEM_PLATFORM_MSYS) || defined(BSYSTEM_PLATFORM_GNU) || defined(BSYSTEM_PLATFORM_iOS) || defined(BSYSTEM_PLATFORM_Darwin) - return true; -#endif - return false; - } - - std::string_view constexpr GetPlatformName() { - return BSYSTEM_PLATFORM; - } - - std::string_view constexpr GetPlatformVersion() { - return BSYSTEM_VERSION; - } - - platform constexpr GetPlatform() { -#if defined(BSYSTEM_PLATFORM_Windows) - return platform::WINDOWS; -#elif defined(BSYSTEM_PLATFORM_WindowsStore) - return platform::UWP; - -#elif defined(BSYSTEM_PLATFORM_Linux) - return platform::LINUX; -#elif defined(BSYSTEM_PLATFORM_Android) - return platform::ANDROID; -#elif defined(BSYSTEM_PLATFORM_CYGWIN) - return platform::CYGWIN; -#elif defined(BSYSTEM_PLATFORM_MSYS) - return platform::MSYS; -#elif defined(BSYSTEM_PLATFORM_GNU) - return platform::GNU; - -#elif defined(BSYSTEM_PLATFORM_iOS) - return platform::IOS; -#elif defined(BSYSTEM_PLATFORM_Darwin) - return platform::OSX; -#else - return platform::UNKNOWN; -#endif - } - std::wstring Cmd::GetCommandLineArgument(size_t index) { std::lock_guard lock(global::argument_mutex); if (index >= global::argument.size()) {