Skip to content

Commit 426b195

Browse files
authored
Merge pull request #63 from Mimoja/main
Correct SDL2 cmake for non-ubuntu platforms
2 parents 6b39967 + 282cc27 commit 426b195

File tree

1 file changed

+18
-15
lines changed

1 file changed

+18
-15
lines changed

Platform/CMakeLists.txt

+18-15
Original file line numberDiff line numberDiff line change
@@ -99,31 +99,34 @@ if (EMSCRIPTEN)
9999

100100
# Pull SDL2 from its Github repo
101101
else()
102-
if (NOT DEFINED FOSTER_SDL2_LIBS)
102+
if (DEFINED FOSTER_SDL2_LIBS)
103+
set(SDL2_LIBRARIES ${FOSTER_SDL2_LIBS})
104+
set(SDL2_INDLUDE_DIRS ${FOSTER_SDL2_INCLUDE})
105+
# Tell external SDL it's going to be a shared lib
106+
set_property(TARGET ${FOSTER_SDL2_LIBS} PROPERTY POSITION_INDEPENDENT_CODE ON)
107+
else()
103108
include(FetchContent)
104109
set(FETCHCONTENT_QUIET FALSE)
105-
set(SDL_TEST_ENABLED_BY_DEFAULT OFF)
106-
set(SDL_SHARED_ENABLED_BY_DEFAULT OFF)
107-
set(SDL_STATIC_ENABLED_BY_DEFAULT ON)
108-
110+
set(FETCHCONTENT_TRY_FIND_PACKAGE_MODE ALWAYS)
111+
set(SDL_VERSION 2.30.0)
109112
FetchContent_Declare(
110113
SDL2
111114
GIT_REPOSITORY https://github.com/libsdl-org/SDL
112-
GIT_TAG release-2.30.0
115+
GIT_TAG release-${SDL_VERSION}
113116
GIT_PROGRESS TRUE
117+
FIND_PACKAGE_ARGS ${SDL_VERSION}
114118
)
119+
set(SDL_TEST OFF)
120+
set(SDL_SHARED OFF)
121+
set(SDL_STATIC ON)
122+
set(SDL_STATIC_PIC ON)
115123
FetchContent_MakeAvailable(SDL2)
116-
set(FOSTER_SDL2_LIBS SDL2-static)
117-
set(FOSTER_SDL2_INCLUDE ${sdl2_SOURCE_DIRS}/include)
124+
set(SDL2_LIBRARIES ${SDL2_LIBRARIES} SDL2-static)
125+
set(SDL2_INCLUDE_DIRS ${SDL2_SOURCE_DIR}/include)
118126
endif()
119-
120-
# statically link SDL2 since we're building it ourselve
121-
set(LIBS ${LIBS} ${FOSTER_SDL2_LIBS})
122-
target_include_directories(${TARGET_NAME} PRIVATE ${FOSTER_SDL2_INCLUDE})
127+
set(LIBS ${LIBS} ${SDL2_LIBRARIES})
128+
target_include_directories(${TARGET_NAME} PRIVATE ${SDL2_INCLUDE_DIRS})
123129
endif()
124130

125-
# Tell SDL it's going to be a shared lib
126-
set_property(TARGET ${FOSTER_SDL2_LIBS} PROPERTY POSITION_INDEPENDENT_CODE ON)
127-
128131
# Link SDL
129132
target_link_libraries(${TARGET_NAME} PRIVATE ${LIBS})

0 commit comments

Comments
 (0)