Browse Source
This does not actually add SDL3 support but adds enough CMake stuff to make the following succeed: ```bash cmake -S. -Bbuild-sdl3 -DUSE_SDL3=ON -DDEVILUTIONX_SYSTEM_SDL3=OFF -DDEVILUTIONX_STATIC_SDL3=ON -DNOSOUND=ON ``` `NOSOUND` is needed because `SDL_audiolib` does not support SDL3.pull/8198/head^2
6 changed files with 125 additions and 3 deletions
@ -0,0 +1,22 @@
|
||||
if(DEVILUTIONX_STATIC_SDL3) |
||||
set(BUILD_SHARED_LIBS OFF) |
||||
set(SDL_SHARED OFF) |
||||
set(SDL_STATIC ON) |
||||
if(PIE) |
||||
set(SDL_STATIC_PIC ON) |
||||
endif() |
||||
else() |
||||
set(BUILD_SHARED_LIBS ON) |
||||
set(SDL_SHARED ON) |
||||
set(SDL_STATIC OFF) |
||||
endif() |
||||
set(SDL_TEST_ENABLED_BY_DEFAULT OFF) |
||||
|
||||
include(functions/FetchContent_ExcludeFromAll_backport) |
||||
include(FetchContent) |
||||
|
||||
FetchContent_Declare(SDL3 |
||||
URL https://github.com/libsdl-org/SDL/releases/download/release-3.2.24/SDL3-3.2.24.tar.gz |
||||
URL_HASH SHA256=81cc0fc17e5bf2c1754eeca9af9c47a76789ac5efdd165b3b91cbbe4b90bfb76 |
||||
) |
||||
FetchContent_MakeAvailable_ExcludeFromAll(SDL3) |
||||
@ -0,0 +1,53 @@
|
||||
include(functions/dependency_options) |
||||
|
||||
if(NOT DEFINED DEVILUTIONX_SYSTEM_LIBPNG) |
||||
find_package(PNG QUIET) |
||||
if(PNG_FOUND) |
||||
message("-- Found png ${PNG_VERSION_STRING}") |
||||
else() |
||||
message("-- Suitable system png package not found, will use png from source") |
||||
set(DEVILUTIONX_SYSTEM_LIBPNG OFF) |
||||
endif() |
||||
endif() |
||||
dependency_options("libpng" DEVILUTIONX_SYSTEM_LIBPNG ON DEVILUTIONX_STATIC_LIBPNG) |
||||
if(DEVILUTIONX_SYSTEM_LIBPNG) |
||||
find_package(PNG REQUIRED) |
||||
else() |
||||
add_subdirectory(../libpng libpng) |
||||
endif() |
||||
|
||||
include(functions/FetchContent_ExcludeFromAll_backport) |
||||
include(FetchContent) |
||||
|
||||
if(DEVILUTIONX_STATIC_SDL_IMAGE) |
||||
set(BUILD_SHARED_LIBS OFF) |
||||
else() |
||||
set(BUILD_SHARED_LIBS ON) |
||||
endif() |
||||
|
||||
set(SDLIMAGE_AVIF OFF) |
||||
set(SDLIMAGE_BMP OFF) |
||||
set(SDLIMAGE_GIF OFF) |
||||
set(SDLIMAGE_JPG OFF) |
||||
set(SDLIMAGE_JXL OFF) |
||||
set(SDLIMAGE_LBM OFF) |
||||
set(SDLIMAGE_PCX OFF) |
||||
set(SDLIMAGE_PNG ON) |
||||
set(SDLIMAGE_PNM OFF) |
||||
set(SDLIMAGE_QOI OFF) |
||||
set(SDLIMAGE_SVG OFF) |
||||
set(SDLIMAGE_TGA OFF) |
||||
set(SDLIMAGE_TIF OFF) |
||||
set(SDLIMAGE_WEBP OFF) |
||||
set(SDLIMAGE_XCF OFF) |
||||
set(SDLIMAGE_XPM OFF) |
||||
set(SDLIMAGE_XV OFF) |
||||
set(SDLIMAGE_AVIF_SAVE OFF) |
||||
set(SDLIMAGE_JPG_SAVE OFF) |
||||
set(SDLIMAGE_PNG_SAVE ON) |
||||
|
||||
FetchContent_Declare_ExcludeFromAll(SDL_image |
||||
URL https://github.com/libsdl-org/SDL_image/releases/download/release-3.2.4/SDL3_image-3.2.4.tar.gz |
||||
URL_HASH SHA256=a725bd6d04261fdda0dd8d950659e1dc15a8065d025275ef460d32ae7dcfc182 |
||||
) |
||||
FetchContent_MakeAvailable_ExcludeFromAll(SDL_image) |
||||
Loading…
Reference in new issue