File: FindOpusfile.cmake

package info (click to toggle)
ddnet 19.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 68,960 kB
  • sloc: cpp: 195,050; ansic: 58,572; python: 5,568; asm: 946; sh: 941; java: 366; xml: 206; makefile: 31
file content (55 lines) | stat: -rw-r--r-- 1,809 bytes parent folder | download
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
if(NOT CMAKE_CROSSCOMPILING)
  find_package(PkgConfig QUIET)
  pkg_check_modules(PC_OPUSFILE opusfile)
endif()

set_extra_dirs_lib(OPUSFILE opus)
find_library(OPUSFILE_LIBRARY
  NAMES opusfile
  HINTS ${HINTS_OPUSFILE_LIBDIR} ${PC_OPUSFILE_LIBDIR} ${PC_OPUSFILE_LIBRARY_DIRS}
  PATHS ${PATHS_OPUSFILE_LIBDIR}
  ${CROSSCOMPILING_NO_CMAKE_SYSTEM_PATH}
)
set_extra_dirs_include(OPUSFILE opus "${OPUSFILE_LIBRARY}")
find_path(OPUSFILE_INCLUDEDIR opusfile.h
  PATH_SUFFIXES opus
  HINTS ${HINTS_OPUSFILE_INCLUDEDIR} ${PC_OPUSFILE_INCLUDEDIR} ${PC_OPUSFILE_INCLUDE_DIRS}
  PATHS ${PATHS_OPUSFILE_INCLUDEDIR}
  ${CROSSCOMPILING_NO_CMAKE_SYSTEM_PATH}
)

include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Opusfile DEFAULT_MSG OPUSFILE_LIBRARY OPUSFILE_INCLUDEDIR)

mark_as_advanced(OPUSFILE_LIBRARY OPUSFILE_INCLUDEDIR)

set(OPUSFILE_LIBRARIES ${OPUSFILE_LIBRARY})
set(OPUSFILE_INCLUDE_DIRS ${OPUSFILE_INCLUDEDIR})

if(OPUSFILE_FOUND)
  is_bundled(OPUSFILE_BUNDLED "${OPUSFILE_LIBRARY}")
  if(OPUSFILE_BUNDLED AND TARGET_OS STREQUAL "windows")
    if (TARGET_CPU_ARCHITECTURE STREQUAL "arm64")
      set(OPUSFILE_COPY_FILES
        "${EXTRA_OPUSFILE_LIBDIR}/libopusfile-0.dll"
        "${EXTRA_OPUSFILE_LIBDIR}/libopus-0.dll"
        "${EXTRA_OPUSFILE_LIBDIR}/libogg-0.dll"
        "${EXTRA_OPUSFILE_LIBDIR}/libwinpthread-1.dll"
      )
    else()
      set(OPUSFILE_COPY_FILES
        "${EXTRA_OPUSFILE_LIBDIR}/libogg.dll"
        "${EXTRA_OPUSFILE_LIBDIR}/libopus.dll"
        "${EXTRA_OPUSFILE_LIBDIR}/libopusfile.dll"
        "${EXTRA_OPUSFILE_LIBDIR}/libwinpthread-1.dll"
      )
    endif()
    if(TARGET_BITS EQUAL 32)
      list(APPEND OPUSFILE_COPY_FILES
        "${EXTRA_OPUSFILE_LIBDIR}/libgcc_s_sjlj-1.dll"
      )
    endif()
  else()
    set(OPUSFILE_COPY_FILES)
  endif()
endif()