1 ## ====================
2 ## == Some variables ==
3 ## ====================
5 SET(_dir ${CMAKE_CURRENT_SOURCE_DIR})
6 SET(_ver "${prj_VERSION}" "${prj_SHORT_VERSION}")
8 ## ===========================
9 ## == Third party libraries ==
10 ## ===========================
12 LibFromDir(cpPlugins_tinyxml2 ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/tinyxml2 ${_ver})
14 LibFromDir(cpPlugins_QCustomPlot ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/QCustomPlot ${_ver})
15 TARGET_LINK_LIBRARIES(cpPlugins_QCustomPlot ${QT_LIBRARIES})
17 LibFromDir(cpExtensions ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/cpExtensions ${_ver})
18 TARGET_LINK_LIBRARIES(cpExtensions ${ITK_LIBRARIES} ${VTK_LIBRARIES} ${QT_LIBRARIES})
20 ## =====================
21 ## == Build instances ==
22 ## =====================
26 ## ========================
27 ## == Build main library ==
28 ## ========================
30 SET(_demangle_dir "${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/BaseObjects")
32 OUTPUT "${_demangle_dir}/DemangleBase.h"
33 COMMAND ${CMAKE_COMMAND} -E make_directory ${_demangle_dir}
34 COMMAND ${cpPlugins_bash_BuildDemangleHeader_APP} "${_demangle_dir}/DemangleBase.h"
35 DEPENDS ${cpPlugins_bash_BuildDemangleHeader_APP}
37 LibFromDir(cpPlugins ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/cpPlugins ${_ver} ${_demangle_dir}/DemangleBase.h)
38 TARGET_LINK_LIBRARIES(cpPlugins cpPlugins_tinyxml2 cpExtensions ${cpPlugins_Instances})
40 ## ======================
41 ## == Build Qt library ==
42 ## ======================
45 LibFromDir(cpBaseQtApplication ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/cpBaseQtApplication ${_ver})
46 TARGET_LINK_LIBRARIES(cpBaseQtApplication ${cpPlugins_LIB})
49 ## ===================================
50 ## == Libraries to dynamically load ==
51 ## ===================================
53 SET(cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/bin|cpExtensions")
54 LIST(APPEND cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/lib|cpExtensions")
55 LIST(APPEND cpPlugins_DynLibs "${LIBRARY_OUTPUT_PATH}|cpExtensions")
56 FOREACH(_lib ${cpPlugins_Instances})
57 LIST(APPEND cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/bin|${_lib}")
58 LIST(APPEND cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/lib|${_lib}")
59 LIST(APPEND cpPlugins_DynLibs "${LIBRARY_OUTPUT_PATH}|${_lib}")
61 LIST(APPEND cpPlugins_DynLibs "${VTK_INSTALL_PREFIX}/bin|vtk*")
62 LIST(APPEND cpPlugins_DynLibs "${VTK_INSTALL_PREFIX}/lib|vtk*")
63 LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/bin|itk*")
64 LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/lib|itk*")
65 LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/bin|ITK*")
66 LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/lib|ITK*")
67 FILE(WRITE ${PROJECT_BINARY_DIR}/cpPlugins_Libraries.config "")
68 FOREACH(_lib ${cpPlugins_DynLibs})
69 FILE(APPEND ${PROJECT_BINARY_DIR}/cpPlugins_Libraries.config "${_lib}\n")