]> Creatis software - cpPlugins.git/blobdiff - lib/cpExtensions/CMakeLists.txt
Installation system updated.
[cpPlugins.git] / lib / cpExtensions / CMakeLists.txt
index 8819756bfda67e484662e5532894dd6c76e36b86..07b7e420f9eb1dcb1a60121df2846a7803987af0 100644 (file)
@@ -4,40 +4,52 @@ SET(LIBRARY_NAME cpExtensions)
 ## = Source code =
 ## ===============
 
-FILE(GLOB LIB_HEADERS_H   "*.h")
-FILE(GLOB LIB_HEADERS_HPP "*.hpp")
-FILE(GLOB LIB_HEADERS_HXX "*.hxx")
-FILE(GLOB LIB_SOURCES_C   "*.c")
-FILE(GLOB LIB_SOURCES_CPP "*.cpp")
-FILE(GLOB LIB_SOURCES_CXX "*.cxx")
+SET(LIB_HEADERS_H   "")
+SET(LIB_HEADERS_HPP "")
+SET(LIB_HEADERS_HXX "")
+SET(LIB_SOURCES_C   "")
+SET(LIB_SOURCES_CPP "")
+SET(LIB_SOURCES_CXX "")
 
-FILE(GLOB LIB_DataStructures_HEADERS_H   "DataStructures/*.h")
-FILE(GLOB LIB_DataStructures_HEADERS_HPP "DataStructures/*.hpp")
-FILE(GLOB LIB_DataStructures_HEADERS_HXX "DataStructures/*.hxx")
-FILE(GLOB LIB_DataStructures_SOURCES_C   "DataStructures/*.c")
-FILE(GLOB LIB_DataStructures_SOURCES_CPP "DataStructures/*.cpp")
-FILE(GLOB LIB_DataStructures_SOURCES_CXX "DataStructures/*.cxx")
-
-FILE(GLOB LIB_Algorithms_HEADERS_H   "Algorithms/*.h")
-FILE(GLOB LIB_Algorithms_HEADERS_HPP "Algorithms/*.hpp")
-FILE(GLOB LIB_Algorithms_HEADERS_HXX "Algorithms/*.hxx")
-FILE(GLOB LIB_Algorithms_SOURCES_C   "Algorithms/*.c")
-FILE(GLOB LIB_Algorithms_SOURCES_CPP "Algorithms/*.cpp")
-FILE(GLOB LIB_Algorithms_SOURCES_CXX "Algorithms/*.cxx")
+SET(
+  lib_DIRECTORIES
+  .
+  DataStructures
+  Algorithms
+  IO
+  Visualization
+  )
+FOREACH(dir ${lib_DIRECTORIES})
+  FILE(GLOB dir_LIB_HEADERS_H   "${dir}/*.h")
+  FILE(GLOB dir_LIB_HEADERS_HPP "${dir}/*.hpp")
+  FILE(GLOB dir_LIB_HEADERS_HXX "${dir}/*.hxx")
+  FILE(GLOB dir_LIB_SOURCES_C   "${dir}/*.c")
+  FILE(GLOB dir_LIB_SOURCES_CPP "${dir}/*.cpp")
+  FILE(GLOB dir_LIB_SOURCES_CXX "${dir}/*.cxx")
 
-FILE(GLOB LIB_IO_HEADERS_H   "IO/*.h")
-FILE(GLOB LIB_IO_HEADERS_HPP "IO/*.hpp")
-FILE(GLOB LIB_IO_HEADERS_HXX "IO/*.hxx")
-FILE(GLOB LIB_IO_SOURCES_C   "IO/*.c")
-FILE(GLOB LIB_IO_SOURCES_CPP "IO/*.cpp")
-FILE(GLOB LIB_IO_SOURCES_CXX "IO/*.cxx")
+  SET(LIB_HEADERS_H   "${LIB_HEADERS_H};${dir_LIB_HEADERS_H}")
+  SET(LIB_HEADERS_HPP "${LIB_HEADERS_HPP};${dir_LIB_HEADERS_HPP}")
+  SET(LIB_HEADERS_HXX "${LIB_HEADERS_HXX};${dir_LIB_HEADERS_HXX}")
+  SET(LIB_SOURCES_C   "${LIB_SOURCES_C};${dir_LIB_SOURCES_C}")
+  SET(LIB_SOURCES_CPP "${LIB_SOURCES_CPP};${dir_LIB_SOURCES_CPP}")
+  SET(LIB_SOURCES_CXX "${LIB_SOURCES_CXX};${dir_LIB_SOURCES_CXX}")
 
-FILE(GLOB LIB_Visualization_HEADERS_H   "Visualization/*.h")
-FILE(GLOB LIB_Visualization_HEADERS_HPP "Visualization/*.hpp")
-FILE(GLOB LIB_Visualization_HEADERS_HXX "Visualization/*.hxx")
-FILE(GLOB LIB_Visualization_SOURCES_C   "Visualization/*.c")
-FILE(GLOB LIB_Visualization_SOURCES_CPP "Visualization/*.cpp")
-FILE(GLOB LIB_Visualization_SOURCES_CXX "Visualization/*.cxx")
+  INSTALL(
+    DIRECTORY ${dir}
+    DESTINATION include/cpExtensions
+    FILES_MATCHING PATTERN "*.h"
+    )
+  INSTALL(
+    DIRECTORY ${dir}
+    DESTINATION include/cpExtensions
+    FILES_MATCHING PATTERN "*.hpp"
+    )
+  INSTALL(
+    DIRECTORY ${dir}
+    DESTINATION include/cpExtensions
+    FILES_MATCHING PATTERN "*.hxx"
+    )
+ENDFOREACH(dir)
 
 ## =====================
 ## = Compilation rules =
@@ -49,18 +61,6 @@ ADD_LIBRARY(
   ${LIB_SOURCES_C}
   ${LIB_SOURCES_CPP}
   ${LIB_SOURCES_CXX}
-  ${LIB_DataStructures_SOURCES_C}
-  ${LIB_DataStructures_SOURCES_CPP}
-  ${LIB_DataStructures_SOURCES_CXX}
-  ${LIB_Algorithms_SOURCES_C}
-  ${LIB_Algorithms_SOURCES_CPP}
-  ${LIB_Algorithms_SOURCES_CXX}
-  ${LIB_IO_SOURCES_C}
-  ${LIB_IO_SOURCES_CPP}
-  ${LIB_IO_SOURCES_CXX}
-  ${LIB_Visualization_SOURCES_C}
-  ${LIB_Visualization_SOURCES_CPP}
-  ${LIB_Visualization_SOURCES_CXX}
   )
 GENERATE_EXPORT_HEADER(
   ${LIBRARY_NAME}
@@ -85,31 +85,6 @@ INSTALL(
   LIBRARY DESTINATION lib
   ARCHIVE DESTINATION lib/static
   )
-SET(
-  local_install_dirs
-  Algorithms
-  DataStructures
-  IO
-  Visualization
-  )
-FOREACH(dir ${local_install_dirs})
-  INSTALL(
-    DIRECTORY ${dir}
-    DESTINATION include/cpExtensions
-    FILES_MATCHING PATTERN "*.h"
-    )
-  INSTALL(
-    DIRECTORY ${dir}
-    DESTINATION include/cpExtensions
-    FILES_MATCHING PATTERN "*.hxx"
-    )
-  INSTALL(
-    DIRECTORY ${dir}
-    DESTINATION include/cpExtensions
-    FILES_MATCHING PATTERN "*.hpp"
-    )
-ENDFOREACH(dir)
-
 INSTALL(
   FILES
   ${PROJECT_BINARY_DIR}/lib/cpExtensions/${LIBRARY_NAME}_Export.h