diff --git a/Modules/Adapters/CurlAdapters/otb-module.cmake b/Modules/Adapters/CurlAdapters/otb-module.cmake
index 107dc5e638890b1e111a1ce33244b5ea06c5cbc8..9dfc3f70e30861fe7992f91694e8e8b9a0e306c2 100644
--- a/Modules/Adapters/CurlAdapters/otb-module.cmake
+++ b/Modules/Adapters/CurlAdapters/otb-module.cmake
@@ -1,12 +1,16 @@
 set(DOCUMENTATION "Adapters for the Curl library.")
 
-otb_module(OTBCurlAdapters 
+otb_module(OTBCurlAdapters
   DEPENDS
     OTBCommon
+    OTBITK
+
   OPTIONAL_DEPENDS
     OTBCurl
+
   TEST_DEPENDS
     OTBTestKernel
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Adapters/GdalAdapters/otb-module.cmake b/Modules/Adapters/GdalAdapters/otb-module.cmake
index f0cef93556dfaf0a5554146c42db4efbda5f5f04..199492c6ced5cdc9e045443507e73b4c731da809 100644
--- a/Modules/Adapters/GdalAdapters/otb-module.cmake
+++ b/Modules/Adapters/GdalAdapters/otb-module.cmake
@@ -1,14 +1,13 @@
 set(DOCUMENTATION "Adapters for the Gdal Library ( for reading and writing  ).")
 
-otb_module(OTBGdalAdapters 
+otb_module(OTBGdalAdapters
   DEPENDS
     OTBBoostAdapters
     OTBBoost
     OTBCommon
     OTBGDAL
-  TEST_DEPENDS
-    OTBTestKernel
-  
+    OTBITK
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Adapters/OSSIMAdapters/otb-module.cmake b/Modules/Adapters/OSSIMAdapters/otb-module.cmake
index c4ea6a6f1f9fc57510507e2b7c6ea8302b2d8f74..7efda9ebdd6a6b0b1367792efdff5399dded38e7 100644
--- a/Modules/Adapters/OSSIMAdapters/otb-module.cmake
+++ b/Modules/Adapters/OSSIMAdapters/otb-module.cmake
@@ -3,17 +3,22 @@ process imagery, maps, terrain, and vector data). It is used inside OTB for
 several purposes: sensor models (especially RPC), metadata parsers, DEM handlers, and
 so on.")
 
-otb_module(OTBOSSIMAdapters 
+otb_module(OTBOSSIMAdapters
   DEPENDS
-    OTBGDAL
+    OTBOpenThreads
+    OTBITK
     OTBCommon
-    OTBOssim
+    OTBGDAL
     OTBOssimPlugins
-    OTBOpenThreads
+    OTBOssim
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageBase
+    OTBImageIO
+    OTBTransform
     OTBProjection
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Adapters/OpenThreadsAdapters/otb-module.cmake b/Modules/Adapters/OpenThreadsAdapters/otb-module.cmake
index dac5e5430203945869bc5d478b43f91f22c900b0..33ea49e6abeafed62410f11ba0c475f8210f3d8f 100644
--- a/Modules/Adapters/OpenThreadsAdapters/otb-module.cmake
+++ b/Modules/Adapters/OpenThreadsAdapters/otb-module.cmake
@@ -1,12 +1,12 @@
 set(DOCUMENTATION "Adapters for the OpenThreads library (thread interface for
 C++).")
 
-otb_module(OTBOpenThreadsAdapters 
-  DEPENDS
-    OTBCommon
+otb_module(OTBOpenThreadsAdapters
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBITK
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppClassification/otb-module.cmake b/Modules/Applications/AppClassification/otb-module.cmake
index fa8b4d2104b24286264104f540429931138d2274..d25f90f553329fa635860ba6de5c24364d7621af 100644
--- a/Modules/Applications/AppClassification/otb-module.cmake
+++ b/Modules/Applications/AppClassification/otb-module.cmake
@@ -1,6 +1,6 @@
 set(DOCUMENTATION "Classification application.")
 
-otb_module(OTBAppClassification 
+otb_module(OTBAppClassification
   DEPENDS
     OTBVectorDataBase
     OTBConversion
@@ -12,10 +12,10 @@ otb_module(OTBAppClassification
     OTBVectorDataIO
     OTBSOM
     OTBSupervised
-    OTBLearningBase
     OTBApplicationEngine
     OTBIndices
     OTBMathParser
+    OTBITK
     OTBDempsterShafer
     OTBGdalAdapters
     OTBProjection
@@ -26,11 +26,11 @@ otb_module(OTBAppClassification
     OTBImageManipulation
     OTBObjectList
     OTBCommon
-    OTBStreaming
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppEdge/otb-module.cmake b/Modules/Applications/AppEdge/otb-module.cmake
index b20c9a7e1e9204095871fe02548212f5676f11b7..a6708d5e44398244abb95cc186e377de89936955 100644
--- a/Modules/Applications/AppEdge/otb-module.cmake
+++ b/Modules/Applications/AppEdge/otb-module.cmake
@@ -1,18 +1,20 @@
 set(DOCUMENTATION "Edge detection and extraction application (see also Edge
 module).")
 
-otb_module(OTBAppEdge 
+otb_module(OTBAppEdge
   DEPENDS
     OTBStatistics
-    OTBProjection
+    OTBITK
     OTBImageBase
-    OTBEdge
     OTBApplicationEngine
+    OTBEdge
     OTBImageManipulation
+    OTBProjection
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppFiltering/otb-module.cmake b/Modules/Applications/AppFiltering/otb-module.cmake
index 1217278e8b2bbda34a4cba095c480c36c91b0d69..9ded9bb631017e5e3c243d15e9d4dff54c0c6451 100644
--- a/Modules/Applications/AppFiltering/otb-module.cmake
+++ b/Modules/Applications/AppFiltering/otb-module.cmake
@@ -1,15 +1,17 @@
 set(DOCUMENTATION "Basic filters application.")
 
-otb_module(OTBAppFiltering 
+otb_module(OTBAppFiltering
   DEPENDS
     OTBImageNoise
     OTBImageManipulation
+    OTBITK
     OTBApplicationEngine
     OTBImageBase
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppFusion/otb-module.cmake b/Modules/Applications/AppFusion/otb-module.cmake
index ac26afda4bb930a63c9aa8229b5f668eeff37239..54fe75ccac06953703f04292cf71acadd3a4939c 100644
--- a/Modules/Applications/AppFusion/otb-module.cmake
+++ b/Modules/Applications/AppFusion/otb-module.cmake
@@ -1,16 +1,18 @@
 set(DOCUMENTATION "Fusion of classifications application.")
 
-otb_module(OTBAppFusion 
+otb_module(OTBAppFusion
   DEPENDS
-    OTBImageBase
-    OTBInterpolation
+    OTBITK
     OTBPanSharpening
+    OTBImageBase
     OTBApplicationEngine
     OTBProjection
+    OTBInterpolation
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppImageUtils/otb-module.cmake b/Modules/Applications/AppImageUtils/otb-module.cmake
index 5aaa29518841f9c03a4e57833501ad81cd332579..c9a2be89865cea1c5915b1dd4c9f59946638ba51 100644
--- a/Modules/Applications/AppImageUtils/otb-module.cmake
+++ b/Modules/Applications/AppImageUtils/otb-module.cmake
@@ -1,28 +1,28 @@
 set(DOCUMENTATION "Image utils and handling application.")
 
-otb_module(OTBAppImageUtils 
+otb_module(OTBAppImageUtils
   DEPENDS
     OTBStatistics
     OTBColorMap
     OTBImageBase
     OTBTransform
-    OTBApplicationEngine
+    OTBKMZWriter
+    OTBImageManipulation
     OTBStreaming
     OTBCarto
-    OTBImageManipulation
+    OTBApplicationEngine
     OTBCurlAdapters
-    OTBProjection
+    OTBITK
     OTBMathParser
     OTBCommon
-    OTBInterpolation
-    OTBKMZWriter
-    OTBOSSIMAdapters
     OTBObjectList
-    OTBStreaming
+    OTBOSSIMAdapters
+    OTBProjection
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppMoments/otb-module.cmake b/Modules/Applications/AppMoments/otb-module.cmake
index c31de6c4d0170174bced6987e8e3e9edd6503feb..db715d3060161db47c23d5ab2913bfd3389bda10 100644
--- a/Modules/Applications/AppMoments/otb-module.cmake
+++ b/Modules/Applications/AppMoments/otb-module.cmake
@@ -1,14 +1,16 @@
 set(DOCUMENTATION "Geometric moments (for pattern recognition) application.")
 
-otb_module(OTBAppMoments 
+otb_module(OTBAppMoments
   DEPENDS
     OTBMoments
     OTBImageBase
     OTBApplicationEngine
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppMorphology/otb-module.cmake b/Modules/Applications/AppMorphology/otb-module.cmake
index d0383061eb0c98373699d20c780b72d7262c832c..4f64254c0dd1976c3925efcc6d919b3939cd8ec1 100644
--- a/Modules/Applications/AppMorphology/otb-module.cmake
+++ b/Modules/Applications/AppMorphology/otb-module.cmake
@@ -1,14 +1,16 @@
 set(DOCUMENTATION "Morphomath application.")
 
-otb_module(OTBAppMorphology 
+otb_module(OTBAppMorphology
   DEPENDS
     OTBImageBase
-    OTBApplicationEngine
     OTBObjectList
+    OTBITK
+    OTBApplicationEngine
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppOpticalCalibration/otb-module.cmake b/Modules/Applications/AppOpticalCalibration/otb-module.cmake
index da84204ebd51d7aefc6d38a4a4d9594689938789..39a64b2e70e21d765c5688c504620e7e5ec77b83 100644
--- a/Modules/Applications/AppOpticalCalibration/otb-module.cmake
+++ b/Modules/Applications/AppOpticalCalibration/otb-module.cmake
@@ -1,15 +1,17 @@
 set(DOCUMENTATION "Optical calibration application.")
 
-otb_module(OTBAppOpticalCalibration 
+otb_module(OTBAppOpticalCalibration
   DEPENDS
     OTBOpticalCalibration
-    OTBProjection
-    OTBApplicationEngine
     OTBImageManipulation
+    OTBITK
+    OTBApplicationEngine
+    OTBProjection
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppProjection/otb-module.cmake b/Modules/Applications/AppProjection/otb-module.cmake
index e206a20f93412c31f707ec421b27661b248a6ed1..00a2efcbd31031ef9b56d9346c97a472d641d274 100644
--- a/Modules/Applications/AppProjection/otb-module.cmake
+++ b/Modules/Applications/AppProjection/otb-module.cmake
@@ -1,6 +1,6 @@
 set(DOCUMENTATION "Projection application (see also Projection module).")
 
-otb_module(OTBAppProjection 
+otb_module(OTBAppProjection
   DEPENDS
     OTBGdalAdapters
     OTBImageManipulation
@@ -12,12 +12,14 @@ otb_module(OTBAppProjection
     OTBApplicationEngine
     OTBMathParser
     OTBCommon
-    OTBGDAL
     OTBInterpolation
+    OTBGDAL
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppSegmentation/otb-module.cmake b/Modules/Applications/AppSegmentation/otb-module.cmake
index f67be5af5975d09472ea1797b750f054e1529511..bb33287a44b64471af4bccfa63c484fcb2bd35aa 100644
--- a/Modules/Applications/AppSegmentation/otb-module.cmake
+++ b/Modules/Applications/AppSegmentation/otb-module.cmake
@@ -1,31 +1,33 @@
 set(DOCUMENTATION "Segmentation application.")
 
-otb_module(OTBAppSegmentation 
+otb_module(OTBAppSegmentation
   DEPENDS
     OTBVectorDataBase
-    OTBLabelMap
+    OTBOGRProcessing
     OTBConversion
-    OTBImageManipulation
+    OTBStatistics
     OTBImageIO
-    OTBProjection
-    OTBImageBase
+    OTBITK
+    OTBCCOBIA
     OTBWatersheds
-    OTBGdalAdapters
-    OTBSmoothing
+    OTBTransform
     OTBMetrics
-    OTBOGRProcessing
-    OTBStatistics
+    OTBSmoothing
     OTBMeanShift
+    OTBGdalAdapters
     OTBApplicationEngine
-    OTBCCOBIA
+    OTBImageBase
     OTBMathParser
-    OTBMorphologicalProfiles
-    OTBTransform
     OTBCommon
+    OTBImageManipulation
+    OTBMorphologicalProfiles
+    OTBLabelMap
+    OTBProjection
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppStereo/otb-module.cmake b/Modules/Applications/AppStereo/otb-module.cmake
index b80f8f65ea851e22cf7fd606c3990428b9221578..1c4d5fe8462f40e36c34a6395335e46921a3a37e 100644
--- a/Modules/Applications/AppStereo/otb-module.cmake
+++ b/Modules/Applications/AppStereo/otb-module.cmake
@@ -1,10 +1,11 @@
 set(DOCUMENTATION "Stereo application (see also Stereo module).")
 
-otb_module(OTBAppStereo 
+otb_module(OTBAppStereo
   DEPENDS
     OTBStereo
     OTBStatistics
     OTBImageIO
+    OTBITK
     OTBImageBase
     OTBInterpolation
     OTBTransform
@@ -14,10 +15,11 @@ otb_module(OTBAppStereo
     OTBMathParser
     OTBObjectList
     OTBApplicationEngine
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppTextures/otb-module.cmake b/Modules/Applications/AppTextures/otb-module.cmake
index 827c97f84e3b84e5b077abb41e05c6c61866d278..9f0067d79d75c231e7c2d6b864b6491926808e86 100644
--- a/Modules/Applications/AppTextures/otb-module.cmake
+++ b/Modules/Applications/AppTextures/otb-module.cmake
@@ -1,16 +1,18 @@
 set(DOCUMENTATION "Textures application (see also Textures module).")
 
-otb_module(OTBAppTextures 
+otb_module(OTBAppTextures
   DEPENDS
     OTBTextures
+    OTBITK
     OTBImageBase
-    OTBObjectList
     OTBApplicationEngine
     OTBImageManipulation
+    OTBObjectList
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Applications/AppVectorUtils/otb-module.cmake b/Modules/Applications/AppVectorUtils/otb-module.cmake
index c654796d86115c7d6dfb705ccd8bf1fa05946afb..6828cca2f6e0d3f8d137093742bc37a71db347a2 100644
--- a/Modules/Applications/AppVectorUtils/otb-module.cmake
+++ b/Modules/Applications/AppVectorUtils/otb-module.cmake
@@ -1,17 +1,19 @@
 set(DOCUMENTATION "VectorUtils application.")
 
-otb_module(OTBAppVectorUtils 
+otb_module(OTBAppVectorUtils
   DEPENDS
     OTBVectorDataBase
     OTBProjection
     OTBVectorDataManipulation
     OTBCarto
-    OTBCommon
     OTBApplicationEngine
+    OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/Common/otb-module.cmake b/Modules/Core/Common/otb-module.cmake
index 51a3ba82f10fbabcfb767440df3e698ebd736402..d8f828b7a07a66ef59b6bc1bb418e37130334374 100644
--- a/Modules/Core/Common/otb-module.cmake
+++ b/Modules/Core/Common/otb-module.cmake
@@ -1,11 +1,14 @@
 set(DOCUMENTATION "TO BE DOCUMENTED")
 
-otb_module(OTBCommon 
+otb_module(OTBCommon
   DEPENDS
-    OTBITKPendingPatches
+    OTBBoost
     OTBITK
+    OTBITKPendingPatches
+
   TEST_DEPENDS
     OTBTestKernel
+
   DESCRIPTION
     "${DOCUMENTATION}"
 )
diff --git a/Modules/Core/ImageBase/otb-module.cmake b/Modules/Core/ImageBase/otb-module.cmake
index 4f552972824b589c7816d165c66f50a56d87416c..755933c3ebb7de2c0dc2b808b3481e1b3249bcc1 100644
--- a/Modules/Core/ImageBase/otb-module.cmake
+++ b/Modules/Core/ImageBase/otb-module.cmake
@@ -1,17 +1,24 @@
 set(DOCUMENTATION "This module contains base classes that allow the
 representation of mono- and multiband images.")
 
-otb_module(OTBImageBase 
+otb_module(OTBImageBase
   DEPENDS
-    OTBCommon
+    OTBMetadata
     OTBOSSIMAdapters
+    OTBITK
     OTBITKPendingPatches
-    OTBMetadata
+    OTBCommon
+
   TEST_DEPENDS
+    OTBStatistics
+    OTBImageIO
     OTBMoments
     OTBTestKernel
     OTBDescriptors
-  
+    OTBBoost
+    OTBOssim
+    OTBObjectList
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/Interpolation/otb-module.cmake b/Modules/Core/Interpolation/otb-module.cmake
index a235d191fff779ef7abfcf126e3000b0f67fce22..f13588502a668b96668e66f28e7e59841c54e1f8 100644
--- a/Modules/Core/Interpolation/otb-module.cmake
+++ b/Modules/Core/Interpolation/otb-module.cmake
@@ -1,15 +1,16 @@
 set(DOCUMENTATION "This module contains additional interpolation functions
 (compared to the ones already available in itk -see itk::InterpolateImageFunction-).")
 
-otb_module(OTBInterpolation 
+otb_module(OTBInterpolation
   DEPENDS
     OTBImageBase
-    OTBBoost
     OTBCommon
-    OTBITKPendingPatches
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/LabelMap/otb-module.cmake b/Modules/Core/LabelMap/otb-module.cmake
index c8727584559821c18a848585564e8c979523ba5e..dacc0b6a93dc995263f29ea0f40b9d465490460a 100644
--- a/Modules/Core/LabelMap/otb-module.cmake
+++ b/Modules/Core/LabelMap/otb-module.cmake
@@ -3,14 +3,20 @@ manipulation based on object attributes. They are useful for Object-Based Image
 (OBIA) (analyzing images at the object level instead of working at the pixel
 level).")
 
-otb_module(OTBLabelMap 
+otb_module(OTBLabelMap
   DEPENDS
     OTBVectorDataBase
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
+    OTBProjection
     OTBVectorDataIO
-  
+    OTBVectorDataManipulation
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/Metadata/otb-module.cmake b/Modules/Core/Metadata/otb-module.cmake
index 17eb1e0cfd93d98ba0eec0dc3072ca422e44f011..afaff0b86e39f5762ddb10689628e7ebf1be6e61 100644
--- a/Modules/Core/Metadata/otb-module.cmake
+++ b/Modules/Core/Metadata/otb-module.cmake
@@ -2,15 +2,19 @@ set(DOCUMENTATION "This module contains a set of classes that allow parsing
 metadata files from different types of sensor (both optical and radar sensor types
 are supported. for instance: Pleiades, SPOT6, TerraSar, and so on).")
 
-otb_module(OTBMetadata 
+otb_module(OTBMetadata
   DEPENDS
+    OTBObjectList
     OTBBoost
-    OTBCommon
+    OTBITK
     OTBOSSIMAdapters
-    OTBObjectList
+    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/ObjectList/otb-module.cmake b/Modules/Core/ObjectList/otb-module.cmake
index 3d9578e5b258163ba64a8dd06ab1424347be4ccb..fe1f87cc86e9ea986efa09ac9f4b51b8037a7720 100644
--- a/Modules/Core/ObjectList/otb-module.cmake
+++ b/Modules/Core/ObjectList/otb-module.cmake
@@ -3,11 +3,11 @@ ITK/OTB object list with the appropriate formalism. For instance, it is possible
 apply a given scalar image filter to a list of images. or to produce an output
 corresponding to the elements selected from an image list. and so on.")
 
-otb_module(OTBObjectList 
+otb_module(OTBObjectList
   DEPENDS
     OTBCommon
-  
-  
+    OTBITK
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/PointSet/otb-module.cmake b/Modules/Core/PointSet/otb-module.cmake
index 2a7c22396ef892d3690fd6fcb9889da9165ec421..677fe3fa4533788927fefeb0f7663d22b5c350a1 100644
--- a/Modules/Core/PointSet/otb-module.cmake
+++ b/Modules/Core/PointSet/otb-module.cmake
@@ -6,14 +6,18 @@ will be able to apply a transform to all the points of a PointSet, extract all
 the points of a PointSet that are in a given region, generate a random point set,
 and so on.")
 
-otb_module(OTBPointSet 
+otb_module(OTBPointSet
   DEPENDS
-    OTBCommon
-    OTBInterpolation
     OTBStreaming
+    OTBInterpolation
+    OTBITK
+    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/SpatialObjects/otb-module.cmake b/Modules/Core/SpatialObjects/otb-module.cmake
index d75f0550d7f934642f85382d83048b1877778ca8..76a702acb23ca18bab6c537bb8fbc360bcc8b309 100644
--- a/Modules/Core/SpatialObjects/otb-module.cmake
+++ b/Modules/Core/SpatialObjects/otb-module.cmake
@@ -8,12 +8,16 @@ Spatial objects are a natural data structure for communicating the results of
 segmentation methods and for introducing geometrical priors in both segmentation and
 registration methods.")
 
-otb_module(OTBSpatialObjects 
+otb_module(OTBSpatialObjects
   DEPENDS
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/Streaming/otb-module.cmake b/Modules/Core/Streaming/otb-module.cmake
index 635aa59804ce62af99abfe21759ce5cc00884a8b..af683101ea715738452b41f719908a520eddf205 100644
--- a/Modules/Core/Streaming/otb-module.cmake
+++ b/Modules/Core/Streaming/otb-module.cmake
@@ -3,16 +3,18 @@ functionalities: only the data of a particular requested region are produced. Th
 useful when big images must be processed: processing is done piecewise, which prevents
 the system from running out of memory.")
 
-otb_module(OTBStreaming 
+otb_module(OTBStreaming
   DEPENDS
+    OTBITK
+    OTBITKPendingPatches
     OTBImageBase
-    OTBOSSIMAdapters
     OTBCommon
-    OTBITKPendingPatches
+    OTBOSSIMAdapters
     OTBObjectList
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/Transform/otb-module.cmake b/Modules/Core/Transform/otb-module.cmake
index f39dfffbea45a68fcb38ce05591d90b4d016f777..c58f68386033e51921358837747ebb3bbc28c5a5 100644
--- a/Modules/Core/Transform/otb-module.cmake
+++ b/Modules/Core/Transform/otb-module.cmake
@@ -3,17 +3,22 @@ that are more suitable to remote sensing (compared to the ones already available
 itk -see itk::Transform-). this mainly concerns transformations of coordinates
 from any map projection or sensor model to any map projection or sensor model.")
 
-otb_module(OTBTransform 
+otb_module(OTBTransform
   DEPENDS
+    OTBITK
     OTBITKPendingPatches
-    OTBCommon
-    OTBGDAL
-    OTBBoost
     OTBOSSIMAdapters
     OTBInterpolation
+    OTBBoost
+    OTBGDAL
+    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBOssim
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Core/VectorDataBase/otb-module.cmake b/Modules/Core/VectorDataBase/otb-module.cmake
index 52b50667db4943c4294a71cab8dc9e61a57b27b4..457e997385af4099cd478b72ecbc84bf2a75efa2 100644
--- a/Modules/Core/VectorDataBase/otb-module.cmake
+++ b/Modules/Core/VectorDataBase/otb-module.cmake
@@ -1,16 +1,18 @@
 set(DOCUMENTATION "This module contains base classes for representing vector
 data (see also VectorDataIO and VectorDataManipulation modules).")
 
-otb_module(OTBVectorDataBase 
+otb_module(OTBVectorDataBase
   DEPENDS
-    OTBCommon
     OTBOSSIMAdapters
-    OTBGDAL
     OTBObjectList
+    OTBITK
+    OTBGDAL
+    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
     OTBVectorDataIO
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Detection/CloudDetection/otb-module.cmake b/Modules/Detection/CloudDetection/otb-module.cmake
index 7d6a8d6e95200ed858a10ec427388929302a2f54..2bfd11ac9bcfed61ae281e1d8182961890f147f9 100644
--- a/Modules/Detection/CloudDetection/otb-module.cmake
+++ b/Modules/Detection/CloudDetection/otb-module.cmake
@@ -2,13 +2,17 @@ set(DOCUMENTATION "This module contains classes to estimate and detect clouds.
 The implemented filters rely on the spectral angle principle to measure the
 radiometric gap between a reference pixel and the other pixels of the image.")
 
-otb_module(OTBCloudDetection 
+otb_module(OTBCloudDetection
   DEPENDS
     OTBImageManipulation
     OTBITKPendingPatches
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBITK
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Detection/ObjectDetection/otb-module.cmake b/Modules/Detection/ObjectDetection/otb-module.cmake
index 17b0a63cbf5e1beb4b322d1ca27b36469cb0bb6e..5c266802eb073e2ab1b4cc68b0b878c6811b5994 100644
--- a/Modules/Detection/ObjectDetection/otb-module.cmake
+++ b/Modules/Detection/ObjectDetection/otb-module.cmake
@@ -1,23 +1,26 @@
 set(DOCUMENTATION "This module contains useful classes for object detection.")
 
-otb_module(OTBObjectDetection 
+otb_module(OTBObjectDetection
   DEPENDS
     OTBVectorDataBase
     OTBTextures
     OTBStatistics
+    OTBITK
     OTBMoments
     OTBDescriptors
     OTBStreaming
-    OTBCommon
+    OTBImageManipulation
     OTBImageBase
     OTBObjectList
-    OTBImageManipulation
+    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
     OTBIOXML
+    OTBImageIO
     OTBSVMLearning
     OTBVectorDataIO
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Detection/RoadExtraction/otb-module.cmake b/Modules/Detection/RoadExtraction/otb-module.cmake
index 9ba10b516e3e12529d6708911740d6430c69b751..36e4ccde22d8fbaa36399b74cf320b8bbf80f516 100644
--- a/Modules/Detection/RoadExtraction/otb-module.cmake
+++ b/Modules/Detection/RoadExtraction/otb-module.cmake
@@ -1,8 +1,9 @@
 set(DOCUMENTATION "Everything users need to extract roads.")
 
-otb_module(OTBRoadExtraction 
+otb_module(OTBRoadExtraction
   DEPENDS
     OTBVectorDataBase
+    OTBITK
     OTBImageBase
     OTBVectorDataManipulation
     OTBImageManipulation
@@ -10,10 +11,13 @@ otb_module(OTBRoadExtraction
     OTBPath
     OTBObjectList
     OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
+    OTBProjection
     OTBVectorDataIO
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Detection/UrbanArea/otb-module.cmake b/Modules/Detection/UrbanArea/otb-module.cmake
index b6c86c75d37e092b2ab9356f9d2d580c784611ca..7b518c5b50f0f2d552d593b5354537882deab687 100644
--- a/Modules/Detection/UrbanArea/otb-module.cmake
+++ b/Modules/Detection/UrbanArea/otb-module.cmake
@@ -1,15 +1,18 @@
 set(DOCUMENTATION "This module is concerned with the detection of urban area.")
 
-otb_module(OTBUrbanArea 
+otb_module(OTBUrbanArea
   DEPENDS
-    OTBIndices
+    OTBStatistics
+    OTBITK
     OTBImageBase
     OTBEdge
-    OTBStatistics
     OTBImageManipulation
+    OTBIndices
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Feature/Corner/otb-module.cmake b/Modules/Feature/Corner/otb-module.cmake
index f2fde2d7ee4ac0da6e184d2431fa32bf3eb08509..de7a528eab0ec98234053cdff798b249d869290d 100644
--- a/Modules/Feature/Corner/otb-module.cmake
+++ b/Modules/Feature/Corner/otb-module.cmake
@@ -2,19 +2,23 @@ set(DOCUMENTATION "This module contains classes that implement classical corner
 detection algorithms (Harris for instance). It also contains classes to detect
 right angle by exploiting the output of a line detection algorithm.")
 
-otb_module(OTBCorner 
+otb_module(OTBCorner
   DEPENDS
     OTBVectorDataBase
+    OTBITK
     OTBDescriptors
     OTBSpatialObjects
     OTBVectorDataManipulation
     OTBPointSet
     OTBImageManipulation
     OTBCommon
+
   TEST_DEPENDS
-    OTBTestKernel
     OTBVectorDataIO
-  
+    OTBTestKernel
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Feature/Density/otb-module.cmake b/Modules/Feature/Density/otb-module.cmake
index ecfade75932d34d1c88c22cebef3950c153c6f62..5373b8a417227e54014f6ed08e2bb9e041f9fbbb 100644
--- a/Modules/Feature/Density/otb-module.cmake
+++ b/Modules/Feature/Density/otb-module.cmake
@@ -4,14 +4,18 @@ keypoints (SIFT or SURF, for instance). Many estimators are implemented
 the total number of pixels within a region). Note that the estimated density can be
 represented as an image or quiered at particular points (function).")
 
-otb_module(OTBDensity 
+otb_module(OTBDensity
   DEPENDS
     OTBPointSet
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBDescriptors
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Feature/Descriptors/otb-module.cmake b/Modules/Feature/Descriptors/otb-module.cmake
index 92b42ddb3dab983511f445ca8049bc60432b1eca..4e755fed33d91091b65acca7badce738291ebcc5 100644
--- a/Modules/Feature/Descriptors/otb-module.cmake
+++ b/Modules/Feature/Descriptors/otb-module.cmake
@@ -3,18 +3,23 @@ vector of numbers which is invariant to common image transformations. Descriptor
 then compared according to some criterion in order to be matched. This module
 contains different descriptors such as Fourrier-Mellin, SIFT, SURF, HOG, and so on.")
 
-otb_module(OTBDescriptors 
+otb_module(OTBDescriptors
   DEPENDS
     OTBSiftFast
+    OTBITK
     OTBITKPendingPatches
     OTBImageBase
     OTBTransform
     OTBPointSet
     OTBCommon
     OTBObjectList
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageManipulation
+    OTBInterpolation
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Feature/Edge/otb-module.cmake b/Modules/Feature/Edge/otb-module.cmake
index 2966e1ccddfb5aa6fe462298e01048afad65735b..1e807d351c03f78d4a8709f1a9007a974ccffd7e 100644
--- a/Modules/Feature/Edge/otb-module.cmake
+++ b/Modules/Feature/Edge/otb-module.cmake
@@ -2,7 +2,7 @@ set(DOCUMENTATION "This module contains tools related to edge / line
 extraction. users can find classes that implement tools such as Sobel Detector, Touzi or
 Line Ratio Detector (SAR images), Hough Transform, and so on.")
 
-otb_module(OTBEdge 
+otb_module(OTBEdge
   DEPENDS
     OTBVectorDataBase
     OTBConversion
@@ -13,12 +13,16 @@ otb_module(OTBEdge
     OTBStreaming
     OTBImageManipulation
     OTBPath
-    OTBObjectList
     OTBCommon
+    OTBObjectList
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
     OTBConvolution
-  
+    OTBVectorDataIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Feature/Moments/otb-module.cmake b/Modules/Feature/Moments/otb-module.cmake
index 2f3fa50628e1b4e4e1d1374336e3ab18dccb7f79..e94fae63482e84bbd933cb6e2ecdb11c6318584b 100644
--- a/Modules/Feature/Moments/otb-module.cmake
+++ b/Modules/Feature/Moments/otb-module.cmake
@@ -3,18 +3,23 @@ pattern recognition. This module contains classes that implement many moments: H
 Flusser, and so on. Note that some of them can be evaluated along a path, instead
 of an image.")
 
-otb_module(OTBMoments 
+otb_module(OTBMoments
   DEPENDS
     OTBVectorDataBase
-    OTBVectorDataManipulation
+    OTBLabelMap
     OTBStatistics
+    OTBITK
     OTBImageBase
-    OTBLabelMap
+    OTBVectorDataManipulation
     OTBCommon
     OTBPath
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageManipulation
+    OTBInterpolation
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Feature/SeamCarving/otb-module.cmake b/Modules/Feature/SeamCarving/otb-module.cmake
index b60c4e6f3724074d311f7a1c02b92380ec39a001..0b313903b47281eca42db2bd5d08fa537a28748e 100644
--- a/Modules/Feature/SeamCarving/otb-module.cmake
+++ b/Modules/Feature/SeamCarving/otb-module.cmake
@@ -3,13 +3,16 @@ carving algorithm published by Shai Avidan, Ariel Shamir, Seam Carving for
 Content-Aware  Resizing, ACM Transactions on Graphics, Volume 26, Number 3, SIGGRAPH
 2007.")
 
-otb_module(OTBSeamCarving 
+otb_module(OTBSeamCarving
   DEPENDS
     OTBPath
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Feature/Textures/otb-module.cmake b/Modules/Feature/Textures/otb-module.cmake
index c1cbe963f2b2ca4d22af2421ee9f821a5d1f3bc5..7e76fa5af252a56fba975ef2df55c39506750bc0 100644
--- a/Modules/Feature/Textures/otb-module.cmake
+++ b/Modules/Feature/Textures/otb-module.cmake
@@ -1,12 +1,16 @@
 set(DOCUMENTATION "This module is concerned with texture analysis.
 Co-occurrence matrix, Haralick are examples of what can be found in this module.")
 
-otb_module(OTBTextures 
+otb_module(OTBTextures
   DEPENDS
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/ChangeDetection/otb-module.cmake b/Modules/Filtering/ChangeDetection/otb-module.cmake
index 1e4bc39f6721cd4cf6d2f22e4b4f3a2e5728f0e2..36afaf96f3ebf24461daf4384ade7db4c7ee83ce 100644
--- a/Modules/Filtering/ChangeDetection/otb-module.cmake
+++ b/Modules/Filtering/ChangeDetection/otb-module.cmake
@@ -6,15 +6,19 @@ abrupt changes in an image pair, abrupt changes within an image series and a
 known date, abrupt changes within an image series and an unknown date, progressive
 changes within an image series.")
 
-otb_module(OTBChangeDetection 
+otb_module(OTBChangeDetection
   DEPENDS
-    OTBProjection
+    OTBCommon
     OTBStatistics
+    OTBITK
+    OTBProjection
     OTBImageManipulation
-    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/ColorMap/otb-module.cmake b/Modules/Filtering/ColorMap/otb-module.cmake
index 420189acfdd62c8dc3ed4a7a15ec85c1d80f4d73..47678a7c71f94cd365b25de61123366f510db9e0 100644
--- a/Modules/Filtering/ColorMap/otb-module.cmake
+++ b/Modules/Filtering/ColorMap/otb-module.cmake
@@ -5,12 +5,17 @@ deformation map, interferogram. In this case, it is important to ensure that sim
 values will get similar colors. This module contains classes that can meet these
 requirements.")
 
-otb_module(OTBColorMap 
+otb_module(OTBColorMap
   DEPENDS
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBITKPendingPatches
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/Convolution/otb-module.cmake b/Modules/Filtering/Convolution/otb-module.cmake
index e998acf4480b8043c3a7a11198b39282a33ea5f3..5a40b218ff21689ae4499f354d7f553f9e1c520e 100644
--- a/Modules/Filtering/Convolution/otb-module.cmake
+++ b/Modules/Filtering/Convolution/otb-module.cmake
@@ -2,12 +2,16 @@ set(DOCUMENTATION "This module contains classes to compute an image which is
 the convolution of the input image with a given kernel. Note that two methods are
 used: classical convolution and convolution based on the Overlap-save algorithm.")
 
-otb_module(OTBConvolution 
+otb_module(OTBConvolution
   DEPENDS
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/DimensionalityReduction/otb-module.cmake b/Modules/Filtering/DimensionalityReduction/otb-module.cmake
index db68835f8abb9c4e7a1eb5e1fe25d6324e964e7f..526265cb01b6ff5001ee04cb2c8a640c45126de8 100644
--- a/Modules/Filtering/DimensionalityReduction/otb-module.cmake
+++ b/Modules/Filtering/DimensionalityReduction/otb-module.cmake
@@ -5,17 +5,20 @@ Analysis (PCA), Noise-Adjusted Principal Components Analysis (NAPCA), Maximum
 Noise Fraction (MNF), Fast Independant Component Analysis (FICA), Maximum
 Autocorrelation Factor (MAF), and so on.")
 
-otb_module(OTBDimensionalityReduction 
+otb_module(OTBDimensionalityReduction
   DEPENDS
-    OTBImageBase
     OTBStatistics
-    OTBObjectList
+    OTBITK
+    OTBImageBase
     OTBImageManipulation
     OTBCommon
+    OTBObjectList
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
     OTBWavelet
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/ImageManipulation/otb-module.cmake b/Modules/Filtering/ImageManipulation/otb-module.cmake
index 76dd88a2d00c515475dbab21f06c34520f8b68f9..c6e6e77052ba904456b2d49d43f35867a79533aa 100644
--- a/Modules/Filtering/ImageManipulation/otb-module.cmake
+++ b/Modules/Filtering/ImageManipulation/otb-module.cmake
@@ -5,8 +5,9 @@ nice other features, let's mention: applying a standard  (or a functor)  per
 band, evaluating a ImageFunction onto a source image, generating an image from DEM
 data.")
 
-otb_module(OTBImageManipulation 
+otb_module(OTBImageManipulation
   DEPENDS
+    OTBITK
     OTBITKPendingPatches
     OTBImageBase
     OTBTransform
@@ -15,11 +16,13 @@ otb_module(OTBImageManipulation
     OTBInterpolation
     OTBOSSIMAdapters
     OTBObjectList
+
   TEST_DEPENDS
     OTBTextures
     OTBTestKernel
+    OTBImageIO
     OTBDensity
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/ImageNoise/otb-module.cmake b/Modules/Filtering/ImageNoise/otb-module.cmake
index 6d5c53803bbc661a3bba7b2703af88c6758e144f..5856f6203518154da0bd0d16f7e3ec74a898ef19 100644
--- a/Modules/Filtering/ImageNoise/otb-module.cmake
+++ b/Modules/Filtering/ImageNoise/otb-module.cmake
@@ -1,11 +1,15 @@
 set(DOCUMENTATION "This module is related to noise estimation and reduction.")
 
-otb_module(OTBImageNoise 
+otb_module(OTBImageNoise
   DEPENDS
     OTBImageManipulation
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/MathParser/otb-module.cmake b/Modules/Filtering/MathParser/otb-module.cmake
index 85afad9feec3daf6cc515b479cf2b8b5d71e154c..2f9dc553ce9531490960e8f538e33115b4275020 100644
--- a/Modules/Filtering/MathParser/otb-module.cmake
+++ b/Modules/Filtering/MathParser/otb-module.cmake
@@ -2,19 +2,25 @@ set(DOCUMENTATION "This module contains filters that can apply any mathematical
 expression to the pixels of an image. Note that classes based on MuParserX have
 better capabilities than the ones based on MuParser.")
 
-otb_module(OTBMathParser 
+otb_module(OTBMathParser
   DEPENDS
     OTBVectorDataBase
-    OTBPath
     OTBMuParser
+    OTBITK
     OTBMuParserX
     OTBStatistics
     OTBCommon
+    OTBPath
     OTBImageManipulation
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
+    OTBProjection
     OTBVectorDataIO
-  
+    OTBImageBase
+    OTBObjectList
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/MorphologicalPyramid/otb-module.cmake b/Modules/Filtering/MorphologicalPyramid/otb-module.cmake
index 612daa118fe295d317a08ae8ac539ae95968b506..27100b0e7399dd80b9b4f89e1afe6e71ad05c3b5 100644
--- a/Modules/Filtering/MorphologicalPyramid/otb-module.cmake
+++ b/Modules/Filtering/MorphologicalPyramid/otb-module.cmake
@@ -5,17 +5,20 @@ down-sampling operation, such a decomposition can be used. The Morphological Pyr
 approach to such a decomposition. This module contains classes useful in meeting
 that goal.")
 
-otb_module(OTBMorphologicalPyramid 
+otb_module(OTBMorphologicalPyramid
   DEPENDS
+    OTBITK
     OTBImageBase
     OTBPointSet
-    OTBObjectList
     OTBImageManipulation
     OTBCommon
+    OTBObjectList
+
   TEST_DEPENDS
     OTBMorphologicalProfiles
+    OTBImageIO
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/Path/otb-module.cmake b/Modules/Filtering/Path/otb-module.cmake
index 06a161e9bd74f85a975cd879c854676b81d9f349..e195caca5056afd22bb612720cdba203ac73c634 100644
--- a/Modules/Filtering/Path/otb-module.cmake
+++ b/Modules/Filtering/Path/otb-module.cmake
@@ -4,16 +4,19 @@ as input, and producing an output of type Path. another interesting class is
 'otbPathFunction', which is the base class for all objects that evaluate a function
 of an image using a path list (computation of histograms for instance). And so on.")
 
-otb_module(OTBPath 
+otb_module(OTBPath
   DEPENDS
     OTBVectorDataBase
     OTBImageBase
-    OTBCommon
     OTBObjectList
+    OTBITK
+    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
     OTBVectorDataIO
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/Polarimetry/otb-module.cmake b/Modules/Filtering/Polarimetry/otb-module.cmake
index 8a335f15e9e2eea67af5b6557e9537d0e5d1f178..b69409a21a75d47b04777e229455b33209d2b531 100644
--- a/Modules/Filtering/Polarimetry/otb-module.cmake
+++ b/Modules/Filtering/Polarimetry/otb-module.cmake
@@ -5,13 +5,17 @@ applications. Here, the user can find (for instance) classes to handle different
 representations of a polarisation state, to perform polarimetry synthesis, and so
 on.")
 
-otb_module(OTBPolarimetry 
+otb_module(OTBPolarimetry
   DEPENDS
     OTBCommon
     OTBITKPendingPatches
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/Projection/otb-module.cmake b/Modules/Filtering/Projection/otb-module.cmake
index d24103087567de0e8acf6f930fb18556782dae99..71cca9a0e48e3ccbb0ebc3879d69db55ef3ed7f4 100644
--- a/Modules/Filtering/Projection/otb-module.cmake
+++ b/Modules/Filtering/Projection/otb-module.cmake
@@ -5,10 +5,11 @@ manifold of a 3-dimensional space (the Earth surface) in a 2-dimensional space
 generically related to this purpose. for instance, user can handle OGR data type, find RPC
 solvers, re-project input vector data over input images, and so on.")
 
-otb_module(OTBProjection 
+otb_module(OTBProjection
   DEPENDS
     OTBVectorDataBase
     OTBGdalAdapters
+    OTBITK
     OTBImageBase
     OTBTransform
     OTBVectorDataManipulation
@@ -18,10 +19,13 @@ otb_module(OTBProjection
     OTBBoost
     OTBGDAL
     OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
+    OTBITKPendingPatches
     OTBVectorDataIO
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/Smoothing/otb-module.cmake b/Modules/Filtering/Smoothing/otb-module.cmake
index b40e0baf24891ace909bc2d9fcf4278427ffdd80..c376c683abe47dd6345e59a3386b36fbeca05a3b 100644
--- a/Modules/Filtering/Smoothing/otb-module.cmake
+++ b/Modules/Filtering/Smoothing/otb-module.cmake
@@ -1,13 +1,16 @@
 set(DOCUMENTATION "This module contains classes that allow image smoothing (it
 contains mean shift smoothing for instance).")
 
-otb_module(OTBSmoothing 
+otb_module(OTBSmoothing
   DEPENDS
     OTBImageBase
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/Statistics/otb-module.cmake b/Modules/Filtering/Statistics/otb-module.cmake
index 7dc6657747d25536eccf0951e8bbf904c2da09b5..7a1e4561cb67707f43e7516022155bc8a48a7f1b 100644
--- a/Modules/Filtering/Statistics/otb-module.cmake
+++ b/Modules/Filtering/Statistics/otb-module.cmake
@@ -5,21 +5,25 @@ concatenate several sample lists into a single one, to generate a noised version
 of the input sample list, and so on. The other part works on images and labelMaps
 and allows the calculation of classical statistics (min max mean histogram).")
 
-otb_module(OTBStatistics 
+otb_module(OTBStatistics
   DEPENDS
     OTBVectorDataBase
-    OTBImageManipulation
     OTBProjection
     OTBITKPendingPatches
     OTBImageBase
     OTBLabelMap
     OTBStreaming
+    OTBImageManipulation
     OTBCommon
     OTBObjectList
+    OTBITK
+
   TEST_DEPENDS
     OTBVectorDataIO
     OTBTestKernel
-  
+    OTBImageIO
+    OTBInterpolation
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/VectorDataManipulation/otb-module.cmake b/Modules/Filtering/VectorDataManipulation/otb-module.cmake
index 96a9680a8bfd3cde2330927776f010dbc60db7cb..5afa16ec2f051101a15c7218c5ef66cceea870ba 100644
--- a/Modules/Filtering/VectorDataManipulation/otb-module.cmake
+++ b/Modules/Filtering/VectorDataManipulation/otb-module.cmake
@@ -1,20 +1,23 @@
 set(DOCUMENTATION "This module contains classes related to the handling of
 vector data (see also VectorDataBase and VectorDataManipulation modules).")
 
-otb_module(OTBVectorDataManipulation 
+otb_module(OTBVectorDataManipulation
   DEPENDS
     OTBVectorDataBase
-    OTBImageManipulation
+    OTBITK
     OTBTransform
-    OTBOSSIMAdapters
-    OTBCommon
-    OTBGDAL
+    OTBImageManipulation
     OTBPath
+    OTBCommon
+    OTBOSSIMAdapters
     OTBObjectList
+
   TEST_DEPENDS
-    OTBTestKernel
     OTBVectorDataIO
-  
+    OTBTestKernel
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/VectorDataRendering/otb-module.cmake b/Modules/Filtering/VectorDataRendering/otb-module.cmake
index e1f3ef8e8e54b315bd666a2204eecced8b1e3e74..a086a237aed916ffdc99c86a5edf321ee80c7f52 100644
--- a/Modules/Filtering/VectorDataRendering/otb-module.cmake
+++ b/Modules/Filtering/VectorDataRendering/otb-module.cmake
@@ -1,15 +1,22 @@
 set(DOCUMENTATION "This module contains classes related to the rasterization of
 OpenStreetMap vector data onto images")
 
-otb_module(OTBVectorDataRendering 
+otb_module(OTBVectorDataRendering
   DEPENDS
-    OTBMapnik
-    OTBVectorDataBase
     OTBVectorDataManipulation
+    OTBMapnik
+    OTBITK
+    OTBGDAL
+    OTBCommon
+
   TEST_DEPENDS
+    OTBVectorDataBase
     OTBTestKernel
+    OTBImageIO
+    OTBProjection
     OTBVectorDataIO
-  
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Filtering/Wavelet/otb-module.cmake b/Modules/Filtering/Wavelet/otb-module.cmake
index cbaaa56ea0cc148f5d3207dbaedeb86bf57a9758..234e8597030598eb4f2f09e7bf0ea30fbe7e2d57 100644
--- a/Modules/Filtering/Wavelet/otb-module.cmake
+++ b/Modules/Filtering/Wavelet/otb-module.cmake
@@ -1,13 +1,17 @@
 set(DOCUMENTATION "This module contains classes for wavelet analysis.")
 
-otb_module(OTBWavelet 
+otb_module(OTBWavelet
   DEPENDS
+    OTBImageManipulation
     OTBObjectList
+    OTBITK
     OTBCommon
-    OTBImageManipulation
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Fusion/Fuzzy/otb-module.cmake b/Modules/Fusion/Fuzzy/otb-module.cmake
index 53e4c906cf377c115bf68721778bce9c678f8bb8..f7a4c256551ca3e35092f3639601682e3d3d9ed7 100644
--- a/Modules/Fusion/Fuzzy/otb-module.cmake
+++ b/Modules/Fusion/Fuzzy/otb-module.cmake
@@ -4,13 +4,15 @@ module contains classes able to hold a vector where each component is the
 membership value for each one of the qualitative values. it also contains classes able
 to handle xml files where are stored several statistics.")
 
-otb_module(OTBFuzzy 
+otb_module(OTBFuzzy
   DEPENDS
     OTBCommon
     OTBTinyXML
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Fusion/MajorityVoting/otb-module.cmake b/Modules/Fusion/MajorityVoting/otb-module.cmake
index 798604e6eeff25b97c580b34b7f19592103d9c4e..bc585bf62a7088aa2ca551d384bcc6f9d011b36b 100644
--- a/Modules/Fusion/MajorityVoting/otb-module.cmake
+++ b/Modules/Fusion/MajorityVoting/otb-module.cmake
@@ -2,12 +2,15 @@ set(DOCUMENTATION "Majority voting takes the more representative label of all
 the pixels identified by the structuring element and then sets the center pixel to
 this label value (see also DempsterShafer module).")
 
-otb_module(OTBMajorityVoting 
+otb_module(OTBMajorityVoting
   DEPENDS
-    OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Fusion/PanSharpening/otb-module.cmake b/Modules/Fusion/PanSharpening/otb-module.cmake
index 06ee9e85aead18e5eb0188da7a0410b530bf9fa5..09cad7a1089537bf0db9a35725e5075ac1c90226 100644
--- a/Modules/Fusion/PanSharpening/otb-module.cmake
+++ b/Modules/Fusion/PanSharpening/otb-module.cmake
@@ -5,15 +5,18 @@ multispectral (XS) data (lower resolution in several spectral bands) to generate
 with a high resolution and several spectral bands. This module provides classes
 related to this purpose.")
 
-otb_module(OTBPanSharpening 
+otb_module(OTBPanSharpening
   DEPENDS
     OTBImageBase
     OTBStatistics
-    OTBImageManipulation
+    OTBITK
     OTBConvolution
+    OTBImageManipulation
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Hyperspectral/AnomalyDetection/otb-module.cmake b/Modules/Hyperspectral/AnomalyDetection/otb-module.cmake
index 82826a3ab4fc5d36daabe608325a2bb34395ba58..fcdbef81b38aab3565542d56c5524e80a99a308b 100644
--- a/Modules/Hyperspectral/AnomalyDetection/otb-module.cmake
+++ b/Modules/Hyperspectral/AnomalyDetection/otb-module.cmake
@@ -5,12 +5,15 @@ probabilities. This module contains classes related to well-known approaches for
 detection which have shown success for multispectral and hyperspectral images
 (for example Local-RX detector).")
 
-otb_module(OTBAnomalyDetection 
+otb_module(OTBAnomalyDetection
   DEPENDS
-    OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Hyperspectral/EndmembersExtraction/otb-module.cmake b/Modules/Hyperspectral/EndmembersExtraction/otb-module.cmake
index 878c0ade6b7814ddc5f7e8e7f958e3272ca7ccb7..f11c3c17784f405014fa8fee6e60a1dd1b6a0a72 100644
--- a/Modules/Hyperspectral/EndmembersExtraction/otb-module.cmake
+++ b/Modules/Hyperspectral/EndmembersExtraction/otb-module.cmake
@@ -1,18 +1,21 @@
 set(DOCUMENTATION "This module contains classes related to he extraction of end
 members (see also 'unmixing' module).")
 
-otb_module(OTBEndmembersExtraction 
+otb_module(OTBEndmembersExtraction
   DEPENDS
     OTBStatistics
-    OTBProjection
+    OTBITK
     OTBImageBase
     OTBDimensionalityReduction
     OTBImageManipulation
+    OTBProjection
     OTBBoost
     OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Hyperspectral/Unmixing/otb-module.cmake b/Modules/Hyperspectral/Unmixing/otb-module.cmake
index 45167925194dcd6f13c4b7ebce4dbc07ad521709..6fcd01469cc3988f225dbd654605268353bc78c3 100644
--- a/Modules/Hyperspectral/Unmixing/otb-module.cmake
+++ b/Modules/Hyperspectral/Unmixing/otb-module.cmake
@@ -5,16 +5,20 @@ unmixing one of these 'mixed' pixels is called hyperspectral image unmixing or
 simply hyperspectral unmixing. This module contains classes useful in meeting that
 goal.")
 
-otb_module(OTBUnmixing 
+otb_module(OTBUnmixing
   DEPENDS
-    OTBDimensionalityReduction
     OTBStatistics
-    OTBBoost
+    OTBITK
+    OTBImageBase
+    OTBDimensionalityReduction
     OTBCommon
+    OTBBoost
     OTBWavelet
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/Carto/otb-module.cmake b/Modules/IO/Carto/otb-module.cmake
index 1ef197fcdcf97b07a827e479ebc1956a81e026fd..2d6d669bfdd9202562a087b1846702d52d358d84 100644
--- a/Modules/IO/Carto/otb-module.cmake
+++ b/Modules/IO/Carto/otb-module.cmake
@@ -6,22 +6,24 @@ shapefile). request OSM Server using the OSM API 0.6 to get the xml file storing
 the vector elements available. retrieve Longitude and Latitude coordinates from a
 place name. And so on.")
 
-otb_module(OTBCarto 
+otb_module(OTBCarto
   DEPENDS
     OTBVectorDataBase
+    OTBImageManipulation
     OTBImageIO
     OTBProjection
-    OTBTinyXML
     OTBImageBase
+    OTBTinyXML
     OTBTransform
     OTBCommon
     OTBCurlAdapters
     OTBVectorDataIO
-    OTBImageManipulation
+    OTBITK
+
   TEST_DEPENDS
     OTBOpenThreadsAdapters
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/ExtendedFilename/otb-module.cmake b/Modules/IO/ExtendedFilename/otb-module.cmake
index abcf4f9349968088c7164864af549f151919afff..f9d5aad38191f1f84d2a5c1b5da72720f9b968a6 100644
--- a/Modules/IO/ExtendedFilename/otb-module.cmake
+++ b/Modules/IO/ExtendedFilename/otb-module.cmake
@@ -4,13 +4,17 @@ file for sensor modeling, tell  that a TILED GeoTiff is to be written, read a
 different subdataset or resolution (for multi-resolution data), or manage ortho-ready
 product by skipping either geographic or sensor-model information.")
 
-otb_module(OTBExtendedFilename 
+otb_module(OTBExtendedFilename
   DEPENDS
     OTBIOGDAL
     OTBBoost
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IOBSQ/otb-module.cmake b/Modules/IO/IOBSQ/otb-module.cmake
index 2ead8663dc45154814b84ec76c596402162572c6..5b8638302502fba69079a464146c919742c2698f 100644
--- a/Modules/IO/IOBSQ/otb-module.cmake
+++ b/Modules/IO/IOBSQ/otb-module.cmake
@@ -1,12 +1,14 @@
 set(DOCUMENTATION "This module contains features to read BSQ format images.")
 
-otb_module(OTBIOBSQ 
+otb_module(OTBIOBSQ
   DEPENDS
     OTBImageBase
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IOGDAL/otb-module.cmake b/Modules/IO/IOGDAL/otb-module.cmake
index 7d0c466ebb1772c2fb9ffaecde4d3a29f755b613..98ca5b971299c1ef050db1ce8a6b3c169b41271f 100644
--- a/Modules/IO/IOGDAL/otb-module.cmake
+++ b/Modules/IO/IOGDAL/otb-module.cmake
@@ -1,19 +1,22 @@
 set(DOCUMENTATION "This module contains features to read and write images with
 GDAL.")
 
-otb_module(OTBIOGDAL 
+otb_module(OTBIOGDAL
   DEPENDS
     OTBVectorDataBase
     OTBGdalAdapters
-    OTBTinyXML
+    OTBITK
     OTBImageBase
     OTBCommon
+    OTBTinyXML
     OTBGDAL
     OTBBoost
     OTBOSSIMAdapters
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IOJPEG2000/otb-module.cmake b/Modules/IO/IOJPEG2000/otb-module.cmake
index 56e454533d6d95f5842d76f3980f13ac48a387b1..50e4d018d17eeabccca10045c11bd643235cb102 100644
--- a/Modules/IO/IOJPEG2000/otb-module.cmake
+++ b/Modules/IO/IOJPEG2000/otb-module.cmake
@@ -1,18 +1,22 @@
 set(DOCUMENTATION "This module contains features to read and write JPEG2000
 format images.")
 
-otb_module(OTBIOJPEG2000 
+otb_module(OTBIOJPEG2000
   DEPENDS
-    OTBTinyXML
+    OTBITK
     OTBImageBase
     OTBOSSIMAdapters
     OTBCommon
+    OTBTinyXML
     OTBOpenJPEG
     OTBBoost
     OTBGDAL
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageManipulation
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IOKML/otb-module.cmake b/Modules/IO/IOKML/otb-module.cmake
index b828709032bf1ecaad779435aa5213423f10e69e..165348eb938db8b7a1942ea8d6962766e5118380 100644
--- a/Modules/IO/IOKML/otb-module.cmake
+++ b/Modules/IO/IOKML/otb-module.cmake
@@ -1,17 +1,19 @@
 set(DOCUMENTATION "This module contains features to read and write KML format
 vector data.")
 
-otb_module(OTBIOKML 
+otb_module(OTBIOKML
   DEPENDS
     OTBVectorDataBase
     OTBProjection
     OTBlibkml
-    OTBOSSIMAdapters
-    OTBCommon
     OTBGDAL
+    OTBCommon
+    OTBOSSIMAdapters
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IOLUM/otb-module.cmake b/Modules/IO/IOLUM/otb-module.cmake
index b6f4b2f72a5468db7c75db15e3334af0bc7c6bad..5efa547ce49a8545d06ad57810508296287ca897 100644
--- a/Modules/IO/IOLUM/otb-module.cmake
+++ b/Modules/IO/IOLUM/otb-module.cmake
@@ -1,12 +1,14 @@
 set(DOCUMENTATION "This module contains features to read LUM format images.")
 
-otb_module(OTBIOLUM 
+otb_module(OTBIOLUM
   DEPENDS
     OTBImageBase
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IOMSTAR/otb-module.cmake b/Modules/IO/IOMSTAR/otb-module.cmake
index a93eaf86daa81483179de566bc27d9648abc9d1c..0cb7a5e93ba6592595ff328e061c93a674595fcf 100644
--- a/Modules/IO/IOMSTAR/otb-module.cmake
+++ b/Modules/IO/IOMSTAR/otb-module.cmake
@@ -1,13 +1,15 @@
 set(DOCUMENTATION "This module contains features to read and write MSTAR format
 images.")
 
-otb_module(OTBIOMSTAR 
+otb_module(OTBIOMSTAR
   DEPENDS
     OTBImageBase
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IOMW/otb-module.cmake b/Modules/IO/IOMW/otb-module.cmake
index 02a15018301265ba853bcaf54d4018622114a974..bacdf6ca8158a11b668586cdc118b1dad9139ffe 100644
--- a/Modules/IO/IOMW/otb-module.cmake
+++ b/Modules/IO/IOMW/otb-module.cmake
@@ -1,12 +1,14 @@
 set(DOCUMENTATION "This module contains features to read MW format images.")
 
-otb_module(OTBIOMW 
+otb_module(OTBIOMW
   DEPENDS
     OTBImageBase
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IOONERA/otb-module.cmake b/Modules/IO/IOONERA/otb-module.cmake
index 70d03d15959fe1927c9ccc4e3d5c88a4a7f07b63..e5d172de630c4cdd846dbf22840e9f5dc4392ed4 100644
--- a/Modules/IO/IOONERA/otb-module.cmake
+++ b/Modules/IO/IOONERA/otb-module.cmake
@@ -1,12 +1,14 @@
 set(DOCUMENTATION "This module contains features to read ONERA format images.")
 
-otb_module(OTBIOONERA 
+otb_module(OTBIOONERA
   DEPENDS
     OTBImageBase
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IORAD/otb-module.cmake b/Modules/IO/IORAD/otb-module.cmake
index 6a3d25c8345c13b47a60bc812ae844419f71d489..5401c283ed8a55dc262efd65035d68ae5ee17abd 100644
--- a/Modules/IO/IORAD/otb-module.cmake
+++ b/Modules/IO/IORAD/otb-module.cmake
@@ -1,12 +1,14 @@
 set(DOCUMENTATION "This module contains features to read RAD format images.")
 
-otb_module(OTBIORAD 
+otb_module(OTBIORAD
   DEPENDS
     OTBImageBase
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/IOTileMap/otb-module.cmake b/Modules/IO/IOTileMap/otb-module.cmake
index 9aadbb3101d669c83501851b34e84ce1c4022e78..8faa1022bde6ae375c270004d391788e0c5ed5d7 100644
--- a/Modules/IO/IOTileMap/otb-module.cmake
+++ b/Modules/IO/IOTileMap/otb-module.cmake
@@ -1,16 +1,21 @@
 set(DOCUMENTATION "This module contains features to read and write TileMap
 format images.")
 
-otb_module(OTBIOTileMap 
+otb_module(OTBIOTileMap
   DEPENDS
     OTBIOGDAL
     OTBImageBase
     OTBCommon
     OTBCurlAdapters
+    OTBITK
+
   TEST_DEPENDS
+    OTBTransform
     OTBTestKernel
+    OTBImageIO
+    OTBImageManipulation
     OTBProjection
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/ImageIO/otb-module.cmake b/Modules/IO/ImageIO/otb-module.cmake
index 175520fbd4f9d12b30471ac3c6f8613a64f0dec9..a4ea2c09eb4373dba88a3e6058c3fa6d2b828bf7 100644
--- a/Modules/IO/ImageIO/otb-module.cmake
+++ b/Modules/IO/ImageIO/otb-module.cmake
@@ -1,29 +1,31 @@
 set(DOCUMENTATION "This module contains classes related to the reading and the
 writing of remote sensing images.")
 
-otb_module(OTBImageIO 
+otb_module(OTBImageIO
   DEPENDS
+    OTBIOMW
     OTBIORAD
-    OTBIOONERA
-    OTBIOJPEG2000
+    OTBIOMSTAR
+    OTBITK
     OTBITKPendingPatches
     OTBIOLUM
-    OTBImageBase
-    OTBIOMW
-    OTBIOMSTAR
+    OTBBoost
+    OTBIOJPEG2000
     OTBIOBSQ
     OTBIOGDAL
-    OTBStreaming
-    OTBBoost
+    OTBIOONERA
     OTBIOTileMap
     OTBCommon
+    OTBImageBase
+    OTBStreaming
     OTBExtendedFilename
     OTBOSSIMAdapters
     OTBObjectList
+
   TEST_DEPENDS
     OTBTestKernel
     OTBStatistics
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/KMZWriter/otb-module.cmake b/Modules/IO/KMZWriter/otb-module.cmake
index 369f6ffa92eb8d58dff0b2a3d98613b770874cfb..d24c18909c61d487b083c002e0cbc44df2b89496 100644
--- a/Modules/IO/KMZWriter/otb-module.cmake
+++ b/Modules/IO/KMZWriter/otb-module.cmake
@@ -1,19 +1,23 @@
 set(DOCUMENTATION "This module contains features to write kmz files (supported
 by Google Earth).")
 
-otb_module(OTBKMZWriter 
+otb_module(OTBKMZWriter
   DEPENDS
     OTBVectorDataBase
     OTBImageIO
-    OTBImageBase
+    OTBITK
+    OTBlibkml
     OTBTransform
-    OTBOSSIMAdapters
     OTBImageManipulation
+    OTBImageBase
     OTBVectorDataIO
-    OTBlibkml
+    OTBOSSIMAdapters
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBCommon
+    OTBProjection
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/TestKernel/otb-module.cmake b/Modules/IO/TestKernel/otb-module.cmake
index 9f326aa41c6e3d0b47ee135fad4c71bb918cb56b..75394e3339cdaf0d3182f7cac599a9a6add3d117 100644
--- a/Modules/IO/TestKernel/otb-module.cmake
+++ b/Modules/IO/TestKernel/otb-module.cmake
@@ -4,17 +4,17 @@ to instantiate it and another one which uses the class. The output of each test
 (image, text file, binary file) is controlled against a baseline to make sure that
 the result hasn't changed.")
 
-otb_module(OTBTestKernel 
+otb_module(OTBTestKernel
   DEPENDS
     OTBGdalAdapters
     OTBImageIO
+    OTBITK
     OTBImageBase
     OTBCommon
     OTBGDAL
     OTBOSSIMAdapters
     OTBImageManipulation
-  
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/IO/VectorDataIO/otb-module.cmake b/Modules/IO/VectorDataIO/otb-module.cmake
index 21b8b157b9ddfc9a62635f9ad6c38de3f20c7c09..992a374ab3d5c891715e1c1cab9b413972a3a002 100644
--- a/Modules/IO/VectorDataIO/otb-module.cmake
+++ b/Modules/IO/VectorDataIO/otb-module.cmake
@@ -2,16 +2,19 @@ set(DOCUMENTATION "This module contains classes related to the reading and the
 writing of vector data (see also VectorDataBase and VectorDataManipulation
 modules).")
 
-otb_module(OTBVectorDataIO 
+otb_module(OTBVectorDataIO
   DEPENDS
     OTBVectorDataBase
-    OTBVectorDataManipulation
-    OTBCommon
     OTBIOGDAL
+    OTBITK
+    OTBVectorDataManipulation
     OTBIOKML
+    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBOSSIMAdapters
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Learning/DempsterShafer/otb-module.cmake b/Modules/Learning/DempsterShafer/otb-module.cmake
index e435e87a0bd06484e6fa37246067b1aa165c04c3..05e122848e9dcfd5a35177f004b8e87ee7db4ade 100644
--- a/Modules/Learning/DempsterShafer/otb-module.cmake
+++ b/Modules/Learning/DempsterShafer/otb-module.cmake
@@ -4,19 +4,23 @@ dempster-Shafer, which is based on belief function and plausible reasoning, can
 be used for this purpose. This module contains classes related to this theory (see
 also majority voting module).")
 
-otb_module(OTBDempsterShafer 
+otb_module(OTBDempsterShafer
   DEPENDS
     OTBVectorDataBase
+    OTBITK
     OTBImageBase
     OTBVectorDataManipulation
     OTBSupervised
     OTBCommon
-    OTBMathParser
     OTBFuzzy
+    OTBMathParser
+
   TEST_DEPENDS
-    OTBTestKernel
     OTBVectorDataIO
-  
+    OTBTestKernel
+    OTBImageIO
+    OTBObjectList
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Learning/LearningBase/otb-module.cmake b/Modules/Learning/LearningBase/otb-module.cmake
index b9d137909211cd9a273285cc2ea18180a227066d..49350ed383ee17f9281016e09c64ec419ad60b9d 100644
--- a/Modules/Learning/LearningBase/otb-module.cmake
+++ b/Modules/Learning/LearningBase/otb-module.cmake
@@ -1,11 +1,16 @@
 set(DOCUMENTATION "This module contains OTB generic Machine Learning framework
 mainly based on OpenCV.")
 
-otb_module(OTBLearningBase 
+otb_module(OTBLearningBase
   DEPENDS
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Learning/Markov/otb-module.cmake b/Modules/Learning/Markov/otb-module.cmake
index fb5be786dfa34aa3ba1eeb23e14aaa826e0ad11f..a8954636f880ab0afdfd28c0ed7962a107b127db 100644
--- a/Modules/Learning/Markov/otb-module.cmake
+++ b/Modules/Learning/Markov/otb-module.cmake
@@ -3,13 +3,17 @@ statistical dependency between pixels in a neighborhood to infeer the value of a
 given pixel. This module contains the OTB framework, considered as more flexible
 than the ITK one.")
 
-otb_module(OTBMarkov 
+otb_module(OTBMarkov
   DEPENDS
     OTBBoost
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Learning/SOM/otb-module.cmake b/Modules/Learning/SOM/otb-module.cmake
index 94f43b5f94f940bdac27f3635c7e1107f6ea5951..ed3792fdcbf7b63a3d98ad5fb9a2951d4bd1e774 100644
--- a/Modules/Learning/SOM/otb-module.cmake
+++ b/Modules/Learning/SOM/otb-module.cmake
@@ -4,14 +4,17 @@ which are in competition by means of mutual interactions and they adapt in order
 to match characteristic patterns of the examples given during the learning. The
 SOM is usually on a plane (2D).")
 
-otb_module(OTBSOM 
+otb_module(OTBSOM
   DEPENDS
     OTBImageBase
     OTBCommon
     OTBITKPendingPatches
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Learning/SVMLearning/otb-module.cmake b/Modules/Learning/SVMLearning/otb-module.cmake
index 3b4d081677247beadef408527e8e5a8b51cc0c12..71f713c9aff5307af02f332b76d9f5a901e1761a 100644
--- a/Modules/Learning/SVMLearning/otb-module.cmake
+++ b/Modules/Learning/SVMLearning/otb-module.cmake
@@ -1,18 +1,23 @@
 set(DOCUMENTATION "Deprecated classes for SVM learning. See module 'Supervised' for a replacement")
 
-otb_module(OTBSVMLearning 
+otb_module(OTBSVMLearning
   DEPENDS
     OTBVectorDataBase
+    OTBITK
     OTBImageBase
     OTBLibSVM
     OTBLabelMap
     OTBStreaming
     OTBCommon
+
   TEST_DEPENDS
+    OTBStatistics
+    OTBImageIO
     OTBMoments
-    OTBTestKernel
+    OTBVectorDataIO
     OTBIOXML
-    OTBVectorDataIO  
+    OTBTestKernel
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Learning/Supervised/otb-module.cmake b/Modules/Learning/Supervised/otb-module.cmake
index 56a2466cfee6e19d6760e6a04bd575182646adc0..4535970622ebc167ee9c8b1f9ab0488a4f614f92 100644
--- a/Modules/Learning/Supervised/otb-module.cmake
+++ b/Modules/Learning/Supervised/otb-module.cmake
@@ -4,12 +4,19 @@ OpenCV and/or libSVM")
 
 otb_module(OTBSupervised
   DEPENDS
+    OTBBoost
     OTBCommon
+    OTBITK
+
   OPTIONAL_DEPENDS
     OTBOpenCV
     OTBSVMLearning
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/OBIA/RCC8/otb-module.cmake b/Modules/OBIA/RCC8/otb-module.cmake
index 1d23bdad2ff8df1f8f6a3be906b0b05d04025624..8f8fa9ca19df2f882ef41b7885eb36ec77ea0dcb 100644
--- a/Modules/OBIA/RCC8/otb-module.cmake
+++ b/Modules/OBIA/RCC8/otb-module.cmake
@@ -4,18 +4,22 @@ relations to each other (8 basic relations are possible between two regions). Th
 RCC8 constraint language has been popularly adopted by the GIS communities. This
 module provides classes related to this purpose.")
 
-otb_module(OTBRCC8 
+otb_module(OTBRCC8
   DEPENDS
-    OTBImageManipulation
+    OTBITK
     OTBImageBase
     OTBRoadExtraction
-    OTBCommon
+    OTBImageManipulation
     OTBPath
+    OTBCommon
     OTBBoost
     OTBObjectList
+
   TEST_DEPENDS
+    OTBVectorDataBase
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Radiometry/Indices/otb-module.cmake b/Modules/Radiometry/Indices/otb-module.cmake
index 9a475cb6c9515055f8241ba017a2e1de2a358729..d79c13129b0c362b56aa14289d1c8d466a26b072 100644
--- a/Modules/Radiometry/Indices/otb-module.cmake
+++ b/Modules/Radiometry/Indices/otb-module.cmake
@@ -4,19 +4,25 @@ one band. This module contains filters that can compute classical indices, such
 as NDVI (Normalized Difference Vegetation Index), NDWI (Normalized
 DifferenceWater Index) and so on.")
 
-otb_module(OTBIndices 
+otb_module(OTBIndices
   DEPENDS
     OTBVectorDataBase
-    OTBImageManipulation
+    OTBITK
     OTBITKPendingPatches
-    OTBCommon
+    OTBImageManipulation
     OTBFuzzy
     OTBPath
+    OTBCommon
     OTBMetadata
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
+    OTBProjection
     OTBVectorDataIO
-  
+    OTBImageBase
+    OTBObjectList
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Radiometry/OpticalCalibration/otb-module.cmake b/Modules/Radiometry/OpticalCalibration/otb-module.cmake
index d775290d1a9c784594d5a2277ac3a433e6a10fec..a19c2c797fb67b8c8bf45e9de0b244eb67601978 100644
--- a/Modules/Radiometry/OpticalCalibration/otb-module.cmake
+++ b/Modules/Radiometry/OpticalCalibration/otb-module.cmake
@@ -3,8 +3,9 @@ refletance image conversion. atmospheric correction for TOA (top of atmosphere)
 (top of canopy) reflectance estimation. correction of the adjacency effects taking
 into account the neighborhood contribution.")
 
-otb_module(OTBOpticalCalibration 
+otb_module(OTBOpticalCalibration
   DEPENDS
+    OTBITK
     OTBImageBase
     OTB6S
     OTBImageManipulation
@@ -14,9 +15,12 @@ otb_module(OTBOpticalCalibration
     OTBBoost
     OTBOSSIMAdapters
     OTBObjectList
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBITKPendingPatches
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Radiometry/SARCalibration/otb-module.cmake b/Modules/Radiometry/SARCalibration/otb-module.cmake
index 63fb0ac68b09d3d0a494415a03380b8e702bb698..3391e86b6c3a2d214c5395b5668bc111ea422216 100644
--- a/Modules/Radiometry/SARCalibration/otb-module.cmake
+++ b/Modules/Radiometry/SARCalibration/otb-module.cmake
@@ -1,16 +1,20 @@
 set(DOCUMENTATION "This module contains tools related to SAR calibration
 (classes to compute the backscatter or the brigthness of a given pixel and so on).")
 
-otb_module(OTBSARCalibration 
+otb_module(OTBSARCalibration
   DEPENDS
     OTBITKPendingPatches
-    OTBCommon
-    OTBOSSIMAdapters
     OTBMetadata
+    OTBITK
+    OTBOSSIMAdapters
+    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
     OTBStatistics
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Radiometry/Simulation/otb-module.cmake b/Modules/Radiometry/Simulation/otb-module.cmake
index 5f7a9962fa36f321df544a1a19a6ff5fcfa8fb08..e1983963762e7ada2faaeaf0672e14a82b95509e 100644
--- a/Modules/Radiometry/Simulation/otb-module.cmake
+++ b/Modules/Radiometry/Simulation/otb-module.cmake
@@ -4,25 +4,31 @@ to generate realistic hyperspectral synthetic set of data. This module includes
 PROSPECT (leaf optical properties) and SAIL (canopy bidirectional reflectance)
 models, as well as PROSAIL, which is the combination of the two previous ones.")
 
-otb_module(OTBSimulation 
+otb_module(OTBSimulation
   DEPENDS
     OTBStatistics
+    OTBITK
     OTBMetadata
     OTBImageBase
     OTBLabelMap
     OTBImageManipulation
-    OTBCommon
     OTBIndices
+    OTBCommon
+    OTBInterpolation
+    OTBBoost
     OTBOpticalCalibration
     OTBObjectList
-    OTBBoost
-    OTBInterpolation
+
   TEST_DEPENDS
-    OTBTestKernel
+    OTBVectorDataBase
     OTBConversion
-    OTBSVMLearning
-    OTBSupervised
+    OTBImageIO
+    OTBTestKernel
     OTBLearningBase
+    OTBSupervised
+    OTBSVMLearning
+    OTBVectorDataIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Registration/DisparityMap/otb-module.cmake b/Modules/Registration/DisparityMap/otb-module.cmake
index fdea8988b01414e1ca5ac5cbce557c8d9108d8f6..5be84cf8c85fb6439ae417dca8847ec1ded39ef7 100644
--- a/Modules/Registration/DisparityMap/otb-module.cmake
+++ b/Modules/Registration/DisparityMap/otb-module.cmake
@@ -5,17 +5,22 @@ in the chosen map projection system, resampling of a disparity map computed in
 epipolar geometry into a disparity map relative to sensor geometry, sub-pixel
 precision.")
 
-otb_module(OTBDisparityMap 
+otb_module(OTBDisparityMap
   DEPENDS
     OTBStereo
+    OTBITK
     OTBITKPendingPatches
     OTBImageBase
     OTBTransform
     OTBPointSet
     OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageManipulation
+    OTBObjectList
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Registration/DisplacementField/otb-module.cmake b/Modules/Registration/DisplacementField/otb-module.cmake
index 430e10fe3a220d3d33252d4c8ba52e93d5499a9b..789d9e9310f999c6b522f26ce444e06e1dc41bb6 100644
--- a/Modules/Registration/DisplacementField/otb-module.cmake
+++ b/Modules/Registration/DisplacementField/otb-module.cmake
@@ -5,16 +5,19 @@ BSpline). The class otb::StereorectificationDisplacementFieldSource is specializ
 in generating a deformation field between two images in epipolar geometry
 (horizontal shifts).")
 
-otb_module(OTBDisplacementField 
+otb_module(OTBDisplacementField
   DEPENDS
+    OTBITK
     OTBImageBase
     OTBTransform
     OTBCommon
     OTBOSSIMAdapters
     OTBObjectList
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Registration/Stereo/otb-module.cmake b/Modules/Registration/Stereo/otb-module.cmake
index 08f5c4be30bcaa2b186bb6026f65058c2e32ba54..1e9242144f9b7148e58830effa9eac9ddbdcd528 100644
--- a/Modules/Registration/Stereo/otb-module.cmake
+++ b/Modules/Registration/Stereo/otb-module.cmake
@@ -2,9 +2,10 @@ set(DOCUMENTATION "This module contains tools related to stereo-reconstruction.
 Classes that allow block matching, fine registration, adherence correction,
 elevation map construction are available.")
 
-otb_module(OTBStereo 
+otb_module(OTBStereo
   DEPENDS
     OTBStatistics
+    OTBITK
     OTBITKPendingPatches
     OTBImageBase
     OTBTransform
@@ -12,9 +13,12 @@ otb_module(OTBStereo
     OTBInterpolation
     OTBOSSIMAdapters
     OTBObjectList
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageManipulation
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Segmentation/CCOBIA/otb-module.cmake b/Modules/Segmentation/CCOBIA/otb-module.cmake
index 5b92bae85a2294c4e87536ca2f86d522ef8fc1ae..f45ae153007e9df3bbbfb05d6417301a46eeb25f 100644
--- a/Modules/Segmentation/CCOBIA/otb-module.cmake
+++ b/Modules/Segmentation/CCOBIA/otb-module.cmake
@@ -1,7 +1,7 @@
 set(DOCUMENTATION "This module contains classes that implement the Connected
 Component algorithm (segmentation).")
 
-otb_module(OTBCCOBIA 
+otb_module(OTBCCOBIA
   DEPENDS
     OTBConversion
     OTBStatistics
@@ -11,10 +11,16 @@ otb_module(OTBCCOBIA
     OTBStreaming
     OTBCommon
     OTBMathParser
+    OTBITK
+
   TEST_DEPENDS
+    OTBVectorDataBase
     OTBTestKernel
+    OTBImageIO
+    OTBVectorDataIO
     OTBSmoothing
-  
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Segmentation/Conversion/otb-module.cmake b/Modules/Segmentation/Conversion/otb-module.cmake
index e46e03ea85fa1ed0dc9e362f6a371fbb8f819414..43fd40772bb0923c663c4a92b707838f9a07f005 100644
--- a/Modules/Segmentation/Conversion/otb-module.cmake
+++ b/Modules/Segmentation/Conversion/otb-module.cmake
@@ -2,24 +2,28 @@ set(DOCUMENTATION "This module contains tools that allow switching between
 different segment representations (labelImage, labelMap, OGR Layer, QGIS table).
 Rasterization and vectorization are important features of this module.")
 
-otb_module(OTBConversion 
+otb_module(OTBConversion
   DEPENDS
     OTBVectorDataBase
-    OTBLabelMap
-    OTBGdalAdapters
     OTBVectorDataManipulation
+    OTBGdalAdapters
+    OTBITK
+    OTBVectorDataIO
     OTBIOGDAL
     OTBStreaming
-    OTBCommon
-    OTBVectorDataIO
+    OTBLabelMap
     OTBImageBase
+    OTBMetadata
     OTBBoost
     OTBGDAL
+    OTBCommon
+
   TEST_DEPENDS
     OTBTestKernel
+    OTBImageIO
     OTBProjection
     OTBSmoothing
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Segmentation/EdisonMeanShift/otb-module.cmake b/Modules/Segmentation/EdisonMeanShift/otb-module.cmake
index e169202cc576e61cbf9185a8fbaa1b34e72e5465..462342883de088526c7cdca2e4f5fa61c4422887 100644
--- a/Modules/Segmentation/EdisonMeanShift/otb-module.cmake
+++ b/Modules/Segmentation/EdisonMeanShift/otb-module.cmake
@@ -1,16 +1,20 @@
 set(DOCUMENTATION "This module implements the mean shift segmentation algorithm
 (EDISON library).")
 
-otb_module(OTBEdisonMeanShift 
+otb_module(OTBEdisonMeanShift
   DEPENDS
     OTBVectorDataBase
-    OTBImageBase
     OTBEdison
+    OTBITK
+    OTBImageBase
     OTBCommon
     OTBObjectList
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageManipulation
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Segmentation/Labelling/otb-module.cmake b/Modules/Segmentation/Labelling/otb-module.cmake
index 214dbbb865a3f25635fd39c1938a417174359bde..4dbc6d43072bb4ff7e1d24d7892a4bbc1587381f 100644
--- a/Modules/Segmentation/Labelling/otb-module.cmake
+++ b/Modules/Segmentation/Labelling/otb-module.cmake
@@ -6,13 +6,18 @@ neighbourhood. Remaping the labels is also possible, so that that the label numb
 are consecutive with no gaps between the label numbers used. Finally, it is also
 possible to sort the labels based on the size of the object.")
 
-otb_module(OTBLabelling 
+otb_module(OTBLabelling
   DEPENDS
     OTBPointSet
     OTBImageManipulation
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBITKPendingPatches
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Segmentation/MeanShift/otb-module.cmake b/Modules/Segmentation/MeanShift/otb-module.cmake
index e1ad66db6d30e83db22ad4f5222e10756a293e03..65727c1162ce56b7638aac304dcffa6964f76bfd 100644
--- a/Modules/Segmentation/MeanShift/otb-module.cmake
+++ b/Modules/Segmentation/MeanShift/otb-module.cmake
@@ -1,15 +1,19 @@
 set(DOCUMENTATION "This Module contains classes that implement the MeanShift
 segmentation algorithm.")
 
-otb_module(OTBMeanShift 
+otb_module(OTBMeanShift
   DEPENDS
     OTBCCOBIA
     OTBConversion
     OTBSmoothing
+    OTBITK
     OTBMathParser
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Segmentation/Metrics/otb-module.cmake b/Modules/Segmentation/Metrics/otb-module.cmake
index ac47b3165b671c172c42ed761f6ad14fc27333ff..3034b618856bf80686916493a45e37b9aee515b6 100644
--- a/Modules/Segmentation/Metrics/otb-module.cmake
+++ b/Modules/Segmentation/Metrics/otb-module.cmake
@@ -1,13 +1,17 @@
 set(DOCUMENTATION "This module contains classes that allow measuring the
 differences between two segmentations.")
 
-otb_module(OTBMetrics 
+otb_module(OTBMetrics
   DEPENDS
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBLabelMap
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Segmentation/MorphologicalProfiles/otb-module.cmake b/Modules/Segmentation/MorphologicalProfiles/otb-module.cmake
index 6fed049807b8b21fdf148dc1fad084b6a372e71d..10d55f61889078e5f53b3d2fb2bd4805a7fb34e4 100644
--- a/Modules/Segmentation/MorphologicalProfiles/otb-module.cmake
+++ b/Modules/Segmentation/MorphologicalProfiles/otb-module.cmake
@@ -1,15 +1,18 @@
 set(DOCUMENTATION "This module contains mono and multi-scale convex/concave
 image classification based on geodesic morphology characteristics.")
 
-otb_module(OTBMorphologicalProfiles 
+otb_module(OTBMorphologicalProfiles
   DEPENDS
     OTBImageBase
+    OTBImageManipulation
     OTBObjectList
+    OTBITK
     OTBCommon
-    OTBImageManipulation
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Segmentation/OGRProcessing/otb-module.cmake b/Modules/Segmentation/OGRProcessing/otb-module.cmake
index 24884d3f9acdbffc9161ee0875bccfacd3494a30..b7468d78018f60c6801e356b93d4869c69692d47 100644
--- a/Modules/Segmentation/OGRProcessing/otb-module.cmake
+++ b/Modules/Segmentation/OGRProcessing/otb-module.cmake
@@ -2,7 +2,7 @@ set(DOCUMENTATION "This module contains a class that allow the fusion of
 geometries in a layer (OGRLayer) along streaming lines, and a class that allow stream
 segmentation and vectorization of the output label image.")
 
-otb_module(OTBOGRProcessing 
+otb_module(OTBOGRProcessing
   DEPENDS
     OTBGdalAdapters
     OTBProjection
@@ -13,9 +13,13 @@ otb_module(OTBOGRProcessing
     OTBCommon
     OTBLabelling
     OTBGDAL
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Segmentation/Watersheds/otb-module.cmake b/Modules/Segmentation/Watersheds/otb-module.cmake
index 497bde27f8f7e658e5a66c32b29dda0176e5d089..5490f71a4b4deccb73efaf02885767e775b980ba 100644
--- a/Modules/Segmentation/Watersheds/otb-module.cmake
+++ b/Modules/Segmentation/Watersheds/otb-module.cmake
@@ -1,11 +1,15 @@
 set(DOCUMENTATION "OTB implementation of Watersheds segmentation algorithm.")
 
-otb_module(OTBWatersheds 
+otb_module(OTBWatersheds
   DEPENDS
     OTBCommon
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+    OTBImageIO
+    OTBImageBase
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Wrappers/ApplicationEngine/otb-module.cmake b/Modules/Wrappers/ApplicationEngine/otb-module.cmake
index 94e2d933d4fe8407e7c4d49b8fac749d44b34024..e2c2e57a03ae194a475d7a2a84c2d8e7231ca72d 100644
--- a/Modules/Wrappers/ApplicationEngine/otb-module.cmake
+++ b/Modules/Wrappers/ApplicationEngine/otb-module.cmake
@@ -1,24 +1,28 @@
 set(DOCUMENTATION "This module contains classes that ease the implementation of
 applications (see chapter 'How to write an application' of the SoftwareGuide).")
 
-otb_module(OTBApplicationEngine 
+otb_module(OTBApplicationEngine
   DEPENDS
     OTBVectorDataBase
-    OTBImageManipulation
     OTBImageIO
     OTBProjection
-    OTBTinyXML
     OTBVectorDataIO
     OTBTransform
-    OTBCommon
+    OTBImageManipulation
+    OTBTinyXML
     OTBImageBase
+    OTBCommon
+    OTBObjectList
     OTBBoost
     OTBOSSIMAdapters
-    OTBObjectList
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
     OTBCommandLine
+    OTBEdge
     OTBAppImageUtils
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Wrappers/CommandLine/otb-module.cmake b/Modules/Wrappers/CommandLine/otb-module.cmake
index 54fdc36ce38d63b69b2ead2f2c877c53d24fa726..5ae1a6f62ad4050d8148b9f6ab9b87f601703a31 100644
--- a/Modules/Wrappers/CommandLine/otb-module.cmake
+++ b/Modules/Wrappers/CommandLine/otb-module.cmake
@@ -1,13 +1,16 @@
 set(DOCUMENTATION "Required to launch applications from command line.")
 
-otb_module(OTBCommandLine 
+otb_module(OTBCommandLine
   DEPENDS
-    OTBApplicationEngine
-    OTBTinyXML
     OTBCommon
+    OTBITK
+    OTBTinyXML
+    OTBApplicationEngine
+
   TEST_DEPENDS
     OTBTestKernel
     OTBAppImageUtils
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Wrappers/QtWidget/otb-module.cmake b/Modules/Wrappers/QtWidget/otb-module.cmake
index ce9429e698f6ebba9f807bd90831ab569fb5b13d..2a3a8a1e08d6f265ab5ea8fd92a21c6b828da8e3 100644
--- a/Modules/Wrappers/QtWidget/otb-module.cmake
+++ b/Modules/Wrappers/QtWidget/otb-module.cmake
@@ -1,12 +1,14 @@
 set(DOCUMENTATION "QT wrappers.")
 
-otb_module(OTBQtWidget 
+otb_module(OTBQtWidget
   DEPENDS
-    OTBApplicationEngine
     OTBQt4
+    OTBApplicationEngine
+    OTBITK
+
   TEST_DEPENDS
     OTBTestKernel
-  
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)
diff --git a/Modules/Wrappers/SWIG/otb-module.cmake b/Modules/Wrappers/SWIG/otb-module.cmake
index c4a007e0564ff958383c0df2cb0e6860be33b7cd..d002471f327547b44b825bec389e600c6b225c76 100644
--- a/Modules/Wrappers/SWIG/otb-module.cmake
+++ b/Modules/Wrappers/SWIG/otb-module.cmake
@@ -2,8 +2,9 @@ set(DOCUMENTATION "TO BE DOCUMENTED")
 
 otb_module(OTBSWIGWrapper
   DEPENDS
-      OTBApplicationEngine
-  
+    OTBApplicationEngine
+    OTBITK
+
   DESCRIPTION
     "${DOCUMENTATION}"
-  )
+)