cmake: only mark SDL_{SHARED,STATIC} as cache variables if they were already cache variables

This commit is contained in:
Anonymous Maarten
2026-01-19 22:30:42 +01:00
committed by Anonymous Maarten
parent 9ceb982a63
commit 1d587e94e1

View File

@@ -390,8 +390,17 @@ set_option(SDL_CLANG_TIDY "Run clang-tidy static analysis" OFF)
set(SDL_VENDOR_INFO "" CACHE STRING "Vendor name and/or version to add to SDL_REVISION")
cmake_dependent_option(SDL_SHARED "Build a shared version of the library" ${SDL_SHARED_DEFAULT} ${SDL_SHARED_AVAILABLE} OFF)
cmake_dependent_option(SDL_STATIC "Build a static version of the library" ${SDL_STATIC_DEFAULT} ${SDL_STATIC_AVAILABLE} OFF)
if(DEFINED CACHE{SDL_SHARED} OR DEFINED CACHE{SDL_STATIC})
cmake_dependent_option(SDL_SHARED "Build a shared version of the library" ${SDL_SHARED_DEFAULT} ${SDL_SHARED_AVAILABLE} OFF)
cmake_dependent_option(SDL_STATIC "Build a static version of the library" ${SDL_STATIC_DEFAULT} ${SDL_STATIC_AVAILABLE} OFF)
else()
if(NOT DEFINED SDL_SHARED)
set(SDL_SHARED ${SDL_SHARED_DEFAULT})
endif()
if(NOT DEFINED SDL_STATIC)
set(SDL_STATIC ${SDL_STATIC_DEFAULT})
endif()
endif()
option(SDL_TEST_LIBRARY "Build the SDL3_test library" ON)
dep_option(SDL_TESTS "Build the test directory" ${SDL3_MAINPROJECT} SDL_TEST_LIBRARY OFF)