From 80deb52955cbd917e10f015f37699d830cb681ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= Date: Sun, 10 Jun 2012 15:58:19 +0200 Subject: [PATCH] Add xscreensaver support to CMake This closes Bug 859 --- CMakeLists.txt | 1 + ConfigureChecks.cmake | 20 ++++++++++++++++++++ config.h.cmake | 3 +++ kdesktop/CMakeLists.txt | 1 + 4 files changed, 25 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 31fb46c43..3da5b2f63 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -68,6 +68,7 @@ option( WITH_XRENDER "Enable xrender support" ${WITH_ALL_OPTIONS} ) option( WITH_XDAMAGE "Enable xdamage support" ${WITH_ALL_OPTIONS} ) option( WITH_XEXT "Enable xext support" ${WITH_ALL_OPTIONS} ) option( WITH_XTEST "Enable xext support" ${WITH_ALL_OPTIONS} ) +option( WITH_XSCREENSAVER "Enable xscreensaver support" ${WITH_ALL_OPTIONS} ) option( WITH_LIBART "Enable libart support (for SVG icons and wallpapers)" ${WITH_ALL_OPTIONS} ) option( WITH_LIBUSB "Enable control of some mouse models through libusb" ${WITH_ALL_OPTIONS} ) option( WITH_LIBRAW1394 "Enable visualization of ieee1394 devices through libraw1394" ${WITH_ALL_OPTIONS} ) diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake index ded1d0025..1d9c83d71 100644 --- a/ConfigureChecks.cmake +++ b/ConfigureChecks.cmake @@ -144,6 +144,26 @@ if( WITH_XTEST ) endif( ) +# xscreensaver () +if( WITH_XSCREENSAVER ) + check_library_exists( Xss XScreenSaverQueryInfo "" HAVE_XSSLIB ) + if( HAVE_XSSLIB ) + pkg_search_module( XSS xscrnsaver ) + else( ) + check_library_exists( Xext XScreenSaverQueryInfo "" HAVE_XSSLIB ) + if( HAVE_XSSLIB ) + pkg_search_module( XSS xext ) + endif( ) + endif( ) + check_include_file( X11/extensions/scrnsaver.h HAVE_XSCREENSAVER_H ) + if( HAVE_XSSLIB AND HAVE_XSCREENSAVER_H ) + set( HAVE_XSCREENSAVER 1 ) + else( ) + tde_message_fatal( "xscreensaver is requested, but was not found on your system" ) + endif( ) +endif( ) + + # GL if( BUILD_KDESKTOP OR BUILD_KCONTROL OR BUILD_KSCREENSAVER ) check_library_exists( GL glXChooseVisual "" HAVE_GLXCHOOSEVISUAL ) diff --git a/config.h.cmake b/config.h.cmake index 39d6d8528..772ca8840 100644 --- a/config.h.cmake +++ b/config.h.cmake @@ -24,6 +24,9 @@ // kxkb #cmakedefine HAVE_XTEST 1 +// xscreensaver +#cmakedefine HAVE_XSCREENSAVER 1 + // libart #cmakedefine HAVE_LIBART 1 diff --git a/kdesktop/CMakeLists.txt b/kdesktop/CMakeLists.txt index 99d86d13a..b2e462853 100644 --- a/kdesktop/CMakeLists.txt +++ b/kdesktop/CMakeLists.txt @@ -94,6 +94,7 @@ tde_add_tdeinit_executable( ${target} AUTOMOC kdesktopsettings-static bgnd-static dmctl-static konq-shared kutils-shared ${XRENDER_LIBRARIES} ${XCURSOR_LIBRARIES} Xext dl + ${XSS_LIBRARIES} )