X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=packages%2Fitk%2FCMakeLists.txt;h=c1821170b0b43056d61f5ae479b8d860f0006365;hb=cfad95b6e08e6e53846ffcda7fbc5932065f2c47;hp=5d08ad1e474e57e05d22d3aeb532e47cbb7d06f3;hpb=d73a7833a28e6111e1e805efae5df3ab18a240e2;p=bbtk.git diff --git a/packages/itk/CMakeLists.txt b/packages/itk/CMakeLists.txt index 5d08ad1..c182117 100644 --- a/packages/itk/CMakeLists.txt +++ b/packages/itk/CMakeLists.txt @@ -1,10 +1,34 @@ -#=========================================================================== -# SETTINGS FOR A BBTK PACKAGE -#=========================================================================== - -#=========================================================================== -# THE NAME OF THE BBTK PACKAGE = NAME OF THE CURRENT DIRECTORY -# GET_FILENAME_COMPONENT(BBTK_PACKAGE_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME) + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + +#=========================================================================== +# CMAKE SETTINGS FOR BUILDING A BBTK PACKAGE +#=========================================================================== + +#=========================================================================== +# THE NAME OF THE BBTK PACKAGE SET(BBTK_PACKAGE_NAME itk) #=========================================================================== @@ -13,40 +37,51 @@ SET(BBTK_PACKAGE_NAME itk) # PROJECT(bb${BBTK_PACKAGE_NAME}) #=========================================================================== - #=========================================================================== # UNCOMMENT EACH LIBRARY NEEDED -# SET(${BBTK_PACKAGE_NAME}_USE_VTK ON) +# SET(${BBTK_PACKAGE_NAME}_USE_VTK ON) SET(${BBTK_PACKAGE_NAME}_USE_ITK ON) -# SET(${BBTK_PACKAGE_NAME}_USE_GDCM ON) +# SET(${BBTK_PACKAGE_NAME}_USE_GDCM ON) +# SET(${BBTK_PACKAGE_NAME}_USE_GDCM2 ON) # SET(${BBTK_PACKAGE_NAME}_USE_GSMIS ON) # SET(${BBTK_PACKAGE_NAME}_USE_WXWIDGETS ON) #=========================================================================== +#=========================================================================== +# LIST HERE THE OTHER bbtk PACKAGES NEEDED +SET(${BBTK_PACKAGE_NAME}_USE_PACKAGES + # std + # wx + # itk + # vtk + # ... + ) +#=========================================================================== + #=========================================================================== # PACKAGE AUTHOR # !!! NO COMMA ALLOWED !!! -SET(BBTK_PACKAGE_AUTHOR "laurent.guigues at creatis.insa-lyon.fr") +SET(${BBTK_PACKAGE_NAME}_AUTHOR "laurent.guigues at creatis.insa-lyon.fr") #=========================================================================== #=========================================================================== # PACKAGE DESCRIPTION -SET(BBTK_PACKAGE_DESCRIPTION "Basic itk-based boxes") +SET(${BBTK_PACKAGE_NAME}_DESCRIPTION "Basic itk-based boxes") #=========================================================================== #=========================================================================== # PACKAGE VERSION NUMBER -SET(BBTK_PACKAGE_MAJOR_VERSION 1) -SET(BBTK_PACKAGE_MINOR_VERSION 0) -SET(BBTK_PACKAGE_BUILD_VERSION 0) +SET(${BBTK_PACKAGE_NAME}_MAJOR_VERSION 1) +SET(${BBTK_PACKAGE_NAME}_MINOR_VERSION 0) +SET(${BBTK_PACKAGE_NAME}_BUILD_VERSION 0) #=========================================================================== #=========================================================================== # THE SOURCES OF THE PACKAGE # EITHER UNCOMMENT NEXT LINE TO COMPILE ALL .cxx OF THE src DIRECTORY : -SET(BBTK_PACKAGE_COMPILE_ALL_CXX ON) +SET(${BBTK_PACKAGE_NAME}_COMPILE_ALL_CXX ON) # ... OR LIST THE FILES TO COMPILE MANUALLY : -#SET(BBTK_PACKAGE_SOURCES +#SET(${BBTK_PACKAGE_NAME}_SOURCES # LIST HERE THE FILES TO COMPILE TO BUILD THE LIB # E.G. TO COMPILE "toto.cxx" ADD "toto" (NO EXTENSION) # THE PATH MUST BE RELATIVE TO THE src FOLDER @@ -56,9 +91,9 @@ SET(BBTK_PACKAGE_COMPILE_ALL_CXX ON) #=========================================================================== # THE xml SOURCES OF THE PACKAGE # EITHER UNCOMMENT NEXT LINE TO bbfy ALL .xml OF THE src DIRECTORY : -SET(BBTK_PACKAGE_COMPILE_ALL_XML ON) +SET(${BBTK_PACKAGE_NAME}_COMPILE_ALL_XML ON) # ... OR LIST THE FILES TO COMPILE MANUALLY : -#SET(BBTK_PACKAGE_XML_SOURCES +#SET(${BBTK_PACKAGE_NAME}_XML_SOURCES # LIST HERE THE FILES TO bbfy TO BUILD THE LIB # E.G. TO bbfy "toto.xml" ADD "toto" (NO EXTENSION) # THE PATH MUST BE RELATIVE TO THE src FOLDER @@ -68,9 +103,9 @@ SET(BBTK_PACKAGE_COMPILE_ALL_XML ON) #=========================================================================== # THE SCRIPT-DEFINED BOXES OF THE PACKAGE (bbs) # EITHER UNCOMMENT NEXT LINE TO INCLUDE ALL .bbs OF THE bbs/boxes DIRECTORY : -SET(BBTK_PACKAGE_INCLUDE_ALL_BBS_BOXES ON) +SET(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_BOXES ON) # ... OR LIST THE FILES TO INCLUDE MANUALLY : -# SET(BBTK_PACKAGE_BBS_BOXES +# SET(${BBTK_PACKAGE_NAME}_BBS_BOXES # LIST HERE THE bbs FILES TO INCLUDE # E.G. TO INCLUDE "boxes/bbtoto.bbs" ADD "boxes/bbtoto" (NO EXTENSION) # !! THE PATH MUST BE RELATIVE TO THE bbs FOLDER !! @@ -80,9 +115,9 @@ SET(BBTK_PACKAGE_INCLUDE_ALL_BBS_BOXES ON) #=========================================================================== # THE SCRIPT-DEFINED APPLICATIONS OF THE PACKAGE (bbs) # EITHER UNCOMMENT NEXT LINE TO INCLUDE ALL .bbs OF THE bbs/appli DIRECTORY : -SET(BBTK_PACKAGE_INCLUDE_ALL_BBS_APPLI ON) +SET(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_APPLI ON) # ... OR LIST THE FILES TO INCLUDE MANUALLY : -# SET(BBTK_PACKAGE_BBS_APPLI +# SET(${BBTK_PACKAGE_NAME}_BBS_APPLI # LIST HERE THE bbs FILES TO INCLUDE # E.G. TO INCLUDE "appli/testToto.bbs" ADD "appli/testToto" (NO EXTENSION) # !! THE PATH MUST BE RELATIVE TO THE bbs FOLDER !! @@ -90,22 +125,34 @@ SET(BBTK_PACKAGE_INCLUDE_ALL_BBS_APPLI ON) #=========================================================================== #=========================================================================== -INCLUDE_DIRECTORIES( - # LIST HERE YOUR INCLUDE DIRECTORIES - # EXCEPT BBTK'S AND THE INCLUDE DIRS THAT WERE SET - # BY INCLUDING A LIBRARY USE FILE +SET(${BBTK_PACKAGE_NAME}_INCLUDE_DIRS + # LIST HERE YOUR ADDITIONAL INCLUDE DIRECTORIES + # EXCEPT : + # - src + # - bbtk dirs + # - automatically handled libraries or packages : wx, vtk... (see above) + # - the dirs automatically set by other libraries found by FIND_PACKAGE + # + # HERE WE USE THE std PACKAGE DIRECTLY BECAUSE WE ARE IN THE BBTK BUILD + # TREE ITSELF AND WE CANNOT FIND std WITH THE STANDARD MECHANISM + # HOWEVER A USER SHOULD USE std BY LISTING IT IN THE VARIABLE + # ${BBTK_PACKAGE_NAME}_USE_PACKAGES (see above) ../std/src + # The path to the build tree folder is needed to find bbstd_EXPORT.h + ${PROJECT_BINARY_DIR}/packages/std/src ) #=========================================================================== #=========================================================================== -SET(BBTK_PACKAGE_LIBS +SET(${BBTK_PACKAGE_NAME}_LIBS # LIST HERE THE LIBS TO LINK AGAINST (EXCEPT BBTK) ) #=========================================================================== - - +# To compile with VS under x64, /bigobj flag is needed +IF(MSVC AND CMAKE_SIZEOF_VOID_P MATCHES 8) + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /bigobj") +ENDIF() #=========================================================================== # END OF USER SECTION