diff --git a/Utilities/ITK/Utilities/vxl/CMakeLists.txt b/Utilities/ITK/Utilities/vxl/CMakeLists.txt
index d46ab25324135ee63f30d64e178d3aa984adb379..872ac59a55976819e235e0f809ff76a9581279dd 100644
--- a/Utilities/ITK/Utilities/vxl/CMakeLists.txt
+++ b/Utilities/ITK/Utilities/vxl/CMakeLists.txt
@@ -23,4 +23,4 @@ SET(VCL_INCLUDE_DIR ${vxl_BINARY_DIR}/vcl ${vxl_SOURCE_DIR}/vcl)
 
 INCLUDE_DIRECTORIES(${VCL_INCLUDE_DIR} ${VXLCORE_INCLUDE_DIR})
 
-SET(VXL_INSTALL_ROOT /include/otb/Utilities/ITK/Utilities/vxl)
+SET(VXL_INSTALL_ROOT /include/InsightToolkit/Utilities/vxl)
diff --git a/Utilities/ITK/Utilities/vxl/core/vnl/CMakeLists.txt b/Utilities/ITK/Utilities/vxl/core/vnl/CMakeLists.txt
index 9561439686fd4e1f810a4cc0a1e63b4fc3040b47..5838b9f1dd67e7c19065089f7488969e41536d22 100644
--- a/Utilities/ITK/Utilities/vxl/core/vnl/CMakeLists.txt
+++ b/Utilities/ITK/Utilities/vxl/core/vnl/CMakeLists.txt
@@ -200,6 +200,9 @@ IF( BUILD_TESTING )
   SUBDIRS(tests)
 ENDIF( BUILD_TESTING )
 
-INSTALL_TARGETS(/lib/otb itkvnl)
+IF(ITK_LIBRARY_PROPERTIES)
+  SET_TARGET_PROPERTIES(itkvnl PROPERTIES ${ITK_LIBRARY_PROPERTIES})
+ENDIF(ITK_LIBRARY_PROPERTIES)
+INSTALL_TARGETS(/lib/InsightToolkit itkvnl)
 INSTALL_FILES(${VXL_INSTALL_ROOT}/core/vnl "(\\.h|\\.txx)$")
 INSTALL_FILES(${VXL_INSTALL_ROOT}/core/vnl .h vnl_config)
diff --git a/Utilities/ITK/Utilities/vxl/core/vnl/algo/CMakeLists.txt b/Utilities/ITK/Utilities/vxl/core/vnl/algo/CMakeLists.txt
index 8d59d740dcffeb11c240bfc088ab16354dca5bfe..0309f887f26e89add8b98da49b90464f22b08312 100644
--- a/Utilities/ITK/Utilities/vxl/core/vnl/algo/CMakeLists.txt
+++ b/Utilities/ITK/Utilities/vxl/core/vnl/algo/CMakeLists.txt
@@ -83,12 +83,14 @@ IF(NETLIB_FOUND)
 
   ADD_LIBRARY( itkvnl_algo ${vnl_algo_sources})
   TARGET_LINK_LIBRARIES( itkvnl_algo ${NETLIB_LIBRARIES} itkvnl )
-  INSTALL_TARGETS(/lib/otb itkvnl_algo)
+  IF(ITK_LIBRARY_PROPERTIES)
+    SET_TARGET_PROPERTIES(itkvnl_algo PROPERTIES ${ITK_LIBRARY_PROPERTIES})
+  ENDIF(ITK_LIBRARY_PROPERTIES)
+  INSTALL_TARGETS(/lib/InsightToolkit itkvnl_algo)
 
-  #ROMAIN
-  #IF( BUILD_TESTING )
-  #  SUBDIRS(tests)
-  #ENDIF( BUILD_TESTING )
+  IF( BUILD_TESTING )
+    SUBDIRS(tests)
+  ENDIF( BUILD_TESTING )
 
 ENDIF(NETLIB_FOUND)
 INSTALL_FILES(${VXL_INSTALL_ROOT}/core/vnl/algo "(\\.h|\\.txx)$")
diff --git a/Utilities/ITK/Utilities/vxl/core/vnl/vnl_matrix_fixed_ref.h b/Utilities/ITK/Utilities/vxl/core/vnl/vnl_matrix_fixed_ref.h
index 1334120bbb4d50566c2aa63f5b58c9e620860924..3e4872455aefc8c0dbe1221b0129839ee8ad35ad 100644
--- a/Utilities/ITK/Utilities/vxl/core/vnl/vnl_matrix_fixed_ref.h
+++ b/Utilities/ITK/Utilities/vxl/core/vnl/vnl_matrix_fixed_ref.h
@@ -464,58 +464,58 @@ class vnl_matrix_fixed_ref : public vnl_matrix_fixed_ref_const<T,num_rows,num_co
   //: Add \a s to each element of lhs matrix in situ
   vnl_matrix_fixed_ref const& operator+= (T s) const
   {
-    add( data_block(), s, data_block() ); return *this;
+    vnl_matrix_fixed_ref::add( data_block(), s, data_block() ); return *this;
   }
 
   //: Subtract \a s from each element of lhs matrix in situ
   vnl_matrix_fixed_ref const& operator-= (T s) const
   {
-    sub( data_block(), s, data_block() ); return *this;
+    vnl_matrix_fixed_ref::sub( data_block(), s, data_block() ); return *this;
   }
 
   //:
   vnl_matrix_fixed_ref const& operator*= (T s) const
   {
-    mul( data_block(), s, data_block() ); return *this;
+    vnl_matrix_fixed_ref::mul( data_block(), s, data_block() ); return *this;
   }
 
   //:
   vnl_matrix_fixed_ref const& operator/= (T s) const
   {
-    div( data_block(), s, data_block() ); return *this;
+    vnl_matrix_fixed_ref::div( data_block(), s, data_block() ); return *this;
   }
 
   //:
   vnl_matrix_fixed_ref const & operator+= (vnl_matrix_fixed_ref_const<T,num_rows,num_cols> const& m) const
   {
-    add( data_block(), m.data_block(), data_block() ); return *this;
+    vnl_matrix_fixed_ref::add( data_block(), m.data_block(), data_block() ); return *this;
   }
 
   //:
   vnl_matrix_fixed_ref const& operator+= (vnl_matrix<T> const& m) const
   {
     assert( m.rows() == num_rows && m.cols() == num_cols );
-    add( data_block(), m.data_block(), data_block() ); return *this;
+    vnl_matrix_fixed_ref::add( data_block(), m.data_block(), data_block() ); return *this;
   }
 
   //:
   vnl_matrix_fixed_ref const& operator-= (vnl_matrix_fixed_ref_const<T,num_rows,num_cols> const& m) const
   {
-    sub( data_block(), m.data_block(), data_block() ); return *this;
+    vnl_matrix_fixed_ref::sub( data_block(), m.data_block(), data_block() ); return *this;
   }
 
   //:
   vnl_matrix_fixed_ref const& operator-= (vnl_matrix<T> const& m) const
   {
     assert( m.rows() == num_rows && m.cols() == num_cols );
-    sub( data_block(), m.data_block(), data_block() ); return *this;
+    vnl_matrix_fixed_ref::sub( data_block(), m.data_block(), data_block() ); return *this;
   }
 
   //: Negate all elements of matrix
   vnl_matrix_fixed<T,num_rows,num_cols> operator- () const
   {
     vnl_matrix_fixed<T,num_rows,num_cols> r;
-    sub( T(0), data_block(), r.data_block() );
+    vnl_matrix_fixed_ref<T,num_rows,num_cols>::sub( T(0), data_block(), r.data_block() );
     return r;
   }
 
diff --git a/Utilities/ITK/Utilities/vxl/core/vnl/vnl_scalar_join_iterator.txx b/Utilities/ITK/Utilities/vxl/core/vnl/vnl_scalar_join_iterator.txx
index e3372095d9bd7537fd5ddc3f0f74c8ce02a88bb3..00212a7ad039372a8b55dbd2a4c3aeb195029884 100644
--- a/Utilities/ITK/Utilities/vxl/core/vnl/vnl_scalar_join_iterator.txx
+++ b/Utilities/ITK/Utilities/vxl/core/vnl/vnl_scalar_join_iterator.txx
@@ -139,13 +139,13 @@ void vnl_scalar_join_iterator<T>::next()
 }
 
 template <class T>
-unsigned vnl_scalar_join_iterator<T>::row1()
+unsigned vnl_scalar_join_iterator<T>::row1() const
 {
   return (*index1).original_index;
 }
 
 template <class T>
-unsigned vnl_scalar_join_iterator<T>::row2()
+unsigned vnl_scalar_join_iterator<T>::row2() const
 {
   return (*index2).original_index;
 }
diff --git a/Utilities/ITK/Utilities/vxl/core/vnl/vnl_vector_fixed_ref.h b/Utilities/ITK/Utilities/vxl/core/vnl/vnl_vector_fixed_ref.h
index e6186b6c3103d5f1622564d07031df3492ac6709..ad35fe8c3dd98b01f44efc263739c73c7b0cadb7 100644
--- a/Utilities/ITK/Utilities/vxl/core/vnl/vnl_vector_fixed_ref.h
+++ b/Utilities/ITK/Utilities/vxl/core/vnl/vnl_vector_fixed_ref.h
@@ -366,44 +366,44 @@ class vnl_vector_fixed_ref : public vnl_vector_fixed_ref_const<T,n>
 
   //:
   vnl_vector_fixed_ref<T,n> const & operator+=( T s ) const {
-    add( data_block(), s, data_block() ); return *this;
+    vnl_vector_fixed_ref<T,n>::add( data_block(), s, data_block() ); return *this;
   }
 
   //:
   vnl_vector_fixed_ref<T,n> const & operator-=( T s ) const {
-    sub( data_block(), s, data_block() ); return *this;
+    vnl_vector_fixed_ref<T,n>::sub( data_block(), s, data_block() ); return *this;
   }
 
   //:
   vnl_vector_fixed_ref<T,n> const & operator*=( T s ) const {
-    mul( data_block(), s, data_block() ); return *this;
+    vnl_vector_fixed_ref<T,n>::mul( data_block(), s, data_block() ); return *this;
   }
 
   //:
   vnl_vector_fixed_ref<T,n> const & operator/=( T s ) const {
-    div( data_block(), s, data_block() ); return *this;
+    vnl_vector_fixed_ref<T,n>::div( data_block(), s, data_block() ); return *this;
   }
 
   //:
   vnl_vector_fixed_ref<T,n> const & operator+=( const vnl_vector_fixed<T,n>& v ) const {
-    add( data_block(), v.data_block(), data_block() ); return *this;
+    vnl_vector_fixed_ref<T,n>::add( data_block(), v.data_block(), data_block() ); return *this;
   }
 
   //:
   vnl_vector_fixed_ref<T,n> const & operator-=( const vnl_vector_fixed<T,n>& v ) const {
-    sub( data_block(), v.data_block(), data_block() ); return *this;
+    vnl_vector_fixed_ref<T,n>::sub( data_block(), v.data_block(), data_block() ); return *this;
   }
 
   //:
   vnl_vector_fixed_ref<T,n> const & operator+=( const vnl_vector<T>& v ) const {
     assert( v.size() == n );
-    add( data_block(), v.data_block(), data_block() ); return *this;
+    vnl_vector_fixed_ref<T,n>::add( data_block(), v.data_block(), data_block() ); return *this;
   }
 
   //:
   vnl_vector_fixed_ref<T,n> const & operator-=( const vnl_vector<T>& v ) const {
     assert( v.size() == n );
-    sub( data_block(), v.data_block(), data_block() ); return *this;
+    vnl_vector_fixed_ref<T,n>::sub( data_block(), v.data_block(), data_block() ); return *this;
   }
 };
 
diff --git a/Utilities/ITK/Utilities/vxl/v3p/netlib/CMakeLists.txt b/Utilities/ITK/Utilities/vxl/v3p/netlib/CMakeLists.txt
index aaca4772052304d654e78dac92a9e2340446f823..2be5478806680c84777f90fa056f37d561a1838c 100644
--- a/Utilities/ITK/Utilities/vxl/v3p/netlib/CMakeLists.txt
+++ b/Utilities/ITK/Utilities/vxl/v3p/netlib/CMakeLists.txt
@@ -307,4 +307,7 @@ IF(UNIX)
   TARGET_LINK_LIBRARIES( itknetlib m )
 ENDIF(UNIX)
 
-INSTALL_TARGETS(/lib/otb itknetlib)
+IF(ITK_LIBRARY_PROPERTIES)
+  SET_TARGET_PROPERTIES(itknetlib PROPERTIES ${ITK_LIBRARY_PROPERTIES})
+ENDIF(ITK_LIBRARY_PROPERTIES)
+INSTALL_TARGETS(/lib/InsightToolkit itknetlib)
diff --git a/Utilities/ITK/Utilities/vxl/vcl/CMakeLists.txt b/Utilities/ITK/Utilities/vxl/vcl/CMakeLists.txt
index b5ae06005e2852108afa56c430c2310879c52f12..5db6d563a9c904500656dd3aeecacbfc92e85305 100644
--- a/Utilities/ITK/Utilities/vxl/vcl/CMakeLists.txt
+++ b/Utilities/ITK/Utilities/vxl/vcl/CMakeLists.txt
@@ -362,7 +362,10 @@ IF( BUILD_TESTING)
   SUBDIRS(tests)
 ENDIF( BUILD_TESTING)
 
-INSTALL_TARGETS(/lib/otb itkvcl)
+IF(ITK_LIBRARY_PROPERTIES)
+  SET_TARGET_PROPERTIES(itkvcl PROPERTIES ${ITK_LIBRARY_PROPERTIES})
+ENDIF(ITK_LIBRARY_PROPERTIES)
+INSTALL_TARGETS(/lib/InsightToolkit itkvcl)
 INSTALL_FILES(${VXL_INSTALL_ROOT}/vcl "(\\.h|\\.txx)$")
 INSTALL_FILES(${VXL_INSTALL_ROOT}/vcl ".h"
               "vcl_config_compiler"