Spec-Zone.ru › CMake 3.20

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API