1
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
5
SET( GINKGO_VERSION 3.4.0 CACHE STRING "Mayor version number")
6
SET( GINKGO_REVISION 928 CACHE STRING "Incremental revision number")
7
SET( GINKGO_BUILD 29 CACHE STRING "Incremental build number")
9
SET( USE_PATCHED_LIBS FALSE CACHE BOOL "Use patched libraries")
10
SET( BUILD_VISUALIZATION_EXT TRUE CACHE BOOL "Build Visualization extention")
12
SET( USE_SYSTEM_SQLITE TRUE CACHE BOOL "Build with system SQLite library")
13
SET( USE_CUSTOM_WX FALSE CACHE BOOL "Build with custom WX library")
14
SET( USE_CUSTOM_VTK FALSE CACHE BOOL "Build with custom VTK library")
15
SET( USE_CUSTOM_ITK FALSE CACHE BOOL "Build with custom ITK library")
16
SET( USE_CUSTOM_DCMTK FALSE CACHE BOOL "Build with custom DCMTK library")
18
SET( CUSTOM_PACKAGE FALSE CACHE BOOL "Custom package")
19
SET( FORCE_SSE FALSE CACHE BOOL "Force SSE Flag")
20
SET( INTERNET_DIST TRUE CACHE BOOL "Public distribution")
22
SET( CMAKE_OSX_ARCHITECTURES "i386" CACHE STRING "MacOSX Architectures" FORCE)
24
IF(NOT CMAKE_BUILD_TYPE)
25
SET(CMAKE_BUILD_TYPE Release CACHE STRING
26
"Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel."
28
ENDIF(NOT CMAKE_BUILD_TYPE)
31
SET( GINKGO_VERSION_STR ${GINKGO_VERSION}.${GINKGO_REVISION}.${GINKGO_BUILD})
33
#############################################################################################
35
SET(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/CMake)
38
#############################################################################################
40
#doesn't work... using custom build
42
#FIND_PACKAGE(LIBCURL REQUIRED)
44
SET_CUSTOM_libcurl_PACKAGE()
47
FIND_PACKAGE(GTK2 REQUIRED)
51
MESSAGE("Using patched libs")
55
MESSAGE("Using system wxWidgets")
56
FIND_PACKAGE(wxWidgets 2.8.11 COMPONENTS core base gl net xml aui adv richtext xrc REQUIRED)
58
MESSAGE("Using custom wxWidgets")
59
SET_CUSTOM_wxWidgets_PACKAGE()
62
IF(NOT USE_CUSTOM_VTK)
63
MESSAGE("Using system VTK")
64
FIND_PACKAGE(VTK REQUIRED)
66
MESSAGE("Using custom VTK")
67
SET_CUSTOM_VTK_PACKAGE()
70
IF(NOT USE_CUSTOM_ITK)
71
MESSAGE("Using system ITK")
72
FIND_PACKAGE(ITK REQUIRED)
74
MESSAGE("Using custom ITK")
75
SET_CUSTOM_ITK_PACKAGE()
78
IF(NOT USE_CUSTOM_DCMTK)
79
MESSAGE("Using system DCMTK")
80
FIND_PACKAGE(DCMTK 3.6.0 EXACT REQUIRED)
82
MESSAGE("Using custom DCMTK")
83
SET_CUSTOM_DCMTK_PACKAGE()
86
IF(NOT USE_SYSTEM_SQLITE)
87
MESSAGE("Using builtin SQLite")
89
MESSAGE("Using system SQLite")
90
#FIND_PACKAGE(sqlite REQUIRED)
94
#############################################################################################
97
SET(GINKGO_PROJECT "Ginkgo CADx" CACHE PARENT_SCOPE "")
98
ELSEIF(LINUX AND CUSTOM_PACKAGE)
99
SET(GINKGO_PROJECT "ginkgocadx-${ARCH}" CACHE PARENT_SCOPE "")
101
SET(GINKGO_PROJECT "ginkgocadx" CACHE PARENT_SCOPE "")
104
SET(GINKGO_PLUGINS "" CACHE PARENT_SCOPE "")
106
ADD_SUBDIRECTORY(cadxcore)
107
ADD_SUBDIRECTORY(ginkgocadx)
109
IF(BUILD_VISUALIZATION_EXT)
110
ADD_SUBDIRECTORY(visualizator)
113
ADD_CUSTOM_TARGET(${PROJECT_NAME} echo)
115
MESSAGE("Building ${GINKGO_PROJECT} ${GINKGO_VERSION_STR}")
117
ADD_DEPENDENCIES(${PROJECT_NAME} "${GINKGO_PROJECT}")
119
IF(BUILD_VISUALIZATION_EXT)
120
ADD_DEPENDENCIES(${PROJECT_NAME} visualizator)
121
LIST(APPEND GINKGO_PLUGINS "visualizator")
126
SET( DEST "${CMAKE_CURRENT_BINARY_DIR}/dist" )
127
PACKAGE_RULES( "${PROJECT_NAME}" "${ARCH}" "${DEST}" )