diff --git a/CMakeLists.txt b/CMakeLists.txt
index 236d2b7088a6ee65dfc33f8d1eb2513e341e8b2f..2634e72c096916c3a5a6b690f916a818f59adfe1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -304,90 +304,6 @@ IF(NOT BUILD_SHARED_LIBS)
   ADD_DEFINITIONS(-DOSSIM_STATIC)
 ENDIF(NOT BUILD_SHARED_LIBS)
 
-
-#-----------------------------------------------------------------------------
-# Option for generate Visu tools !!!
-OPTION(OTB_USE_VISU_GUI "Generate Gui/Visu tools directory. If ON, find OpenGL and FLTK packages." ON)
-MARK_AS_ADVANCED(OTB_USE_VISU_GUI)
-
-SET(OTB_GLU_INCLUDE_PATH "")
-IF(OTB_USE_VISU_GUI)
-
-        #-------------------------------
-        # OpenGL Library
-        #-------------------------------
-        FIND_PACKAGE(OpenGL)
-
-        IF( NOT OPENGL_FOUND )
-                MESSAGE(FATAL_ERROR "Impossible to find OpenGL on your system.\nCannot build OTB Visu module without OpenGL library.\nInstall OpenGL on your system OR set OTB_USE_VISU_GUI to OFF to disable OTB Visu module generation !")
-	    ENDIF( NOT OPENGL_FOUND )
-        IF( NOT OPENGL_GLU_FOUND )
-                MESSAGE(FATAL_ERROR "Impossible to find GLU library on your system.\nCannot build OTB Visu module without GLU library.\nInstall GLU library on your system OR set OTB_USE_VISU_GUI to OFF to disable OTB Visu module generation !")
-        ENDIF( NOT OPENGL_GLU_FOUND )
-
-        IF(OPENGL_INCLUDE_DIR)
-                INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR})
-        ENDIF(OPENGL_INCLUDE_DIR)
-
-	#-------------------------------
-        # Display images using textures using video card acceleration
-        #-------------------------------
-	OPTION(OTB_GL_USE_ACCEL "Use video card acceleration." OFF)
-	MARK_AS_ADVANCED(OTB_GL_USE_ACCEL)
-
-        #-------------------------------
-        # FLTK Library
-        #-------------------------------
-        
-        #OPTION(OTB_USE_EXTERNAL_FLTK "Use an outside build of FLTK." OFF)
-        
-        FIND_PACKAGE(FLTK)
-
-	# If an external fltk is found, do not provide the internal fltk choice
-	IF(FLTK_FOUND)
-       OPTION(OTB_USE_EXTERNAL_FLTK "Use an outside build of FLTK." ON)
-	ELSE(FLTK_FOUND)
-	   OPTION(OTB_USE_EXTERNAL_FLTK "Use an outside build of FLTK." OFF)
-	ENDIF(FLTK_FOUND)
-                         
-#        IF(FLTK_FOUND)
-#           SET(OTB_USE_EXTERNAL_FLTK ON)
-#        ELSE(FLTK_FOUND)
-#           SET(OTB_USE_EXTERNAL_FLTK OFF)
-#        ENDIF(FLTK_FOUND)
-
-        # Option for internal/external FLTK
-        MARK_AS_ADVANCED(OTB_USE_EXTERNAL_FLTK)
-
-        IF(OTB_USE_EXTERNAL_FLTK)
-
-                # Mingw Option doesn't exist in the FindFLTK.cmake default configuration file in CMake installationj directory.
-                # Copy  FLTK_PLATFORM_DEPENDENT_LIBS from FLTK CmakeList.txt
-                IF(MINGW)
-                    ADD_DEFINITIONS(-DWIN32)
-                    SET( FLTK_PLATFORM_DEPENDENT_LIBS ole32 uuid wsock32 gdi32 comdlg32)
-                ENDIF(MINGW)
-
-                IF(FLTK_FOUND)
-                    INCLUDE_DIRECTORIES(${FLTK_INCLUDE_DIR})
-                ELSE(FLTK_FOUND)
-                    MESSAGE(FATAL_ERROR
-	                        "Cannot build OTB project without FLTK.  Please set FLTK_DIR  or  set OTB_USE_VISU to OFF  or  set OTB_USE_EXTERNAL_FLTK OFF to use INTERNAL FLTK set on OTB/Utilities repository.")
-                ENDIF(FLTK_FOUND)
-
-        ELSE(OTB_USE_EXTERNAL_FLTK)
-                SET(FLTK_INCLUDE_DIR "")
-                SET(FLTK_LIBRARIES "")
-                SET(JPEG_INCLUDE_DIR ${JPEG_INCLUDE_DIRS})
-                SET( FLTK_PLATFORM_DEPENDENT_LIBS "")
-                INCLUDE(${OTB_BINARY_DIR}/Utilities/FLTK/FLTKConfig.cmake)
-
-        ENDIF(OTB_USE_EXTERNAL_FLTK)
-
-        SET(OTB_VISU_GUI_LIBRARIES "${FLTK_LIBRARIES};${OPENGL_LIBRARIES} ")
-        SET(FLTK_FLUID_EXECUTABLE ${FLUID_COMMAND})
-ENDIF(OTB_USE_VISU_GUI)
-
 #-------------------------------
 # CURL Library
 #-------------------------------
@@ -698,6 +614,63 @@ IF(OTB_USE_EXTERNAL_GDAL)
 ELSE(OTB_USE_EXTERNAL_GDAL)
 ENDIF(OTB_USE_EXTERNAL_GDAL)
 
+#-----------------------------------------------------------------------------
+# Option for generate Visu tools !!!
+OPTION(OTB_USE_VISU_GUI "Generate Gui/Visu tools directory. If ON, find OpenGL and FLTK packages." ON)
+MARK_AS_ADVANCED(OTB_USE_VISU_GUI)
+
+SET(OTB_GLU_INCLUDE_PATH "")
+IF(OTB_USE_VISU_GUI)
+
+        #-------------------------------
+        # OpenGL Library
+        #-------------------------------
+        FIND_PACKAGE(OpenGL)
+
+        IF( NOT OPENGL_FOUND )
+                MESSAGE(FATAL_ERROR "Impossible to find OpenGL on your system.\nCannot build OTB Visu module without OpenGL library.\nInstall OpenGL on your system OR set OTB_USE_VISU_GUI to OFF to disable OTB Visu module generation !")
+	    ENDIF( NOT OPENGL_FOUND )
+        IF( NOT OPENGL_GLU_FOUND )
+                MESSAGE(FATAL_ERROR "Impossible to find GLU library on your system.\nCannot build OTB Visu module without GLU library.\nInstall GLU library on your system OR set OTB_USE_VISU_GUI to OFF to disable OTB Visu module generation !")
+        ENDIF( NOT OPENGL_GLU_FOUND )
+
+        IF(OPENGL_INCLUDE_DIR)
+                INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR})
+        ENDIF(OPENGL_INCLUDE_DIR)
+
+	#-------------------------------
+        # Display images using textures using video card acceleration
+        #-------------------------------
+	OPTION(OTB_GL_USE_ACCEL "Use video card acceleration." OFF)
+	MARK_AS_ADVANCED(OTB_GL_USE_ACCEL)
+
+        #-------------------------------
+        # FLTK Library
+        #-------------------------------
+        OPTION(OTB_USE_EXTERNAL_FLTK "Use an outside build of FLTK." OFF)
+
+	IF(OTB_USE_EXTERNAL_FLTK)
+        	FIND_PACKAGE(FLTK)
+		IF(NOT FLTK_FOUND)
+			MESSAGE(FATAL_ERROR
+                  "Cannot build OTB project without FLTK. Please set FLTK_DIR or set OTB_USE_EXTERNAL_FLTK OFF to use INTERNAL FLTK.")
+		ENDIF(NOT FLTK_FOUND)
+	ELSE(OTB_USE_EXTERNAL_FLTK)
+		# Same Set as ITK
+		SET(FLTK_SOURCE_DIR ${OTB_SOURCE_DIR}/Utilities/FLTK)
+		SET(FLTK_BINARY_DIR ${OTB_BINARY_DIR}/Utilities/FLTK)
+		# Additionnal variables needed by OTB_VISU_GUI_LIBRARIES and FLTK_FLUID_EXECUTABLE
+		SET(FLTK_LIBRARIES "fltk_images;fltk;fltk_gl;fltk_forms")
+		SET(FLUID_COMMAND fluid)
+		# FLTK CMake needs a variable called JPEG_INCLUDE_DIR
+		SET(JPEG_INCLUDE_DIR ${JPEG_INCLUDE_DIRS})
+        ENDIF(OTB_USE_EXTERNAL_FLTK)
+
+        SET(OTB_VISU_GUI_LIBRARIES "${FLTK_LIBRARIES};${OPENGL_LIBRARIES} ")
+        SET(FLTK_FLUID_EXECUTABLE ${FLUID_COMMAND})
+ENDIF(OTB_USE_VISU_GUI)
+
+
 #Experimental
 OPTION(OTB_USE_GETTEXT "Get Text Library." ON)