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_XRENDER "Enable xrender 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_OPENGL "Enable openGL 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_SHADOW affects tdm kcheckpass
# WITH_UPOWER affects ksmserver
# WITH_LIBCONFIG affects twin/compot-tde
# WITH_PCRE affects twin/compot-tde
# WITH_SUDO_TDESU_BACKEND affects tdesu
# 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( )
# xrender (kcontrol, twin)
# xrandr (kcontrol)
if( WITH_XRANDR )
pkg_search_module( XRANDR xrandr )
if( NOT XRANDR_FOUND )
@ -144,7 +144,8 @@ if( WITH_LIBCONFIG )
pkg_search_module( LIBCONFIG libconfig )
if( LIBCONFIG_FOUND )
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 )
endif( )
else( LIBCONFIG_FOUND )
@ -153,6 +154,15 @@ if( WITH_LIBCONFIG )
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)
if( WITH_XTEST )
pkg_search_module( XTEST xtst )
@ -196,7 +206,7 @@ if( WITH_XSCREENSAVER )
endif( )
# openGL (kdesktop or kcontrol or tdescreensaver )
# openGL (kdesktop or kcontrol or tdescreensaver or twin/compot-tde )
if( WITH_OPENGL )
pkg_search_module( GL gl )
if( GL_FOUND )
@ -297,8 +307,8 @@ find_package( TDE )
# dbus (tdm, kdesktop)
if( BUILD_TDM OR BUILD_KDESKTOP )
# dbus (tdm, kdesktop, twin/compton-tde.c)
if( BUILD_TDM OR BUILD_KDESKTOP OR (BUILD_TWIN AND WITH_XCOMPOSITE) )
pkg_search_module( DBUS dbus-1 )
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." )
elseif( NOT WITH_XFIXES )
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( )
include_directories(
${CMAKE_BINARY_DIR}
${TDE_INCLUDE_DIR}
${TQT_INCLUDE_DIRS}
)
link_directories(
${TQT_LIBRARY_DIRS}
${CMAKE_CURRENT_BINARY_DIR}
${DBUS_INCLUDE_DIRS}
)
##### 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)
if (CONFIG_LIBCONFIG)
add_definitions("-DCONFIG_LIBCONFIG")
endif ()
add_definitions("-std=c99")
option(CONFIG_VSYNC_DRM "Enable DRM VSync support" ON)
if (CONFIG_VSYNC_DRM)
add_definitions("-DCONFIG_LIBCONFIG")
endif ()
set( compton_SRCS compton.c )
option(CONFIG_VSYNC_OPENGL "Enable OpenGL support" ON)
if (CONFIG_VSYNC_OPENGL)
add_definitions("-DCONFIG_VSYNC_OPENGL")
list(APPEND compton_SRCS src/opengl.c)
endif ()
if( WITH_OPENGL )
set( CONFIG_VSYNC_OPENGL ${WITH_OPENGL} )
set( CONFIG_VSYNC_OPENGL_GLSL ${WITH_OPENGL} )
list( APPEND compton_LIBRARIES ${GL_LIBRARIES})
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)
if (CONFIG_XINERAMA)
add_definitions("-DCONFIG_XINERAMA")
endif ()
configure_file( compton_config.h.cmake compton_config.h )
option(CONFIG_C2 "Enable matching system" ON)
if (CONFIG_C2)
add_definitions("-DCONFIG_C2")
list(APPEND compton_SRCS src/c2.c)
endif ()
# permanently turn on some optional features: dbus c2
list( APPEND compton_SRCS dbus.c c2.c )
list( APPEND compton_LIBRARIES ${DBUS_LIBRARIES} )
tde_add_executable( compton-tde
SOURCES c2.c compton.c opengl.c
LINK m GL Xinerama ${LIBCONFIG_LIBRARIES} ${XRENDER_LIBRARIES} ${XRANDR_LIBRARIES} ${XFIXES_LIBRARIES} ${XDAMAGE_LIBRARIES} ${XEXT_LIBRARIES} ${XCOMPOSITE_LIBRARIES}
SOURCES ${compton_SRCS}
LINK m ${compton_LIBRARIES} ${XRENDER_LIBRARIES}
${XRANDR_LIBRARIES} ${XFIXES_LIBRARIES} ${XDAMAGE_LIBRARIES}
${XEXT_LIBRARIES} ${XCOMPOSITE_LIBRARIES}
DESTINATION ${BIN_INSTALL_DIR}
)

@ -12,7 +12,7 @@
#ifndef COMPTON_COMMON_H
#define COMPTON_COMMON_H
#include "config.h"
#include "compton_config.h"
// === 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