src/platform/sdl/CMakeLists.txt (view raw)
1set(SDL_VERSION "2" CACHE STRING "Version of SDL to use (1.2 or 2)")
2set(BUILD_GL ON CACHE STRING "Build with OpenGL")
3
4if (SDL_VERSION EQUAL "2")
5 include(FindPkgConfig)
6 pkg_search_module(SDL2 sdl2)
7 if (SDL2_FOUND)
8 set(SDL_INCLUDE_DIR ${SDL2_INCLUDE_DIRS})
9 set(SDL_LIBRARY ${SDL2_LIBRARIES})
10 set(SDLMAIN_LIBRARY "")
11 link_directories(${SDL2_LIBDIR})
12 endif()
13endif()
14
15if(SDL_VERSION EQUAL "1.2" OR NOT SDL2_FOUND)
16 find_package(SDL 1.2 REQUIRED)
17endif()
18
19file(GLOB PLATFORM_SRC ${CMAKE_SOURCE_DIR}/src/platform/sdl/sdl-*.c)
20set(PLATFORM_LIBRARY "${SDL_LIBRARY};${SDLMAIN_LIBRARY}")
21include_directories(${CMAKE_SOURCE_DIR}/src/platform/sdl ${SDL_INCLUDE_DIR})
22
23if(BUILD_RASPI)
24 add_definitions(-DBUILD_RASPI)
25 set(EGL_MAIN_SRC ${CMAKE_SOURCE_DIR}/src/platform/sdl/egl-main.c)
26 set(EGL_LIBRARY "-lEGL -lGLESv2 -lbcm_host")
27 add_executable(${BINARY_NAME}-rpi ${PLATFORM_SRC} ${EGL_MAIN_SRC})
28 target_link_libraries(${BINARY_NAME}-rpi ${BINARY_NAME} ${PLATFORM_LIBRARY} ${EGL_LIBRARY})
29endif()
30
31if(BUILD_BBB OR BUILD_RASPI OR NOT BUILD_GL)
32 set(MAIN_SRC ${CMAKE_SOURCE_DIR}/src/platform/sdl/sw-main.c)
33else()
34 set(MAIN_SRC ${CMAKE_SOURCE_DIR}/src/platform/sdl/gl-main.c)
35 find_package(OpenGL REQUIRED)
36 include_directories(${OPENGL_INCLUDE_DIR})
37endif()
38
39add_executable(${BINARY_NAME}-sdl WIN32 ${PLATFORM_SRC} ${MAIN_SRC})
40target_link_libraries(${BINARY_NAME}-sdl ${BINARY_NAME} ${PLATFORM_LIBRARY} ${OPENGL_LIBRARY})
41set_target_properties(${BINARY_NAME}-sdl PROPERTIES OUTPUT_NAME ${BINARY_NAME})