FindSDL
Расположение библиотеки SDL
Импортированные цели
Введено в версии 3.19.
Этот модуль определяет следующие IMPORTED цель:
-
SDL::SDL -
Библиотека SDL, если найдена
Переменные результата
Этот модуль установит следующие переменные в вашем проекте:
-
SDL_INCLUDE_DIRS -
местоположение SDL.h
-
SDL_LIBRARIES -
имя библиотеки для линковки
-
SDL_FOUND -
если ложь, не пытаться линковать к SDL
-
SDL_VERSION -
человекочитаемая строка, содержащая версию SDL, если найдена
-
SDL_VERSION_MAJOR -
главная версия SDL
-
SDL_VERSION_MINOR -
второстепенная версия SDL
-
SDL_VERSION_PATCH -
дополнительная версия SDL
Новое в версии 3.19: Добавлены переменные SDL_INCLUDE_DIRS, SDL_LIBRARIES и SDL_VERSION[_<PART>].
Переменные кэша
Эти переменные могут быть необязательно установлены, чтобы помочь этому модулю найти правильные файлы:
-
SDL_INCLUDE_DIR -
местоположение SDL.h
-
SDL_LIBRARY -
имя библиотеки для линковки
Переменные для поиска SDL
Этот модуль реагирует на флаг:
-
SDL_BUILDING_LIBRARY -
Если это определено, то SDL_main не будет линковаться, потому что только приложениям нужен main(). В противном случае предполагается, что вы создаёте приложение, и этот модуль попытается найти и установить правильные флаги линковки как часть возвращаемой переменной SDL_LIBRARY.
Устаревшие переменные
Устарело начиная с версии 3.19.
Эти переменные устарели и предоставляются для обратной совместимости:
-
SDL_VERSION_STRING -
человекочитаемая строка, содержащая версию SDL, если найдена. Идентично SDL_VERSION
Не забудьте включить SDLmain.h и SDLmain.m в свой проект для версии на основе фреймворка OS X. (Другие версии линковываются с -lSDLmain, который этот модуль попытается найти от вашего имени.) Также для OS X этот модуль автоматически добавит -framework Cocoa от вашего имени.
Дополнительная заметка: Если вы видите пустое SDL_LIBRARY_TEMP в вашей конфигурации и отсутствие SDL_LIBRARY, это означает, что CMake не нашёл вашу библиотеку SDL (SDL.dll, libsdl.so, SDL.framework и т. д.). Установите SDL_LIBRARY_TEMP, чтобы указать на вашу библиотеку SDL, и снова выполните конфигурацию. Аналогично, если вы видите пустое SDLMAIN_LIBRARY, вы должны установить это значение соответствующим образом. Эти значения используются для генерации конечной переменной SDL_LIBRARY, но когда эти значения не установлены, SDL_LIBRARY не создаётся.
$SDLDIR — это переменная окружения, которая соответствовала бы ./configure --prefix=$SDLDIR, используемой при построении SDL. l.e.galup 9-20-02
На OSX это будет отдавать предпочтение версии Framework (если найдена) перед другими. Пользователям придётся вручную изменить значения кэша SDL_LIBRARY, чтобы переопределить этот выбор, или установить переменную окружения CMake CMAKE_INCLUDE_PATH, чтобы изменить пути поиска.
Обратите внимание, что путь к заголовку изменился с SDL/SDL.h на просто SDL.h. Это нужно было изменить, потому что «правильная» конвенция SDL заключается в #include "SDL.h", а не <SDL/SDL.h>. Это сделано по соображениям переносимости, потому что не все системы помещают вещи в SDL/ (см. FreeBSD).
© 2000–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.20/module/FindSDL.html