Fix compile

This commit is contained in:
kittnz 2026-02-25 20:44:00 +01:00
parent f849f583b2
commit 60788fec55
2 changed files with 31 additions and 37 deletions

View file

@ -20,9 +20,26 @@ if (-not (Test-Path "build")) {
}
Set-Location "build"
# Locate vcpkg toolchain file
$vcpkgRoot = $env:VCPKG_ROOT
if (-not $vcpkgRoot) {
foreach ($candidate in @("C:\vcpkg", "C:\dev\vcpkg", "$env:LOCALAPPDATA\vcpkg")) {
if (Test-Path "$candidate\scripts\buildsystems\vcpkg.cmake") {
$vcpkgRoot = $candidate
break
}
}
}
if (-not $vcpkgRoot) {
Write-Error "Could not find vcpkg. Set VCPKG_ROOT or install vcpkg to C:\vcpkg."
exit 1
}
$toolchainFile = "$vcpkgRoot\scripts\buildsystems\vcpkg.cmake"
Write-Host "Using vcpkg toolchain: $toolchainFile"
# Configure with CMake
Write-Host "Configuring with CMake..."
& cmake .. -DCMAKE_BUILD_TYPE=Release
& cmake .. -DCMAKE_BUILD_TYPE=Release "-DCMAKE_TOOLCHAIN_FILE=$toolchainFile" -DVCPKG_TARGET_TRIPLET=x64-windows
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
# Build with all cores

View file

@ -103,42 +103,19 @@ private:
};
// Convenience macros.
// Guard calls at the macro site so variadic arguments are not evaluated
// when the corresponding level is disabled.
#define LOG_DEBUG(...) do { \
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
if (_wowee_logger.shouldLog(wowee::core::LogLevel::DEBUG)) { \
_wowee_logger.debug(__VA_ARGS__); \
} \
} while (0)
#define LOG_INFO(...) do { \
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
if (_wowee_logger.shouldLog(wowee::core::LogLevel::INFO)) { \
_wowee_logger.info(__VA_ARGS__); \
} \
} while (0)
#define LOG_WARNING(...) do { \
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
if (_wowee_logger.shouldLog(wowee::core::LogLevel::WARNING)) { \
_wowee_logger.warning(__VA_ARGS__); \
} \
} while (0)
#define LOG_ERROR(...) do { \
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
if (_wowee_logger.shouldLog(wowee::core::LogLevel::ERROR)) { \
_wowee_logger.error(__VA_ARGS__); \
} \
} while (0)
#define LOG_FATAL(...) do { \
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
if (_wowee_logger.shouldLog(wowee::core::LogLevel::FATAL)) { \
_wowee_logger.fatal(__VA_ARGS__); \
} \
} while (0)
//
// Each Logger method (debug/info/warning/error/fatal) already guards on
// shouldLog() internally, so the macros are simple direct calls.
//
// IMPORTANT: do NOT reference LogLevel enum values here. Windows'
// wingdi.h defines `#define ERROR 0` which would corrupt `LogLevel::ERROR`
// at any call site compiled after <windows.h>. Keeping the enum names
// out of the macro bodies avoids that problem entirely.
#define LOG_DEBUG(...) wowee::core::Logger::getInstance().debug(__VA_ARGS__)
#define LOG_INFO(...) wowee::core::Logger::getInstance().info(__VA_ARGS__)
#define LOG_WARNING(...) wowee::core::Logger::getInstance().warning(__VA_ARGS__)
#define LOG_ERROR(...) wowee::core::Logger::getInstance().error(__VA_ARGS__)
#define LOG_FATAL(...) wowee::core::Logger::getInstance().fatal(__VA_ARGS__)
} // namespace core
} // namespace wowee