FindXkbcommon.cmake 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. # Once done these will be defined:
  2. #
  3. # XKBCOMMON_FOUND XKBCOMMON_INCLUDE_DIRS XKBCOMMON_LIBRARIES
  4. find_package(PkgConfig QUIET)
  5. if(PKG_CONFIG_FOUND)
  6. pkg_check_modules(_XKBCOMMON QUIET xkbcommon)
  7. endif()
  8. find_path(
  9. XKBCOMMON_INCLUDE_DIR
  10. NAMES xkbcommon/xkbcommon.h
  11. HINTS ${_XKBCOMMON_INCLUDE_DIRS}
  12. PATHS /usr/include /usr/local/include /opt/local/include)
  13. find_library(
  14. XKBCOMMON_LIB
  15. NAMES xkbcommon libxkbcommon
  16. HINTS ${_XKBCOMMON_LIBRARY_DIRS}
  17. PATHS /usr/lib /usr/local/lib /opt/local/lib)
  18. include(FindPackageHandleStandardArgs)
  19. find_package_handle_standard_args(Xkbcommon DEFAULT_MSG XKBCOMMON_LIB
  20. XKBCOMMON_INCLUDE_DIR)
  21. mark_as_advanced(XKBCOMMON_INCLUDE_DIR XKBCOMMON_LIB)
  22. if(XKBCOMMON_FOUND)
  23. set(XKBCOMMON_INCLUDE_DIRS ${XKBCOMMON_INCLUDE_DIR})
  24. set(XKBCOMMON_LIBRARIES ${XKBCOMMON_LIB})
  25. if(NOT TARGET Xkbcommon::Xkbcommon)
  26. add_library(Xkbcommon::Xkbcommon INTERFACE IMPORTED)
  27. set_target_properties(
  28. Xkbcommon::Xkbcommon PROPERTIES INTERFACE_INCLUDE_DIRECTORIES
  29. "${XKBCOMMON_INCLUDE_DIRS}")
  30. endif()
  31. endif()