diff --git a/SuperBuild/CMake/External_boost.cmake b/SuperBuild/CMake/External_boost.cmake
index 39036a3cec50793926b9b28d681e24607a354327..cc117091e0d16d1560f97d91bb5817905e81b6c1 100644
--- a/SuperBuild/CMake/External_boost.cmake
+++ b/SuperBuild/CMake/External_boost.cmake
@@ -51,21 +51,20 @@ foreach(lib ${boost_libraries_to_build})
     --with-${lib})
 endforeach(lib)
 
-# I think that this is already handled by boost.
-# if(OTB_TARGET_SYSTEM_ARCH_IS_X64)
-#   set(BOOST_SB_CONFIG 
-#     ${BOOST_SB_CONFIG}
-#     address-model=64)
-# endif()
-
-# This is needed because otherwise boost is building both x32 and x64 lib,
-# and during packages on win32 we are installing all libs.
+# This is needed because otherwise boost is building both x32 and x64 lib 
+# (on wndows) and during packages on win32 we are installing all libs.
 # See Packaging/install_importlibs.cmake
 
 if ( WIN32 )
-  set(BOOST_SB_CONFIG 
-    ${BOOST_SB_CONFIG}
-    address-model=32)
+  if(OTB_TARGET_SYSTEM_ARCH_IS_X64)
+    set(BOOST_SB_CONFIG 
+      ${BOOST_SB_CONFIG}
+      address-model=64)
+  elseif()()
+    set(BOOST_SB_CONFIG 
+      ${BOOST_SB_CONFIG}
+      address-model=32)
+  endif()
 endif()
 
 set(BOOST_SB_CONFIG