1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- #[=======================================================================[.rst:
- Findmpg123
- -------
- Finds the mpg123 library.
- Imported Targets
- ^^^^^^^^^^^^^^^^
- This module provides the following imported targets, if found:
- ``MPG123::libmpg123``
- The mpg123 library
- Result Variables
- ^^^^^^^^^^^^^^^^
- This will define the following variables:
- ``mpg123_FOUND``
- True if the system has the mpg123 package.
- ``mpg123_VERSION``
- The version of mpg123 that was found on the system.
- Cache Variables
- ^^^^^^^^^^^^^^^
- The following cache variables may also be set:
- ``mpg123_INCLUDE_DIR``
- The directory containing ``mpg123.h``.
- ``mpg123_LIBRARY``
- The path to the mpg123 library.
- #]=======================================================================]
- if (mpg123_INCLUDE_DIR)
- # Already in cache, be silent
- set(mpg123_FIND_QUIETLY TRUE)
- endif ()
- find_package (PkgConfig QUIET)
- pkg_check_modules(PC_MPG123 QUIET libmpg123>=1.25.10)
- find_path (mpg123_INCLUDE_DIR mpg123.h
- HINTS
- ${PC_MPG123_INCLUDEDIR}
- ${PC_MPG123_INCLUDE_DIRS}
- ${mpg123_ROOT}
- )
- # MSVC built mpg123 may be named mpg123_static.
- # The provided project files name the library with the lib prefix.
- find_library (mpg123_LIBRARY
- NAMES
- mpg123
- mpg123_static
- libmpg123
- libmpg123_static
- HINTS
- ${PC_MPG123_LIBDIR}
- ${PC_MPG123_LIBRARY_DIRS}
- ${mpg123_ROOT}
- )
- if (PC_MPG123_FOUND)
- set (mpg123_VERSION ${PC_MPG123_VERSION})
- elseif (mpg123_INCLUDE_DIR)
- file (READ "${mpg123_INCLUDE_DIR}/mpg123.h" _mpg123_h)
- string (REGEX MATCH "[0-9]+.[0-9]+.[0-9]+" _mpg123_version_re "${_mpg123_h}")
- set (mpg123_VERSION "${_mpg123_version_re}")
- endif ()
- # Handle the QUIETLY and REQUIRED arguments and set mpg123_FOUND
- # to TRUE if all listed variables are TRUE.
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args (mpg123
- REQUIRED_VARS
- mpg123_LIBRARY
- mpg123_INCLUDE_DIR
- VERSION_VAR
- mpg123_VERSION
- )
- if (mpg123_FOUND AND NOT TARGET MPG123::libmpg123)
- add_library (MPG123::libmpg123 UNKNOWN IMPORTED)
- set_target_properties (MPG123::libmpg123
- PROPERTIES
- IMPORTED_LOCATION "${mpg123_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${mpg123_INCLUDE_DIR}"
- )
- endif ()
- mark_as_advanced(mpg123_INCLUDE_DIR mpg123_LIBRARY)
|