| 1 |
cmake_minimum_required(VERSION 2.6) |
| 2 |
|
| 3 |
if(CMAKE_SOURCE_DIR STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}") |
| 4 |
find_package(KDE4 REQUIRED) |
| 5 |
include (KDE4Defaults) |
| 6 |
include(MacroOptionalAddSubdirectory) |
| 7 |
|
| 8 |
add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS}) |
| 9 |
include_directories(${KDE4_INCLUDES}) |
| 10 |
endif(CMAKE_SOURCE_DIR STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}") |
| 11 |
|
| 12 |
include_directories( |
| 13 |
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) |
| 14 |
|
| 15 |
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${KDE4_ENABLE_EXCEPTIONS}") |
| 16 |
|
| 17 |
find_package(X11 REQUIRED) |
| 18 |
macro_log_feature(X11_Xinput_FOUND "XInput" "XInput protocol support" |
| 19 |
"http://www.x.org/" TRUE) |
| 20 |
include_directories(${X11_X11_INCLUDE_PATH}) |
| 21 |
include_directories(${X11_Xinput_INCLUDE_PATH}) |
| 22 |
|
| 23 |
include(CheckPrototypeExists) |
| 24 |
|
| 25 |
find_package(PkgConfig) |
| 26 |
if(PKG_CONFIG_FOUND) |
| 27 |
# rely on pkg-config if possible |
| 28 |
pkg_search_module(UDEV "libudev") |
| 29 |
else(PKG_CONFIG_FOUND) |
| 30 |
# if pkg-config is not available, check if we can compile against libudev |
| 31 |
# in standard include and library directories |
| 32 |
check_prototype_exists(udev_new libudev.h UDEV_FOUND) |
| 33 |
set(UDEV_LIBRARIES "udev") |
| 34 |
endif(PKG_CONFIG_FOUND) |
| 35 |
if(UDEV_FOUND) |
| 36 |
include_directories(${UDEV_INCLUDE_DIRS}) |
| 37 |
link_directories(${UDEV_LIBRARY_DIRS}) |
| 38 |
endif(UDEV_FOUND) |
| 39 |
|
| 40 |
option(WITH_XINPUT2 "Search for XInput2" OFF) |
| 41 |
|
| 42 |
# determine availability of XInput device property API |
| 43 |
check_prototype_exists(XChangeDeviceProperty X11/extensions/XInput.h |
| 44 |
HAVE_DEVICE_PROPERTIES) |
| 45 |
if(WITH_XINPUT2) |
| 46 |
check_prototype_exists(XIChangeProperty X11/extensions/XInput2.h |
| 47 |
HAVE_DEVICE_PROPERTIES_V2) |
| 48 |
# make V2 mandatory |
| 49 |
set(HAVE_DEVICE_PROPERTIES "${HAVE_DEVICE_PROPERTIES_V2}") |
| 50 |
endif(WITH_XINPUT2) |
| 51 |
|
| 52 |
# device properties |
| 53 |
macro_log_feature(HAVE_DEVICE_PROPERTIES "Device properties" |
| 54 |
"XInput device properties" "http://www.x.org/" TRUE) |
| 55 |
macro_log_feature(HAVE_DEVICE_PROPERTIES_V2 "Device properties 2" |
| 56 |
"XInput device properties 2.x" "http://www.x.org/") |
| 57 |
macro_bool_to_01(HAVE_DEVICE_PROPERTIES_V2 HAVE_XINPUT2) |
| 58 |
# udev |
| 59 |
macro_log_feature(UDEV_FOUND "libudev" "UDev library" |
| 60 |
"http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html" |
| 61 |
TRUE) |
| 62 |
|
| 63 |
configure_file( |
| 64 |
"${CMAKE_CURRENT_SOURCE_DIR}/config-synaptiks.h.cmake" |
| 65 |
"${CMAKE_CURRENT_BINARY_DIR}/config-synaptiks.h") |
| 66 |
|
| 67 |
# notification configuration |
| 68 |
install(FILES synaptiks.notifyrc |
| 69 |
DESTINATION "${DATA_INSTALL_DIR}/synaptiks") |
| 70 |
# configuration schema |
| 71 |
install(FILES synaptiks.kcfg DESTINATION ${KCFG_INSTALL_DIR}) |
| 72 |
|
| 73 |
add_subdirectory(applet) |
| 74 |
add_subdirectory(daemon) |
| 75 |
add_subdirectory(kcmodule) |
| 76 |
add_subdirectory(icons) |
| 77 |
add_subdirectory(pics) |
| 78 |
|
| 79 |
if(CMAKE_SOURCE_DIR STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}") |
| 80 |
macro_display_feature_log() |
| 81 |
endif(CMAKE_SOURCE_DIR STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}") |