]> Creatis software - creaMiniTools.git/blob - CMakeLists.txt
Feature #1788
[creaMiniTools.git] / CMakeLists.txt
1 # ---------------------------------------------------------------------
2 #
3 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
4 #                        pour la Sant�)
5 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
6 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
7 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
8 #
9 #  This software is governed by the CeCILL-B license under French law and
10 #  abiding by the rules of distribution of free software. You can  use,
11 #  modify and/ or redistribute the software under the terms of the CeCILL-B
12 #  license as circulated by CEA, CNRS and INRIA at the following URL
13 #  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
14 #  or in the file LICENSE.txt.
15 #
16 #  As a counterpart to the access to the source code and  rights to copy,
17 #  modify and redistribute granted by the license, users are provided only
18 #  with a limited warranty  and the software's author,  the holder of the
19 #  economic rights,  and the successive licensors  have only  limited
20 #  liability.
21 #
22 #  The fact that you are presently reading this means that you have had
23 #  knowledge of the CeCILL-B license and that you accept its terms.
24 # ------------------------------------------------------------------------ */
25
26 # ---------------------------------
27 #
28 # Unless you are an experimented cmake user,
29 # have a look at :
30 # http://www.creatis.insa-lyon.fr/site/fr/CreatoosGettingStarted-v2.0.X
31 # before starting.
32 #
33 # Generated with creaNewProject, version of : 18/03/2010
34 # ---------------------------------
35
36 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
37
38 #MARK_AS_ADVANCED( FORCE CMAKE_BACKWARDS_COMPATIBILITY )
39
40 # for CMake 2.6 corrected behaviour (see "cmake --help-policy CMP0003")
41 IF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
42   CMAKE_POLICY(SET CMP0003 NEW)
43   CMAKE_POLICY(SET CMP0005 NEW)
44   CMAKE_POLICY(SET CMP0011 NEW)
45 ENDIF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
46
47
48 ###################################
49 PROJECT( creaMiniTools )
50 ###################################
51
52 #==================================
53 # The project version
54 SET(PROJECT_MAJOR_VERSION 1)
55 SET(PROJECT_MINOR_VERSION 1)
56 SET(PROJECT_BUILD_VERSION 0)
57
58 SET(PROJECT_VERSION "${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_BUILD_VERSION}")
59 SET(PROJECT_VERSION_DATE "11/02/2010")
60 #ADD_DEFINITIONS( -DPROJECT_VERSION=${PROJECT_VERSION} )
61 #ADD_DEFINITIONS( -DPROJECT_VERSION_DATE=${PROJECT_VERSION_DATE} )
62
63 #==================================
64 SET(CREA_VERBOSE_CMAKE TRUE)
65 #==================================
66 # Find crea (mandatory, to use macros)
67 FIND_PACKAGE(crea REQUIRED)
68 IF (crea_FOUND)
69   INCLUDE(${crea_USE_FILE})
70 ENDIF(crea_FOUND)
71 #==================================
72
73 # USER! : Add here as many 'FIND_PACKAGE' blocks as *your* aplication requires
74 #FIND_PACKAGE(xxx REQUIRED)
75 #IF (xxx_FOUND)
76 #  INCLUDE(${xxx_USE_FILE})
77 #ENDIF(xxx_FOUND)
78
79 #==================================
80 # Do not allow to build inside the source tree
81 CREA_PREVENT_IN_SOURCE_BUILD()
82 #==================================
83
84 #==================================
85 # Libraries/tools used
86
87 # USER! : Note : Set USE_CREA to ON
88 #  if you need to LINK against crea
89 #  (and not only use its macros)
90 SET(USE_CREA      OFF)
91
92 SET(USE_GDCM      OFF)
93 SET(USE_GDCM_VTK  OFF)
94 SET(USE_GDCM2     OFF)
95 SET(USE_WXWIDGETS OFF)
96 SET(USE_KWWIDGETS OFF)
97 SET(USE_VTK       OFF)
98 SET(USE_ITK       OFF)
99 SET(USE_BOOST     OFF)
100
101 # USER! : Note : Set USE_DOXYGEN to ON
102 #  if you think you will ask, some day,
103 #  for Doxygen generation
104 #EED SET(USE_DOXYGEN   OFF)
105
106 # Note : Set USE_LATEX to ON, USE_TTH to ON
107 #  if you think you will ask, some day,
108 #  for doc generation using your own latex documents
109 #EED SET(USE_LATEX     OFF)
110 #EED SET(USE_TTH       OFF)
111
112 CREA_FIND_AND_USE_LIBRARIES()
113 #==================================
114
115 #==================================
116 # Where to put executables and libs
117 SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR})
118 SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR})
119 MARK_AS_ADVANCED(
120   CMAKE_BACKWARDS_COMPATIBILITY
121   EXECUTABLE_OUTPUT_PATH
122   LIBRARY_OUTPUT_PATH
123   )
124 #==================================
125
126 IF(WIN32)
127   INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/win32)
128   LINK_DIRECTORIES(${PROJECT_SOURCE_DIR}/win32)
129 ENDIF(WIN32)
130
131 #================================== 
132
133 #==================================
134
135   SET(LIBNAME $(creaMiniTools))
136   
137   INCLUDE_DIRECTORIES(
138     ${PROJECT_BINARY_DIR}
139   )
140   
141  # USER! : Add here the directories holding the .h you need   
142  # INCLUDE_DIRECTORIES(appli/_YOUR_OWN_APPLI_SOURCE_DIRECTORY_)  
143  # INCLUDE_DIRECTORIES(lib/_YOUR_OWN_LIBRARY_SOURCE_DIRECTORY_)  
144
145 #==================================
146
147
148 #----------------------------------------------------------------------------
149 INCLUDE(${PROJECT_SOURCE_DIR}/cmake/UserRootCMakeLists.cmake)
150
151 #==================================
152 # Where to generate documentation
153 # (desperate try; JPR)
154
155 SET(BBTK_DOC_BUILD_PATH 
156      ${PROJECT_BINARY_DIR}/doc
157    )
158 #==================================
159  # USER! : Hands off!
160 # ADD_SUBDIRECTORY
161 ADD_SUBDIRECTORY(lib)
162 ADD_SUBDIRECTORY(appli)
163 ADD_SUBDIRECTORY(doc)
164 ADD_SUBDIRECTORY(data)
165 ADD_SUBDIRECTORY(install)
166
167 ADD_SUBDIRECTORY(bbtk_package_creaMiniTools)
168 ADD_SUBDIRECTORY(bbtk_package_creaMiniToolsBase)
169
170
171 #==================================