summaryrefslogtreecommitdiffstats
path: root/ConfigureChecks.cmake
blob: 4eff80527e2f6f48e84cec9a83e42c68a48e4ae3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#################################################
#
#  (C) 2010 Serghei Amelian
#  serghei (DOT) amelian (AT) gmail.com
#
#  Improvements and feedback are welcome
#
#  This file is released under GPL >= 2
#
#################################################

##### check for gcc visibility support #########
# FIXME
# This should check for [T]Qt3 visibility support

if( WITH_GCC_VISIBILITY )
  if( NOT UNIX )
    tde_message_fatal(FATAL_ERROR "\ngcc visibility support was requested, but your system is not *NIX" )
  endif( NOT UNIX )
  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")
endif( )


if( BUILD_TRANSLATIONS AND NOT DEFINED MSGFMT_EXECUTABLE )
  find_program( MSGFMT_EXECUTABLE msgfmt )
  if( NOT MSGFMT_EXECUTABLE )
    tde_message_fatal( "msgfmt program is required, but was not found on your system" )
  endif( )
endif( )

check_type_size( "int" SIZEOF_INT BUILTIN_TYPES_ONLY )
check_type_size( "long" SIZEOF_LONG BUILTIN_TYPES_ONLY )

check_include_file( stdint.h HAVE_STDINT_H )
check_include_file( systems.h HAVE_SYSTEMS_H )
check_include_file( linux/inotify.h HAVE_INOTIFY )

check_function_exists( statvfs HAVE_STATVFS )
check_function_exists( getpeereid HAVE_GETPEEREID )

if ( BUILD_KGTK_GTK2 )
    # Check if we have dlvsym...
    find_library(LIBDLVSYM_LIBRARY
                 NAMES dl
                 PATHS /lib /usr/lib /usr/X11R6/lib /usr/local/lib)

    if(LIBDLVSYM_LIBRARY)
        set(HAVE_DLVSYM 1)
        # Determine version of dlsym...
        find_library(LIBDL_LIBRARY
                     NAMES dl
                     PATHS /lib /usr/lib /usr/X11R6/lib /usr/local/lib)

        if(LIBDL_LIBRARY)
            execute_process(COMMAND objdump --dynamic-syms ${LIBDL_LIBRARY}
                            COMMAND grep dlsym
                            OUTPUT_VARIABLE DLSYM_DATA)
            separate_arguments(DLSYM_DATA)
            if (${CMAKE_MAJOR_VERSION} GREATER 2 OR ${CMAKE_MINOR_VERSION} GREATER 4)
                cmake_policy(SET CMP0007 OLD)
            endif (${CMAKE_MAJOR_VERSION} GREATER 2 OR ${CMAKE_MINOR_VERSION} GREATER 4)
            list(GET DLSYM_DATA 4 KGTK_DLSYM_VERSION)
        endif(LIBDL_LIBRARY)
    else(LIBDLVSYM_LIBRARY)
        message("** INFORMATION: You're libdl does not contain dlvsym - SWT apps will not be supported")
    endif(LIBDLVSYM_LIBRARY)
endif ()

# common required stuff
find_package( TQt )
find_package( TDE )