mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-03 08:03:50 +00:00
Fix two packaging bugs
logger.hpp: extend ERROR macro push/pop region to cover entire header so LogLevel::ERROR inside template bodies compiles correctly on Windows CMakeLists.txt: move tool install() rules next to each target definition so they run after the targets exist (fixes macOS 'target does not exist')
This commit is contained in:
parent
f2c7e5826e
commit
fbb0b76362
2 changed files with 14 additions and 12 deletions
|
|
@ -389,15 +389,7 @@ install(TARGETS wowee
|
||||||
ARCHIVE DESTINATION lib
|
ARCHIVE DESTINATION lib
|
||||||
)
|
)
|
||||||
|
|
||||||
# Install tools alongside main binary
|
# Note: tool install rules are placed next to each target definition below.
|
||||||
foreach(_tool dbc_to_csv blp_convert auth_probe auth_login_probe)
|
|
||||||
if(TARGET ${_tool})
|
|
||||||
install(TARGETS ${_tool} RUNTIME DESTINATION bin)
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
if(STORMLIB_LIBRARY AND STORMLIB_INCLUDE_DIR)
|
|
||||||
install(TARGETS asset_extract RUNTIME DESTINATION bin)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Install built-in assets (exclude proprietary music)
|
# Install built-in assets (exclude proprietary music)
|
||||||
install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/assets
|
install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/assets
|
||||||
|
|
@ -451,6 +443,7 @@ if(STORMLIB_LIBRARY AND STORMLIB_INCLUDE_DIR)
|
||||||
set_target_properties(asset_extract PROPERTIES
|
set_target_properties(asset_extract PROPERTIES
|
||||||
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
||||||
)
|
)
|
||||||
|
install(TARGETS asset_extract RUNTIME DESTINATION bin)
|
||||||
message(STATUS " asset_extract tool: ENABLED")
|
message(STATUS " asset_extract tool: ENABLED")
|
||||||
else()
|
else()
|
||||||
message(STATUS " asset_extract tool: DISABLED (requires StormLib)")
|
message(STATUS " asset_extract tool: DISABLED (requires StormLib)")
|
||||||
|
|
@ -469,6 +462,7 @@ target_link_libraries(dbc_to_csv PRIVATE Threads::Threads)
|
||||||
set_target_properties(dbc_to_csv PROPERTIES
|
set_target_properties(dbc_to_csv PROPERTIES
|
||||||
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
||||||
)
|
)
|
||||||
|
install(TARGETS dbc_to_csv RUNTIME DESTINATION bin)
|
||||||
|
|
||||||
# ---- Tool: auth_probe (LOGON_CHALLENGE probe) ----
|
# ---- Tool: auth_probe (LOGON_CHALLENGE probe) ----
|
||||||
add_executable(auth_probe
|
add_executable(auth_probe
|
||||||
|
|
@ -488,6 +482,7 @@ target_link_libraries(auth_probe PRIVATE Threads::Threads OpenSSL::Crypto)
|
||||||
set_target_properties(auth_probe PROPERTIES
|
set_target_properties(auth_probe PROPERTIES
|
||||||
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
||||||
)
|
)
|
||||||
|
install(TARGETS auth_probe RUNTIME DESTINATION bin)
|
||||||
|
|
||||||
# ---- Tool: auth_login_probe (challenge + proof probe) ----
|
# ---- Tool: auth_login_probe (challenge + proof probe) ----
|
||||||
add_executable(auth_login_probe
|
add_executable(auth_login_probe
|
||||||
|
|
@ -510,6 +505,7 @@ target_link_libraries(auth_login_probe PRIVATE Threads::Threads OpenSSL::Crypto)
|
||||||
set_target_properties(auth_login_probe PROPERTIES
|
set_target_properties(auth_login_probe PROPERTIES
|
||||||
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
||||||
)
|
)
|
||||||
|
install(TARGETS auth_login_probe RUNTIME DESTINATION bin)
|
||||||
|
|
||||||
# ---- Tool: blp_convert (BLP ↔ PNG) ----
|
# ---- Tool: blp_convert (BLP ↔ PNG) ----
|
||||||
add_executable(blp_convert
|
add_executable(blp_convert
|
||||||
|
|
@ -525,6 +521,7 @@ target_link_libraries(blp_convert PRIVATE Threads::Threads)
|
||||||
set_target_properties(blp_convert PROPERTIES
|
set_target_properties(blp_convert PROPERTIES
|
||||||
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
||||||
)
|
)
|
||||||
|
install(TARGETS blp_convert RUNTIME DESTINATION bin)
|
||||||
|
|
||||||
# Print configuration summary
|
# Print configuration summary
|
||||||
message(STATUS "")
|
message(STATUS "")
|
||||||
|
|
|
||||||
|
|
@ -9,10 +9,13 @@
|
||||||
namespace wowee {
|
namespace wowee {
|
||||||
namespace core {
|
namespace core {
|
||||||
|
|
||||||
|
// Suppress the wingdi.h "#define ERROR 0" macro for the entire header so that
|
||||||
|
// LogLevel::ERROR inside template bodies compiles correctly on Windows.
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
#pragma push_macro("ERROR")
|
#pragma push_macro("ERROR")
|
||||||
#undef ERROR
|
#undef ERROR
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
enum class LogLevel {
|
enum class LogLevel {
|
||||||
DEBUG,
|
DEBUG,
|
||||||
INFO,
|
INFO,
|
||||||
|
|
@ -20,9 +23,6 @@ enum class LogLevel {
|
||||||
ERROR,
|
ERROR,
|
||||||
FATAL
|
FATAL
|
||||||
};
|
};
|
||||||
#ifdef _WIN32
|
|
||||||
#pragma pop_macro("ERROR")
|
|
||||||
#endif
|
|
||||||
|
|
||||||
class Logger {
|
class Logger {
|
||||||
public:
|
public:
|
||||||
|
|
@ -85,3 +85,8 @@ private:
|
||||||
|
|
||||||
} // namespace core
|
} // namespace core
|
||||||
} // namespace wowee
|
} // namespace wowee
|
||||||
|
|
||||||
|
// Restore the ERROR macro now that all LogLevel::ERROR references are done.
|
||||||
|
#ifdef _WIN32
|
||||||
|
#pragma pop_macro("ERROR")
|
||||||
|
#endif
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue