diff --git a/graphics/VP1/VP1HEPVis/CMakeLists.txt b/graphics/VP1/VP1HEPVis/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..2e97b0b531b1ffa5a1200be8da2e00a2f92cd21d
--- /dev/null
+++ b/graphics/VP1/VP1HEPVis/CMakeLists.txt
@@ -0,0 +1,19 @@
+################################################################################
+# Package: VP1HEPVis
+################################################################################
+# Author: Joe Boudreau (Importer)
+# Author: Riccardo Maria BIANCHI <rbianchi@cern.ch>
+################################################################################
+
+
+# Declare the package name:
+atlas_subdir( VP1HEPVis )
+
+# External dependencies:
+find_package( Coin3D )
+
+# Component(s) in the package:
+atlas_add_library( VP1HEPVis src/*.cxx
+   PUBLIC_HEADERS VP1HEPVis
+   INCLUDE_DIRS ${COIN3D_INCLUDE_DIRS}
+   LINK_LIBRARIES ${COIN3D_LIBRARIES} )
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/SbPlane.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/SbPlane.h
index 032d8192425e9fed1ccc3f52787f6528f7f9ed46..570ed9d208ff040b40fe9402f2b1224341cb7c0a 100644
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/SbPlane.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/SbPlane.h
@@ -1,3 +1,5 @@
+// Dear emacs, this is -*- c++ -*-
+
 /*
   Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
 */
@@ -30,6 +32,7 @@
  * Used by the BooleanProcessor.
  */
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/SbVec3d.h>
 
 namespace HEPVis {
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/SbPolyhedron.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/SbPolyhedron.h
old mode 100755
new mode 100644
index 5bdee227c4e70b756c0f7e2d6dd8f9854b5e4135..94472e5034dace81f54db76f743e01c5c5104610
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/SbPolyhedron.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/SbPolyhedron.h
@@ -165,6 +165,7 @@
 // - added a new GetVertexFast(), from Guy Barrand.
 //
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/SbLinear.h>
 
 
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/SbRotation.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/SbRotation.h
index 0482d759c8c25bcbc15d683d07ffe5d766907027..e8747bab698ecdfd4090e33a6f9dac082b3254f8 100644
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/SbRotation.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/SbRotation.h
@@ -1,3 +1,5 @@
+// Dear emacs, this is -*- c++ -*-
+
 /*
   Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
 */
@@ -23,6 +25,7 @@
 // Code taken from CoinGL/SbRotation but by using doubles instead of floats.
 // It is used by SbPolyhedron::Transform.
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/SbVec4d.h>
 
 class SbVec3d;
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/actions/SoGL2PSAction.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/actions/SoGL2PSAction.h
index 6b527edfacb87a0fac8094efecc3fa826972f90f..0775abb8f35c119894e2470194421f0662e1be50 100644
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/actions/SoGL2PSAction.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/actions/SoGL2PSAction.h
@@ -5,6 +5,7 @@
 #ifndef HEPVis_SoGL2PSAction_h
 #define HEPVis_SoGL2PSAction_h 
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/actions/SoGLRenderAction.h>
 
 /**
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoCons.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoCons.h
old mode 100755
new mode 100644
index ed8ae72150205abcc02ac593d21831796dbed210..a5145a83af0ed7bd92054019c976df1d889ea614
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoCons.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoCons.h
@@ -12,6 +12,7 @@
 #ifndef HEPVis_SoCons_h
 #define HEPVis_SoCons_h
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/fields/SoSFFloat.h>
 #include <Inventor/fields/SoSFInt32.h>
 #include <Inventor/fields/SoSFNode.h>
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoGenericBox.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoGenericBox.h
index 3932844f7f63ef5d4280d62eecbb31e1120f155b..cd48549dea9ffdcea0f194aee9fc367613af7d9d 100644
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoGenericBox.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoGenericBox.h
@@ -18,6 +18,7 @@
 #ifndef SOGENERICBOX_H
 #define SOGENERICBOX_H
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/fields/SoSFNode.h>
 #include <Inventor/fields/SoSFBool.h>
 #include <Inventor/nodes/SoShape.h>
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoLAr.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoLAr.h
old mode 100755
new mode 100644
index 8003912c73eed3325bf34687911a9b98b6096df1..c2acc42e604c6c5dae1e045f1069e1b3bcc85636
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoLAr.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoLAr.h
@@ -13,6 +13,7 @@
 #ifndef HEPVis_SoLAr_h
 #define HEPVis_SoLAr_h
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/fields/SoSFFloat.h>
 #include <Inventor/fields/SoMFFloat.h>
 #include <Inventor/fields/SoSFInt32.h>
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoPcons.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoPcons.h
old mode 100755
new mode 100644
index 16461f9ef2894b47ec7c4f21924b39832a924c09..c448291a8c7c0d66bce17d0b2aef9b1dbe4f7883
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoPcons.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoPcons.h
@@ -15,6 +15,7 @@
 #ifndef HEPVis_SoPcons_h
 #define HEPVis_SoPcons_h
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/fields/SoSFFloat.h>
 #include <Inventor/fields/SoMFFloat.h>
 #include <Inventor/fields/SoSFInt32.h>
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoPolyhedron.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoPolyhedron.h
old mode 100755
new mode 100644
index 6378fbf851ec3f655a1329544e4a0eabc200b8c0..58f489539a5c1827bdd3562cd0bc36aee60102bc
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoPolyhedron.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoPolyhedron.h
@@ -17,6 +17,7 @@
 #define HEPVis_SoPolyhedron_h
 
 // Inheritance :
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/nodes/SoShape.h>
 #include <Inventor/fields/SoSFBool.h>
 
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTessellated.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTessellated.h
index 2f57cf319945d6aa4bfa71f374ef951fd2f0dc3f..3ed56eca2cfe2b9383f5a28b5d1ce78eb1f3e284 100644
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTessellated.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTessellated.h
@@ -5,6 +5,7 @@
 #ifndef SOTESSELLATED_H
 #define SOTESSELLATED_H
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/fields/SoSFNode.h>
 #include <Inventor/fields/SoSFBool.h>
 #include <Inventor/nodes/SoShape.h>
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTransparency.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTransparency.h
index 7f715c3b409ac3cfd3dd8adaf51b137106f9e2d0..64dc88a7916e443d27dcd3f5cc68673ae383f08f 100644
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTransparency.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTransparency.h
@@ -12,6 +12,7 @@
 //                                                            //
 ////////////////////////////////////////////////////////////////
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/fields/SoSFFloat.h>
 #include <Inventor/fields/SoSFBool.h>
 #include <Inventor/nodes/SoSubNode.h>
diff --git a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTubs.h b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTubs.h
old mode 100755
new mode 100644
index d9f1e32888c10be7fcc5947a8a2ff7843129cf05..5d4e3e240fd64c814205941fa0eb4c23da74be83
--- a/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTubs.h
+++ b/graphics/VP1/VP1HEPVis/VP1HEPVis/nodes/SoTubs.h
@@ -12,6 +12,7 @@
 #ifndef HEPVis_SoTubs_h
 #define HEPVis_SoTubs_h
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/fields/SoSFFloat.h>
 #include <Inventor/fields/SoSFNode.h>
 #include <Inventor/fields/SoSFBool.h>
diff --git a/graphics/VP1/VP1HEPVis/cmt/requirements b/graphics/VP1/VP1HEPVis/cmt/requirements
old mode 100755
new mode 100644
index dab5d5fbcc7b6b4608598474afb05b2d342496ed..b43b04604d174e7d94d0b9d6e573e6c7d15af680
--- a/graphics/VP1/VP1HEPVis/cmt/requirements
+++ b/graphics/VP1/VP1HEPVis/cmt/requirements
@@ -18,7 +18,11 @@ macro VP1HEPVis_cppflags  " -ansi -D_REENTRANT -I/usr/X11R6/include" \
       target-darwin              " -ansi -D_REENTRANT"
 
 #Fixme: The linkopts (apart from the first) come from a run of coin-config --libs. We should call this instead of hardcoding!!
-macro VP1HEPVis_linkopts " -lVP1HEPVis -lGL  -lXext  -lSM -lICE -lX11  -ldl -lpthread  -lm" \
+# ORIGINAL
+#macro VP1HEPVis_linkopts " -lVP1HEPVis -lGL  -lXext  -lSM -lICE -lX11  -ldl -lpthread  -lm" \
+#      target-darwin             " -lVP1HEPVis -lpthread"
+# TEST
+macro VP1HEPVis_linkopts " -lVP1HEPVis -lGL  -lXext -lICE -lX11  -ldl -lpthread  -lm" \
       target-darwin             " -lVP1HEPVis -lpthread"
 
 macro VP1HEPVis_shlibflags_toBeAppended " -lGL " \
diff --git a/graphics/VP1/VP1HEPVis/src/BooleanProcessor.h b/graphics/VP1/VP1HEPVis/src/BooleanProcessor.h
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/BooleanProcessor.h.original b/graphics/VP1/VP1HEPVis/src/BooleanProcessor.h.original
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/PolygonTriangulator.cxx b/graphics/VP1/VP1HEPVis/src/PolygonTriangulator.cxx
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/PolygonTriangulator.h b/graphics/VP1/VP1HEPVis/src/PolygonTriangulator.h
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/SbMath.h b/graphics/VP1/VP1HEPVis/src/SbMath.h
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/SbPolyhedron.cxx b/graphics/VP1/VP1HEPVis/src/SbPolyhedron.cxx
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/SbStringHelpers.cxx b/graphics/VP1/VP1HEPVis/src/SbStringHelpers.cxx
index 25ab73e2e0fad5efc9da438b005851c3fc228edc..8f8ec574ad2c7255c325f7e08a00c0da17aebf34 100644
--- a/graphics/VP1/VP1HEPVis/src/SbStringHelpers.cxx
+++ b/graphics/VP1/VP1HEPVis/src/SbStringHelpers.cxx
@@ -3,6 +3,8 @@
 */
 
 // this :
+
+#include <Inventor/C/errors/debugerror.h>
 #define private public
 #include <Inventor/SbPList.h>//hack to work around numitems not initialised in coin
 #undef private
diff --git a/graphics/VP1/VP1HEPVis/src/SbStringHelpers.h b/graphics/VP1/VP1HEPVis/src/SbStringHelpers.h
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/SoCons.cxx b/graphics/VP1/VP1HEPVis/src/SoCons.cxx
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/SoLAr.cxx b/graphics/VP1/VP1HEPVis/src/SoLAr.cxx
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/SoPcons.cxx b/graphics/VP1/VP1HEPVis/src/SoPcons.cxx
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/SoPolyhedron.cxx b/graphics/VP1/VP1HEPVis/src/SoPolyhedron.cxx
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/SoTubs.cxx b/graphics/VP1/VP1HEPVis/src/SoTubs.cxx
old mode 100755
new mode 100644
diff --git a/graphics/VP1/VP1HEPVis/src/VP1HEPVisUtils.cxx b/graphics/VP1/VP1HEPVis/src/VP1HEPVisUtils.cxx
index 6696df1a538f4a9dd179d976f485ecf06bbfc39b..d8cdf1297a0bd3a32ee2b7d59b0c4ae0cddf23ab 100644
--- a/graphics/VP1/VP1HEPVis/src/VP1HEPVisUtils.cxx
+++ b/graphics/VP1/VP1HEPVis/src/VP1HEPVisUtils.cxx
@@ -16,6 +16,7 @@
 
 #include "VP1HEPVis/VP1HEPVisUtils.h"
 
+#include <Inventor/C/errors/debugerror.h>
 #include <Inventor/nodes/SoSelection.h>
 #include <Inventor/nodes/SoSeparator.h>
 #include <Inventor/nodes/SoSwitch.h>