summaryrefslogtreecommitdiffstats
path: root/ConfigureChecks.cmake
blob: 29f3e03d011e89661ea9891e884c39cb40d5fecf (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
###########################################
#                                         #
#  Improvements and feedback are welcome  #
#                                         #
#  This file is released under GPL >= 3   #
#                                         #
###########################################

# required stuff
find_package( TQt )
find_package( TDE )

tde_setup_architecture_flags( )

include(TestBigEndian)
test_big_endian(WORDS_BIGENDIAN)

tde_setup_largefiles( )


##### check for gcc visibility support

if( WITH_GCC_VISIBILITY )
  tde_setup_gcc_visibility( )
endif( WITH_GCC_VISIBILITY )


##### Threading support

find_package( Threads )


##### look for libqalculate

pkg_search_module( QALCULATE libqalculate )

if( NOT QALCULATE_FOUND )
   tde_message_fatal( "libqalculate is required but was not found on your system." )
endif( NOT QALCULATE_FOUND )


##### check if libqalculate requires explicitly link libcln

tde_save( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES )
set( CMAKE_REQUIRED_INCLUDES ${QALCULATE_INCLUDE_DIRS} )
set( CMAKE_REQUIRED_LIBRARIES ${QALCULATE_LIBRARIES} )

check_cxx_source_compiles("
	#include <libqalculate/qalculate.h>
	int main(int argc, char **argv) { Number n; return 0; } "
	QALCULATE_LIBRARIES_WORKS
)
if( NOT QALCULATE_LIBRARIES_WORKS )
  pkg_search_module( CLN cln )
  if( NOT CLN_FOUND )
     tde_message_fatal( "libqalculate require CLN library but it was not found on your system." )
  endif( NOT CLN_FOUND )
  list( APPEND QALCULATE_LIBRARIES ${CLN_LIBRARIES} )
  message( STATUS "Added CLN_LIBRARIES to QALCULATE_LIBRARIES" )
endif( )

tde_restore( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES )