summaryrefslogtreecommitdiffstats
path: root/ConfigureChecks.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'ConfigureChecks.cmake')
-rw-r--r--ConfigureChecks.cmake56
1 files changed, 48 insertions, 8 deletions
diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
index 21ec42001..18e2b5014 100644
--- a/ConfigureChecks.cmake
+++ b/ConfigureChecks.cmake
@@ -12,7 +12,10 @@
#
#################################################
+# required stuff
tde_setup_architecture_flags( )
+find_package( TQt )
+find_package( TDE )
##### check for libdl ###########################
@@ -54,6 +57,18 @@ if( WITH_PAM AND (BUILD_KCHECKPASS OR BUILD_TDM) )
endif( )
+# crypt
+set( CRYPT_LIBRARY crypt )
+check_library_exists( ${CRYPT_LIBRARY} crypt "" HAVE_CRYPT )
+if( NOT HAVE_CRYPT )
+ unset( CRYPT_LIBRARY )
+ check_function_exists( crypt LIBC_HAVE_CRYPT )
+ if( LIBC_HAVE_CRYPT )
+ set( HAVE_CRYPT 1 CACHE INTERNAL "" FORCE )
+ endif( LIBC_HAVE_CRYPT )
+endif( NOT HAVE_CRYPT )
+
+
# hal (ksmserver, tdeioslaves)
if( WITH_HAL )
pkg_search_module( HAL hal )
@@ -63,6 +78,24 @@ if( WITH_HAL )
endif( )
+# tdehwlib (drkonqi, kcontrol, kicker, ksmserver, tdeioslaves, tdm)
+if( WITH_TDEHWLIB )
+ tde_save_and_set( CMAKE_REQUIRED_INCLUDES "${TDE_INCLUDE_DIR}" )
+ check_cxx_source_compiles( "
+ #include <kdemacros.h>
+ #ifndef __TDE_HAVE_TDEHWLIB
+ #error tdecore is not build with tdehwlib
+ #endif
+ int main() { return 0; } "
+ HAVE_TDEHWLIB
+ )
+ tde_restore( CMAKE_REQUIRED_INCLUDES )
+ if( NOT HAVE_TDEHWLIB )
+ tde_message_fatal( "tdehwlib is required, but not built in tdecore" )
+ endif( NOT HAVE_TDEHWLIB )
+endif( )
+
+
# udev (tsak)
if( BUILD_TSAK )
pkg_search_module( UDEV udev )
@@ -78,8 +111,21 @@ endif( )
if( WITH_GCC_VISIBILITY )
if( NOT UNIX )
- tde_message_fatal(FATAL_ERROR "\ngcc visibility support was requested, but your system is not *NIX" )
+ tde_message_fatal( "gcc visibility support was requested, but your system is not *NIX" )
endif( NOT UNIX )
+ tde_save_and_set( CMAKE_REQUIRED_INCLUDES "${TDE_INCLUDE_DIR}" )
+ check_cxx_source_compiles( "
+ #include <kdemacros.h>
+ #ifndef __KDE_HAVE_GCC_VISIBILITY
+ #error gcc visibility is not enabled in tdelibs
+ #endif
+ int main() { return 0; } "
+ HAVE_GCC_VISIBILITY
+ )
+ tde_restore( CMAKE_REQUIRED_INCLUDES )
+ if( NOT HAVE_GCC_VISIBILITY )
+ tde_message_fatal( "gcc visibility support was requested, but not supported in tdelibs" )
+ endif( NOT HAVE_GCC_VISIBILITY )
set( __KDE_HAVE_GCC_VISIBILITY 1 )
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden")
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden")
@@ -322,8 +368,8 @@ else( )
set( WITHOUT_ARTS 1 )
endif( )
-# libart
+# libart
if( WITH_LIBART )
pkg_search_module( LIBART libart-2.0 )
if( NOT LIBART_FOUND )
@@ -333,12 +379,6 @@ if( WITH_LIBART )
endif( WITH_LIBART )
-# required stuff
-find_package( TQt )
-find_package( TDE )
-
-
-
# dbus (tdm, kdesktop, twin/compton-tde.c)
if( BUILD_TDM OR BUILD_KDESKTOP OR (BUILD_TWIN AND WITH_XCOMPOSITE) )