2
0

FindLibNice.cmake 1.4 KB

1234567891011121314151617181920212223242526272829303132333435
  1. if (NOT TARGET LibNice::LibNice)
  2. find_package(PkgConfig)
  3. pkg_check_modules(PC_LIBNICE nice)
  4. set(LIBNICE_DEFINITIONS ${PC_LIBNICE_CFLAGS_OTHER})
  5. find_path(LIBNICE_INCLUDE_DIR nice/agent.h
  6. HINTS ${PC_LIBNICE_INCLUDEDIR} ${PC_LIBNICE_INCLUDE_DIRS}
  7. PATH_SUFFICES libnice)
  8. find_library(LIBNICE_LIBRARY NAMES nice libnice
  9. HINTS ${PC_LIBNICE_LIBDIR} ${PC_LIBNICE_LIBRARY_DIRS})
  10. include(FindPackageHandleStandardArgs)
  11. find_package_handle_standard_args(LibNice DEFAULT_MSG
  12. LIBNICE_LIBRARY LIBNICE_INCLUDE_DIR)
  13. mark_as_advanced(LIBNICE_INCLUDE_DIR LIBNICE_LIBRARY)
  14. set(LIBNICE_LIBRARIES ${LIBNICE_LIBRARY})
  15. set(LIBNICE_INCLUDE_DIRS ${LIBNICE_INCLUDE_DIR})
  16. find_package(GLIB REQUIRED COMPONENTS gio gobject gmodule gthread)
  17. list(APPEND LIBNICE_INCLUDE_DIRS ${GLIB_INCLUDE_DIRS})
  18. list(APPEND LIBNICE_LIBRARIES ${GLIB_GOBJECT_LIBRARIES} ${GLIB_LIBRARIES})
  19. if (LIBNICE_FOUND)
  20. add_library(LibNice::LibNice UNKNOWN IMPORTED)
  21. set_target_properties(LibNice::LibNice PROPERTIES
  22. IMPORTED_LOCATION "${LIBNICE_LIBRARY}"
  23. INTERFACE_COMPILE_DEFINITIONS "_REENTRANT"
  24. INTERFACE_INCLUDE_DIRECTORIES "${LIBNICE_INCLUDE_DIRS}"
  25. INTERFACE_LINK_LIBRARIES "${LIBNICE_LIBRARIES}"
  26. IMPORTED_LINK_INTERFACE_LANGUAGES "C")
  27. endif ()
  28. endif ()