2 CMAKE_MINIMUM_REQUIRED(VERSION 1.8)
\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 0)
\r
9 SET(GDCM_VERSION "${GDCM_VERSION_MAJOR}.${GDCM_VERSION_MINOR}")
\r
10 SET(GDCM_VERSION_FULL "${GDCM_VERSION}.${GDCM_VERSION_PATCH}")
\r
12 #-----------------------------------------------------------------------------
\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
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
23 SET(CMAKE_CONFIGURATION_TYPES
\r
27 SET(CMAKE_BUILD_TYPE_INIT Debug)
\r
29 # Deals with problem on SunOS:
\r
30 # ostrstream vs. ostringstream
\r
32 #SET(GDCM_NO_ANSI_STRING_STREAM
\r
33 # ${CMAKE_NO_ANSI_STRING_STREAM}
\r
35 #CONFIGURE_FILE(${GDCM_SOURCE_DIR}/src/gdcmCommon.h.in
\r
36 # ${GDCM_BINARY_DIR}/src/gdcmCommon.h @ONLY IMMEDIATE)
\r
38 #-----------------------------------------------------------------------------
\r
39 # Output directories.
\r
40 #Put all stuff in one single dir for Win32, otherwise dll are a pain:
\r
41 IF(WIN32 AND GDCM_BUILD_SHARED_LIBS)
\r
42 SET(OUTPUT_LIB_DIR ${GDCM_SOURCE_DIR}/bin)
\r
43 ELSE(WIN32 AND GDCM_BUILD_SHARED_LIBS)
\r
44 SET(OUTPUT_LIB_DIR ${GDCM_SOURCE_DIR}/lib)
\r
45 ENDIF(WIN32 AND GDCM_BUILD_SHARED_LIBS)
\r
47 SET (EXECUTABLE_OUTPUT_PATH ${GDCM_SOURCE_DIR}/bin CACHE PATH "Single output directory for building all executables.")
\r
48 SET (LIBRARY_OUTPUT_PATH ${OUTPUT_LIB_DIR} CACHE PATH "Single output directory for building all libraries.")
\r
49 MARK_AS_ADVANCED(LIBRARY_OUTPUT_PATH EXECUTABLE_OUTPUT_PATH)
\r
50 SET(GDCM_LIBRARY_PATH "${LIBRARY_OUTPUT_PATH}")
\r
51 SET(GDCM_EXECUTABLE_PATH "${EXECUTABLE_OUTPUT_PATH}")
\r
53 #-----------------------------------------------------------------------------
\r
54 # Build directory on which many applications depend
\r
61 #-----------------------------------------------------------------------------
\r
62 # Adding GDCM_DATA_ROOT
\r
63 FIND_PATH(GDCM_DATA_ROOT gdcm-ACR-LibIDO.acr
\r
64 ${GDCM_SOURCE_DIR}/../gdcmData
\r
66 $ENV{PUB_DICT_PATH}/../../gdcmData
\r
69 #-----------------------------------------------------------------------------
\r
70 # Add the testing directories
\r
71 OPTION(GDCM_BUILD_TESTING "Test the project" ON)
\r
72 IF(GDCM_BUILD_TESTING)
\r
74 INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake)
\r
76 ENDIF(GDCM_BUILD_TESTING)
\r
79 #-----------------------------------------------------------------------------
\r
80 OPTION(GDCM_VTK "Build VTK-GDCM Lib." OFF)
\r
86 INCLUDE(${VTK_USE_FILE})
\r
91 #-----------------------------------------------------------------------------
\r
92 OPTION(GDCM_WRAP_PYTHON "Wrap GDCM classes into the Python language." OFF)
\r
94 IF(GDCM_WRAP_PYTHON)
\r
95 # Search Python libs:
\r
96 FIND_PACKAGE(PythonLibs)
\r
97 # If PythonLibs found
\r
100 ENDIF(PYTHON_LIBRARY)
\r
101 ENDIF(GDCM_WRAP_PYTHON)
\r
103 #-----------------------------------------------------------------------------
\r
104 OPTION(GDCM_DOXYGEN "Build source documentation using doxygen." OFF)
\r
105 # if doxygen enable
\r
108 FIND_PACKAGE(Doxygen)
\r
112 ENDIF(GDCM_DOXYGEN)
\r
114 #-----------------------------------------------------------------------------
\r
115 # Configure files with settings for use by the build.
\r
116 # for third party to access gdcm through cmake
\r
117 # to be rewritten to include only the necessary
\r
120 ${GDCM_SOURCE_DIR}/gdcmConfig.cmake.in
\r
121 ${GDCM_BINARY_DIR}/gdcmConfig.cmake @ONLY IMMEDIATE
\r
124 # Export uor build settings and library
\r
125 # dependencies for the use by the user projects.
\r
127 ${CMAKE_ROOT}/Modules/CMakeExportBuildSettings.cmake)
\r
129 CMAKE_EXPORT_BUILD_SETTINGS(
\r
130 ${GDCM_BINARY_DIR}/gdcmBuildSettings.cmake
\r
133 EXPORT_LIBRARY_DEPENDENCIES(
\r
134 ${GDCM_BINARY_DIR}/gdcmLibraryDepends.cmake
\r
137 # Intall the packaging files for use by FIND_PACKAGE(GDCM) in user projects.
\r
138 INSTALL_FILES(/lin/gdcm FILES
\r
139 ${GDCM_SOURCE_DIR}/gdcmUse.cmake
\r
140 ${GDCM_BINARY_DIR}/gdcmConfig.cmake
\r
141 ${GDCM_BINARY_DIR}/gdcmBuildSettings.cmake
\r
142 ${GDCM_BINARY_DIR}/gdcmLibraryDepends.cmake
\r
145 #-----------------------------------------------------------------------------
\r
146 # Copy / paste from old m4 script:
\r
160 # $(MAKE) dist distdir=$(PACKAGE)-$(VERSION)
\r
163 # $(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"`
\r