## ==================== ## == Some variables == ## ==================== SET(_dir ${CMAKE_CURRENT_SOURCE_DIR}) SET(_ver "${prj_VERSION}" "${prj_SHORT_VERSION}") ## =========================== ## == Third party libraries == ## =========================== LibFromDir(cpPlugins_tinyxml2 ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/tinyxml2 ${_ver}) IF(Qt4_FOUND) LibFromDir(cpPlugins_QCustomPlot ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/QCustomPlot ${_ver}) TARGET_LINK_LIBRARIES(cpPlugins_QCustomPlot ${QT_LIBRARIES}) ENDIF(Qt4_FOUND) LibFromDir(cpExtensions ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/cpExtensions ${_ver}) TARGET_LINK_LIBRARIES(cpExtensions ${ITK_LIBRARIES} ${VTK_LIBRARIES} ${QT_LIBRARIES}) ## ===================== ## == Build instances == ## ===================== SUBDIRS(Instances) ## ======================== ## == Build main library == ## ======================== SET(_demangle_dir "${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/BaseObjects") ADD_CUSTOM_COMMAND( OUTPUT "${_demangle_dir}/DemangleBase.h" COMMAND ${CMAKE_COMMAND} -E make_directory ${_demangle_dir} COMMAND ${cpPlugins_bash_BuildDemangleHeader_APP} "${_demangle_dir}/DemangleBase.h" DEPENDS ${cpPlugins_bash_BuildDemangleHeader_APP} ) LibFromDir(cpPlugins ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/cpPlugins ${_ver} ${_demangle_dir}/DemangleBase.h) TARGET_LINK_LIBRARIES(cpPlugins cpPlugins_tinyxml2 cpExtensions ${cpPlugins_Instances}) ## ====================== ## == Build Qt library == ## ====================== IF(Qt4_FOUND) LibFromDir(cpBaseQtApplication ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/cpBaseQtApplication ${_ver}) TARGET_LINK_LIBRARIES(cpBaseQtApplication ${cpPlugins_LIB}) ENDIF(Qt4_FOUND) ## =================================== ## == Libraries to dynamically load == ## =================================== SET(cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/bin|cpExtensions") LIST(APPEND cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/lib|cpExtensions") LIST(APPEND cpPlugins_DynLibs "${LIBRARY_OUTPUT_PATH}|cpExtensions") FOREACH(_lib ${cpPlugins_Instances}) LIST(APPEND cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/bin|${_lib}") LIST(APPEND cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/lib|${_lib}") LIST(APPEND cpPlugins_DynLibs "${LIBRARY_OUTPUT_PATH}|${_lib}") ENDFOREACH(_lib) LIST(APPEND cpPlugins_DynLibs "${VTK_INSTALL_PREFIX}/bin|vtk*") LIST(APPEND cpPlugins_DynLibs "${VTK_INSTALL_PREFIX}/lib|vtk*") LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/bin|itk*") LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/lib|itk*") LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/bin|ITK*") LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/lib|ITK*") FILE(WRITE ${PROJECT_BINARY_DIR}/cpPlugins_Libraries.config "") FOREACH(_lib ${cpPlugins_DynLibs}) FILE(APPEND ${PROJECT_BINARY_DIR}/cpPlugins_Libraries.config "${_lib}\n") ENDFOREACH(_lib) ## eof - $RCSfile$