]> Creatis software - gdcm.git/blob - CMakeLists.txt
Replace the DEBUG on the stack with a global entry in cmake interface:
[gdcm.git] / CMakeLists.txt
1 PROJECT(GDCM)\r
2 CMAKE_MINIMUM_REQUIRED(VERSION 1.8)\r
3 \r
4 #-----------------------------------------------------------------------------\r
5 # GDCM version number, usefull for packaging and doxygen doc:\r
6 SET(GDCM_VERSION_MAJOR 0)\r
7 SET(GDCM_VERSION_MINOR 4)\r
8 SET(GDCM_VERSION_PATCH 1)\r
9 SET(GDCM_VERSION "${GDCM_VERSION_MAJOR}.${GDCM_VERSION_MINOR}")\r
10 SET(GDCM_VERSION_FULL "${GDCM_VERSION}.${GDCM_VERSION_PATCH}")\r
11 \r
12 #-----------------------------------------------------------------------------\r
13 # datadir in CMake:\r
14 SET(GDCM_DATA_DIR "/share/gdcm/" CACHE INTERNAL \r
15   "Install location for data (relative to prefix).")\r
16 MARK_AS_ADVANCED(GDCM_DATA_DIR)\r
17 \r
18 #-----------------------------------------------------------------------------\r
19 # Build shared lib by default\r
20 OPTION(BUILD_SHARED_LIBS "Build GDCM with shared libraries." ON)\r
21 SET(GDCM_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS})\r
22 \r
23 OPTION(GDCM_DEBUG "Turn verbosity of some statement ON." OFF)\r
24 \r
25 #-----------------------------------------------------------------------------\r
26 SET (EXECUTABLE_OUTPUT_PATH ${GDCM_BINARY_DIR}/bin CACHE PATH "Single output directory for building all executables.")\r
27 SET (LIBRARY_OUTPUT_PATH ${GDCM_BINARY_DIR}/bin CACHE PATH "Single output directory for building all libraries.")\r
28 #MARK_AS_ADVANCED(LIBRARY_OUTPUT_PATH EXECUTABLE_OUTPUT_PATH)\r
29 #SET(GDCM_LIBRARY_PATH "${LIBRARY_OUTPUT_PATH}")\r
30 #SET(GDCM_EXECUTABLE_PATH "${EXECUTABLE_OUTPUT_PATH}")\r
31 \r
32 #-----------------------------------------------------------------------------\r
33 # Build directory on which many applications depend\r
34 SUBDIRS(\r
35   src\r
36   Dicts\r
37   Test\r
38   Example\r
39 )\r
40 \r
41 #-----------------------------------------------------------------------------\r
42 # Adding GDCM_DATA_ROOT\r
43 FIND_PATH(GDCM_DATA_ROOT gdcm-ACR-LibIDO.acr\r
44   ${GDCM_SOURCE_DIR}/../gdcmData \r
45   $ENV{GDCM_DATA}\r
46   $ENV{PUB_DICT_PATH}/../../gdcmData\r
47 )\r
48 \r
49 #-----------------------------------------------------------------------------\r
50 # Set the place for the public dictionary\r
51 SET( GDCM_PUB_DICT_PATH "${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}")\r
52 \r
53 # SunOS + old gcc fixes:\r
54 INCLUDE (${CMAKE_ROOT}/Modules/CMakeBackwardCompatibilityCXX.cmake)\r
55 IF(CMAKE_NO_ANSI_STRING_STREAM)\r
56   SET(GDCM_NO_ANSI_STRING_STREAM 1)\r
57 ENDIF(CMAKE_NO_ANSI_STRING_STREAM)\r
58 \r
59 INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake)\r
60 CHECK_INCLUDE_FILE("stdint.h" CMAKE_HAVE_STDINT_H)\r
61 \r
62 IF(NOT CMAKE_HAVE_STDINT_H)\r
63   SET(GDCM_HAVE_NO_STDINT_H 1)\r
64 ENDIF(NOT CMAKE_HAVE_STDINT_H)\r
65 \r
66 CONFIGURE_FILE(${GDCM_SOURCE_DIR}/gdcmConfigure.h.in\r
67                ${GDCM_BINARY_DIR}/gdcmConfigure.h @ONLY IMMEDIATE)\r
68 \r
69 INSTALL_FILES(/include .h gdcmConfigure.h)\r
70 \r
71 #-----------------------------------------------------------------------------\r
72 # Add the testing directories\r
73 OPTION(GDCM_BUILD_TESTING "Test the project" ON)\r
74 IF(GDCM_BUILD_TESTING)\r
75   ENABLE_TESTING()\r
76   INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake)\r
77   SUBDIRS(Test)\r
78 ENDIF(GDCM_BUILD_TESTING)\r
79 \r
80 \r
81 #-----------------------------------------------------------------------------\r
82 OPTION(GDCM_VTK "Build VTK-GDCM Lib." OFF)\r
83 IF(GDCM_VTK)\r
84   # Search VTK\r
85   FIND_PACKAGE(VTK)\r
86   # If vtk found\r
87   IF(VTK_FOUND)\r
88     INCLUDE(${VTK_USE_FILE})\r
89     SUBDIRS(vtk)\r
90   ENDIF(VTK_FOUND)\r
91 ENDIF(GDCM_VTK)\r
92 \r
93 #-----------------------------------------------------------------------------\r
94 OPTION(GDCM_WRAP_PYTHON "Wrap GDCM classes into the Python language." OFF)\r
95 #if wrapping enable\r
96 IF(GDCM_WRAP_PYTHON)\r
97   # Search Python libs:\r
98   FIND_PACKAGE(PythonLibs)\r
99   # If PythonLibs found\r
100   IF(PYTHON_LIBRARY)\r
101     SUBDIRS(gdcmPython)\r
102   ENDIF(PYTHON_LIBRARY)\r
103 ENDIF(GDCM_WRAP_PYTHON)\r
104 \r
105 #-----------------------------------------------------------------------------\r
106 OPTION(GDCM_DOXYGEN "Build source documentation using doxygen." OFF)\r
107 # if doxygen enable\r
108 IF(GDCM_DOXYGEN)\r
109   # Search Doxygen:\r
110   FIND_PACKAGE(Doxygen)\r
111   IF(DOXYGEN)\r
112     SUBDIRS(Doc)\r
113   ENDIF(DOXYGEN)\r
114 ENDIF(GDCM_DOXYGEN)\r
115 \r