]> Creatis software - cpPlugins.git/blobdiff - cmake/cpPluginsConfig.cmake.in
...
[cpPlugins.git] / cmake / cpPluginsConfig.cmake.in
index 42871e9433403f95c0a3dfd1878f0a5b1fab7500..4f79456d9ccf96211a248c8c217105fe5cac392a 100644 (file)
@@ -1,48 +1,92 @@
-## =================================
-## == Find installation directory ==
-## =================================
+## ================================
+## == Find cpPlugins-cmake tools ==
+## ================================
 
-FIND_FILE(
-  cpPlugins_FUNCTIONS
-  NAMES cpPlugins_Functions.cmake
-  HINTS /usr/share/cmake /usr/local/share/cmake
-  PATHS @CMAKE_INSTALL_PREFIX@/share/cmake @PROJECT_SOURCE_DIR@/cmake
-  DOC "Where is \"cpPlugins_Functions.cmake\"?"
-  )
-IF(NOT cpPlugins_FUNCTIONS)
-  MESSAGE(FATAL_ERROR "Where is \"cpPlugins_Functions.cmake\"?")
-ENDIF(NOT cpPlugins_FUNCTIONS)
-GET_FILENAME_COMPONENT(
-  cpPlugins_FUNCTIONS_ABSOLUTE ${cpPlugins_FUNCTIONS}
-  ABSOLUTE
-  )
-GET_FILENAME_COMPONENT(
-  cpPlugins_CMAKE_DIR ${cpPlugins_FUNCTIONS_ABSOLUTE}
-  DIRECTORY
-  )
+IF("@Qt4_FOUND@" STREQUAL "TRUE")
+  SET(USE_QT4 ON)
+ENDIF("@Qt4_FOUND@" STREQUAL "TRUE")
 
-## ===========================
-## == Include cmake scripts ==
-## ===========================
+## ====================
+## == Find libraries ==
+## ====================
+SET(
+  _all_libs
+  "@cpPlugins_tinyxml2_LIB@"
+  "@cpPlugins_QCustomPlot_LIB@"
+  "@cpExtensions_LIB@"
+  "@cpPlugins_LIB@"
+  "@cpBaseQtApplication_LIB@"
+  "@cpPlugins_Instances@"
+  )
+SET(cpPlugins_Instances "@cpPlugins_Instances@")
 
-INCLUDE(${cpPlugins_FUNCTIONS})
-INCLUDE(${cpPlugins_CMAKE_DIR}/cpPlugins_Options.cmake)
+SET(_l_locations)
+FOREACH(_l ${_all_libs})
+  IF(MSVC)
+    FIND_LIBRARY(
+      ${_l}_LIB NAMES ${_l}
+      HINTS
+      @PROJECT_BINARY_DIR@/$(ConfigurationName)
+      @CMAKE_INSTALL_PREFIX@/bin
+      @CMAKE_INSTALL_PREFIX@/lib
+      )
+  ELSE(MSVC)
+    FIND_LIBRARY(
+      ${_l}_LIB NAMES ${_l}
+      HINTS
+      @PROJECT_BINARY_DIR@
+      @CMAKE_INSTALL_PREFIX@/bin
+      @CMAKE_INSTALL_PREFIX@/lib
+      )
+  ENDIF(MSVC)
+  IF(${_l}_LIB)
+    MARK_AS_ADVANCED(FORCE ${_l}_LIB)
+    GET_FILENAME_COMPONENT(_dir ${${_l}_LIB} DIRECTORY)
+    LIST(APPEND _l_locations ${_dir})
+  ENDIF(${_l}_LIB)
+ENDFOREACH(_l)
+IF(_l_locations)
+  LIST(REMOVE_DUPLICATES _l_locations)
+  LINK_DIRECTORIES(${_l_locations})
+ENDIF(_l_locations)
 
-SET(ITK_DIR @ITK_DIR@)
-SET(VTK_DIR @VTK_DIR@)
-INCLUDE(${cpPlugins_CMAKE_DIR}/cpPlugins_KitwareTools.cmake)
+## ============================
+## == Find bash applications ==
+## ============================
 
-SET(USE_QT4 "@QT4_FOUND@")
-IF(USE_QT4 EQUAL "1")
-  INCLUDE(${cpPlugins_CMAKE_DIR}/cpPlugins_Qt4Tools.cmake)
-  cpPlugins_FindQt4()
-  SET(QT_QMAKE_EXECUTABLE @QT_QMAKE_EXECUTABLE@)
-ENDIF(USE_QT4 EQUAL "1")
+SET(
+  _exec_programs
+  "@cpPlugins_bash_BuildInstances_APP@"
+  "@cpPlugins_bash_HostCreator_APP@"
+  )
+FOREACH(_prog ${_exec_programs})
+  IF(MSVC)
+    FIND_PROGRAM(
+      ${_prog}_APP
+      NAMES ${_prog}
+      HINTS /usr /usr/local
+      PATHS @CMAKE_INSTALL_PREFIX@/bin @PROJECT_BINARY_DIR@/$(ConfigurationName)
+      PATH_SUFFIXES bin sbin
+      DOC "Where is ${_prog}?"
+      )
+  ELSE(MSVC)
+    FIND_PROGRAM(
+      ${_prog}_APP
+      NAMES ${_prog}
+      HINTS /usr /usr/local
+      PATHS @CMAKE_INSTALL_PREFIX@/bin @PROJECT_BINARY_DIR@
+      PATH_SUFFIXES bin sbin
+      DOC "Where is ${_prog}?"
+      )
+  ENDIF(MSVC)
+  MARK_AS_ADVANCED(FORCE ${_prog}_APP)
+ENDFOREACH(_prog)
 
 ## =========================
 ## == Include directories ==
 ## =========================
 
+## TODO: this is not completely correct!!!
 INCLUDE_DIRECTORIES(
   @CMAKE_INSTALL_PREFIX@/include
   @CMAKE_INSTALL_PREFIX@/include/cpPlugins/Itk2Vtk
@@ -57,62 +101,20 @@ INCLUDE_DIRECTORIES(
   @PROJECT_BINARY_DIR@/lib/Instances
   )
 
-## =========================
-## == Library directories ==
-## =========================
-
-IF(MSVC)
-  LINK_DIRECTORIES(
-    @PROJECT_BINARY_DIR@/$(ConfigurationName)
-    @CMAKE_INSTALL_PREFIX@/bin
-    @CMAKE_INSTALL_PREFIX@/lib
-    )
-ELSE(MSVC)
-  LINK_DIRECTORIES(
-    @PROJECT_BINARY_DIR@
-    @CMAKE_INSTALL_PREFIX@/bin
-    @CMAKE_INSTALL_PREFIX@/lib
-    )
-ENDIF(MSVC)
+## ==========================
+## == Configuration values ==
+## ==========================
 
-## ===================
-## == Library names ==
-## ===================
+SET(cpPlugins_NUMBER_OF_FILES @cpPlugins_NUMBER_OF_FILES@ CACHE STRING "Internal")
+SET(cpPlugins_INTEGER_TYPES @cpPlugins_INTEGER_TYPES@ CACHE STRING "Internal")
+SET(cpPlugins_REAL_TYPES @cpPlugins_REAL_TYPES@ CACHE STRING "Internal")
+SET(cpPlugins_PROCESS_DIMENSIONS @cpPlugins_PROCESS_DIMENSIONS@ CACHE STRING "Internal")
+SET(cpPlugins_VISUAL_DIMENSIONS @cpPlugins_VISUAL_DIMENSIONS@ CACHE STRING "Internal")
 
-SET(cpPlugins_tinyxml2_LIB "@cpPlugins_tinyxml2_LIB@")
-SET(cpExtensions_LIB "@cpExtensions_LIB@")
-SET(cpPlugins_LIB "@cpPlugins_LIB@")
-SET(cpBaseQtApplication_LIB "@cpBaseQtApplication_LIB@")
-SET(cpPlugins_Instances "@cpPlugins_Instances@")
-
-## ======================
-## == Executable names ==
-## ======================
-SET(
-  exec_PROGRAMS
-  cpPlugins_CreateInstances
-  cpPlugins_HostCreator
-  )
-FOREACH(prog ${exec_PROGRAMS})
-  IF(MSVC)
-    FIND_PROGRAM(
-      ${prog}_APP
-      NAMES ${prog}
-      HINTS /usr /usr/local
-      PATHS @CMAKE_INSTALL_PREFIX@/bin @PROJECT_BINARY_DIR@/Debug @PROJECT_BINARY_DIR@/Release @PROJECT_BINARY_DIR@/MinSizeRel @PROJECT_BINARY_DIR@/RelWithDebInfo
-      PATH_SUFFIXES bin sbin
-      DOC "Where is ${prog}?"
-      )
-  ELSE(MSVC)
-    FIND_PROGRAM(
-      ${prog}_APP
-      NAMES ${prog}
-      HINTS /usr /usr/local
-      PATHS @CMAKE_INSTALL_PREFIX@/bin @PROJECT_BINARY_DIR@
-      PATH_SUFFIXES bin sbin
-      DOC "Where is ${prog}?"
-      )
-  ENDIF(MSVC)
-ENDFOREACH(prog)
+MARK_AS_ADVANCED(FORCE cpPlugins_NUMBER_OF_FILES)
+MARK_AS_ADVANCED(FORCE cpPlugins_INTEGER_TYPES)
+MARK_AS_ADVANCED(FORCE cpPlugins_REAL_TYPES)
+MARK_AS_ADVANCED(FORCE cpPlugins_PROCESS_DIMENSIONS)
+MARK_AS_ADVANCED(FORCE cpPlugins_VISUAL_DIMENSIONS)
 
 ## eof - $RCSfile$