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 OPTION(GDCM_VTK "Build VTK-GDCM Lib." OFF)
\r
68 INCLUDE(${VTK_USE_FILE})
\r
73 #-----------------------------------------------------------------------------
\r
74 OPTION(GDCM_WRAP_PYTHON "Wrap GDCM classes into the Python language." OFF)
\r
76 IF(GDCM_WRAP_PYTHON)
\r
77 # Search Python libs:
\r
78 FIND_PACKAGE(PythonLibs)
\r
79 # If PythonLibs found
\r
82 ENDIF(PYTHON_LIBRARY)
\r
83 ENDIF(GDCM_WRAP_PYTHON)
\r
85 #-----------------------------------------------------------------------------
\r
86 OPTION(GDCM_DOXYGEN "Build source documentation using doxygen." OFF)
\r
90 FIND_PACKAGE(Doxygen)
\r
96 #-----------------------------------------------------------------------------
\r
97 # Configure files with settings for use by the build.
\r
98 # for third party to access gdcm through cmake
\r
99 # to be rewritten to include only the necessary
\r
102 ${GDCM_SOURCE_DIR}/gdcmConfig.cmake.in
\r
103 ${GDCM_BINARY_DIR}/gdcmConfig.cmake @ONLY IMMEDIATE
\r
106 # Export uor build settings and library
\r
107 # dependencies for the use by the user projects.
\r
109 ${CMAKE_ROOT}/Modules/CMakeExportBuildSettings.cmake)
\r
111 CMAKE_EXPORT_BUILD_SETTINGS(
\r
112 ${GDCM_BINARY_DIR}/gdcmBuildSettings.cmake
\r
115 EXPORT_LIBRARY_DEPENDENCIES(
\r
116 ${GDCM_BINARY_DIR}/gdcmLibraryDepends.cmake
\r
119 # Intall the âckaging files for use by FIND_PACKAGE(GDCM) in user projects.
\r
120 INSTALL_FILES(/lin/gdcm FILES
\r
121 ${GDCM_SOURCE_DIR}/gdcmUse.cmake
\r
122 ${GDCM_BINARY_DIR}/gdcmConfig.cmake
\r
123 ${GDCM_BINARY_DIR}/gdcmBuildSettings.cmake
\r
124 ${GDCM_BINARY_DIR}/gdcmLibraryDepends.cmake
\r
127 #-----------------------------------------------------------------------------
\r
128 # Copy / paste from old m4 script:
\r
142 # $(MAKE) dist distdir=$(PACKAGE)-$(VERSION)
\r
145 # $(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"`
\r