summaryrefslogtreecommitdiffstats
path: root/project/cmake/modules/FindXRandR.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'project/cmake/modules/FindXRandR.cmake')
-rw-r--r--project/cmake/modules/FindXRandR.cmake51
1 files changed, 38 insertions, 13 deletions
diff --git a/project/cmake/modules/FindXRandR.cmake b/project/cmake/modules/FindXRandR.cmake
index 57ff750..9feaedc 100644
--- a/project/cmake/modules/FindXRandR.cmake
+++ b/project/cmake/modules/FindXRandR.cmake
@@ -1,22 +1,47 @@
1# - Try to find xrandr 1#.rst:
2# Once done this will define 2# FindXRandR
3# ----------
4# Finds the XRandR library
3# 5#
4# XRANDR_FOUND - system has lixrandr 6# This will will define the following variables::
5# XRANDR_INCLUDE_DIRS - the libxrandr include directory 7#
6# XRANDR_LIBRARIES - The libxrandr libraries 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
12#
13# and the following imported targets::
14#
15# XRandR::XRandR - The XRANDR library
7 16
8if(PKG_CONFIG_FOUND) 17if(PKG_CONFIG_FOUND)
9 pkg_check_modules (XRANDR xrandr) 18 pkg_check_modules(PC_XRANDR xrandr QUIET)
10 list(APPEND XRANDR_INCLUDE_DIRS ${XRANDR_INCLUDEDIR})
11else()
12 find_library(XRANDR_LIBRARIES Xrandr)
13endif() 19endif()
14 20
15if(XRANDR_FOUND) 21find_path(XRANDR_INCLUDE_DIR NAMES X11/extensions/Xrandr.h
22 PATHS ${PC_XRANDR_INCLUDEDIR})
23find_library(XRANDR_LIBRARY NAMES Xrandr
24 PATHS ${PC_XRANDR_LIBDIR})
25
26set(XRANDR_VERSION ${PC_XRANDR_VERSION})
27
16include(FindPackageHandleStandardArgs) 28include(FindPackageHandleStandardArgs)
17 find_package_handle_standard_args(XRandR DEFAULT_MSG XRANDR_INCLUDE_DIRS XRANDR_LIBRARIES) 29find_package_handle_standard_args(XRandR
30 REQUIRED_VARS XRANDR_LIBRARY XRANDR_INCLUDE_DIR
31 VERSION_VAR XRANDR_VERSION)
18 32
19 list(APPEND XRANDR_DEFINITIONS -DHAVE_LIBXRANDR=1) 33if(XRANDR_FOUND)
34 set(XRANDR_LIBRARIES ${XRANDR_LIBRARY})
35 set(XRANDR_INCLUDE_DIRS ${XRANDR_INCLUDE_DIR})
36 set(XRANDR_DEFINITIONS -DHAVE_LIBXRANDR=1)
20 37
21 mark_as_advanced(XRANDR_INCLUDE_DIRS XRANDR_LIBRARIES XRANDR_DEFINITIONS) 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)
44 endif()
22endif() 45endif()
46
47mark_as_advanced(XRANDR_INCLUDE_DIR XRANDR_LIBRARY)