mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-05 16:43:52 +00:00
Fix compile
This commit is contained in:
parent
f849f583b2
commit
60788fec55
2 changed files with 31 additions and 37 deletions
19
build.ps1
19
build.ps1
|
|
@ -20,9 +20,26 @@ if (-not (Test-Path "build")) {
|
||||||
}
|
}
|
||||||
Set-Location "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
|
# Configure with CMake
|
||||||
Write-Host "Configuring 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 }
|
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
|
||||||
|
|
||||||
# Build with all cores
|
# Build with all cores
|
||||||
|
|
|
||||||
|
|
@ -103,42 +103,19 @@ private:
|
||||||
};
|
};
|
||||||
|
|
||||||
// Convenience macros.
|
// Convenience macros.
|
||||||
// Guard calls at the macro site so variadic arguments are not evaluated
|
//
|
||||||
// when the corresponding level is disabled.
|
// Each Logger method (debug/info/warning/error/fatal) already guards on
|
||||||
#define LOG_DEBUG(...) do { \
|
// shouldLog() internally, so the macros are simple direct calls.
|
||||||
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
|
//
|
||||||
if (_wowee_logger.shouldLog(wowee::core::LogLevel::DEBUG)) { \
|
// IMPORTANT: do NOT reference LogLevel enum values here. Windows'
|
||||||
_wowee_logger.debug(__VA_ARGS__); \
|
// wingdi.h defines `#define ERROR 0` which would corrupt `LogLevel::ERROR`
|
||||||
} \
|
// at any call site compiled after <windows.h>. Keeping the enum names
|
||||||
} while (0)
|
// out of the macro bodies avoids that problem entirely.
|
||||||
|
#define LOG_DEBUG(...) wowee::core::Logger::getInstance().debug(__VA_ARGS__)
|
||||||
#define LOG_INFO(...) do { \
|
#define LOG_INFO(...) wowee::core::Logger::getInstance().info(__VA_ARGS__)
|
||||||
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
|
#define LOG_WARNING(...) wowee::core::Logger::getInstance().warning(__VA_ARGS__)
|
||||||
if (_wowee_logger.shouldLog(wowee::core::LogLevel::INFO)) { \
|
#define LOG_ERROR(...) wowee::core::Logger::getInstance().error(__VA_ARGS__)
|
||||||
_wowee_logger.info(__VA_ARGS__); \
|
#define LOG_FATAL(...) wowee::core::Logger::getInstance().fatal(__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)
|
|
||||||
|
|
||||||
} // namespace core
|
} // namespace core
|
||||||
} // namespace wowee
|
} // namespace wowee
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue