From 12e58917c0280ef8dcb2e94cd9a02bac03c3d27a Mon Sep 17 00:00:00 2001 From: lat9nq <22451773+lat9nq@users.noreply.github.com> Date: Fri, 16 Apr 2021 19:12:47 -0400 Subject: [PATCH] externals: Add SDL 2.0.12 Since Bintray is (soon to be) no more, there needs to be a way to acquire SDL2. Since 20.04's version is older than our minimum required version (2.0.12), add it as an external. --- .gitmodules | 3 +++ CMakeLists.txt | 20 +++++++++++--------- externals/CMakeLists.txt | 6 ++++++ externals/SDL | 1 + 4 files changed, 21 insertions(+), 9 deletions(-) create mode 160000 externals/SDL diff --git a/.gitmodules b/.gitmodules index a0a89933df..829ab46fef 100644 --- a/.gitmodules +++ b/.gitmodules @@ -40,3 +40,6 @@ [submodule "ffmpeg"] path = externals/ffmpeg url = https://git.ffmpeg.org/ffmpeg.git +[submodule "externals/SDL"] + path = externals/SDL + url = https://github.com/libsdl-org/SDL.git diff --git a/CMakeLists.txt b/CMakeLists.txt index a4a6da2e19..e208715d77 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -274,17 +274,19 @@ if (ENABLE_SDL2) target_link_libraries(SDL2 INTERFACE "${SDL2_LIBRARY}") target_include_directories(SDL2 INTERFACE "${SDL2_INCLUDE_DIR}") else() - find_package(SDL2 REQUIRED) + find_package(SDL2 2.0.12) - # Some installations don't set SDL2_LIBRARIES - if("${SDL2_LIBRARIES}" STREQUAL "") - message(WARNING "SDL2_LIBRARIES wasn't set, manually setting to SDL2::SDL2") - set(SDL2_LIBRARIES "SDL2::SDL2") + if(SDL2_FOUND) + # Some installations don't set SDL2_LIBRARIES + if("${SDL2_LIBRARIES}" STREQUAL "") + message(WARNING "SDL2_LIBRARIES wasn't set, manually setting to SDL2::SDL2") + set(SDL2_LIBRARIES "SDL2::SDL2") + endif() + + include_directories(SYSTEM ${SDL2_INCLUDE_DIRS}) + add_library(SDL2 INTERFACE) + target_link_libraries(SDL2 INTERFACE "${SDL2_LIBRARIES}") endif() - - include_directories(SYSTEM ${SDL2_INCLUDE_DIRS}) - add_library(SDL2 INTERFACE) - target_link_libraries(SDL2 INTERFACE "${SDL2_LIBRARIES}") endif() else() set(SDL2_FOUND NO) diff --git a/externals/CMakeLists.txt b/externals/CMakeLists.txt index 891a47c3cc..6e4591b4e0 100644 --- a/externals/CMakeLists.txt +++ b/externals/CMakeLists.txt @@ -45,6 +45,12 @@ target_include_directories(microprofile INTERFACE ./microprofile) add_library(unicorn-headers INTERFACE) target_include_directories(unicorn-headers INTERFACE ./unicorn/include) +# SDL2 +if (NOT SDL2_FOUND) + set(SDL2_FOUND YES) + add_subdirectory(SDL EXCLUDE_FROM_ALL) +endif() + # SoundTouch add_subdirectory(soundtouch) diff --git a/externals/SDL b/externals/SDL new file mode 160000 index 0000000000..983bbf9ef3 --- /dev/null +++ b/externals/SDL @@ -0,0 +1 @@ +Subproject commit 983bbf9ef3e572a073a6f5877faf1c0b4803527c