]> Creatis software - cpPlugins.git/blobdiff - cmake/cpPluginsConfig.cmake.in
...
[cpPlugins.git] / cmake / cpPluginsConfig.cmake.in
index 734e990200c6f5e8280b75114a971c1ebb7c58dd..ab0456cc23a2a7b52bb3446b846c61a6b654b39c 100644 (file)
-# ===================================
-# -- Some configurations variables --
-# ===================================
-
-SET(USE_QT4 "@QT4_FOUND@")
-
-# =======================
-# -- Find dependencies --
-# =======================
-
-# Find ITK and VTK
-SET(ITK_DIR @ITK_DIR@)
-FIND_PACKAGE(ITK REQUIRED)
-INCLUDE(${ITK_USE_FILE})
-
-SET(VTK_DIR @VTK_DIR@)
-FIND_PACKAGE(VTK REQUIRED)
-INCLUDE(${VTK_USE_FILE})
-
-# Do not use itk-vtk glue --> problems ahead!!!
-IF(ITKVtkGlue_LOADED)
-  MESSAGE(FATAL_ERROR "ITKVtkGlue module is available. Please re-compile your ITK without it. It could lead to nasty compilation problems... Just waiting for Kitware to solve it.")
-ENDIF(ITKVtkGlue_LOADED)
-
-IF(USE_QT4 EQUAL "1")
-  SET(QT_QMAKE_EXECUTABLE @QT_QMAKE_EXECUTABLE@)
-  FIND_PACKAGE(Qt4 REQUIRED)
-  INCLUDE(${QT_USE_FILE})
-
-  ## Check for required vtk-qt4 modules
-  SET(
-    vtk_required_modules
-    vtkGUISupportQt
-    vtkGUISupportQtOpenGL
-    )
-  FOREACH(vtk_module ${vtk_required_modules})
-    IF(NOT ${vtk_module}_LOADED)
-      MESSAGE(
-        FATAL_ERROR
-        "${vtk_module} module is required but not available."
-        )
-    ENDIF(NOT ${vtk_module}_LOADED)
-  ENDFOREACH(vtk_module)
-ENDIF(USE_QT4 EQUAL "1")
-
-
-# =========================
-# -- Include directories --
-# =========================
-
+## ================================
+## == Find cpPlugins-cmake tools ==
+## ================================
+
+IF("@Qt4_FOUND@" STREQUAL "TRUE")
+  SET(USE_QT4 ON)
+ENDIF("@Qt4_FOUND@" STREQUAL "TRUE")
+
+## ====================
+## == Find libraries ==
+## ====================
+
+SET(cpPlugins_BaseLibraries "@cpPlugins_BaseLibraries@" CACHE STRING "Internal")
+SET(cpPlugins_Instances "@cpPlugins_Instances@" CACHE STRING "Internal")
+MARK_AS_ADVANCED(FORCE cpPlugins_BaseLibraries)
+MARK_AS_ADVANCED(FORCE cpPlugins_Instances)
+
+SET(_all_libs ${cpPlugins_BaseLibraries} ${cpPlugins_Instances})
+
+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)
+
+## ==============================
+## == Find include directories ==
+## ==============================
+
+#SET(cpPlugins_All_Headers "@cpPlugins_All_Headers@" CACHE STRING "Internal")
+#MARK_AS_ADVANCED(FORCE cpPlugins_All_Headers)
+#SET(_header_paths
+#  "@PROJECT_SOURCE_DIR@/lib"
+#  "@PROJECT_BINARY_DIR@/lib"
+#  "@PROJECT_SOURCE_DIR@/lib/Instances"
+#  "@PROJECT_BINARY_DIR@/lib/Instances"
+#  "@CMAKE_INSTALL_PREFIX@/include"
+#  )
+#FOREACH(_h ${cpPlugins_All_Headers})
+#  GET_FILENAME_COMPONENT(_h_name ${_h} NAME)
+#  GET_FILENAME_COMPONENT(_h_dir ${_h} DIRECTORY)
+#  FIND_PATH(
+#    _loc_${_h_name} ${_h_name}
+#    HINTS
+#    ${_header_paths}
+#    ${_h_dir}
+#    )
+#  IF(_loc_${_h_name})
+#    LIST(APPEND _header_paths ${_loc_${_h_name}})
+#    LIST(REMOVE_DUPLICATES _header_paths)
+#  ELSE(_loc_${_h_name})
+#    MESSAGE(FATAL_ERROR "Please configure where is ${_h_name}")
+#  ENDIF(_loc_${_h_name})
+#ENDFOREACH(_h ${cpPlugins_All_Headers})
+#MESSAGE(STATUS ${_header_paths})
+
+## TODO: this is not completely correct!!!
 INCLUDE_DIRECTORIES(
+  @CMAKE_INSTALL_PREFIX@/include
+  @CMAKE_INSTALL_PREFIX@/include/cpPlugins/Itk2Vtk
+  @CMAKE_INSTALL_PREFIX@/include/cpPlugins/Instances
+  @PROJECT_SOURCE_DIR@
+  @PROJECT_BINARY_DIR@
   @PROJECT_SOURCE_DIR@/lib
-  @PROJECT_SOURCE_DIR@/lib/third_party
-  @PROJECT_SOURCE_DIR@/lib/ItkVtkGlue
   @PROJECT_BINARY_DIR@/lib
-  @PROJECT_BINARY_DIR@/lib/third_party
-  @PROJECT_BINARY_DIR@/lib/ItkVtkGlue
-  @CMAKE_INSTALL_PREFIX@/include
-  @CMAKE_INSTALL_PREFIX@/include/third_party
-  @CMAKE_INSTALL_PREFIX@/include/ItkVtkGlue
+  @PROJECT_SOURCE_DIR@/lib/Instances
+  @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)
-
-# ===================
-# -- Library names --
-# ===================
-
-SET(cpExtensions_LIBRARY cpExtensions)
-SET(cpPlugins_LIBRARY cpPlugins)
-
-# ======================
-# -- Executable names --
-# ======================
+## ============================
+## == Find bash applications ==
+## ============================
+
+SET(
+  _exec_programs
+  "@cpPlugins_bash_CreateRealConfig_APP@"
+  "@cpPlugins_bash_CreateInstances_APP@"
+  "@cpPlugins_bash_CreateDemanglers_APP@"
+  "@cpPlugins_bash_CreatePlugins_APP@"
+  "@cpPlugins_bash_HostCreator_APP@"
+  )
 
-IF(MSVC)
-  FIND_PROGRAM(
-    cpPlugins_HostCreator_APP
-    NAMES cpPlugins_HostCreator
-    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 cpPlugins_HostCreator?"
-    )
-ELSE(MSVC)
-  FIND_PROGRAM(
-    cpPlugins_HostCreator_APP
-    NAMES cpPlugins_HostCreator
-    HINTS /usr /usr/local
-    PATHS @CMAKE_INSTALL_PREFIX@/bin @PROJECT_BINARY_DIR@
-    PATH_SUFFIXES bin sbin
-    DOC "Where is cpPlugins_HostCreator?"
-    )
-ENDIF(MSVC)
+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)
+
+## ==========================
+## == Configuration values ==
+## ==========================
+
+SET(cpPlugins_CONFIG_NUMBER_OF_FILES @cpPlugins_CONFIG_NUMBER_OF_FILES@ CACHE STRING "Internal")
+SET(cpPlugins_CONFIG_INTEGER_TYPES @cpPlugins_CONFIG_INTEGER_TYPES@ CACHE STRING "Internal")
+SET(cpPlugins_CONFIG_REAL_TYPES @cpPlugins_CONFIG_REAL_TYPES@ CACHE STRING "Internal")
+SET(cpPlugins_CONFIG_PROCESS_DIMENSIONS @cpPlugins_CONFIG_PROCESS_DIMENSIONS@ CACHE STRING "Internal")
+SET(cpPlugins_CONFIG_VISUAL_DIMENSIONS @cpPlugins_CONFIG_VISUAL_DIMENSIONS@ CACHE STRING "Internal")
+
+MARK_AS_ADVANCED(FORCE cpPlugins_CONFIG_NUMBER_OF_FILES)
+MARK_AS_ADVANCED(FORCE cpPlugins_CONFIG_INTEGER_TYPES)
+MARK_AS_ADVANCED(FORCE cpPlugins_CONFIG_REAL_TYPES)
+MARK_AS_ADVANCED(FORCE cpPlugins_CONFIG_PROCESS_DIMENSIONS)
+MARK_AS_ADVANCED(FORCE cpPlugins_CONFIG_VISUAL_DIMENSIONS)
 
 ## eof - $RCSfile$