1
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
5
################ SOURCES ################
7
SET(SRCS fooextension.cpp)
8
AUX_SOURCE_DIRECTORY(fooextension/commands SRCS)
9
AUX_SOURCE_DIRECTORY(fooextension/controllers SRCS)
10
AUX_SOURCE_DIRECTORY(fooextension/gui SRCS)
11
AUX_SOURCE_DIRECTORY(fooextension/gui/importation SRCS)
12
AUX_SOURCE_DIRECTORY(fooextension/studies SRCS)
13
AUX_SOURCE_DIRECTORY(fooextension/views SRCS)
14
AUX_SOURCE_DIRECTORY(fooextension/wxvtk SRCS)
16
################ DEFINITIONS ################
18
ADD_EXTENSION_DEFINITIONS()
20
################ INCLUDE DIRECTORIES ################
22
SET(${PROJECT_NAME}_INCLUDE_DIR
23
${CMAKE_CURRENT_SOURCE_DIR}
27
INCLUDE_DIRECTORIES(${CADxCore_INCLUDE_DIR})
29
INCLUDE_DIRECTORIES(${${PROJECT_NAME}_INCLUDE_DIR})
31
################ TARGET ################
33
IF(LINUX AND NOT CUSTOM_PACKAGE)
34
SET(CMAKE_SKIP_BUILD_RPATH FALSE)
35
SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
36
SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/share/ginkgocadx/bin")
37
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
38
LIST(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/share/ginkgocadx/bin" isSystemDir)
39
IF("${isSystemDir}" STREQUAL "-1")
40
SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/share/ginkgocadx/bin")
44
ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS} )
45
#ADD_EXECUTABLE(${PROJECT_NAME} WIN32 MACOSX_BUNDLE ${SRCS})
46
SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES
47
VERSION "${GINKGO_VERSION}" SOVERSION "${GINKGO_VERSION}"
48
LINK_INTERFACE_LIBRARIES ""
49
INSTALL_RPATH_USE_LINK_PATH TRUE )
50
INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION share/ginkgocadx/bin/Plugins)
52
################ LIBS ################
54
TARGET_LINK_LIBRARIES(${PROJECT_NAME} CADxCore)
57
ADD_DEFINITIONS(${wxWidgets_defines})
58
INCLUDE_DIRECTORIES(${wxWidgets_INCLUDE_DIR})
59
LINK_DIRECTORIES(${wxWidgets_DIR})
61
INCLUDE(${wxWidgets_USE_FILE})
62
#MESSAGE("WXLIBS = ${wxWidgets_LIBRARIES} ")
65
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${wxWidgets_LIBRARIES})
68
ADD_DEFINITIONS(${VTK_defines})
69
INCLUDE_DIRECTORIES(${VTK_INCLUDE_DIR})
70
LINK_DIRECTORIES(${VTK_DIR})
72
INCLUDE(${VTK_USE_FILE})
73
SET(VTK_LIBRARIES vtkCommon vtkGraphics vtkFiltering vtkHybrid vtkIO vtkRendering vtkImaging
74
vtkGenericFiltering vtkWidgets vtkftgl vtkVolumeRendering vtkexoIIc vtkDICOMParser CACHE INTERNAL "")
75
#MESSAGE("VTKLIBS = ${VTK_LIBRARIES}")
78
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${VTK_LIBRARIES})
81
ADD_DEFINITIONS(${ITK_defines})
82
INCLUDE_DIRECTORIES(${ITK_INCLUDE_DIR})
83
LINK_DIRECTORIES(${ITK_DIR})
85
INCLUDE(${ITK_USE_FILE})
86
#MESSAGE("ITKLIBS = ${ITK_LIBRARIES}")
89
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${ITK_LIBRARIES})
91
ADD_DEFINITIONS(${Cairo_defines})
92
INCLUDE_DIRECTORIES(${Cairo_INCLUDE_DIR})
93
LINK_DIRECTORIES(${Cairo_LIB})
94
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${Cairo_LIBRARIES})
96
ADD_DEFINITIONS(${Pixman_defines})
97
INCLUDE_DIRECTORIES(${Pixman_INCLUDE_DIR})
98
LINK_DIRECTORIES(${Pixman_LIB})
99
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${Pixman_LIBRARIES})
102
TARGET_LINK_LIBRARIES(${PROJECT_NAME} GL xml2)
106
FIND_LIBRARY( CARBON_LIB Carbon )
107
FIND_LIBRARY( OPENGL_LIB OpenGL )
109
MARK_AS_ADVANCED( CARBON_LIB OPENGL_LIB )
111
SET(LIBS ${CARBON_LIB} ${OPENGL_LIB} )
112
LIST( APPEND LIBS xml2 z )
114
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${LIBS})
116
SET_TARGET_PROPERTIES( PROPERTIES LINK_FLAGS "-Wl ${XCODE_LINK_FLAGS}" )
120
MESSAGE("OS=[${OS}], Arch=[${ARCH}], Target=[${CMAKE_BUILD_TYPE}], Project=[${PROJECT_NAME}]")