FindSndio.cmake 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. # - Find SoundIO (sndio) includes and libraries
  2. #
  3. # SNDIO_FOUND - True if SNDIO_INCLUDE_DIR & SNDIO_LIBRARY are
  4. # found
  5. # SNDIO_LIBRARIES - Set when SNDIO_LIBRARY is found
  6. # SNDIO_INCLUDE_DIRS - Set when SNDIO_INCLUDE_DIR is found
  7. #
  8. # SNDIO_INCLUDE_DIR - where to find sndio.h, etc.
  9. # SNDIO_LIBRARY - the sndio library
  10. #
  11. if (SNDIO_INCLUDE_DIR)
  12. # Already in cache, be silent
  13. set (SNDIO_FIND_QUIETLY TRUE)
  14. endif ()
  15. find_package (PkgConfig QUIET)
  16. pkg_check_modules (PC_SNDIO QUIET sndio)
  17. set (SNDIO_VERSION ${PC_SNDIO_VERSION})
  18. find_path (SNDIO_INCLUDE_DIR
  19. NAMES
  20. sndio.h
  21. HINTS
  22. ${PC_SNDIO_INCLUDEDIR}
  23. ${PC_SNDIO_INCLUDE_DIRS}
  24. ${SNDIO_ROOT}
  25. )
  26. find_library (SNDIO_LIBRARY
  27. NAMES
  28. sndio
  29. HINTS
  30. ${PC_SNDIO_LIBDIR}
  31. ${PC_SNDIO_LIBRARY_DIRS}
  32. ${SNDIO_ROOT}
  33. )
  34. include (FindPackageHandleStandardArgs)
  35. find_package_handle_standard_args (Sndio
  36. REQUIRED_VARS
  37. SNDIO_LIBRARY
  38. SNDIO_INCLUDE_DIR
  39. VERSION_VAR
  40. SNDIO_VERSION
  41. )
  42. if (SNDIO_FOUND)
  43. set (SNDIO_LIBRARIES ${SNDIO_LIBRARY})
  44. set (SNDIO_INCLUDE_DIRS ${SNDIO_INCLUDE_DIR})
  45. if (NOT TARGET Sndio::Sndio)
  46. add_library (Sndio::Sndio UNKNOWN IMPORTED)
  47. set_target_properties (Sndio::Sndio PROPERTIES
  48. INTERFACE_INCLUDE_DIRECTORIES "${SNDIO_INCLUDE_DIRS}"
  49. IMPORTED_LOCATION "${SNDIO_LIBRARIES}"
  50. )
  51. endif()
  52. endif()
  53. mark_as_advanced (SNDIO_INCLUDE_DIR SNDIO_LIBRARY)