diff options
Diffstat (limited to 'project/cmake/modules/FindSdl.cmake')
| -rw-r--r-- | project/cmake/modules/FindSdl.cmake | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/project/cmake/modules/FindSdl.cmake b/project/cmake/modules/FindSdl.cmake new file mode 100644 index 0000000..91bcac5 --- /dev/null +++ b/project/cmake/modules/FindSdl.cmake | |||
| @@ -0,0 +1,46 @@ | |||
| 1 | #.rst: | ||
| 2 | # FindSDL | ||
| 3 | # ------- | ||
| 4 | # Finds the SDL library | ||
| 5 | # | ||
| 6 | # This will will define the following variables:: | ||
| 7 | # | ||
| 8 | # SDL_FOUND - system has SDL | ||
| 9 | # SDL_INCLUDE_DIRS - the SDL include directory | ||
| 10 | # SDL_LIBRARIES - the SDL libraries | ||
| 11 | # SDL_DEFINITIONS - the SDL compile definitions | ||
| 12 | |||
| 13 | if(PKG_CONFIG_FOUND) | ||
| 14 | pkg_check_modules(PC_SDL2 sdl2 QUIET) | ||
| 15 | if(PC_SDL2_FOUND) | ||
| 16 | set(SDL_VERSION ${PC_SDL2_VERSION}) | ||
| 17 | else() | ||
| 18 | pkg_check_modules(PC_SDL1 sdl QUIET) | ||
| 19 | if(PC_SDL1_FOUND) | ||
| 20 | set(SDL_VERSION ${PC_SDL1_VERSION}) | ||
| 21 | endif() | ||
| 22 | endif() | ||
| 23 | endif() | ||
| 24 | |||
| 25 | find_path(SDL_INCLUDE_DIR SDL/SDL.h | ||
| 26 | PATHS ${PC_SDL2_INCLUDE_DIR} ${PC_SDL1_INCLUDE_DIR}) | ||
| 27 | find_library(SDL_LIBRARY NAMES SDL2 SDL | ||
| 28 | PATHS ${PC_SDL2_LIBDIR} ${PC_SDL1_LIBDIR}) | ||
| 29 | |||
| 30 | include(FindPackageHandleStandardArgs) | ||
| 31 | find_package_handle_standard_args(Sdl REQUIRED_VARS SDL_LIBRARY SDL_INCLUDE_DIR | ||
| 32 | VERSION_VAR SDL_VERSION) | ||
| 33 | |||
| 34 | if(SDL_FOUND) | ||
| 35 | set(SDL_LIBRARIES ${SDL_LIBRARY}) | ||
| 36 | set(SDL_INCLUDE_DIRS ${SDL_INCLUDE_DIR}) | ||
| 37 | set(SDL_DEFINITIONS -DHAVE_SDL=1) | ||
| 38 | |||
| 39 | if(SDL_VERSION VERSION_GREATER 2) | ||
| 40 | list(APPEND SDL_DEFINITIONS -DHAVE_SDL_VERSION=2) | ||
| 41 | elseif(SDL_VERSION VERSION_GREATER 1) | ||
| 42 | list(APPEND SDL_DEFINITIONS -DHAVE_SDL_VERSION=1) | ||
| 43 | endif() | ||
| 44 | endif() | ||
| 45 | |||
| 46 | mark_as_advanced(SDL_LIBRARY SDL_INCLUDE_DIR) | ||
