Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-Structure cmake solution to be closer to the scons solution. #1595

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Commits on Sep 24, 2024

  1. Re-Structure cmake solution to be closer to the scons solution.

    This is just a single step, re-arranging the code without actually changing its functionality.
    
    new docs/cmake.md
    moved the block of comments from the start of the CMakeLists.txt into the cmake.md file and converted content to markdown.
    
    new cmake/godotcpp.cmake
    Moved all exposed options into a new function godotcpp_options()
    Moved configuration and generation code into godotcpp_generate()
    
    To get all the options into the godotcpp_options() I changed the logic of GODOT_USE_HOT_RELOAD which I believe is a closer match to scons, that if the options is not set, and the build type is not release, then it defaults to ON.
    
    I msvc builds require the default flags to be modified or it will throw errors. I have added the links to articles in the commit, but its about removing the runtime error checks /RTC1 from the CMAKE_CXX_FLAGS_DEBUG variable. This needs to happen before the files are included.
    https://stackoverflow.com/questions/74426638/how-to-remove-rtc1-from-specific-target-or-file-in-cmake
    https://discourse.cmake.org/t/how-do-i-remove-compile-options-from-target/5965
    
    Renamed GodotCompilerWarnings.cmake to common_compiler_flags.cmake to match scons
    
    Included files explicitly by path, as we dont need to append to the CMAKE_MODULES_PATH which effects the whole build tree.
    
    This prevents consumers of the library from clobbering the names of the cmake include files and breaking the build.
    enetheru committed Sep 24, 2024
    Configuration menu
    Copy the full SHA
    2402a04 View commit details
    Browse the repository at this point in the history