]> Creatis software - cpPlugins.git/blobdiff - lib/CMakeLists.txt
...
[cpPlugins.git] / lib / CMakeLists.txt
index 4caae27003d6959d58e79016c4bc7201a627748d..e22264656433090548ba477665e65bc5c5b73f63 100644 (file)
@@ -1,21 +1,3 @@
-## ====================
-## == 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 ==
@@ -23,50 +5,52 @@ TARGET_LINK_LIBRARIES(cpExtensions ${ITK_LIBRARIES} ${VTK_LIBRARIES} ${QT_LIBRAR
 
 SUBDIRS(Instances)
 
-## ========================
-## == Build main library ==
-## ========================
+## ===========================
+## == Third party libraries ==
+## ===========================
 
-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})
+CompileLibFromDir(cp_tinyxml2 SHARED tinyxml2)
+IF(USE_QT4)
+  CompileLibFromDir(cp_QCustomPlot SHARED QCustomPlot)
+  TARGET_LINK_LIBRARIES(cp_QCustomPlot ${QT_LIBRARIES})
+ENDIF(USE_QT4)
 
-## ======================
-## == Build Qt library ==
-## ======================
+## ==================
+## == Main library ==
+## ==================
 
-IF(Qt4_FOUND)
-  LibFromDir(cpBaseQtApplication ${PROJECT_BINARY_DIR}/lib SHARED ${_dir}/cpBaseQtApplication ${_ver})
-  TARGET_LINK_LIBRARIES(cpBaseQtApplication ${cpPlugins_LIB})
-ENDIF(Qt4_FOUND)
+ADD_CUSTOM_COMMAND(
+  OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h
+  COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins
+  COMMAND ${cpPlugins_bash_CreateRealConfig_APP} ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h
+  DEPENDS ${cpPlugins_bash_CreateRealConfig_APP}
+  )
+CompileLibFromDir(
+  cpPlugins SHARED cpPlugins
+  ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h
+  )
+TARGET_LINK_LIBRARIES(
+  cpPlugins
+  cp_tinyxml2
+  ${QT_LIBRARIES} ${ITK_LIBRARIES} ${VTK_LIBRARIES}
+  ${cpPlugins_Instances}
+  )
 
-## ===================================
-## == Libraries to dynamically load ==
-## ===================================
+## =====================
+## == Other libraries ==
+## =====================
 
-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)
+CompileLibFromDir(cpExtensions SHARED cpExtensions)
+TARGET_LINK_LIBRARIES(
+  cpExtensions
+  ${QT_LIBRARIES} ${ITK_LIBRARIES} ${VTK_LIBRARIES}
+  )
+IF(USE_QT4)
+  CompileLibFromDir(cpBaseQtApplication SHARED cpBaseQtApplication)
+  TARGET_LINK_LIBRARIES(
+    cpBaseQtApplication
+    cpPlugins cpExtensions
+  )
+ENDIF(USE_QT4)
 
 ## eof - $RCSfile$