]> Creatis software - creaBruker.git/blob - CMakeLists.txt
Fixes
[creaBruker.git] / CMakeLists.txt
1 # ---------------------------------
2 #
3 # Unless you are an experimented cmake user,
4 # have a look at :
5 # http://www.creatis.insa-lyon.fr/site/fr/CreatoosGettingStarted-v2.0.X
6 # before starting.
7 #
8 # ---------------------------------
9
10 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
11
12 #MARK_AS_ADVANCED( FORCE CMAKE_BACKWARDS_COMPATIBILITY )
13
14 # for CMake 2.6 corrected behaviour (see "cmake --help-policy CMP0003")
15 IF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
16   CMAKE_POLICY(SET CMP0003 NEW)
17   CMAKE_POLICY(SET CMP0011 NEW)
18   CMAKE_POLICY(SET CMP0005 NEW)  
19 ENDIF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
20
21 ###################################
22 PROJECT(creaBruker)
23 ###################################
24
25 #==================================
26 # The project version
27 SET(PROJECT_MAJOR_VERSION 1)
28 SET(PROJECT_MINOR_VERSION 0)
29 SET(PROJECT_BUILD_VERSION 0)
30
31 SET(PROJECT_VERSION "${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_BUILD_VERSION}")
32
33 #ADD_DEFINITIONS( -DPROJECT_VERSION=${PROJECT_VERSION} )
34 #ADD_DEFINITIONS( -DPROJECT_VERSION_DATE=${PROJECT_VERSION_DATE} )
35
36 #==================================
37
38 #==================================
39 # Find crea (mandatory, to use macros)
40 SET(CREA_VERBOSE_CMAKE TRUE)
41 FIND_PACKAGE(crea REQUIRED)
42 IF (crea_FOUND)
43   INCLUDE(${crea_USE_FILE})
44 ENDIF(crea_FOUND)
45 #==================================
46
47 #==================================
48 # Do not allow to build inside the source tree
49 CREA_PREVENT_IN_SOURCE_BUILD()
50 #==================================
51
52 #==================================
53 # Libraries/tools used
54
55 # Note : Set USE_CREA to ON
56 #  if you need to LINK against crea
57 #  (and not only use its macros)
58 SET(USE_CREA      ON)
59 SET(USE_GDCM      ON)
60 SET(USE_GDCM_VTK  ON)
61 SET(USE_GDCM2     OFF)
62 SET(USE_WXWIDGETS OFF)
63 SET(USE_KWWIDGETS OFF)
64 SET(USE_VTK       OFF)
65 SET(USE_ITK       OFF)
66 SET(USE_BOOST     ON)
67
68 # Note : Set USE_DOXYGEN to ON
69 #  if you think you will ask, some day,
70 #  for Doxygen generation
71 SET(USE_DOXYGEN   ON)
72
73 # Note : Set USE_LATEX to ON, USE_TTH to ON
74 #  if you think you will ask, some day,
75 #  for doc generation using your own latex documents
76 SET(USE_LATEX     OFF)
77 SET(USE_TTH       OFF)
78
79 CREA_FIND_AND_USE_LIBRARIES()
80 #==================================
81
82 #==================================
83 # Where to put executables and libs
84 SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR})
85 SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR})
86 MARK_AS_ADVANCED(
87   CMAKE_BACKWARDS_COMPATIBILITY
88   EXECUTABLE_OUTPUT_PATH
89   LIBRARY_OUTPUT_PATH
90   )
91
92 #==================================
93
94   SET(LIBNAME $(PROJECT_NAME))
95   INCLUDE_DIRECTORIES(
96     ${PROJECT_BINARY_DIR}
97
98  # // if the previous one is not enough :  (JPRx)
99  #   Add here the directories holding the .h you need
100
101  #   ${PROJECT_SOURCE_DIR}/lib/_YOUR_OWN_LIBRARY_SOURCE_DIRECTORY_
102     ${PROJECT_SOURCE_DIR}/lib/src1
103     )
104 #==================================
105
106
107 #----------------------------------------------------------------------------
108 INCLUDE(${PROJECT_SOURCE_DIR}/cmake/UserRootCMakeLists.cmake)
109
110 #==================================
111 # Where to generate documentation
112 # (desperate try; JPR)
113
114 SET(BBTK_DOC_BUILD_PATH 
115      ${PROJECT_BINARY_DIR}/doc
116    )
117 #==================================
118
119 # Subdirs
120 SUBDIRS(lib)
121 SUBDIRS(appli)
122 SUBDIRS(doc)
123 SUBDIRS(install)
124
125 #==================================