FindUdev.cmake 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. # Once done these will be defined:
  2. #
  3. # UDEV_FOUND UDEV_INCLUDE_DIRS UDEV_LIBRARIES
  4. find_package(PkgConfig QUIET)
  5. if(PKG_CONFIG_FOUND)
  6. pkg_check_modules(_UDEV QUIET libudev)
  7. endif()
  8. find_path(
  9. UDEV_INCLUDE_DIR
  10. NAMES libudev.h
  11. HINTS ${_UDEV_INCLUDE_DIRS}
  12. PATHS /usr/include /usr/local/include /opt/local/include)
  13. find_library(
  14. UDEV_LIB
  15. NAMES udev libudev
  16. HINTS ${_UDEV_LIBRARY_DIRS}
  17. PATHS /usr/lib /usr/local/lib /opt/local/lib)
  18. include(FindPackageHandleStandardArgs)
  19. find_package_handle_standard_args(Udev DEFAULT_MSG UDEV_LIB UDEV_INCLUDE_DIR)
  20. mark_as_advanced(UDEV_INCLUDE_DIR UDEV_LIB)
  21. if(UDEV_FOUND)
  22. set(UDEV_INCLUDE_DIRS ${UDEV_INCLUDE_DIR})
  23. set(UDEV_LIBRARIES ${UDEV_LIB})
  24. if(NOT TARGET Udev::Udev)
  25. if(IS_ABSOLUTE "${UDEV_LIBRARIES}")
  26. add_library(Udev::Udev UNKNOWN IMPORTED)
  27. set_target_properties(Udev::Udev PROPERTIES IMPORTED_LOCATION
  28. "${UDEV_LIBRARIES}")
  29. else()
  30. add_library(Udev::Udev INTERFACE IMPORTED)
  31. set_target_properties(Udev::Udev PROPERTIES IMPORTED_LIBNAME
  32. "${UDEV_LIBRARIES}")
  33. endif()
  34. set_target_properties(Udev::Udev PROPERTIES INTERFACE_INCLUDE_DIRECTORIES
  35. "${UDEV_INCLUDE_DIRS}")
  36. endif()
  37. endif()