diff options
author | David Faure <faure@kde.org> | 2012-07-24 20:42:42 +0200 |
---|---|---|
committer | David Faure <faure@kde.org> | 2012-10-31 18:24:32 +0100 |
commit | e80c4de28ab31bd90875c792448aec671a288957 (patch) | |
tree | 99c6c8bd1c56e3f2c115a4b5129ff47c8bce1314 /find-modules/FindX11_XCB.cmake | |
parent | c93d3ac8c50ef000f17aabb394ddde2c53785892 (diff) | |
download | extra-cmake-modules-e80c4de28ab31bd90875c792448aec671a288957.tar.gz extra-cmake-modules-e80c4de28ab31bd90875c792448aec671a288957.tar.bz2 |
Add XCB find modules by Fredrik Höglund <fredrik@kde.org>
At least one bug: XCB_INCLUDE_DIR contains NOTFOUND if at least one
module is missing (e.g. UTIL and EWMH, here), which makes XCB_FOUND false.
Please review, and port to FIND_PACKAGE(XCB COMPONENTS ...)
CCMAIL: kde-buildsystem@kde.org
Diffstat (limited to 'find-modules/FindX11_XCB.cmake')
-rw-r--r-- | find-modules/FindX11_XCB.cmake | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/find-modules/FindX11_XCB.cmake b/find-modules/FindX11_XCB.cmake new file mode 100644 index 00000000..e2c18a99 --- /dev/null +++ b/find-modules/FindX11_XCB.cmake @@ -0,0 +1,31 @@ +# - Try to find libX11-xcb +# Once done this will define +# +# X11_XCB_FOUND - system has libX11-xcb +# X11_XCB_LIBRARIES - Link these to use libX11-xcb +# X11_XCB_INCLUDE_DIR - the libX11-xcb include dir +# X11_XCB_DEFINITIONS - compiler switches required for using libX11-xcb + +# Copyright (c) 2011 Fredrik Höglund <fredrik@kde.org> +# Copyright (c) 2008 Helio Chissini de Castro, <helio@kde.org> +# Copyright (c) 2007 Matthias Kretz, <kretz@kde.org> +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + FIND_PACKAGE(PkgConfig) + PKG_CHECK_MODULES(PKG_X11_XCB QUIET x11-xcb) + + SET(X11_XCB_DEFINITIONS ${PKG_X11_XCB_CFLAGS}) + + FIND_PATH(X11_XCB_INCLUDE_DIR NAMES X11/Xlib-xcb.h HINTS ${PKG_X11_XCB_INCLUDE_DIRS}) + FIND_LIBRARY(X11_XCB_LIBRARIES NAMES X11-xcb HINTS ${PKG_X11_XCB_LIBRARY_DIRS}) + + include(FindPackageHandleStandardArgs) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(X11_XCB DEFAULT_MSG X11_XCB_LIBRARIES X11_XCB_INCLUDE_DIR) + + MARK_AS_ADVANCED(X11_XCB_INCLUDE_DIR X11_XCB_LIBRARIES) +ENDIF (NOT WIN32) |