]> ruin.nu Git - germs.git/blob - src/CMakeLists.txt
Added progress information for the search
[germs.git] / src / CMakeLists.txt
1 INCLUDE(CheckIncludeFile)
2 INCLUDE(CheckIncludeFileCXX)
3
4 SET(CMAKE_VERBOSE_MAKEFILE OFF)
5
6 #ADD_DEFINITIONS(-Wall -O2 -D__GTHREADS -D_REENTRANT
7 #       -D_POSIX_PTHREAD_SEMANTICS -pthread)
8
9 #ADD_DEFINITIONS(-Wall -pedantic -g -D_GLIBCXX_DEBUG)
10 ADD_DEFINITIONS(-Wall -pedantic -g -D__GTHREADS -D_REENTRANT
11         -D_POSIX_PTHREAD_SEMANTICS -pthread)
12
13 #INCLUDE(CheckCXXSourceCompiles)
14
15 INCLUDE_DIRECTORIES(.)
16 ADD_LIBRARY(GeneSort geneorder genealgorithms modelidentifier genesorter model
17         models componenttree threadgenesorter)
18
19 ADD_EXECUTABLE(germs main.cpp)
20
21 FIND_PACKAGE(Threads REQUIRED)
22 CHECK_INCLUDE_FILE("doublefann.h" HAVE_FANN)
23 SET(GENELIBS GeneSort ${CMAKE_THREAD_LIBS_INIT})
24
25 IF (HAVE_FANN)
26         LIST(APPEND GENELIBS doublefann)
27 ELSE(HAVE_FANN)
28         INCLUDE_DIRECTORIES(. ${CMAKE_SOURCE_DIR}/fann/src/include)
29         ADD_LIBRARY(doublefann ${CMAKE_SOURCE_DIR}/fann/src/doublefann.c)
30         TARGET_LINK_LIBRARIES(GeneSort doublefann)
31 ENDIF(HAVE_FANN)
32
33
34 CHECK_INCLUDE_FILE_CXX("tr1/memory" HAVE_TR1)
35
36 IF(HAVE_TR1)
37         ADD_DEFINITIONS(-DHAVE_TR1)
38 ELSE(HAVE_TR1)
39         CHECK_INCLUDE_FILE_CXX("boost/shared_ptr.hpp" HAVE_BOOST)
40         IF(NOT HAVE_BOOST)
41                 MESSAGE(FATAL_ERROR "Neither Boost nor TR1 found, need a shared_ptr implementation")
42         ENDIF(NOT HAVE_BOOST)
43 ENDIF(HAVE_TR1)
44
45 TARGET_LINK_LIBRARIES(germs ${GENELIBS})
46
47
48 SUBDIRS(test)