]> Creatis software - creaImageIO.git/blob - bbtk/Configure.cmake
Feature #1764
[creaImageIO.git] / bbtk / Configure.cmake
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 # DOES THE USER WANT TO BUILD THE PACKAGE ?
28 OPTION(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME} 
29   "Build the bbtk package ${BBTK_PACKAGE_NAME} ?" OFF)
30 #-----------------------------------------------------------------------------
31
32 #-----------------------------------------------------------------------------
33 IF(BBTK_CORE_PACKAGE)
34   IF(NOT ${BBTK_PACKAGE_NAME}_EXCLUDE_FROM_BUILD_ALL)
35     SWITCH_ON_IF_BUILD_ALL(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
36   ENDIF(NOT ${BBTK_PACKAGE_NAME}_EXCLUDE_FROM_BUILD_ALL)
37 ENDIF(BBTK_CORE_PACKAGE)
38 #-----------------------------------------------------------------------------
39
40
41 #-----------------------------------------------------------------------------
42 # IF THE USER HAS CHOSEN TO BUILD THE PACKAGE
43 IF(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
44   #---------------------------------------------------------------------------
45   
46   #===========================================================================
47   # If the package is not a "core" bbtk package (included into the toolkit)
48   # then we have to find (and use) bbtk 
49   IF(NOT BBTK_CORE_PACKAGE)
50     #-------------------------------------------------------------------------
51     # Find and use the Black Box Toolkit
52     # Search BBTK
53     FIND_PACKAGE(BBTK)
54     # If bbtk found
55     IF(BBTK_FOUND)
56       INCLUDE(${BBTK_USE_FILE})
57       SET(BBTK_PACKAGE_LIBS 
58         ${BBTK_PACKAGE_LIBS}
59         ${BBTK_LIBRARIES})
60       MARK_AS_ADVANCED(BBTK_DIR)
61     ENDIF(BBTK_FOUND)
62   ENDIF(NOT BBTK_CORE_PACKAGE)
63     
64   #===========================================================================
65   # Include package configuration cmake script from bbtk dir
66   
67   # Don't include libraries twice!
68   #INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigurePackage.cmake) #JPR
69   
70   INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigurePackage2.cmake)
71   #===========================================================================
72   
73   
74   #---------------------------------------------------------------------------
75 ELSE(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
76   #-------------------------------------------------------------------------
77   
78   #-----------------------------------------------------------------------
79   IF(BBTK_CORE_PACKAGE)
80     #-----------------------------------------------------------------------
81     # If package deps in global deps : reset global deps
82     IF(${BBTK_PACKAGE_NAME}_IN_DEPS)
83       SET(BBTK_PACKAGES_DEPS "" CACHE INTERNAL 
84         "bbtk packages dependencies" FORCE)
85       #    STRING(REPLACE "${${BBTK_PACKAGE_NAME}_DEPS};"
86       #      "" TEMP
87       #      ${BBTK_PACKAGES_DEPS})
88       #    
89       #    SET(BBTK_PACKAGES_DEPS ${TEMP}
90       #      CACHE INTERNAL "bbtk packages dependencies" FORCE)
91     ENDIF(${BBTK_PACKAGE_NAME}_IN_DEPS)
92     #-----------------------------------------------------------------------
93     
94     #-----------------------------------------------------------------------
95     # Remove the package include scripts to avoid loading it by include * 
96     FILE(REMOVE ${BBTK_BBS_BUILD_PATH}/${BBTK_PACKAGE_NAME}.bbs)
97     FILE(REMOVE ${BBTK_BBS_BUILD_PATH}/${BBTK_PACKAGE_NAME}-appli.bbs)
98     #-----------------------------------------------------------------------
99   ENDIF(BBTK_CORE_PACKAGE)
100   
101   #-------------------------------------------------------------------------
102 ENDIF(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})