68 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
		
		
			
		
	
	
			68 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| 
								 | 
							
								# - 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.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								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)
							 |