]> Creatis software - cpPlugins.git/blobdiff - lib/cpPlugins_ITKInstances/CMakeLists.txt
More bugs smashed
[cpPlugins.git] / lib / cpPlugins_ITKInstances / CMakeLists.txt
index f246d90e3efffa91cece86de76a3ce3b2771971f..1135fe51493e6dcead28312e57aad0ec0f6aa2b9 100644 (file)
@@ -1,78 +1,89 @@
-## =============================
-## = Set names and directories =
-## =============================
-
-SET(lib_NAME cpPlugins_ITKInstances)
 SET(lib_DIR  cpPlugins_ITKInstances)
-
-## ===============
-## = 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")
-
-# ===================================
-# = Integrate all source file names =
-# ===================================
-
+SET(target_LIBRARIES ${ITK_LIBRARIES} ${VTK_LIBRARIES})
 SET(
-  lib_HEADERS
-  ${lib_HEADERS_H}
-  ${lib_HEADERS_HPP}
-  ${lib_HEADERS_HXX}
+  libs_SOURCES
+  Base
+  Image
+  ImageIterators
+  ImageFilters
   )
-
-SET(
-  lib_SOURCES
-  ${lib_SOURCES_C}
-  ${lib_SOURCES_CPP}
-  ${lib_SOURCES_CXX}
+FOREACH(lib_SRC ${libs_SOURCES})
+  SET(desc_NAME "${lib_SRC}_explicit_description.txt")
+  SET(header_NAME "${CMAKE_CURRENT_BINARY_DIR}/${lib_SRC}.h")
+  SET(source_NAME "${lib_SRC}.cxx")
+  SET(lib_NAME cpPlugins_ITKInstances_${lib_SRC})
+  ADD_CUSTOM_COMMAND(
+    OUTPUT ${header_NAME}
+    DEPENDS cpPlugins_CreateInstances ${desc_NAME}
+    COMMAND cpPlugins_CreateInstances ${CMAKE_CURRENT_SOURCE_DIR}/${desc_NAME} ${lib_DIR} ${lib_SRC} ${header_NAME}
+    )
+  ADD_LIBRARY(${lib_NAME} SHARED ${source_NAME} ${header_NAME})
+  SET_TARGET_PROPERTIES(
+    ${lib_NAME} PROPERTIES
+    VERSION "${prj_VER}"
+    SOVERSION "${prj_sVER}"
+    )
+  GENERATE_EXPORT_HEADER(
+    ${lib_NAME}
+    BASE_NAME ${lib_NAME}
+    EXPORT_MACRO_NAME ${lib_NAME}_EXPORT
+    EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/lib/${lib_DIR}/${lib_SRC}_Export.h
+    STATIC_DEFINE ${lib_NAME}_BUILT_AS_STATIC
+    )
+ENDFOREACH(lib_SRC)
+TARGET_LINK_LIBRARIES(
+  cpPlugins_ITKInstances_Base
+  ${target_LIBRARIES}
   )
-
-SET(
-  target_LIBRARIES
-  ${ITK_LIBRARIES}
-  ${VTK_LIBRARIES}
+TARGET_LINK_LIBRARIES(
+  cpPlugins_ITKInstances_Image
+  cpPlugins_ITKInstances_Base
   )
-
-## =====================
-## = Compilation rules =
-## =====================
-
-ADD_LIBRARY(${lib_NAME} SHARED  ${lib_SOURCES})
-SET_TARGET_PROPERTIES(
-  ${lib_NAME} PROPERTIES
-  VERSION "${prj_VER}"
-  SOVERSION "${prj_sVER}"
+TARGET_LINK_LIBRARIES(
+  cpPlugins_ITKInstances_ImageIterators
+  cpPlugins_ITKInstances_Image
   )
-GENERATE_EXPORT_HEADER(
-  ${lib_NAME}
-  BASE_NAME ${lib_NAME}
-  EXPORT_MACRO_NAME ${lib_NAME}_EXPORT
-  EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/lib/${lib_DIR}/${lib_NAME}_Export.h
-  STATIC_DEFINE ${lib_NAME}_BUILT_AS_STATIC
+TARGET_LINK_LIBRARIES(
+  cpPlugins_ITKInstances_ImageFilters
+  cpPlugins_ITKInstances_ImageIterators
   )
-TARGET_LINK_LIBRARIES(${lib_NAME} ${target_LIBRARIES})
 
-#========================
-## == Installation rules ==
-#========================
+# # ===================================
+# # = Integrate all source file names =
+# # ===================================
 
-INSTALL(
-  TARGETS ${lib_NAME}
-  RUNTIME DESTINATION bin
-  LIBRARY DESTINATION lib
-  ARCHIVE DESTINATION lib/static
-  )
-INSTALL(
-  FILES
-  ${lib_HEADERS}
-  DESTINATION include/${lib_DIR}
-  )
+# SET(
+#   lib_HEADERS
+#   ${lib_HEADERS_H}
+#   ${lib_HEADERS_HPP}
+#   ${lib_HEADERS_HXX}
+#   )
+
+# SET(
+#   lib_SOURCES
+#   ${lib_SOURCES_C}
+#   ${lib_SOURCES_CPP}
+#   ${lib_SOURCES_CXX}
+#   )
+
+# ## =====================
+# ## = Compilation rules =
+# ## =====================
+
+# ## ========================
+# ## == Installation rules ==
+# ## ========================
+
+# INSTALL(
+#   TARGETS ${lib_NAME}
+#   RUNTIME DESTINATION bin
+#   LIBRARY DESTINATION lib
+#   ARCHIVE DESTINATION lib/static
+#   )
+# INSTALL(
+#   FILES
+#   ${lib_HEADERS}
+#   DESTINATION include/${lib_DIR}
+#   )
 
-## eof - $RCSfile$
+# ## eof - $RCSfile$