4 # Finds the XRandR library
6 # This will define the following variables::
8 # XRANDR_FOUND - system has XRANDR
9 # XRANDR_INCLUDE_DIRS - the XRANDR include directory
10 # XRANDR_LIBRARIES - the XRANDR libraries
11 # XRANDR_DEFINITIONS - the XRANDR definitions
13 # and the following imported targets::
15 # XRandR::XRandR - The XRANDR library
18 pkg_check_modules(PC_XRANDR xrandr QUIET)
21 find_path(XRANDR_INCLUDE_DIR NAMES X11/extensions/Xrandr.h
22 PATHS ${PC_XRANDR_INCLUDEDIR})
23 find_library(XRANDR_LIBRARY NAMES Xrandr
24 PATHS ${PC_XRANDR_LIBDIR})
26 set(XRANDR_VERSION ${PC_XRANDR_VERSION})
28 include(FindPackageHandleStandardArgs)
29 find_package_handle_standard_args(XRandR
30 REQUIRED_VARS XRANDR_LIBRARY XRANDR_INCLUDE_DIR
31 VERSION_VAR XRANDR_VERSION)
34 set(XRANDR_LIBRARIES ${XRANDR_LIBRARY})
35 set(XRANDR_INCLUDE_DIRS ${XRANDR_INCLUDE_DIR})
36 set(XRANDR_DEFINITIONS -DHAVE_LIBXRANDR=1)
38 if(NOT TARGET XRandR::XRandR)
39 add_library(XRandR::XRandR UNKNOWN IMPORTED)
40 set_target_properties(XRandR::XRandR PROPERTIES
41 IMPORTED_LOCATION "${XRANDR_LIBRARY}"
42 INTERFACE_INCLUDE_DIRECTORIES "${XRANDR_INCLUDE_DIR}"
43 INTERFACE_COMPILE_DEFINITIONS HAVE_LIBXRANDR=1)
47 mark_as_advanced(XRANDR_INCLUDE_DIR XRANDR_LIBRARY)