build(cmake): Add retail compatibility options and features in CMake config#2379
build(cmake): Add retail compatibility options and features in CMake config#2379tintinhamans wants to merge 1 commit intoTheSuperHackers:mainfrom
Conversation
…nfig-build.cmake Signed-off-by: tintinhamans <5984296+tintinhamans@users.noreply.github.com>
|
| Filename | Overview |
|---|---|
| cmake/config-build.cmake | Added 12 new build options for retail compatibility and feature toggles with corresponding feature info and compile definitions. Clean implementation follows existing patterns. |
Last reviewed commit: b3fca3b
|
Looks good to me, is there a reason we're not just adding ALL of the gamedefines macros? eg USE_BUFFERED_IO, USE_OBSOLETE_GENERALS_CODE, TELL_COMPUTER_IDENTITY_IN_LAN_LOBBY. Also, maybe it's pedantic, but RTS_BUILD_OPTION_RETAIL_COMPATIBLE_PATHFINDING_ALLOCATION is probably a CMakeDependentOption of RTS_BUILD_OPTION_RETAIL_COMPATIBLE_PATHFINDING. Not needed though, this works as is. |
| option(RTS_BUILD_OPTION_RETAIL_COMPATIBLE_PATHFINDING "Use retail compatible pathfinding with fixed pathfinding fallback" ON) | ||
| option(RTS_BUILD_OPTION_RETAIL_COMPATIBLE_PATHFINDING_ALLOCATION "Use retail compatible pathfinding memory allocation" ON) | ||
| option(RTS_BUILD_OPTION_RETAIL_COMPATIBLE_NETWORKING "Use retail compatible networking" ON) | ||
| option(RTS_BUILD_OPTION_RETAIL_COMPATIBLE_AIGROUP "Build with AIGroup logic CRC compatible with retail Generals 1.08, Zero Hour 1.04" ON) |
There was a problem hiding this comment.
That is a lot of control.
To simplify, we can combine the 6 *_RETAIL_COMPATIBLE_* options to 1 RTS_BUILD_OPTION_RETAIL_COMPATIBLE_GAME
There was a problem hiding this comment.
Yes this would be better if we want a pure non retail compatible build, individual control is only really helpful during development, but most of us alter the defines directly during testing.
This pull request adds several new build configuration options to
cmake/config-build.cmaketo allow finer control over compatibility and feature toggles.Will eventually be used for #2322