• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
12if (SNDIO_INCLUDE_DIR)
13	# Already in cache, be silent
14	set (SNDIO_FIND_QUIETLY TRUE)
15endif ()
16
17find_package (PkgConfig QUIET)
18pkg_check_modules (PC_SNDIO QUIET sndio)
19
20set (SNDIO_VERSION ${PC_SNDIO_VERSION})
21
22find_path (SNDIO_INCLUDE_DIR
23	NAMES
24		sndio.h
25	HINTS
26		${PC_SNDIO_INCLUDEDIR}
27		${PC_SNDIO_INCLUDE_DIRS}
28		${SNDIO_ROOT}
29	)
30
31find_library (SNDIO_LIBRARY
32	NAMES
33		sndio
34	HINTS
35		${PC_SNDIO_LIBDIR}
36		${PC_SNDIO_LIBRARY_DIRS}
37		${SNDIO_ROOT}
38	)
39
40include (FindPackageHandleStandardArgs)
41find_package_handle_standard_args (Sndio
42	REQUIRED_VARS
43		SNDIO_LIBRARY
44		SNDIO_INCLUDE_DIR
45	VERSION_VAR
46		SNDIO_VERSION
47	)
48
49if (SNDIO_FOUND)
50	set (SNDIO_LIBRARIES ${SNDIO_LIBRARY})
51	set (SNDIO_INCLUDE_DIRS ${SNDIO_INCLUDE_DIR})
52	if (NOT TARGET Sndio::Sndio)
53		add_library (Sndio::Sndio UNKNOWN IMPORTED)
54		set_target_properties (Sndio::Sndio PROPERTIES
55			INTERFACE_INCLUDE_DIRECTORIES "${SNDIO_INCLUDE_DIRS}"
56			IMPORTED_LOCATION "${SNDIO_LIBRARIES}"
57		)
58	endif()
59endif()
60
61mark_as_advanced (SNDIO_INCLUDE_DIR SNDIO_LIBRARY)
62