-SET(_pfx cpInstances)
-
-## ======================
-## == Base itk objects ==
-## ======================
+## ===========================================
+## == Directories containing instantiations ==
+## ===========================================
SET(
- _base
- ITKBaseObjects
+ _directories
+ BaseObjects
+ Images
+ Geometries
+ Extensions
)
-FOREACH(_b ${_base})
- CreateLib(${_pfx}${_b} SHARED ${CMAKE_CURRENT_SOURCE_DIR}/${_b}.i)
- TARGET_LINK_LIBRARIES(${_pfx}${_b} ${ITK_LIBRARIES})
-ENDFOREACH(_b ${_base})
-## ===========================
-## == Base itk data objects ==
-## ===========================
+## =========================
+## == Real instantiations ==
+## =========================
-CreateLib(
- ${_pfx}ITKDataObjects
- SHARED
- ${CMAKE_CURRENT_SOURCE_DIR}/ITKBoundingBoxes.i
- ${CMAKE_CURRENT_SOURCE_DIR}/ITKImages.i
- ${CMAKE_CURRENT_SOURCE_DIR}/ITKMeshes.i
- ${CMAKE_CURRENT_SOURCE_DIR}/ITKPaths.i
- ${CMAKE_CURRENT_SOURCE_DIR}/ITKTransforms.i
- ${CMAKE_CURRENT_SOURCE_DIR}/ITKImageInterpolators.i
- )
-TARGET_LINK_LIBRARIES(
- ${_pfx}ITKDataObjects
- ${_pfx}ITKBaseObjects ${VTK_LIBRARIES}
- )
+SET(_pfx cpInstances_)
-CreateLib(
- ${_pfx}ITKImageIterators
- SHARED
- ${CMAKE_CURRENT_SOURCE_DIR}/ITKSimpleImageIterators.i
- ${CMAKE_CURRENT_SOURCE_DIR}/ITKNeighborhoodImageIterators.i
- )
-TARGET_LINK_LIBRARIES(
- ${_pfx}ITKImageIterators
- ${_pfx}ITKDataObjects
+INCLUDE_DIRECTORIES(
+ ${CMAKE_CURRENT_SOURCE_DIR}/BaseObjects
+ ${CMAKE_CURRENT_BINARY_DIR}/BaseObjects
+ ${CMAKE_CURRENT_SOURCE_DIR}/Images
+ ${CMAKE_CURRENT_BINARY_DIR}/Images
)
+FOREACH(_dir ${_directories})
+ cpPlugins_BuildLibrary(${_pfx}${_dir} SHARED ${_dir})
+ENDFOREACH(_dir)
-CreateLib(
- ${_pfx}ITKBaseImageFilters
- SHARED
- ${CMAKE_CURRENT_SOURCE_DIR}/ITKBaseImageFilters.i
- ${CMAKE_CURRENT_SOURCE_DIR}/ITK2VTKImageFilters.i
- )
-TARGET_LINK_LIBRARIES(
- ${_pfx}ITKBaseImageFilters
- ${_pfx}ITKImageIterators
- )
+## ===========
+## == Links ==
+## ===========
-CreateLib(
- cpPluginsDataObjects
- SHARED
- ${CMAKE_CURRENT_SOURCE_DIR}/Image.cxx
- ${CMAKE_CURRENT_SOURCE_DIR}/Image.d
- ${CMAKE_CURRENT_SOURCE_DIR}/Image.h
- ${CMAKE_CURRENT_SOURCE_DIR}/Mesh.cxx
- ${CMAKE_CURRENT_SOURCE_DIR}/Mesh.d
- ${CMAKE_CURRENT_SOURCE_DIR}/Mesh.h
- ${CMAKE_CURRENT_SOURCE_DIR}/PolyLineParametricPath.cxx
- ${CMAKE_CURRENT_SOURCE_DIR}/PolyLineParametricPath.h
- ${CMAKE_CURRENT_SOURCE_DIR}/PolyLineParametricPath.d
- ${CMAKE_CURRENT_SOURCE_DIR}/BoundingBox.cxx
- ${CMAKE_CURRENT_SOURCE_DIR}/BoundingBox.h
- ${CMAKE_CURRENT_SOURCE_DIR}/Skeleton.cxx
- ${CMAKE_CURRENT_SOURCE_DIR}/Skeleton.h
- ${CMAKE_CURRENT_SOURCE_DIR}/Skeleton.d
- )
+TARGET_LINK_LIBRARIES(${_pfx}BaseObjects ${ITK_LIBRARIES})
+TARGET_LINK_LIBRARIES(${_pfx}Images ${_pfx}BaseObjects ${VTK_LIBRARIES})
+TARGET_LINK_LIBRARIES(${_pfx}Geometries ${_pfx}BaseObjects)
+TARGET_LINK_LIBRARIES(${_pfx}Extensions cpExtensions ${_pfx}Geometries)
+
+## ==========================
+## == Generic data objects ==
+## ==========================
+cpPlugins_BuildLibrary(cpPluginsDataObjects SHARED DataObjects)
TARGET_LINK_LIBRARIES(
cpPluginsDataObjects
+ cpExtensions
cpPlugins
- ${_pfx}ITKBaseImageFilters
- )
-
-## ===================================================
-## == Keep track of all created instances libraries ==
-## ===================================================
-
-SET(
- cpPlugins_AllInstances
- ${_pfx}ITKBaseObjects
- ${_pfx}ITKDataObjects
- ${_pfx}ITKImageIterators
- ${_pfx}ITKBaseImageFilters
- CACHE INTERNAL "All valid instances." FORCE
+ ${_pfx}Images ${_pfx}Geometries ${_pfx}Extensions
)
## eof - $RCSfile$