1# Distributed under the OSI-approved BSD 3-Clause License. See accompanying 2# file Copyright.txt or https://cmake.org/licensing for details. 3 4#[=======================================================================[.rst: 5FindX11 6------- 7 8Find X11 installation 9 10Try to find X11 on UNIX systems. The following values are defined 11 12:: 13 14 X11_FOUND - True if X11 is available 15 X11_INCLUDE_DIR - include directories to use X11 16 X11_LIBRARIES - link against these to use X11 17 18and also the following more fine grained variables and targets: 19 20.. versionadded:: 3.14 21 Imported targets. 22 23:: 24 25 X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND, X11::ICE 26 X11_SM_INCLUDE_PATH, X11_SM_LIB, X11_SM_FOUND, X11::SM 27 X11_X11_INCLUDE_PATH, X11_X11_LIB, X11::X11 28 X11_Xaccessrules_INCLUDE_PATH, 29 X11_Xaccessstr_INCLUDE_PATH, X11_Xaccess_FOUND 30 X11_Xau_INCLUDE_PATH, X11_Xau_LIB, X11_Xau_FOUND, X11::Xau 31 X11_xcb_INCLUDE_PATH, X11_xcb_LIB, X11_xcb_FOUND, X11::xcb 32 X11_X11_xcb_INCLUDE_PATH, X11_X11_xcb_LIB, X11_X11_xcb_FOUND, X11::X11_xcb 33 X11_xcb_icccm_INCLUDE_PATH, X11_xcb_icccm_LIB, X11_xcb_icccm_FOUND, X11::xcb_icccm 34 X11_xcb_util_INCLUDE_PATH, X11_xcb_util_LIB, X11_xcb_util_FOUND, X11::xcb_util 35 X11_xcb_xfixes_INCLUDE_PATH, X11_xcb_xfixes_LIB, X11_xcb_xfixes_FOUND, X11::xcb_xfixes 36 X11_xcb_xkb_INCLUDE_PATH, X11_xcb_xkb_LIB, X11_xcb_xkb_FOUND, X11::xcb_xkb 37 X11_Xcomposite_INCLUDE_PATH, X11_Xcomposite_LIB, X11_Xcomposite_FOUND, X11::Xcomposite 38 X11_Xcursor_INCLUDE_PATH, X11_Xcursor_LIB, X11_Xcursor_FOUND, X11::Xcursor 39 X11_Xdamage_INCLUDE_PATH, X11_Xdamage_LIB, X11_Xdamage_FOUND, X11::Xdamage 40 X11_Xdmcp_INCLUDE_PATH, X11_Xdmcp_LIB, X11_Xdmcp_FOUND, X11::Xdmcp 41 X11_Xext_INCLUDE_PATH, X11_Xext_LIB, X11_Xext_FOUND, X11::Xext 42 X11_Xxf86misc_INCLUDE_PATH, X11_Xxf86misc_LIB, X11_Xxf86misc_FOUND, X11::Xxf86misc 43 X11_Xxf86vm_INCLUDE_PATH, X11_Xxf86vm_LIB X11_Xxf86vm_FOUND, X11::Xxf86vm 44 X11_Xfixes_INCLUDE_PATH, X11_Xfixes_LIB, X11_Xfixes_FOUND, X11::Xfixes 45 X11_Xft_INCLUDE_PATH, X11_Xft_LIB, X11_Xft_FOUND, X11::Xft 46 X11_Xi_INCLUDE_PATH, X11_Xi_LIB, X11_Xi_FOUND, X11::Xi 47 X11_Xinerama_INCLUDE_PATH, X11_Xinerama_LIB, X11_Xinerama_FOUND, X11::Xinerama 48 X11_Xkb_INCLUDE_PATH, 49 X11_Xkblib_INCLUDE_PATH, X11_Xkb_FOUND, X11::Xkb 50 X11_xkbcommon_INCLUDE_PATH, X11_xkbcommon_LIB, X11_xkbcommon_FOUND, X11::xkbcommon 51 X11_xkbcommon_X11_INCLUDE_PATH,X11_xkbcommon_X11_LIB,X11_xkbcommon_X11_FOUND,X11::xkbcommon_X11 52 X11_xkbfile_INCLUDE_PATH, X11_xkbfile_LIB, X11_xkbfile_FOUND, X11::xkbfile 53 X11_Xmu_INCLUDE_PATH, X11_Xmu_LIB, X11_Xmu_FOUND, X11::Xmu 54 X11_Xpm_INCLUDE_PATH, X11_Xpm_LIB, X11_Xpm_FOUND, X11::Xpm 55 X11_Xtst_INCLUDE_PATH, X11_Xtst_LIB, X11_Xtst_FOUND, X11::Xtst 56 X11_Xrandr_INCLUDE_PATH, X11_Xrandr_LIB, X11_Xrandr_FOUND, X11::Xrandr 57 X11_Xrender_INCLUDE_PATH, X11_Xrender_LIB, X11_Xrender_FOUND, X11::Xrender 58 X11_XRes_INCLUDE_PATH, X11_XRes_LIB, X11_XRes_FOUND, X11::XRes 59 X11_Xss_INCLUDE_PATH, X11_Xss_LIB, X11_Xss_FOUND, X11::Xss 60 X11_Xt_INCLUDE_PATH, X11_Xt_LIB, X11_Xt_FOUND, X11::Xt 61 X11_Xutil_INCLUDE_PATH, X11_Xutil_FOUND, X11::Xutil 62 X11_Xv_INCLUDE_PATH, X11_Xv_LIB, X11_Xv_FOUND, X11::Xv 63 X11_dpms_INCLUDE_PATH, (in X11_Xext_LIB), X11_dpms_FOUND 64 X11_XShm_INCLUDE_PATH, (in X11_Xext_LIB), X11_XShm_FOUND 65 X11_Xshape_INCLUDE_PATH, (in X11_Xext_LIB), X11_Xshape_FOUND 66 X11_XSync_INCLUDE_PATH, (in X11_Xext_LIB), X11_XSync_FOUND 67 X11_Xaw_INCLUDE_PATH, X11_Xaw_LIB X11_Xaw_FOUND X11::Xaw 68 69.. versionadded:: 3.14 70 Renamed ``Xxf86misc``, ``X11_Xxf86misc``, ``X11_Xxf86vm``, ``X11_xkbfile``, 71 ``X11_Xtst``, and ``X11_Xss`` libraries to match their file names. 72 Deprecated the ``X11_Xinput`` library. Old names are still available 73 for compatibility. 74 75.. versionadded:: 3.14 76 Added the ``X11_Xext_INCLUDE_PATH`` variable. 77 78.. versionadded:: 3.18 79 Added the ``xcb``, ``X11-xcb``, ``xcb-icccm``, ``xcb-xkb``, ``xkbcommon``, 80 and ``xkbcommon-X11`` libraries. 81 82.. versionadded:: 3.19 83 Added the ``Xaw``, ``xcb_util``, and ``xcb_xfixes`` libraries. 84 85#]=======================================================================] 86 87if (UNIX) 88 set(X11_FOUND 0) 89 # X11 is never a framework and some header files may be 90 # found in tcl on the mac 91 set(CMAKE_FIND_FRAMEWORK_SAVE ${CMAKE_FIND_FRAMEWORK}) 92 set(CMAKE_FIND_FRAMEWORK NEVER) 93 set(CMAKE_REQUIRED_QUIET_SAVE ${CMAKE_REQUIRED_QUIET}) 94 set(CMAKE_REQUIRED_QUIET ${X11_FIND_QUIETLY}) 95 set(X11_INC_SEARCH_PATH 96 /usr/pkg/xorg/include 97 /usr/X11R6/include 98 /usr/X11R7/include 99 /usr/include/X11 100 /usr/openwin/include 101 /usr/openwin/share/include 102 /opt/graphics/OpenGL/include 103 /opt/X11/include 104 ) 105 106 set(X11_LIB_SEARCH_PATH 107 /usr/pkg/xorg/lib 108 /usr/X11R6/lib 109 /usr/X11R7/lib 110 /usr/openwin/lib 111 /opt/X11/lib 112 ) 113 114 find_path(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) 115 find_path(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) 116 117 # Look for includes; keep the list sorted by name of the cmake *_INCLUDE_PATH 118 # variable (which doesn't need to match the include file name). 119 120 # Solaris lacks XKBrules.h, so we should skip kxkbd there. 121 find_path(X11_ICE_INCLUDE_PATH X11/ICE/ICE.h ${X11_INC_SEARCH_PATH}) 122 find_path(X11_SM_INCLUDE_PATH X11/SM/SM.h ${X11_INC_SEARCH_PATH}) 123 find_path(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) 124 find_path(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) 125 find_path(X11_Xau_INCLUDE_PATH X11/Xauth.h ${X11_INC_SEARCH_PATH}) 126 find_path(X11_Xaw_INCLUDE_PATH X11/Xaw/Intrinsic.h ${X11_INC_SEARCH_PATH}) 127 find_path(X11_xcb_INCLUDE_PATH xcb/xcb.h ${X11_INC_SEARCH_PATH}) 128 find_path(X11_X11_xcb_INCLUDE_PATH X11/Xlib-xcb.h ${X11_INC_SEARCH_PATH}) 129 find_path(X11_xcb_icccm_INCLUDE_PATH xcb/xcb_icccm.h ${X11_INC_SEARCH_PATH}) 130 find_path(X11_xcb_util_INCLUDE_PATH xcb/xcb_aux.h ${X11_INC_SEARCH_PATH}) 131 find_path(X11_xcb_xfixes_INCLUDE_PATH xcb/xfixes.h ${X11_INC_SEARCH_PATH}) 132 find_path(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) 133 find_path(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) 134 find_path(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) 135 find_path(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) 136 find_path(X11_Xext_INCLUDE_PATH X11/extensions/Xext.h ${X11_INC_SEARCH_PATH}) 137 find_path(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) 138 find_path(X11_Xxf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) 139 find_path(X11_Xxf86vm_INCLUDE_PATH X11/extensions/xf86vmode.h ${X11_INC_SEARCH_PATH}) 140 find_path(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) 141 find_path(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) 142 find_path(X11_Xi_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) 143 find_path(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH}) 144 find_path(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) 145 find_path(X11_xkbcommon_INCLUDE_PATH xkbcommon/xkbcommon.h ${X11_INC_SEARCH_PATH}) 146 find_path(X11_xkbcommon_X11_INCLUDE_PATH xkbcommon/xkbcommon-x11.h ${X11_INC_SEARCH_PATH}) 147 find_path(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) 148 find_path(X11_xkbfile_INCLUDE_PATH X11/extensions/XKBfile.h ${X11_INC_SEARCH_PATH}) 149 find_path(X11_Xmu_INCLUDE_PATH X11/Xmu/Xmu.h ${X11_INC_SEARCH_PATH}) 150 find_path(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) 151 find_path(X11_Xtst_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) 152 find_path(X11_XShm_INCLUDE_PATH X11/extensions/XShm.h ${X11_INC_SEARCH_PATH}) 153 find_path(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) 154 find_path(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) 155 find_path(X11_XRes_INCLUDE_PATH X11/extensions/XRes.h ${X11_INC_SEARCH_PATH}) 156 find_path(X11_Xss_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) 157 find_path(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) 158 find_path(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) 159 find_path(X11_Xt_INCLUDE_PATH X11/Intrinsic.h ${X11_INC_SEARCH_PATH}) 160 find_path(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) 161 find_path(X11_XSync_INCLUDE_PATH X11/extensions/sync.h ${X11_INC_SEARCH_PATH}) 162 163 164 165 # Backwards compatibility. 166 set(X11_Xinput_INCLUDE_PATH "${X11_Xi_INCLUDE_PATH}") 167 set(X11_xf86misc_INCLUDE_PATH "${X11_Xxf86misc_INCLUDE_PATH}") 168 set(X11_xf86vmode_INCLUDE_PATH "${X11_Xxf8vm_INCLUDE_PATH}") 169 set(X11_Xkbfile_INCLUDE_PATH "${X11_xkbfile_INCLUDE_PATH}") 170 set(X11_XTest_INCLUDE_PATH "${X11_Xtst_INCLUDE_PATH}") 171 set(X11_Xscreensaver_INCLUDE_PATH "${X11_Xss_INCLUDE_PATH}") 172 173 find_library(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) 174 175 # Find additional X libraries. Keep list sorted by library name. 176 find_library(X11_ICE_LIB ICE ${X11_LIB_SEARCH_PATH}) 177 find_library(X11_SM_LIB SM ${X11_LIB_SEARCH_PATH}) 178 find_library(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) 179 find_library(X11_Xaw_LIB Xaw ${X11_LIB_SEARCH_PATH}) 180 find_library(X11_xcb_LIB xcb ${X11_LIB_SEARCH_PATH}) 181 find_library(X11_X11_xcb_LIB X11-xcb ${X11_LIB_SEARCH_PATH}) 182 find_library(X11_xcb_icccm_LIB xcb-icccm ${X11_LIB_SEARCH_PATH}) 183 find_library(X11_xcb_util_LIB xcb-util ${X11_LIB_SEARCH_PATH}) 184 find_library(X11_xcb_xfixes_LIB xcb-xfixes ${X11_LIB_SEARCH_PATH}) 185 find_library(X11_xcb_xkb_LIB xcb-xkb ${X11_LIB_SEARCH_PATH}) 186 find_library(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) 187 find_library(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH}) 188 find_library(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) 189 find_library(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH}) 190 find_library(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) 191 find_library(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH}) 192 find_library(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH}) 193 find_library(X11_Xi_LIB Xi ${X11_LIB_SEARCH_PATH}) 194 find_library(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) 195 find_library(X11_xkbcommon_LIB xkbcommon ${X11_LIB_SEARCH_PATH}) 196 find_library(X11_xkbcommon_X11_LIB xkbcommon-x11 ${X11_LIB_SEARCH_PATH}) 197 find_library(X11_xkbfile_LIB xkbfile ${X11_LIB_SEARCH_PATH}) 198 find_library(X11_Xmu_LIB Xmu ${X11_LIB_SEARCH_PATH}) 199 find_library(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH}) 200 find_library(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) 201 find_library(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH}) 202 find_library(X11_XRes_LIB XRes ${X11_LIB_SEARCH_PATH}) 203 find_library(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH}) 204 find_library(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH}) 205 find_library(X11_Xtst_LIB Xtst ${X11_LIB_SEARCH_PATH}) 206 find_library(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH}) 207 find_library(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH}) 208 find_library(X11_Xxf86vm_LIB Xxf86vm ${X11_LIB_SEARCH_PATH}) 209 210 # Backwards compatibility. 211 set(X11_Xinput_LIB "${X11_Xi_LIB}") 212 set(X11_Xkbfile_LIB "${X11_xkbfile_LIB}") 213 set(X11_XTest_LIB "${X11_Xtst_LIB}") 214 set(X11_Xscreensaver_LIB "${X11_Xss_LIB}") 215 216 set(X11_LIBRARY_DIR "") 217 if(X11_X11_LIB) 218 get_filename_component(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) 219 endif() 220 221 set(X11_INCLUDE_DIR) # start with empty list 222 if(X11_X11_INCLUDE_PATH) 223 list(APPEND X11_INCLUDE_DIR ${X11_X11_INCLUDE_PATH}) 224 endif() 225 226 if(X11_Xlib_INCLUDE_PATH) 227 list(APPEND X11_INCLUDE_DIR ${X11_Xlib_INCLUDE_PATH}) 228 endif() 229 230 if(X11_Xutil_INCLUDE_PATH) 231 set(X11_Xutil_FOUND TRUE) 232 list(APPEND X11_INCLUDE_DIR ${X11_Xutil_INCLUDE_PATH}) 233 endif() 234 235 if(X11_Xshape_INCLUDE_PATH) 236 set(X11_Xshape_FOUND TRUE) 237 list(APPEND X11_INCLUDE_DIR ${X11_Xshape_INCLUDE_PATH}) 238 endif() 239 240 set(X11_LIBRARIES) # start with empty list 241 if(X11_X11_LIB) 242 list(APPEND X11_LIBRARIES ${X11_X11_LIB}) 243 endif() 244 245 if(X11_Xext_LIB) 246 set(X11_Xext_FOUND TRUE) 247 list(APPEND X11_LIBRARIES ${X11_Xext_LIB}) 248 endif() 249 250 if(X11_Xt_LIB AND X11_Xt_INCLUDE_PATH) 251 set(X11_Xt_FOUND TRUE) 252 endif() 253 254 if(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) 255 find_package(Freetype QUIET) 256 find_package(Fontconfig QUIET) 257 if (FREETYPE_FOUND AND Fontconfig_FOUND) 258 set(X11_Xft_FOUND TRUE) 259 endif () 260 list(APPEND X11_INCLUDE_DIR ${X11_Xft_INCLUDE_PATH}) 261 endif() 262 263 if(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) 264 set(X11_Xv_FOUND TRUE) 265 list(APPEND X11_INCLUDE_DIR ${X11_Xv_INCLUDE_PATH}) 266 endif() 267 268 if (X11_Xau_LIB AND X11_Xau_INCLUDE_PATH) 269 set(X11_Xau_FOUND TRUE) 270 endif () 271 272 if (X11_xcb_LIB AND X11_xcb_INCLUDE_PATH) 273 set(X11_xcb_FOUND TRUE) 274 endif () 275 276 if (X11_X11_xcb_LIB AND X11_X11_xcb_INCLUDE_PATH) 277 set(X11_X11_xcb_FOUND TRUE) 278 endif () 279 280 if (X11_xcb_icccm_LIB AND X11_xcb_icccm_INCLUDE_PATH) 281 set(X11_xcb_icccm_FOUND TRUE) 282 endif () 283 284 if (X11_xcb_util_LIB AND X11_xcb_util_INCLUDE_PATH) 285 set(X11_xcb_util_FOUND TRUE) 286 endif () 287 288 if (X11_xcb_xfixes_LIB) 289 set(X11_xcb_xfixes_FOUND TRUE) 290 endif () 291 292 if (X11_xcb_xkb_LIB) 293 set(X11_xcb_xkb_FOUND TRUE) 294 endif () 295 296 if (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) 297 set(X11_Xdmcp_FOUND TRUE) 298 list(APPEND X11_INCLUDE_DIR ${X11_Xdmcp_INCLUDE_PATH}) 299 endif () 300 301 if (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) 302 set(X11_Xaccess_FOUND TRUE) 303 set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) 304 list(APPEND X11_INCLUDE_DIR ${X11_Xaccess_INCLUDE_PATH}) 305 endif () 306 307 if (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) 308 set(X11_Xpm_FOUND TRUE) 309 list(APPEND X11_INCLUDE_DIR ${X11_Xpm_INCLUDE_PATH}) 310 endif () 311 312 if (X11_Xcomposite_INCLUDE_PATH AND X11_Xcomposite_LIB) 313 set(X11_Xcomposite_FOUND TRUE) 314 list(APPEND X11_INCLUDE_DIR ${X11_Xcomposite_INCLUDE_PATH}) 315 endif () 316 317 if (X11_Xdamage_INCLUDE_PATH AND X11_Xdamage_LIB) 318 set(X11_Xdamage_FOUND TRUE) 319 list(APPEND X11_INCLUDE_DIR ${X11_Xdamage_INCLUDE_PATH}) 320 endif () 321 322 if (X11_XShm_INCLUDE_PATH) 323 set(X11_XShm_FOUND TRUE) 324 list(APPEND X11_INCLUDE_DIR ${X11_XShm_INCLUDE_PATH}) 325 endif () 326 327 if (X11_Xtst_INCLUDE_PATH AND X11_Xtst_LIB) 328 set(X11_Xtst_FOUND TRUE) 329 # Backwards compatibility. 330 set(X11_XTest_FOUND TRUE) 331 list(APPEND X11_INCLUDE_DIR ${X11_Xtst_INCLUDE_PATH}) 332 endif () 333 334 if (X11_Xi_INCLUDE_PATH AND X11_Xi_LIB) 335 set(X11_Xi_FOUND TRUE) 336 # Backwards compatibility. 337 set(X11_Xinput_FOUND TRUE) 338 list(APPEND X11_INCLUDE_DIR ${X11_Xi_INCLUDE_PATH}) 339 endif () 340 341 if (X11_Xinerama_INCLUDE_PATH AND X11_Xinerama_LIB) 342 set(X11_Xinerama_FOUND TRUE) 343 list(APPEND X11_INCLUDE_DIR ${X11_Xinerama_INCLUDE_PATH}) 344 endif () 345 346 if (X11_Xfixes_INCLUDE_PATH AND X11_Xfixes_LIB) 347 set(X11_Xfixes_FOUND TRUE) 348 list(APPEND X11_INCLUDE_DIR ${X11_Xfixes_INCLUDE_PATH}) 349 endif () 350 351 if (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) 352 set(X11_Xrender_FOUND TRUE) 353 list(APPEND X11_INCLUDE_DIR ${X11_Xrender_INCLUDE_PATH}) 354 endif () 355 356 if (X11_XRes_INCLUDE_PATH AND X11_XRes_LIB) 357 set(X11_XRes_FOUND TRUE) 358 list(APPEND X11_INCLUDE_DIR ${X11_XRes_INCLUDE_PATH}) 359 endif () 360 361 if (X11_Xrandr_INCLUDE_PATH AND X11_Xrandr_LIB) 362 set(X11_Xrandr_FOUND TRUE) 363 list(APPEND X11_INCLUDE_DIR ${X11_Xrandr_INCLUDE_PATH}) 364 endif () 365 366 if (X11_Xxf86misc_INCLUDE_PATH AND X11_Xxf86misc_LIB) 367 set(X11_Xxf86misc_FOUND TRUE) 368 # Backwards compatibility. 369 set(X11_xf86misc_FOUND TRUE) 370 list(APPEND X11_INCLUDE_DIR ${X11_Xxf86misc_INCLUDE_PATH}) 371 endif () 372 373 if (X11_Xxf86vm_INCLUDE_PATH AND X11_Xxf86vm_LIB) 374 set(X11_Xxf86vm_FOUND TRUE) 375 # Backwards compatibility. 376 set(X11_xf86vmode_FOUND TRUE) 377 list(APPEND X11_INCLUDE_DIR ${X11_Xxf86vm_INCLUDE_PATH}) 378 endif () 379 380 if (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB) 381 set(X11_Xcursor_FOUND TRUE) 382 list(APPEND X11_INCLUDE_DIR ${X11_Xcursor_INCLUDE_PATH}) 383 endif () 384 385 if (X11_Xss_INCLUDE_PATH AND X11_Xss_LIB) 386 set(X11_Xss_FOUND TRUE) 387 set(X11_Xscreensaver_FOUND TRUE) 388 list(APPEND X11_INCLUDE_DIR ${X11_Xss_INCLUDE_PATH}) 389 endif () 390 391 if (X11_dpms_INCLUDE_PATH) 392 set(X11_dpms_FOUND TRUE) 393 list(APPEND X11_INCLUDE_DIR ${X11_dpms_INCLUDE_PATH}) 394 endif () 395 396 if (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) 397 set(X11_Xkb_FOUND TRUE) 398 list(APPEND X11_INCLUDE_DIR ${X11_Xkb_INCLUDE_PATH} ) 399 endif () 400 401 if (X11_xkbcommon_INCLUDE_PATH AND X11_xkbcommon_LIB) 402 set(X11_xkbcommon_FOUND TRUE) 403 endif () 404 405 if (X11_xkbcommon_X11_INCLUDE_PATH AND X11_xkbcommon_X11_LIB) 406 set(X11_xkbcommon_X11_FOUND TRUE) 407 endif () 408 409 if (X11_xkbfile_INCLUDE_PATH AND X11_xkbfile_LIB AND X11_Xlib_INCLUDE_PATH) 410 set(X11_xkbfile_FOUND TRUE) 411 # Backwards compatibility. 412 set(X11_Xkbfile_FOUND TRUE) 413 list(APPEND X11_INCLUDE_DIR ${X11_xkbfile_INCLUDE_PATH} ) 414 endif () 415 416 if (X11_Xmu_INCLUDE_PATH AND X11_Xmu_LIB) 417 set(X11_Xmu_FOUND TRUE) 418 list(APPEND X11_INCLUDE_DIR ${X11_Xmu_INCLUDE_PATH}) 419 endif () 420 421 if (X11_XSync_INCLUDE_PATH) 422 set(X11_XSync_FOUND TRUE) 423 list(APPEND X11_INCLUDE_DIR ${X11_XSync_INCLUDE_PATH}) 424 endif () 425 426 if(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) 427 set(X11_ICE_FOUND TRUE) 428 endif() 429 430 if(X11_SM_LIB AND X11_SM_INCLUDE_PATH) 431 set(X11_SM_FOUND TRUE) 432 endif() 433 434 if(X11_Xaw_LIB AND X11_Xaw_INCLUDE_PATH) 435 set(X11_Xaw_FOUND TRUE) 436 endif() 437 438 # Most of the X11 headers will be in the same directories, avoid 439 # creating a huge list of duplicates. 440 if (X11_INCLUDE_DIR) 441 list(REMOVE_DUPLICATES X11_INCLUDE_DIR) 442 endif () 443 444 # Deprecated variable for backwards compatibility with CMake 1.4 445 if (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) 446 set(X11_FOUND 1) 447 endif () 448 449 include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) 450 if (CMAKE_FIND_PACKAGE_NAME STREQUAL "FLTK") 451 # FindFLTK include()'s this module. It's an old pattern, but rather than 452 # trying to suppress this from outside the module (which is then sensitive 453 # to the contents, detect the case in this module and suppress it 454 # explicitly. 455 set(FPHSA_NAME_MISMATCHED 1) 456 endif () 457 find_package_handle_standard_args(X11 458 REQUIRED_VARS X11_X11_INCLUDE_PATH X11_X11_LIB 459 HANDLE_COMPONENTS) 460 unset(FPHSA_NAME_MISMATCHED) 461 462 if(X11_FOUND) 463 include(${CMAKE_CURRENT_LIST_DIR}/CheckFunctionExists.cmake) 464 include(${CMAKE_CURRENT_LIST_DIR}/CheckLibraryExists.cmake) 465 466 # Translated from an autoconf-generated configure script. 467 # See libs.m4 in autoconf's m4 directory. 468 if($ENV{ISC} MATCHES "^yes$") 469 set(X11_X_EXTRA_LIBS -lnsl_s -linet) 470 else() 471 set(X11_X_EXTRA_LIBS "") 472 473 # See if XOpenDisplay in X11 works by itself. 474 check_library_exists("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) 475 if(NOT X11_LIB_X11_SOLO) 476 # Find library needed for dnet_ntoa. 477 check_library_exists("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) 478 if (X11_LIB_DNET_HAS_DNET_NTOA) 479 list(APPEND X11_X_EXTRA_LIBS -ldnet) 480 else () 481 check_library_exists("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) 482 if (X11_LIB_DNET_STUB_HAS_DNET_NTOA) 483 list(APPEND X11_X_EXTRA_LIBS -ldnet_stub) 484 endif () 485 endif () 486 endif() 487 488 # Find library needed for gethostbyname. 489 check_function_exists("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) 490 if(NOT CMAKE_HAVE_GETHOSTBYNAME) 491 check_library_exists("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) 492 if (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) 493 list(APPEND X11_X_EXTRA_LIBS -lnsl) 494 else () 495 check_library_exists("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) 496 if (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) 497 list(APPEND X11_X_EXTRA_LIBS -lbsd) 498 endif () 499 endif () 500 endif() 501 502 # Find library needed for connect. 503 check_function_exists("connect" CMAKE_HAVE_CONNECT) 504 if(NOT CMAKE_HAVE_CONNECT) 505 check_library_exists("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) 506 if (CMAKE_LIB_SOCKET_HAS_CONNECT) 507 list(INSERT X11_X_EXTRA_LIBS 0 -lsocket) 508 endif () 509 endif() 510 511 # Find library needed for remove. 512 check_function_exists("remove" CMAKE_HAVE_REMOVE) 513 if(NOT CMAKE_HAVE_REMOVE) 514 check_library_exists("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) 515 if (CMAKE_LIB_POSIX_HAS_REMOVE) 516 list(APPEND X11_X_EXTRA_LIBS -lposix) 517 endif () 518 endif() 519 520 # Find library needed for shmat. 521 check_function_exists("shmat" CMAKE_HAVE_SHMAT) 522 if(NOT CMAKE_HAVE_SHMAT) 523 check_library_exists("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) 524 if (CMAKE_LIB_IPS_HAS_SHMAT) 525 list(APPEND X11_X_EXTRA_LIBS -lipc) 526 endif () 527 endif() 528 endif() 529 530 if (X11_ICE_FOUND) 531 check_library_exists("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" 532 CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) 533 if(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) 534 set (X11_X_PRE_LIBS ${X11_ICE_LIB}) 535 if(X11_SM_LIB) 536 list(INSERT X11_X_PRE_LIBS 0 ${X11_SM_LIB}) 537 endif() 538 endif() 539 endif () 540 541 # Build the final list of libraries. 542 set(X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) 543 544 if (NOT TARGET X11::X11) 545 add_library(X11::X11 UNKNOWN IMPORTED) 546 set_target_properties(X11::X11 PROPERTIES 547 IMPORTED_LOCATION "${X11_X11_LIB}" 548 INTERFACE_INCLUDE_DIRECTORIES "${X11_X11_INCLUDE_PATH}") 549 endif () 550 endif () 551 552 if (X11_ICE_FOUND AND NOT TARGET X11::ICE) 553 add_library(X11::ICE UNKNOWN IMPORTED) 554 set_target_properties(X11::ICE PROPERTIES 555 IMPORTED_LOCATION "${X11_ICE_LIB}" 556 INTERFACE_INCLUDE_DIRECTORIES "${X11_ICE_INCLUDE_PATH}") 557 endif () 558 559 if (X11_SM_FOUND AND NOT TARGET X11::SM) 560 add_library(X11::SM UNKNOWN IMPORTED) 561 set_target_properties(X11::SM PROPERTIES 562 IMPORTED_LOCATION "${X11_SM_LIB}" 563 INTERFACE_INCLUDE_DIRECTORIES "${X11_SM_INCLUDE_PATH}") 564 endif () 565 566 if (X11_Xau_FOUND AND NOT TARGET X11::Xau) 567 add_library(X11::Xau UNKNOWN IMPORTED) 568 set_target_properties(X11::Xau PROPERTIES 569 IMPORTED_LOCATION "${X11_Xau_LIB}" 570 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xau_INCLUDE_PATH}") 571 endif () 572 573 if (X11_Xaw_FOUND AND NOT TARGET X11::Xaw) 574 add_library(X11::Xaw UNKNOWN IMPORTED) 575 set_target_properties(X11::Xaw PROPERTIES 576 IMPORTED_LOCATION "${X11_Xaw_LIB}" 577 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xaw_INCLUDE_PATH}" 578 INTERFACE_LINK_LIBRARIES "X11::Xext;X11::Xmu;X11::Xt;X11::Xpm;X11::X11") 579 endif () 580 581 if (X11_xcb_FOUND AND NOT TARGET X11::xcb) 582 add_library(X11::xcb UNKNOWN IMPORTED) 583 set_target_properties(X11::xcb PROPERTIES 584 IMPORTED_LOCATION "${X11_xcb_LIB}" 585 INTERFACE_INCLUDE_DIRECTORIES "${X11_xcb_INCLUDE_PATH}") 586 endif () 587 588 if (X11_X11_xcb_FOUND AND NOT TARGET X11::X11_xcb) 589 add_library(X11::X11_xcb UNKNOWN IMPORTED) 590 set_target_properties(X11::X11_xcb PROPERTIES 591 IMPORTED_LOCATION "${X11_X11_xcb_LIB}" 592 INTERFACE_INCLUDE_DIRECTORIES "${X11_X11_xcb_INCLUDE_PATH}" 593 INTERFACE_LINK_LIBRARIES "X11::xcb;X11::X11") 594 endif () 595 596 if (X11_xcb_icccm_FOUND AND NOT TARGET X11::xcb_icccm) 597 add_library(X11::xcb_icccm UNKNOWN IMPORTED) 598 set_target_properties(X11::xcb_icccm PROPERTIES 599 IMPORTED_LOCATION "${X11_xcb_icccm_LIB}" 600 INTERFACE_LINK_LIBRARIES "X11::xcb") 601 endif () 602 603 if (X11_xcb_util_FOUND AND NOT TARGET X11::xcb_util) 604 add_library(X11::xcb_util UNKNOWN IMPORTED) 605 set_target_properties(X11::xcb_util PROPERTIES 606 IMPORTED_LOCATION "${X11_xcb_util_LIB}" 607 INTERFACE_LINK_LIBRARIES "X11::xcb") 608 endif () 609 610 if (X11_xcb_xfixes_FOUND AND NOT TARGET X11::xcb_xfixes) 611 add_library(X11::xcb_xfixes UNKNOWN IMPORTED) 612 set_target_properties(X11::xcb_xfixes PROPERTIES 613 IMPORTED_LOCATION "${X11_xcb_xfixes_LIB}" 614 INTERFACE_LINK_LIBRARIES "X11::xcb") 615 endif () 616 617 if (X11_xcb_xkb_FOUND AND NOT TARGET X11::xcb_xkb) 618 add_library(X11::xcb_xkb UNKNOWN IMPORTED) 619 set_target_properties(X11::xcb_xkb PROPERTIES 620 IMPORTED_LOCATION "${X11_xcb_xkb_LIB}" 621 INTERFACE_LINK_LIBRARIES "X11::xcb") 622 endif () 623 624 if (X11_Xcomposite_FOUND AND NOT TARGET X11::Xcomposite) 625 add_library(X11::Xcomposite UNKNOWN IMPORTED) 626 set_target_properties(X11::Xcomposite PROPERTIES 627 IMPORTED_LOCATION "${X11_Xcomposite_LIB}" 628 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xcomposite_INCLUDE_PATH}" 629 INTERFACE_LINK_LIBRARIES "X11::X11") 630 endif () 631 632 if (X11_Xcursor_FOUND AND NOT TARGET X11::Xcursor) 633 add_library(X11::Xcursor UNKNOWN IMPORTED) 634 set_target_properties(X11::Xcursor PROPERTIES 635 IMPORTED_LOCATION "${X11_Xcursor_LIB}" 636 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xcursor_INCLUDE_PATH}" 637 INTERFACE_LINK_LIBRARIES "X11::Xrender;X11::Xfixes;X11::X11") 638 endif () 639 640 if (X11_Xdamage_FOUND AND NOT TARGET X11::Xdamage) 641 add_library(X11::Xdamage UNKNOWN IMPORTED) 642 set_target_properties(X11::Xdamage PROPERTIES 643 IMPORTED_LOCATION "${X11_Xdamage_LIB}" 644 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xdamage_INCLUDE_PATH}" 645 INTERFACE_LINK_LIBRARIES "X11::Xfixes;X11::X11") 646 endif () 647 648 if (X11_Xdmcp_FOUND AND NOT TARGET X11::Xdmcp) 649 add_library(X11::Xdmcp UNKNOWN IMPORTED) 650 set_target_properties(X11::Xdmcp PROPERTIES 651 IMPORTED_LOCATION "${X11_Xdmcp_LIB}" 652 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xdmcp_INCLUDE_PATH}") 653 endif () 654 655 if (X11_Xext_FOUND AND NOT TARGET X11::Xext) 656 add_library(X11::Xext UNKNOWN IMPORTED) 657 set_target_properties(X11::Xext PROPERTIES 658 IMPORTED_LOCATION "${X11_Xext_LIB}" 659 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xext_INCLUDE_PATH}" 660 INTERFACE_LINK_LIBRARIES "X11::X11") 661 endif () 662 663 if (X11_Xxf86misc_FOUND AND NOT TARGET X11::Xxf86misc) 664 add_library(X11::Xxf86misc UNKNOWN IMPORTED) 665 set_target_properties(X11::Xxf86misc PROPERTIES 666 IMPORTED_LOCATION "${X11_Xxf86misc_LIB}" 667 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xxf86misc_INCLUDE_PATH}" 668 INTERFACE_LINK_LIBRARIES "X11::X11;X11::Xext") 669 endif () 670 671 if (X11_Xxf86vm_FOUND AND NOT TARGET X11::Xxf86vm) 672 add_library(X11::Xxf86vm UNKNOWN IMPORTED) 673 set_target_properties(X11::Xxf86vm PROPERTIES 674 IMPORTED_LOCATION "${X11_Xxf86vm_LIB}" 675 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xxf86vm_INCLUDE_PATH}" 676 INTERFACE_LINK_LIBRARIES "X11::X11;X11::Xext") 677 endif () 678 679 if (X11_Xfixes_FOUND AND NOT TARGET X11::Xfixes) 680 add_library(X11::Xfixes UNKNOWN IMPORTED) 681 set_target_properties(X11::Xfixes PROPERTIES 682 IMPORTED_LOCATION "${X11_Xfixes_LIB}" 683 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xfixes_INCLUDE_PATH}" 684 INTERFACE_LINK_LIBRARIES "X11::X11") 685 endif () 686 687 if (X11_Xft_FOUND AND NOT TARGET X11::Xft) 688 add_library(X11::Xft UNKNOWN IMPORTED) 689 set_target_properties(X11::Xft PROPERTIES 690 IMPORTED_LOCATION "${X11_Xft_LIB}" 691 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xft_INCLUDE_PATH}" 692 INTERFACE_LINK_LIBRARIES "X11::Xrender;X11::X11;Fontconfig::Fontconfig;Freetype::Freetype") 693 endif () 694 695 if (X11_Xi_FOUND AND NOT TARGET X11::Xi) 696 add_library(X11::Xi UNKNOWN IMPORTED) 697 set_target_properties(X11::Xi PROPERTIES 698 IMPORTED_LOCATION "${X11_Xi_LIB}" 699 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xi_INCLUDE_PATH}" 700 INTERFACE_LINK_LIBRARIES "X11::Xext;X11::X11") 701 endif () 702 703 if (X11_Xinerama_FOUND AND NOT TARGET X11::Xinerama) 704 add_library(X11::Xinerama UNKNOWN IMPORTED) 705 set_target_properties(X11::Xinerama PROPERTIES 706 IMPORTED_LOCATION "${X11_Xinerama_LIB}" 707 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xinerama_INCLUDE_PATH}" 708 INTERFACE_LINK_LIBRARIES "X11::Xext;X11::X11") 709 endif () 710 711 if (X11_Xkb_FOUND AND NOT TARGET X11::Xkb) 712 add_library(X11::Xkb INTERFACE IMPORTED) 713 set_target_properties(X11::Xkb PROPERTIES 714 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xkb_INCLUDE_PATH}" 715 INTERFACE_LINK_LIBRARIES "X11::X11") 716 endif () 717 718 if (X11_xkbcommon_FOUND AND NOT TARGET X11::xkbcommon) 719 add_library(X11::xkbcommon UNKNOWN IMPORTED) 720 set_target_properties(X11::xkbcommon PROPERTIES 721 IMPORTED_LOCATION "${X11_xkbcommon_LIB}" 722 INTERFACE_INCLUDE_DIRECTORIES "${X11_xkbcommon_INCLUDE_PATH}") 723 endif () 724 725 if (X11_xkbcommon_X11_FOUND AND NOT TARGET X11::xkbcommon_X11) 726 add_library(X11::xkbcommon_X11 UNKNOWN IMPORTED) 727 set_target_properties(X11::xkbcommon_X11 PROPERTIES 728 IMPORTED_LOCATION "${X11_xkbcommon_X11_LIB}" 729 INTERFACE_INCLUDE_DIRECTORIES "${X11_xkbcommon_X11_INCLUDE_PATH}" 730 INTERFACE_LINK_LIBRARIES "X11::X11;X11::xkbcommon") 731 endif () 732 733 if (X11_xkbfile_FOUND AND NOT TARGET X11::xkbfile) 734 add_library(X11::xkbfile UNKNOWN IMPORTED) 735 set_target_properties(X11::xkbfile PROPERTIES 736 IMPORTED_LOCATION "${X11_xkbfile_LIB}" 737 INTERFACE_INCLUDE_DIRECTORIES "${X11_xkbfile_INCLUDE_PATH}" 738 INTERFACE_LINK_LIBRARIES "X11::X11") 739 endif () 740 741 if (X11_Xmu_FOUND AND NOT TARGET X11::Xmu) 742 add_library(X11::Xmu UNKNOWN IMPORTED) 743 set_target_properties(X11::Xmu PROPERTIES 744 IMPORTED_LOCATION "${X11_Xmu_LIB}" 745 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xmu_INCLUDE_PATH}" 746 INTERFACE_LINK_LIBRARIES "X11::Xt;X11::Xext;X11::X11") 747 endif () 748 749 if (X11_Xpm_FOUND AND NOT TARGET X11::Xpm) 750 add_library(X11::Xpm UNKNOWN IMPORTED) 751 set_target_properties(X11::Xpm PROPERTIES 752 IMPORTED_LOCATION "${X11_Xpm_LIB}" 753 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xpm_INCLUDE_PATH}" 754 INTERFACE_LINK_LIBRARIES "X11::X11") 755 endif () 756 757 if (X11_Xtst_FOUND AND NOT TARGET X11::Xtst) 758 add_library(X11::Xtst UNKNOWN IMPORTED) 759 set_target_properties(X11::Xtst PROPERTIES 760 IMPORTED_LOCATION "${X11_Xtst_LIB}" 761 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xtst_INCLUDE_PATH}" 762 INTERFACE_LINK_LIBRARIES "X11::Xi;X11::Xext;X11::X11") 763 endif () 764 765 if (X11_Xrandr_FOUND AND NOT TARGET X11::Xrandr) 766 add_library(X11::Xrandr UNKNOWN IMPORTED) 767 set_target_properties(X11::Xrandr PROPERTIES 768 IMPORTED_LOCATION "${X11_Xrandr_LIB}" 769 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xrandr_INCLUDE_PATH}" 770 INTERFACE_LINK_LIBRARIES "X11::Xrender;X11::Xext;X11::X11") 771 endif () 772 773 if (X11_Xrender_FOUND AND NOT TARGET X11::Xrender) 774 add_library(X11::Xrender UNKNOWN IMPORTED) 775 set_target_properties(X11::Xrender PROPERTIES 776 IMPORTED_LOCATION "${X11_Xrender_LIB}" 777 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xrender_INCLUDE_PATH}" 778 INTERFACE_LINK_LIBRARIES "X11::X11") 779 endif () 780 781 if (X11_XRes_FOUND AND NOT TARGET X11::XRes) 782 add_library(X11::XRes UNKNOWN IMPORTED) 783 set_target_properties(X11::XRes PROPERTIES 784 IMPORTED_LOCATION "${X11_XRes_LIB}" 785 INTERFACE_INCLUDE_DIRECTORIES "${X11_XRes_INCLUDE_PATH}" 786 INTERFACE_LINK_LIBRARIES "X11::Xext;X11::X11") 787 endif () 788 789 if (X11_Xss_FOUND AND NOT TARGET X11::Xss) 790 add_library(X11::Xss UNKNOWN IMPORTED) 791 set_target_properties(X11::Xss PROPERTIES 792 IMPORTED_LOCATION "${X11_Xss_LIB}" 793 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xss_INCLUDE_PATH}" 794 INTERFACE_LINK_LIBRARIES "X11::Xext;X11::X11") 795 endif () 796 797 if (X11_Xt_FOUND AND NOT TARGET X11::Xt) 798 add_library(X11::Xt UNKNOWN IMPORTED) 799 set_target_properties(X11::Xt PROPERTIES 800 IMPORTED_LOCATION "${X11_Xt_LIB}" 801 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xt_INCLUDE_PATH}" 802 INTERFACE_LINK_LIBRARIES "X11::ICE;X11::SM;X11::X11") 803 endif () 804 805 if (X11_Xutil_FOUND AND NOT TARGET X11::Xutil) 806 add_library(X11::Xutil INTERFACE IMPORTED) 807 set_target_properties(X11::Xutil PROPERTIES 808 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xutil_INCLUDE_PATH}" 809 # libX11 contains the implementations for functions in the Xutil.h 810 # header. 811 INTERFACE_LINK_LIBRARIES "X11::X11") 812 endif () 813 814 if (X11_Xv_FOUND AND NOT TARGET X11::Xv) 815 add_library(X11::Xv UNKNOWN IMPORTED) 816 set_target_properties(X11::Xv PROPERTIES 817 IMPORTED_LOCATION "${X11_Xv_LIB}" 818 INTERFACE_INCLUDE_DIRECTORIES "${X11_Xv_INCLUDE_PATH}" 819 INTERFACE_LINK_LIBRARIES "X11::Xext;X11::X11") 820 endif () 821 822 mark_as_advanced( 823 X11_X11_INCLUDE_PATH 824 X11_X11_LIB 825 X11_Xext_INCLUDE_PATH 826 X11_Xext_LIB 827 X11_Xau_LIB 828 X11_Xau_INCLUDE_PATH 829 X11_xcb_LIB 830 X11_xcb_INCLUDE_PATH 831 X11_xcb_icccm_LIB 832 X11_xcb_icccm_INCLUDE_PATH 833 X11_xcb_util_LIB 834 X11_xcb_util_INCLUDE_PATH 835 X11_xcb_xfixes_LIB 836 X11_xcb_xfixes_INCLUDE_PATH 837 X11_xcb_xkb_LIB 838 X11_X11_xcb_LIB 839 X11_X11_xcb_INCLUDE_PATH 840 X11_Xlib_INCLUDE_PATH 841 X11_Xutil_INCLUDE_PATH 842 X11_Xcomposite_INCLUDE_PATH 843 X11_Xcomposite_LIB 844 X11_Xfixes_LIB 845 X11_Xfixes_INCLUDE_PATH 846 X11_Xrandr_LIB 847 X11_Xrandr_INCLUDE_PATH 848 X11_Xdamage_LIB 849 X11_Xdamage_INCLUDE_PATH 850 X11_Xrender_LIB 851 X11_Xrender_INCLUDE_PATH 852 X11_XRes_LIB 853 X11_XRes_INCLUDE_PATH 854 X11_Xxf86misc_LIB 855 X11_Xxf86misc_INCLUDE_PATH 856 X11_Xxf86vm_LIB 857 X11_Xxf86vm_INCLUDE_PATH 858 X11_Xi_LIB 859 X11_Xi_INCLUDE_PATH 860 X11_Xinerama_LIB 861 X11_Xinerama_INCLUDE_PATH 862 X11_Xtst_LIB 863 X11_Xtst_INCLUDE_PATH 864 X11_Xcursor_LIB 865 X11_Xcursor_INCLUDE_PATH 866 X11_dpms_INCLUDE_PATH 867 X11_Xt_LIB 868 X11_Xt_INCLUDE_PATH 869 X11_Xdmcp_LIB 870 X11_LIBRARIES 871 X11_Xaccessrules_INCLUDE_PATH 872 X11_Xaccessstr_INCLUDE_PATH 873 X11_Xdmcp_INCLUDE_PATH 874 X11_Xkb_INCLUDE_PATH 875 X11_Xkblib_INCLUDE_PATH 876 X11_xkbcommon_INCLUDE_PATH 877 X11_xkbcommon_LIB 878 X11_xkbcommon_X11_INCLUDE_PATH 879 X11_xkbcommon_X11_LIB 880 X11_xkbfile_INCLUDE_PATH 881 X11_xkbfile_LIB 882 X11_Xmu_INCLUDE_PATH 883 X11_Xmu_LIB 884 X11_Xss_INCLUDE_PATH 885 X11_Xss_LIB 886 X11_Xpm_INCLUDE_PATH 887 X11_Xpm_LIB 888 X11_Xft_LIB 889 X11_Xft_INCLUDE_PATH 890 X11_Xshape_INCLUDE_PATH 891 X11_Xv_LIB 892 X11_Xv_INCLUDE_PATH 893 X11_XShm_INCLUDE_PATH 894 X11_ICE_LIB 895 X11_ICE_INCLUDE_PATH 896 X11_SM_LIB 897 X11_SM_INCLUDE_PATH 898 X11_XSync_INCLUDE_PATH 899 X11_Xaw_LIB 900 X11_Xaw_INCLUDE_PATH 901 ) 902 set(CMAKE_FIND_FRAMEWORK ${CMAKE_FIND_FRAMEWORK_SAVE}) 903 set(CMAKE_REQUIRED_QUIET ${CMAKE_REQUIRED_QUIET_SAVE}) 904endif () 905