mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-02-12 19:31:41 +00:00
added libraries: opus flac libsndfile updated: libvorbis libogg openal - Everything works as expected for now. Bare in mind libsndfile needed the check for whether or not it could find the xiph libraries removed in order for this to work.
210 lines
5.4 KiB
CMake
210 lines
5.4 KiB
CMake
#[=======================================================================[.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)
|