twin/compton-tde: transparent pass TDE build-time configure options to compot-tde

pull/2/head
Alexander Golubev 10 years ago committed by Slávek Banko
parent 63dd66d045
commit 394545c24c

@ -72,6 +72,7 @@ option( WITH_XFIXES "Enable xfixes support" ${WITH_ALL_OPTIONS} )
option( WITH_XRANDR "Enable xrandr support" ${WITH_ALL_OPTIONS} ) option( WITH_XRANDR "Enable xrandr support" ${WITH_ALL_OPTIONS} )
option( WITH_XRENDER "Enable xrender support" ${WITH_ALL_OPTIONS} ) option( WITH_XRENDER "Enable xrender support" ${WITH_ALL_OPTIONS} )
option( WITH_LIBCONFIG "Enable libconfig support" ${WITH_ALL_OPTIONS} ) option( WITH_LIBCONFIG "Enable libconfig support" ${WITH_ALL_OPTIONS} )
option( WITH_PCRE "Enable pcre regex support" ON )
option( WITH_XTEST "Enable xtest support" ${WITH_ALL_OPTIONS} ) option( WITH_XTEST "Enable xtest support" ${WITH_ALL_OPTIONS} )
option( WITH_OPENGL "Enable openGL support" ${WITH_ALL_OPTIONS} ) option( WITH_OPENGL "Enable openGL support" ${WITH_ALL_OPTIONS} )
option( WITH_XSCREENSAVER "Enable xscreensaver support" ${WITH_ALL_OPTIONS} ) option( WITH_XSCREENSAVER "Enable xscreensaver support" ${WITH_ALL_OPTIONS} )
@ -124,6 +125,8 @@ option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden"
# WITH_PAM affects tdm kdesktop kcheckpass # WITH_PAM affects tdm kdesktop kcheckpass
# WITH_SHADOW affects tdm kcheckpass # WITH_SHADOW affects tdm kcheckpass
# WITH_UPOWER affects ksmserver # WITH_UPOWER affects ksmserver
# WITH_LIBCONFIG affects twin/compot-tde
# WITH_PCRE affects twin/compot-tde
# WITH_SUDO_TDESU_BACKEND affects tdesu # WITH_SUDO_TDESU_BACKEND affects tdesu
# WITH_SUDO_KONSOLE_SUPER_USER_COMMAND affects launching Konsole super user sessions # WITH_SUDO_KONSOLE_SUPER_USER_COMMAND affects launching Konsole super user sessions

@ -83,7 +83,7 @@ if( WITH_XRENDER OR BUILD_KDESKTOP OR BUILD_KONSOLE OR BUILD_KCONTROL OR BUILD_K
endif( ) endif( )
# xrender (kcontrol, twin) # xrandr (kcontrol)
if( WITH_XRANDR ) if( WITH_XRANDR )
pkg_search_module( XRANDR xrandr ) pkg_search_module( XRANDR xrandr )
if( NOT XRANDR_FOUND ) if( NOT XRANDR_FOUND )
@ -144,7 +144,8 @@ if( WITH_LIBCONFIG )
pkg_search_module( LIBCONFIG libconfig ) pkg_search_module( LIBCONFIG libconfig )
if( LIBCONFIG_FOUND ) if( LIBCONFIG_FOUND )
set( HAVE_LIBCONFIG 1 ) set( HAVE_LIBCONFIG 1 )
if( LIBCONFIG_VERSION VERSION_LESS 1.5.0 ) # TODO replace with functionality check
if( LIBCONFIG_VERSION VERSION_LESS 1.4.0 )
set( HAVE_LIBCONFIG_OLD_API 1 ) set( HAVE_LIBCONFIG_OLD_API 1 )
endif( ) endif( )
else( LIBCONFIG_FOUND ) else( LIBCONFIG_FOUND )
@ -153,6 +154,15 @@ if( WITH_LIBCONFIG )
endif( ) endif( )
# pcre (twin/compton-tde)
if( WITH_PCRE )
pkg_search_module( LIBPCRE libpcre )
if( NOT LIBPCRE_FOUND )
tde_message_fatal( "pcre support is requested, but not found on your system" )
endif( NOT LIBPCRE_FOUND )
endif( )
# xtest (kxkb) # xtest (kxkb)
if( WITH_XTEST ) if( WITH_XTEST )
pkg_search_module( XTEST xtst ) pkg_search_module( XTEST xtst )
@ -196,7 +206,7 @@ if( WITH_XSCREENSAVER )
endif( ) endif( )
# openGL (kdesktop or kcontrol or tdescreensaver ) # openGL (kdesktop or kcontrol or tdescreensaver or twin/compot-tde )
if( WITH_OPENGL ) if( WITH_OPENGL )
pkg_search_module( GL gl ) pkg_search_module( GL gl )
if( GL_FOUND ) if( GL_FOUND )
@ -297,8 +307,8 @@ find_package( TDE )
# dbus (tdm, kdesktop) # dbus (tdm, kdesktop, twin/compton-tde.c)
if( BUILD_TDM OR BUILD_KDESKTOP ) if( BUILD_TDM OR BUILD_KDESKTOP OR (BUILD_TWIN AND WITH_XCOMPOSITE) )
pkg_search_module( DBUS dbus-1 ) pkg_search_module( DBUS dbus-1 )
if( NOT DBUS_FOUND ) if( NOT DBUS_FOUND )

@ -16,57 +16,70 @@ elseif( NOT WITH_XRANDR )
tde_message_fatal( "xrandr support is needed to build compton-tde.\n Pass -DWITH_XRANDR=ON to cmake arguments." ) tde_message_fatal( "xrandr support is needed to build compton-tde.\n Pass -DWITH_XRANDR=ON to cmake arguments." )
elseif( NOT WITH_XFIXES ) elseif( NOT WITH_XFIXES )
tde_message_fatal( "xfixes support is needed to build compton-tde.\n Pass -DWITH_XFIXES=ON to cmake arguments." ) tde_message_fatal( "xfixes support is needed to build compton-tde.\n Pass -DWITH_XFIXES=ON to cmake arguments." )
elseif( NOT WITH_XINERAMA )
tde_message_fatal( "xinerama support is needed to build compton-tde.\n Pass -DWITH_XINERAMA=ON to cmake arguments." )
elseif( NOT WITH_LIBCONFIG )
tde_message_fatal( "libconfig support is needed to build compton-tde.\n Pass -DWITH_LIBCONFIG=ON to cmake arguments." )
endif( ) endif( )
include_directories( include_directories(
${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}
${TDE_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR}
${TQT_INCLUDE_DIRS} ${DBUS_INCLUDE_DIRS}
)
link_directories(
${TQT_LIBRARY_DIRS}
) )
##### compton-tde (executable) ################### ##### compton-tde (executable) ###################
add_definitions("-Wall" "-std=c99") # TDE to compton config option map
# WITH_XINNERAMA -> CONFIG_XINERAMA
# WITH_OPENGL -> CONFIG_VSYNC_OPENGL
# WITH_OPENGL -> CONFIG_VSYNC_OPENGL_GLSL
# WITH_PCRE -> CONFIG_REGEX_PCRE
# WITH_PCRE -> CONFIG_REGEX_PCRE_JIT
# WITH_LIBCONFIG -> CONFIG_LIBCONFIG
#
# HAVE_LIBCONFIG_OLD_API -> CONFIG_LIBCONFIG_LEGACY (set up in compton_config.h)
#
# CONFIG_DBUS - always ON
# CONFIG_C2 - always ON
# CONFIG_XSYNC - always ON (utilieses Xext)
# TODO: think about some configuration option for CONFIG_VSYNC_DRM
option(CONFIG_LIBCONFIG "Enable configuration file parsing using libconfig" ON) add_definitions("-std=c99")
if (CONFIG_LIBCONFIG)
add_definitions("-DCONFIG_LIBCONFIG")
endif ()
option(CONFIG_VSYNC_DRM "Enable DRM VSync support" ON) set( compton_SRCS compton.c )
if (CONFIG_VSYNC_DRM)
add_definitions("-DCONFIG_LIBCONFIG")
endif ()
option(CONFIG_VSYNC_OPENGL "Enable OpenGL support" ON) if( WITH_OPENGL )
if (CONFIG_VSYNC_OPENGL) set( CONFIG_VSYNC_OPENGL ${WITH_OPENGL} )
add_definitions("-DCONFIG_VSYNC_OPENGL") set( CONFIG_VSYNC_OPENGL_GLSL ${WITH_OPENGL} )
list(APPEND compton_SRCS src/opengl.c) list( APPEND compton_LIBRARIES ${GL_LIBRARIES})
endif () list( APPEND compton_SRCS opengl.c )
endif( )
if( WITH_LIBCONFIG )
set( CONFIG_LIBCONFIG ${WITH_LIBCONFIG} )
list( APPEND compton_LIBRARIES ${LIBCONFIG_LIBRARIES} )
endif( )
if( WITH_XINERAMA )
set( CONFIG_XINERAMA ${WITH_XINERAMA} )
list( APPEND compton_LIBRARIES ${XINERAMA_LIBRARIES} )
endif( )
if( WITH_PCRE )
set( CONFIG_REGEX_PCRE ${WITH_PCRE} )
set( CONFIG_REGEX_PCRE_JIT ${WITH_PCRE} )
list( APPEND compton_LIBRARIES ${LIBPCRE_LIBRARIES} )
endif( )
option(CONFIG_XINERAMA "Enable additional Xinerama features" ON) configure_file( compton_config.h.cmake compton_config.h )
if (CONFIG_XINERAMA)
add_definitions("-DCONFIG_XINERAMA")
endif ()
option(CONFIG_C2 "Enable matching system" ON) # permanently turn on some optional features: dbus c2
if (CONFIG_C2) list( APPEND compton_SRCS dbus.c c2.c )
add_definitions("-DCONFIG_C2") list( APPEND compton_LIBRARIES ${DBUS_LIBRARIES} )
list(APPEND compton_SRCS src/c2.c)
endif ()
tde_add_executable( compton-tde tde_add_executable( compton-tde
SOURCES c2.c compton.c opengl.c SOURCES ${compton_SRCS}
LINK m GL Xinerama ${LIBCONFIG_LIBRARIES} ${XRENDER_LIBRARIES} ${XRANDR_LIBRARIES} ${XFIXES_LIBRARIES} ${XDAMAGE_LIBRARIES} ${XEXT_LIBRARIES} ${XCOMPOSITE_LIBRARIES} LINK m ${compton_LIBRARIES} ${XRENDER_LIBRARIES}
${XRANDR_LIBRARIES} ${XFIXES_LIBRARIES} ${XDAMAGE_LIBRARIES}
${XEXT_LIBRARIES} ${XCOMPOSITE_LIBRARIES}
DESTINATION ${BIN_INSTALL_DIR} DESTINATION ${BIN_INSTALL_DIR}
) )

@ -12,7 +12,7 @@
#ifndef COMPTON_COMMON_H #ifndef COMPTON_COMMON_H
#define COMPTON_COMMON_H #define COMPTON_COMMON_H
#include "config.h" #include "compton_config.h"
// === Options === // === Options ===

@ -0,0 +1,28 @@
#include "config.h"
// Whether to enable PCRE regular expression support in blacklists, enabled
// by default
#cmakedefine CONFIG_REGEX_PCRE 1
// Whether to enable JIT support of libpcre. This may cause problems on PaX
// kernels.
#cmakedefine CONFIG_REGEX_PCRE_JIT 1
// Whether to enable parsing of configuration files using libconfig.
#cmakedefine CONFIG_LIBCONFIG 1
// Whether we are using a legacy version of libconfig (1.3.x).
#cmakedefine CONFIG_LIBCONFIG_LEGACY 1
// Whether to enable DRM VSync support
#cmakedefine CONFIG_VSYNC_DRM 1
// Whether to enable OpenGL support
#cmakedefine CONFIG_VSYNC_OPENGL 1
// Whether to enable GLX GLSL support
#cmakedefine CONFIG_VSYNC_OPENGL_GLSL 1
// Whether to enable GLX FBO support
#cmakedefine CONFIG_VSYNC_OPENGL_FBO 1
// Whether to enable DBus support with libdbus.
#define CONFIG_DBUS 1
// Whether to enable condition support.
#define CONFIG_C2 1
// Whether to enable X Sync support.
#define CONFIG_XSYNC 1
// Whether to enable GLX Sync support.
#cmakedefine CONFIG_GLX_XSYNC 1
Loading…
Cancel
Save