]> Creatis software - clitk.git/blobdiff - segmentation/CMakeLists.txt
Debug RTStruct conversion with empty struc
[clitk.git] / segmentation / CMakeLists.txt
index dfa795bd811a85a55e153e87de3850b05a53d100..4560b185e93c7969135372e17ad15a6e8c4afccc 100644 (file)
@@ -1,51 +1,63 @@
 #=========================================================
 
-INCLUDE(${PROJECT_SOURCE_DIR}/cmake/common.cmake)
+# Add Libraries used in vv and clitk to avoid recompilation
+foreach(clitkTool clitkExtractLung clitkExtractPatient clitkConnectedComponentLabeling clitkRegionGrowing)
+    WRAP_GGO(${clitkTool}_GGO_C ${clitkTool}.ggo)
+    set(GGO_C_FILES ${GGO_C_FILES} ${${clitkTool}_GGO_C})
+endforeach(clitkTool)
+add_library(clitkSegmentationGgoLib
+            clitkFilterWithAnatomicalFeatureDatabaseManagement.cxx
+            clitkAnatomicalFeatureDatabase.cxx
+            clitkSliceBySliceRelativePositionFilter_uchar.cxx
+            ${GGO_C_FILES})
 
 #=========================================================
 
-SET( CMAKE_VERBOSE_MAKEFILE off)
+if(CLITK_BUILD_SEGMENTATION)
+    WRAP_GGO(clitkConnectedComponentLabeling_GGO_C clitkConnectedComponentLabeling.ggo)
+    add_executable(clitkConnectedComponentLabeling clitkConnectedComponentLabeling.cxx ${clitkConnectedComponentLabeling_GGO_C})
+    target_link_libraries(clitkConnectedComponentLabeling clitkCommon)
+    set(SEGMENTATION_INSTALL clitkConnectedComponentLabeling)
 
-#=========================================================
-
-WRAP_GGO(clitkSegmentationFilters_GGO_C
-  clitkFillMask.ggo
-  clitkConnectedComponentLabeling.ggo
-  clitkExtractLung.ggo
-  clitkExtractPatient.ggo
-  clitkExtractBones.ggo
-  clitkExtractMediastinum.ggo
-  clitkExtractLymphStations.ggo
-)
+    add_executable(clitkExtractPatient clitkExtractPatient.cxx ${clitkExtractPatient_GGO_C})
+    target_link_libraries(clitkExtractPatient clitkCommon clitkSegmentationGgoLib)
+    set(SEGMENTATION_INSTALL ${SEGMENTATION_INSTALL} clitkExtractPatient)
 
-SET(clitkSegmentationFilters_SRC
-  ${clitkSegmentationFilters_GGO_C}
-)  
+    add_executable(clitkExtractLung clitkExtractLung.cxx  ${clitkExtractLung_GGO_C})
+    target_link_libraries(clitkExtractLung clitkSegmentationGgoLib clitkCommon)
+    set(SEGMENTATION_INSTALL ${SEGMENTATION_INSTALL} clitkExtractLung)
 
-ADD_LIBRARY(clitkSegmentationFilters STATIC ${clitkSegmentationFilters_SRC})
+    WRAP_GGO(clitkExtractBones_GGO_C clitkExtractBones.ggo)
+    add_executable(clitkExtractBones clitkExtractBones.cxx ${clitkExtractBones_GGO_C})
+    target_link_libraries(clitkExtractBones clitkCommon clitkSegmentationGgoLib)
+    set(SEGMENTATION_INSTALL ${SEGMENTATION_INSTALL} clitkExtractBones)
 
-ADD_EXECUTABLE(clitkTestFilter clitkTestFilter.cxx clitkTestFilter_ggo.c)
-TARGET_LINK_LIBRARIES(clitkTestFilter clitkCommon ITKIO clitkSegmentationFilters ITKStatistics)
+    WRAP_GGO(clitkMorphoMath_GGO_C clitkMorphoMath.ggo)
+    add_executable(clitkMorphoMath clitkMorphoMath.cxx ${clitkMorphoMath_GGO_C})
+    target_link_libraries(clitkMorphoMath clitkCommon)
+    set(SEGMENTATION_INSTALL ${SEGMENTATION_INSTALL} clitkMorphoMath)
 
-## Segmentation part
+    WRAP_GGO(clitkDecomposeAndReconstruct_GGO_C clitkDecomposeAndReconstruct.ggo)
+    add_executable(clitkDecomposeAndReconstruct clitkDecomposeAndReconstruct.cxx clitkDecomposeAndReconstructGenericFilter.cxx ${clitkDecomposeAndReconstruct_GGO_C})
+    target_link_libraries(clitkDecomposeAndReconstruct clitkCommon)
+    set(SEGMENTATION_INSTALL ${SEGMENTATION_INSTALL} clitkDecomposeAndReconstruct)
 
-ADD_EXECUTABLE(clitkConnectedComponentLabeling clitkConnectedComponentLabeling.cxx)
-TARGET_LINK_LIBRARIES(clitkConnectedComponentLabeling clitkCommon ITKIO ITKStatistics clitkSegmentationFilters)
+    WRAP_GGO(clitkMotionMask_GGO_C clitkMotionMask.ggo)
+    add_executable(clitkMotionMask clitkMotionMask.cxx clitkMotionMaskGenericFilter.cxx ${clitkMotionMask_GGO_C})
+    target_link_libraries(clitkMotionMask clitkCommon)
+    set(SEGMENTATION_INSTALL ${SEGMENTATION_INSTALL} clitkMotionMask)
 
-ADD_EXECUTABLE(clitkFillMask clitkFillMask.cxx clitkFillMaskGenericFilter.cxx)
-TARGET_LINK_LIBRARIES(clitkFillMask clitkCommon ITKIO ITKStatistics clitkSegmentationFilters)
+    WRAP_GGO(clitkRegionGrowing_GGO_C clitkRegionGrowing.ggo)
+    add_executable(clitkRegionGrowing clitkRegionGrowing.cxx ${clitkRegionGrowing_GGO_C} ${clitkRelativePosition_GGO_C})
+    target_link_libraries(clitkRegionGrowing clitkCommon)
 
-ADD_EXECUTABLE(clitkExtractPatient clitkExtractPatient.cxx)
-TARGET_LINK_LIBRARIES(clitkExtractPatient clitkCommon ITKIO ITKStatistics clitkSegmentationFilters)
+    install(TARGETS ${SEGMENTATION_INSTALL} DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
 
-ADD_EXECUTABLE(clitkExtractLung clitkExtractLung.cxx)
-TARGET_LINK_LIBRARIES(clitkExtractLung clitkCommon ITKIO ITKStatistics clitkSegmentationFilters)
+endif(CLITK_BUILD_SEGMENTATION)
 
-ADD_EXECUTABLE(clitkExtractBones clitkExtractBones.cxx)
-TARGET_LINK_LIBRARIES(clitkExtractBones clitkCommon ITKIO ITKStatistics clitkSegmentationFilters)
+# add_executable(ScalarImageMarkovRandomField1 ScalarImageMarkovRandomField1.cxx)
+# target_link_libraries(ScalarImageMarkovRandomField1 clitkCommon ITKStatistics)
+# add_executable(ScalarImageKmeansClassifier ScalarImageKmeansClassifier.cxx)
+# target_link_libraries(ScalarImageKmeansClassifier clitkCommon ITKStatistics)
 
-ADD_EXECUTABLE(clitkExtractMediastinum clitkExtractMediastinum.cxx)
-TARGET_LINK_LIBRARIES(clitkExtractMediastinum clitkCommon ITKIO ITKStatistics clitkSegmentationFilters)
 
-ADD_EXECUTABLE(clitkExtractLymphStations clitkExtractLymphStations.cxx)
-TARGET_LINK_LIBRARIES(clitkExtractLymphStations clitkCommon ITKIO ITKStatistics clitkSegmentationFilters)