X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FCMakeLists.txt;h=e149793dd3ee113f6f813e0a4ad3bfddacb58443;hb=65e11480407fe343b2b56098257e0bb837f75df3;hp=4caae27003d6959d58e79016c4bc7201a627748d;hpb=6a541441b605b00b77d8f8e2b024cc709fda20b9;p=cpPlugins.git diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index 4caae27..e149793 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -1,50 +1,40 @@ ## ==================== -## == Some variables == +## == Base libraries == ## ==================== -SET(_dir ${CMAKE_CURRENT_SOURCE_DIR}) -SET(_ver "${prj_VERSION}" "${prj_SHORT_VERSION}") +CompileLibFromDir(cp_tinyxml2 SHARED tinyxml2) +IF(USE_QT4) + CompileLibFromDir(cp_QCustomPlot SHARED QCustomPlot) + TARGET_LINK_LIBRARIES(cp_QCustomPlot ${QT_LIBRARIES}) +ENDIF(USE_QT4) +CompileLibFromDir(cpExtensions SHARED cpExtensions) +TARGET_LINK_LIBRARIES(cpExtensions ${QT_LIBRARIES} ${ITK_LIBRARIES} ${VTK_LIBRARIES}) -## =========================== -## == 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 == -## ===================== +## =============== +## == 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} +## ================== +## == Main library == +## ================== + +FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h "#ifndef __cpPlugins__RealConfig__h__\n") +FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h "#define __cpPlugins__RealConfig__h__\n\n") +FOREACH(_def ${cpPlugins_ALL_CONFIGS}) + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h "#define ${_def}\n") +ENDFOREACH(_def) +FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h "\n#endif // __cpPlugins__RealConfig__h__\n") +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/Instances) +CompileLibFromDir(cpPlugins SHARED cpPlugins ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h) +TARGET_LINK_LIBRARIES( + cpPlugins + cp_tinyxml2 + cpExtensions + ${QT_LIBRARIES} ${ITK_LIBRARIES} ${VTK_LIBRARIES} + ${cpPlugins_Instances} ) -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 == @@ -69,4 +59,4 @@ FOREACH(_lib ${cpPlugins_DynLibs}) FILE(APPEND ${PROJECT_BINARY_DIR}/cpPlugins_Libraries.config "${_lib}\n") ENDFOREACH(_lib) -## eof - $RCSfile$ +## eof - $RCSfilfe$