]> Creatis software - cpPlugins.git/blobdiff - cmake/cpPluginsConfig.cmake.in
...
[cpPlugins.git] / cmake / cpPluginsConfig.cmake.in
index 7367ed0a9a75f8b6b8008d4ea91f7cc8097b3ece..b6fad2d873b10a930e348dbff8602fbc2029c860 100644 (file)
-FIND_PATH(
-  cpPlugins_INCLUDE_DIR1
-  cpPlugins/Interface/Interface.h
-  PATHS
-  /usr/include
-  /usr/local/include
-  @PROJECT_SOURCE_DIR@/lib
-  @PROJECT_BINARY_DIR@/lib
-  @CMAKE_INSTALL_PREFIX@/include
-  )
+## ================================
+## == Find cpPlugins-cmake tools ==
+## ================================
 
-FIND_PATH(
-  cpPlugins_INCLUDE_DIR2
-  cpPlugins/Interface/cpPlugins_Interface_Export.h
-  PATHS
-  /usr/include
-  /usr/local/include
-  @PROJECT_SOURCE_DIR@/lib
-  @PROJECT_BINARY_DIR@/lib
-  @CMAKE_INSTALL_PREFIX@/include
-  )
+IF("@Qt4_FOUND@" STREQUAL "TRUE")
+  SET(USE_QT4 ON)
+ENDIF("@Qt4_FOUND@" STREQUAL "TRUE")
 
-FIND_PATH(
-  cpPlugins_INCLUDE_DIR3
-  Pluma/Pluma.hpp
-  PATHS
-  /usr/include
-  /usr/local/include
-  @PROJECT_SOURCE_DIR@/lib/third_party
-  @PROJECT_BINARY_DIR@/lib/third_party
-  @CMAKE_INSTALL_PREFIX@/include
-  )
+## ====================
+## == Find libraries ==
+## ====================
 
-FIND_PATH(
-  cpPlugins_INCLUDE_DIR4
-  Pluma/cpPlugins_Pluma_Export.h
-  PATHS
-  /usr/include
-  /usr/local/include
-  @PROJECT_SOURCE_DIR@/lib/third_party
-  @PROJECT_BINARY_DIR@/lib/third_party
-  @CMAKE_INSTALL_PREFIX@/include
-  )
+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)
 
-FIND_PATH(
-  cpPlugins_INCLUDE_DIR5
-  itkImageToVTKImageFilter.h
-  PATHS
-  /usr/include
-  /usr/local/include
-  @PROJECT_SOURCE_DIR@/lib/third_party/ItkVtkGlue
-  @PROJECT_BINARY_DIR@/lib/third_party/ItkVtkGlue
-  @CMAKE_INSTALL_PREFIX@/include
-  )
+SET(_all_libs ${cpPlugins_BaseLibraries} ${cpPlugins_Instances})
 
-INCLUDE_DIRECTORIES(
-  ${cpPlugins_INCLUDE_DIR1}
-  ${cpPlugins_INCLUDE_DIR2}
-  ${cpPlugins_INCLUDE_DIR3}
-  ${cpPlugins_INCLUDE_DIR4}
-  ${cpPlugins_INCLUDE_DIR5}
-  )
+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_LIBRARY(
-  cpPlugins_Interface_LIBRARY_NAME
-  cpPlugins_Interface
-  PATHS
-  /usr/lib
-  /usr/local/lib
-  @PROJECT_BINARY_DIR@
-  @CMAKE_INSTALL_PREFIX@/lib
-  )
+## ==============================
+## == Find include directories ==
+## ==============================
 
-FIND_LIBRARY(
-  cpPlugins_Extensions_LIBRARY_NAME
-  cpPlugins_Extensions
-  PATHS
-  /usr/lib
-  /usr/local/lib
+## 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@
-  @CMAKE_INSTALL_PREFIX@/lib
+  @PROJECT_SOURCE_DIR@/lib
+  @PROJECT_BINARY_DIR@/lib
+  @PROJECT_SOURCE_DIR@/lib/Instances
+  @PROJECT_BINARY_DIR@/lib/Instances
   )
 
-FIND_LIBRARY(
-  cpPlugins_LIBRARY_NAME
-  cpPlugins
-  PATHS
-  /usr/lib
-  /usr/local/lib
-  @PROJECT_BINARY_DIR@
-  @CMAKE_INSTALL_PREFIX@/lib
-  )
+## ============================
+## == Find bash applications ==
+## ============================
 
 SET(
-  cpPlugins_Interface_INCLUDE_DIRS
-  ${cpPlugins_INCLUDE_DIR1}
-  ${cpPlugins_INCLUDE_DIR2}
-  ${cpPlugins_INCLUDE_DIR2}
-  )
-SET(
-  cpPlugins_Interface_LIBRARIES
-  ${cpPlugins_Interface_LIBRARY_NAME}
-  ${cpPlugins_Extensions_LIBRARY_NAME}
-  )
-SET(
-  cpPlugins_LIBRARIES
-  ${cpPlugins_LIBRARY_NAME}
+  _exec_programs
+  "@cpPlugins_bash_CreateRealConfig_APP@"
+  "@cpPlugins_bash_CreateInstances_APP@"
+  "@cpPlugins_bash_CreateDemanglers_APP@"
+  "@cpPlugins_bash_CreatePlugins_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)
+
+## ==========================
+## == 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$