diff options
-rw-r--r-- | modules/FindQt4.cmake | 5 | ||||
-rw-r--r-- | modules/FindX11.cmake | 196 |
2 files changed, 115 insertions, 86 deletions
diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index f4ed6e61..b008c365 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1066,7 +1066,10 @@ IF (QT4_QMAKE_FOUND) IF(UNIX) # on OS X X11 may not be required IF (Q_WS_X11) - FIND_PACKAGE(X11) + FIND_PACKAGE(X11 REQUIRED) + IF(NOT X11_ICE_FOUND) + MESSAGE(FATAL_ERROR "X11 ICE library not found") + ENDIF(NOT X11_ICE_FOUND) ENDIF (Q_WS_X11) FIND_PACKAGE(Threads) SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index f171b1b0..4216031c 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -3,6 +3,19 @@ # X11_FOUND - True if X11 is available # X11_INCLUDE_DIR - include directories to use X11 # X11_LIBRARIES - link against these to use X11 +# +# and also the following more fine grained variables: +# Include paths: X11_ICE_INCLUDE_PATH X11_Xaccessrules_INCLUDE_PATH, X11_Xaccessstr_INCLUDE_PATH, +# X11_Xcomposite_INCLUDE_PATH, X11_Xcursor_INCLUDE_PATH, X11_Xdamage_INCLUDE_PATH, +# X11_Xdmcp_INCLUDE_PATH, X11_dpms_INCLUDE_PATH, X11_Xf86misc_INCLUDE_PATH, X11_xf86vmode_INCLUDE_PATH, +# X11_Xfixes_INCLUDE_PATH, X11_Xft_INCLUDE_PATH, X11_Xinerama_INCLUDE_PATH, X11_Xinput_INCLUDE_PATH, +# X11_Xkb_INCLUDE_PATH, X11_Xkblib_INCLUDE_PATH, X11_Xpm_INCLUDE_PATH, X11_XTest_INCLUDE_PATH, +# X11_XShm_INCLUDE_PATH, X11_Xrandr_INCLUDE_PATH, X11_Xrender_INCLUDE_PATH, +# X11_Xscreensaver_INCLUDE_PATH, X11_Xshape_INCLUDE_PATH, X11_Xutil_INCLUDE_PATH, X11_Xv_INCLUDE_PATH +# +# Libraries: X11_ICE_LIB, X11_Xau_LIB, X11_Xcomposite_LIB, X11_Xcursor_LIB, X11_Xdamage_LIB Xdamage, +# X11_Xdmcp_LIB, X11_Xext_LIB, X11_Xfixes_LIB, X11_Xft_LIB, X11_Xinerama_LIB, X11_Xinput_LIB, +# X11_Xpm_LIB, X11_Xrandr_LIB, X11_Xrender_LIB, X11_Xss_LIB, X11_Xt_LIB, X11_XTest_LIB, X11_Xv_LIB, X11_Xxf86misc_LIB # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. @@ -12,75 +25,78 @@ if (UNIX) set(X11_INC_SEARCH_PATH /usr/X11R6/include - /usr/local/include /usr/include/X11 /usr/openwin/include /usr/openwin/share/include /opt/graphics/OpenGL/include - /usr/include ) set(X11_LIB_SEARCH_PATH /usr/X11R6/lib - /usr/local/lib /usr/openwin/lib - /usr/lib ) - FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) # Look for includes; keep the list sorted by name of the cmake *_INCLUDE_PATH # variable (which doesn't need to match the include file name). # Solaris lacks XKBrules.h, so we should skip kxkbd there. - FIND_PATH(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_xf86vmode_INCLUDE_PATH X11/extensions/xf86vmode.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_ICE_INCLUDE_PATH X11/ICE/ICE.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_xf86vmode_INCLUDE_PATH X11/extensions/xf86vmode.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_XShm_INCLUDE_PATH X11/extensions/XShm.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_XShm_INCLUDE_PATH X11/extensions/XShm.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) - FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) # Find additional X libraries. Keep list sorted by library name. - FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_ICE_LIB ICE ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + + set(X11_LIBRARY_DIR "") + if (X11_X11_LIB) + get_filename_component(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) + endif (X11_X11_LIB) if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -95,8 +111,8 @@ if (UNIX) endif (X11_Xutil_INCLUDE_PATH) if(X11_Xshape_INCLUDE_PATH) - set(X11_Xshape_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH}) + set(X11_Xshape_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH}) endif(X11_Xshape_INCLUDE_PATH) if (X11_X11_LIB) @@ -108,16 +124,16 @@ if (UNIX) endif (X11_Xext_LIB) if(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) - set(X11_XFT_FOUND TRUE) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) - endif(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) + set(X11_XFT_FOUND TRUE) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) + endif(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) if(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) set(X11_XV_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xv_INCLUDE_PATH}) endif(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) - + if (X11_Xau_LIB) set(X11_Xau_FOUND TRUE) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) @@ -141,7 +157,6 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xpm_INCLUDE_PATH}) endif (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) - if (X11_Xcomposite_INCLUDE_PATH) set(X11_Xcomposite_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcomposite_INCLUDE_PATH}) @@ -217,21 +232,18 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinput_INCLUDE_PATH}) endif (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) - # Deprecated variable for backwards compatibility with CMake 1.4 - if (X11_X11_INCLUDE_PATH) - if (X11_LIBRARIES) - set(X11_FOUND 1) - endif (X11_LIBRARIES) - endif (X11_X11_INCLUDE_PATH) + if(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) + set(X11_ICE_FOUND TRUE) + endif(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) - set(X11_LIBRARY_DIR "") - if (X11_X11_LIB) - GET_FILENAME_COMPONENT(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) - endif (X11_X11_LIB) + # Deprecated variable for backwards compatibility with CMake 1.4 + if (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) + set(X11_FOUND 1) + endif (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) if (X11_FOUND) - INCLUDE(CheckFunctionExists) - INCLUDE(CheckLibraryExists) + include(CheckFunctionExists) + include(CheckLibraryExists) # Translated from an autoconf-generated configure script. # See libs.m4 in autoconf's m4 directory. @@ -241,14 +253,14 @@ if (UNIX) set(X11_X_EXTRA_LIBS "") # See if XOpenDisplay in X11 works by itself. - CHECK_LIBRARY_EXISTS("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) + check_library_exists("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) if (NOT X11_LIB_X11_SOLO) # Find library needed for dnet_ntoa. - CHECK_LIBRARY_EXISTS("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) + check_library_exists("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) if (X11_LIB_DNET_HAS_DNET_NTOA) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet) else (X11_LIB_DNET_HAS_DNET_NTOA) - CHECK_LIBRARY_EXISTS("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) + check_library_exists("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) if (X11_LIB_DNET_STUB_HAS_DNET_NTOA) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) endif (X11_LIB_DNET_STUB_HAS_DNET_NTOA) @@ -256,13 +268,13 @@ if (UNIX) endif (NOT X11_LIB_X11_SOLO) # Find library needed for gethostbyname. - CHECK_FUNCTION_EXISTS("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) + check_function_exists("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) if (NOT CMAKE_HAVE_GETHOSTBYNAME) - CHECK_LIBRARY_EXISTS("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + check_library_exists("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) if (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) else (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - CHECK_LIBRARY_EXISTS("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + check_library_exists("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) if (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) endif (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) @@ -270,43 +282,52 @@ if (UNIX) endif (NOT CMAKE_HAVE_GETHOSTBYNAME) # Find library needed for connect. - CHECK_FUNCTION_EXISTS("connect" CMAKE_HAVE_CONNECT) + check_function_exists("connect" CMAKE_HAVE_CONNECT) if (NOT CMAKE_HAVE_CONNECT) - CHECK_LIBRARY_EXISTS("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) + check_library_exists("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) if (CMAKE_LIB_SOCKET_HAS_CONNECT) set(X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) endif (CMAKE_LIB_SOCKET_HAS_CONNECT) endif (NOT CMAKE_HAVE_CONNECT) # Find library needed for remove. - CHECK_FUNCTION_EXISTS("remove" CMAKE_HAVE_REMOVE) + check_function_exists("remove" CMAKE_HAVE_REMOVE) if (NOT CMAKE_HAVE_REMOVE) - CHECK_LIBRARY_EXISTS("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) + check_library_exists("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) if (CMAKE_LIB_POSIX_HAS_REMOVE) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) endif (CMAKE_LIB_POSIX_HAS_REMOVE) endif (NOT CMAKE_HAVE_REMOVE) # Find library needed for shmat. - CHECK_FUNCTION_EXISTS("shmat" CMAKE_HAVE_SHMAT) + check_function_exists("shmat" CMAKE_HAVE_SHMAT) if (NOT CMAKE_HAVE_SHMAT) - CHECK_LIBRARY_EXISTS("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) + check_library_exists("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) if (CMAKE_LIB_IPS_HAS_SHMAT) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) endif (CMAKE_LIB_IPS_HAS_SHMAT) endif (NOT CMAKE_HAVE_SHMAT) endif ($ENV{ISC} MATCHES "^yes$") - CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" - CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - if (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - set(X11_X_PRE_LIBS -lSM -lICE) - endif (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + if (X11_ICE_FOUND) + check_library_exists("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" + CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + if (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + set(X11_X_PRE_LIBS -lSM ${X11_ICE_LIB}) + endif (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + endif (X11_ICE_FOUND) + # Build the final list of libraries. set(X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) + + message(STATUS "Found X11: ${X11_X11_LIB}") + else (X11_FOUND) + if (X11_FIND_REQUIRED) + message(FATAL_ERROR "Could not find X11") + endif (X11_FIND_REQUIRED) endif (X11_FOUND) - MARK_AS_ADVANCED( + mark_as_advanced( X11_X11_INCLUDE_PATH X11_X11_LIB X11_Xext_LIB @@ -326,6 +347,7 @@ if (UNIX) X11_Xrender_INCLUDE_PATH X11_Xxf86misc_LIB X11_Xxf86misc_INCLUDE_PATH + X11_xf86vmode_INCLUDE_PATH X11_Xinerama_LIB X11_Xinerama_INCLUDE_PATH X11_XTest_LIB @@ -354,6 +376,10 @@ if (UNIX) X11_Xv_LIB X11_Xv_INCLUDE_PATH X11_XShm_INCLUDE_PATH + X11_ICE_LIB + X11_ICE_INCLUDE_PATH ) endif (UNIX) + +# X11_FIND_REQUIRED_<component> could be checked too, but they were introduced in cmake 2.4.4 |