am7xxx: control shared library symbols visibility
[libam7xxx.git] / cmake_modules / FindXCB.cmake
1 # - Try to find libxcb
2 # Once done this will define
3 #
4 #  LIBXCB_FOUND - system has libxcb
5 #  LIBXCB_LIBRARIES - Link these to use libxcb
6 #  LIBXCB_INCLUDE_DIR - the libxcb include dir
7 #  LIBXCB_DEFINITIONS - compiler switches required for using libxcb
8
9 # Copyright (c) 2008 Helio Chissini de Castro, <helio@kde.org>
10 # Copyright (c) 2007, Matthias Kretz, <kretz@kde.org>
11 #
12 # Redistribution and use is allowed according to the terms of the BSD license.
13 # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
14
15
16 IF (NOT WIN32)
17   IF (LIBXCB_INCLUDE_DIR AND LIBXCB_LIBRARIES)
18     # in cache already
19     SET(XCB_FIND_QUIETLY TRUE)
20   ENDIF (LIBXCB_INCLUDE_DIR AND LIBXCB_LIBRARIES)
21
22   # use pkg-config to get the directories and then use these values
23   # in the FIND_PATH() and FIND_LIBRARY() calls
24   FIND_PACKAGE(PkgConfig)
25   PKG_CHECK_MODULES(PKG_XCB xcb)
26
27   SET(LIBXCB_DEFINITIONS ${PKG_XCB_CFLAGS})
28
29   FIND_PATH(LIBXCB_INCLUDE_DIR xcb/xcb.h
30     ${PKG_XCB_INCLUDE_DIRS}
31     )
32
33   FIND_LIBRARY(LIBXCB_LIBRARIES NAMES xcb libxcb
34     PATHS
35     ${PKG_XCB_LIBRARY_DIRS}
36     )
37
38   include(FindPackageHandleStandardArgs)
39   FIND_PACKAGE_HANDLE_STANDARD_ARGS(XCB DEFAULT_MSG LIBXCB_INCLUDE_DIR LIBXCB_LIBRARIES )
40
41
42   MARK_AS_ADVANCED(LIBXCB_INCLUDE_DIR LIBXCB_LIBRARIES XCBPROC_EXECUTABLE)
43 ENDIF (NOT WIN32)