]> Creatis software - cpPlugins.git/blobdiff - lib/CMakeLists.txt
...
[cpPlugins.git] / lib / CMakeLists.txt
index f10db6baea6d6623727d25687114a252a71bebfc..6d0c6f9fd948e6e99e7e7b4621b47ef0b6c8ed92 100644 (file)
@@ -1,22 +1,19 @@
-## ====================
-## == Base libraries ==
-## ====================
+
+## =====================
+## == Build instances ==
+## =====================
+
+SUBDIRS(Instances)
+
+## ===========================
+## == Third party libraries ==
+## ===========================
 
 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}
-  )
-
-## ===============
-## == Instances ==
-## ===============
-
-SUBDIRS(Instances)
 
 ## ==================
 ## == Main library ==
@@ -28,44 +25,84 @@ ADD_CUSTOM_COMMAND(
   COMMAND ${cpPlugins_bash_CreateRealConfig_APP} ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h
   DEPENDS ${cpPlugins_bash_CreateRealConfig_APP}
   )
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/Instances)
-CompileLibFromDir(cpPlugins SHARED cpPlugins ${CMAKE_CURRENT_BINARY_DIR}/cpPlugins/RealConfig.h)
+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}
   )
 
-## =========================
-## == Even more libraries ==
-## =========================
+## =====================
+## == Other libraries ==
+## =====================
 
-CompileLibFromDir(cpBaseQtApplication SHARED cpBaseQtApplication)
-TARGET_LINK_LIBRARIES(cpBaseQtApplication cpPlugins)
+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)
+
+CompileLibFromDir(cpPluginsExtensions SHARED cpPluginsExtensions)
+TARGET_LINK_LIBRARIES(cpPluginsExtensions cpPlugins cpExtensions)
+
+## ====================
+## == Base libraries ==
+## ====================
+
+IF(USE_QT4)
+  SET(
+    cpPlugins_BaseLibraries
+    cp_tinyxml2
+    cp_QCustomPlot
+    cpExtensions
+    cpPlugins
+    CACHE INTERNAL "All locally compiled libraries." FORCE
+    )
+ELSE(USE_QT4)
+  SET(
+    cpPlugins_BaseLibraries
+    cp_tinyxml2
+    cpExtensions
+    cpPlugins
+    CACHE INTERNAL "All locally compiled libraries." FORCE
+    )
+ENDIF(USE_QT4)
 
 ## ===================================
 ## == 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")
+SET(_pre ${CMAKE_SHARED_LIBRARY_PREFIX})
+SET(_suf ${CMAKE_SHARED_LIBRARY_SUFFIX})
+
+SET(cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/bin/${_pre}cpExtensions${_suf}")
+LIST(APPEND cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/lib/${_pre}cpExtensions${_suf}")
+LIST(APPEND cpPlugins_DynLibs "${LIBRARY_OUTPUT_PATH}/${_pre}cpExtensions${_suf}")
 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}")
+  LIST(APPEND cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/bin/${_pre}${_lib}${_suf}")
+  LIST(APPEND cpPlugins_DynLibs "${CMAKE_INSTALL_PREFIX}/lib/${_pre}${_lib}${_suf}")
+  LIST(APPEND cpPlugins_DynLibs "${LIBRARY_OUTPUT_PATH}/${_pre}${_lib}${_suf}")
 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*")
+LIST(APPEND cpPlugins_DynLibs "${VTK_INSTALL_PREFIX}/bin/*vtk*${_suf}")
+LIST(APPEND cpPlugins_DynLibs "${VTK_INSTALL_PREFIX}/lib/*vtk*${_suf}")
+LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/bin/*itk*${_suf}")
+LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/lib/*itk*${_suf}")
+LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/bin/*ITK*${_suf}")
+LIST(APPEND cpPlugins_DynLibs "${ITK_INSTALL_PREFIX}/lib/*ITK*${_suf}")
 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 - $RCSfilfe$
+## eof - $RCSfile$