FindSpeex.cmake 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. # - Find Speex
  2. # Find the native Speex includes and libraries
  3. #
  4. # SPEEX_INCLUDE_DIRS - where to find speex.h, etc.
  5. # SPEEX_LIBRARIES - List of libraries when using Speex.
  6. # SPEEX_FOUND - True if Speex found.
  7. if (SPEEX_INCLUDE_DIR)
  8. set (SPEEX_FIND_QUIETLY TRUE)
  9. endif ()
  10. find_package (PkgConfig QUIET)
  11. pkg_check_modules (PC_SPEEX QUIET speex)
  12. set (SPEEX_VERSION ${PC_SPEEX_VERSION})
  13. find_path (SPEEX_INCLUDE_DIR speex/speex.h
  14. HINTS
  15. ${PC_SPEEX_INCLUDEDIR}
  16. ${PC_SPEEX_INCLUDE_DIRS}
  17. ${SPEEX_ROOT}
  18. )
  19. find_library (SPEEX_LIBRARY
  20. NAMES
  21. speex
  22. libspeex
  23. HINTS
  24. ${PC_SPEEX_LIBDIR}
  25. ${PC_SPEEX_LIBRARY_DIRS}
  26. ${SPEEX_ROOT}
  27. )
  28. include (FindPackageHandleStandardArgs)
  29. find_package_handle_standard_args (Speex
  30. REQUIRED_VARS
  31. SPEEX_LIBRARY
  32. SPEEX_INCLUDE_DIR
  33. VERSION_VAR
  34. SPEEX_VERSION
  35. )
  36. if (SPEEX_FOUND)
  37. set (SPEEX_LIBRARIES ${SPEEX_LIBRARY})
  38. set (SPEEX_INCLUDE_DIRS ${SPEEX_INCLUDE_DIR})
  39. if (NOT TARGET Speex::Speex)
  40. add_library (Speex::Speex UNKNOWN IMPORTED)
  41. set_target_properties (Speex::Speex PROPERTIES
  42. INTERFACE_INCLUDE_DIRECTORIES "${SPEEX_INCLUDE_DIRS}"
  43. IMPORTED_LOCATION "${SPEEX_LIBRARIES}"
  44. )
  45. endif ()
  46. endif ()
  47. mark_as_advanced (SPEEX_INCLUDE_DIR SPEEX_LIBRARY)