123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210 |
- #[=======================================================================[.rst:
- FindVorbis
- ----------
- Finds the native vorbis, vorbisenc amd vorbisfile includes and libraries.
- Imported Targets
- ^^^^^^^^^^^^^^^^
- This module provides the following imported targets, if found:
- ``Vorbis::vorbis``
- The Vorbis library
- ``Vorbis::vorbisenc``
- The VorbisEnc library
- ``Vorbis::vorbisfile``
- The VorbisFile library
- Result Variables
- ^^^^^^^^^^^^^^^^
- This will define the following variables:
- ``Vorbis_Vorbis_INCLUDE_DIRS``
- List of include directories when using vorbis.
- ``Vorbis_Enc_INCLUDE_DIRS``
- List of include directories when using vorbisenc.
- ``Vorbis_File_INCLUDE_DIRS``
- List of include directories when using vorbisfile.
- ``Vorbis_Vorbis_LIBRARIES``
- List of libraries when using vorbis.
- ``Vorbis_Enc_LIBRARIES``
- List of libraries when using vorbisenc.
- ``Vorbis_File_LIBRARIES``
- List of libraries when using vorbisfile.
- ``Vorbis_FOUND``
- True if vorbis and requested components found.
- ``Vorbis_Vorbis_FOUND``
- True if vorbis found.
- ``Vorbis_Enc_FOUND``
- True if vorbisenc found.
- ``Vorbis_Enc_FOUND``
- True if vorbisfile found.
- Cache variables
- ^^^^^^^^^^^^^^^
- The following cache variables may also be set:
- ``Vorbis_Vorbis_INCLUDE_DIR``
- The directory containing ``vorbis/vorbis.h``.
- ``Vorbis_Enc_INCLUDE_DIR``
- The directory containing ``vorbis/vorbisenc.h``.
- ``Vorbis_File_INCLUDE_DIR``
- The directory containing ``vorbis/vorbisenc.h``.
- ``Vorbis_Vorbis_LIBRARY``
- The path to the vorbis library.
- ``Vorbis_Enc_LIBRARY``
- The path to the vorbisenc library.
- ``Vorbis_File_LIBRARY``
- The path to the vorbisfile library.
- Hints
- ^^^^^
- A user may set ``Vorbis_ROOT`` to a vorbis installation root to tell this module where to look.
- #]=======================================================================]
- if (Vorbis_Vorbis_INCLUDE_DIR)
- # Already in cache, be silent
- set (Vorbis_FIND_QUIETLY TRUE)
- endif ()
- set (Vorbis_Vorbis_FIND_QUIETLY TRUE)
- set (Vorbis_Enc_FIND_QUIETLY TRUE)
- set (Vorbis_File_FIND_QUIETLY TRUE)
- find_package (Ogg QUIET)
- find_package (PkgConfig QUIET)
- pkg_check_modules (PC_Vorbis_Vorbis QUIET vorbis)
- pkg_check_modules (PC_Vorbis_Enc QUIET vorbisenc)
- pkg_check_modules (PC_Vorbis_File QUIET vorbisfile)
- set (Vorbis_VERSION ${PC_Vorbis_Vorbis_VERSION})
- find_path (Vorbis_Vorbis_INCLUDE_DIR vorbis/codec.h
- HINTS
- ${PC_Vorbis_Vorbis_INCLUDEDIR}
- ${PC_Vorbis_Vorbis_INCLUDE_DIRS}
- ${Vorbis_ROOT}
- )
- find_path (Vorbis_Enc_INCLUDE_DIR vorbis/vorbisenc.h
- HINTS
- ${PC_Vorbis_Enc_INCLUDEDIR}
- ${PC_Vorbis_Enc_INCLUDE_DIRS}
- ${Vorbis_ROOT}
- )
- find_path (Vorbis_File_INCLUDE_DIR vorbis/vorbisfile.h
- HINTS
- ${PC_Vorbis_File_INCLUDEDIR}
- ${PC_Vorbis_File_INCLUDE_DIRS}
- ${Vorbis_ROOT}
- )
- find_library (Vorbis_Vorbis_LIBRARY
- NAMES
- vorbis
- vorbis_static
- libvorbis
- libvorbis_static
- HINTS
- ${PC_Vorbis_Vorbis_LIBDIR}
- ${PC_Vorbis_Vorbis_LIBRARY_DIRS}
- ${Vorbis_ROOT}
- )
- find_library (Vorbis_Enc_LIBRARY
- NAMES
- vorbisenc
- vorbisenc_static
- libvorbisenc
- libvorbisenc_static
- HINTS
- ${PC_Vorbis_Enc_LIBDIR}
- ${PC_Vorbis_Enc_LIBRARY_DIRS}
- ${Vorbis_ROOT}
- )
- find_library (Vorbis_File_LIBRARY
- NAMES
- vorbisfile
- vorbisfile_static
- libvorbisfile
- libvorbisfile_static
- HINTS
- ${PC_Vorbis_File_LIBDIR}
- ${PC_Vorbis_File_LIBRARY_DIRS}
- ${Vorbis_ROOT}
- )
- include (FindPackageHandleStandardArgs)
- if (Vorbis_Vorbis_LIBRARY AND Vorbis_Vorbis_INCLUDE_DIR AND Ogg_FOUND)
- set (Vorbis_Vorbis_FOUND TRUE)
- endif ()
- if (Vorbis_Enc_LIBRARY AND Vorbis_Enc_INCLUDE_DIR AND Vorbis_Vorbis_FOUND)
- set (Vorbis_Enc_FOUND TRUE)
- endif ()
- if (Vorbis_Vorbis_FOUND AND Vorbis_File_LIBRARY AND Vorbis_File_INCLUDE_DIR)
- set (Vorbis_File_FOUND TRUE)
- endif ()
- find_package_handle_standard_args (Vorbis
- REQUIRED_VARS
- Vorbis_Vorbis_LIBRARY
- Vorbis_Vorbis_INCLUDE_DIR
- Ogg_FOUND
- HANDLE_COMPONENTS
- VERSION_VAR Vorbis_VERSION)
- if (Vorbis_Vorbis_FOUND)
- set (Vorbis_Vorbis_INCLUDE_DIRS ${VORBIS_INCLUDE_DIR})
- set (Vorbis_Vorbis_LIBRARIES ${VORBIS_LIBRARY} ${OGG_LIBRARIES})
- if (NOT TARGET Vorbis::vorbis)
- add_library (Vorbis::vorbis UNKNOWN IMPORTED)
- set_target_properties (Vorbis::vorbis PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${Vorbis_Vorbis_INCLUDE_DIR}"
- IMPORTED_LOCATION "${Vorbis_Vorbis_LIBRARY}"
- INTERFACE_LINK_LIBRARIES Ogg::ogg
- )
- endif ()
- if (Vorbis_Enc_FOUND)
- set (Vorbis_Enc_INCLUDE_DIRS ${Vorbis_Enc_INCLUDE_DIR})
- set (Vorbis_Enc_LIBRARIES ${Vorbis_Enc_LIBRARY} ${Vorbis_Enc_LIBRARIES})
- if (NOT TARGET Vorbis::vorbisenc)
- add_library (Vorbis::vorbisenc UNKNOWN IMPORTED)
- set_target_properties (Vorbis::vorbisenc PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${Vorbis_Enc_INCLUDE_DIR}"
- IMPORTED_LOCATION "${Vorbis_Enc_LIBRARY}"
- INTERFACE_LINK_LIBRARIES Vorbis::vorbis
- )
- endif ()
- endif ()
- if (Vorbis_File_FOUND)
- set (Vorbis_File_INCLUDE_DIRS ${Vorbis_File_INCLUDE_DIR})
- set (Vorbis_File_LIBRARIES ${Vorbis_File_LIBRARY} ${Vorbis_File_LIBRARIES})
- if (NOT TARGET Vorbis::vorbisfile)
- add_library (Vorbis::vorbisfile UNKNOWN IMPORTED)
- set_target_properties (Vorbis::vorbisfile PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${Vorbis_File_INCLUDE_DIR}"
- IMPORTED_LOCATION "${Vorbis_File_LIBRARY}"
- INTERFACE_LINK_LIBRARIES Vorbis::vorbis
- )
- endif ()
- endif ()
- endif ()
- mark_as_advanced (Vorbis_Vorbis_INCLUDE_DIR Vorbis_Vorbis_LIBRARY)
- mark_as_advanced (Vorbis_Enc_INCLUDE_DIR Vorbis_Enc_LIBRARY)
- mark_as_advanced (Vorbis_File_INCLUDE_DIR Vorbis_File_LIBRARY)
|