File: FindOpus.cmake

package info (click to toggle)
colobot 0.2.2-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 415,532 kB
  • sloc: cpp: 129,246; ansic: 8,872; python: 2,158; sh: 672; awk: 91; xml: 35; makefile: 31
file content (69 lines) | stat: -rw-r--r-- 1,546 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# - Find opus
# Find the native opus includes and libraries
#
#  OPUS_INCLUDE_DIRS - where to find opus.h, etc.
#  OPUS_LIBRARIES    - List of libraries when using opus.
#  OPUS_FOUND        - True if Opus found.

# From https://github.com/erikd/libsndfile/

if (OPUS_INCLUDE_DIR)
    # Already in cache, be silent
    set(OPUS_FIND_QUIETLY TRUE)
endif ()

find_package (Ogg QUIET)

find_package (PkgConfig QUIET)
pkg_check_modules(PC_OPUS QUIET opus>=1.1)

set (OPUS_VERSION ${PC_OPUS_VERSION})

find_path (OPUS_INCLUDE_DIR opus/opus.h
	HINTS
		${PC_OPUS_INCLUDEDIR}
		${PC_OPUS_INCLUDE_DIRS}
		${OPUS_ROOT}
	)

# MSVC built opus may be named opus_static.
# The provided project files name the library with the lib prefix.

find_library (OPUS_LIBRARY
	NAMES
		opus
		opus_static
		libopus
		libopus_static
	HINTS
		${PC_OPUS_LIBDIR}
		${PC_OPUS_LIBRARY_DIRS}
		${OPUS_ROOT}
	)

# Handle the QUIETLY and REQUIRED arguments and set OPUS_FOUND
# to TRUE if all listed variables are TRUE.
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args (Opus
	REQUIRED_VARS
		OPUS_LIBRARY
		OPUS_INCLUDE_DIR
		OGG_FOUND
	VERSION_VAR
		OPUS_VERSION
	)

if (OPUS_FOUND)
	set (OPUS_LIBRARIES ${OPUS_LIBRARY})
	set (OPUS_INCLUDE_DIRS ${OPUS_INCLUDE_DIR})

	if (NOT TARGET Opus::opus)
		add_library (Opus::opus UNKNOWN IMPORTED)
		set_target_properties (Opus::opus PROPERTIES
			INTERFACE_INCLUDE_DIRECTORIES "${OPUS_INCLUDE_DIRS}"
			IMPORTED_LOCATION "${OPUS_LIBRARIES}"
		)
	endif ()
endif ()

mark_as_advanced(OPUS_INCLUDE_DIR OPUS_LIBRARY)