]> SALOME platform Git repositories - tools/sat_salome.git/commitdiff
Salome HOME
spns #20550 Version EGL headless offscreen de paraview
authorNabil Ghodbane <nabil.ghodbane@cea.fr>
Wed, 13 Jan 2021 08:49:30 +0000 (09:49 +0100)
committerNabil Ghodbane <nabil.ghodbane@cea.fr>
Wed, 13 Jan 2021 08:49:30 +0000 (09:49 +0100)
products/compil_scripts/ParaView.sh

index c37f2f3e598c6a145cd83def81cb748a5d767ef4..f9f729c12f19fb2186e337c352a77e29cf0a3509 100755 (executable)
@@ -30,6 +30,36 @@ CMAKE_OPTIONS="${CMAKE_OPTIONS} -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON"
 ### OpenGL settings
 CMAKE_OPTIONS="${CMAKE_OPTIONS} -DOpenGL_GL_PREFERENCE:STRING=LEGACY"
 
+### spns #20550 - Headless mode
+if [ -n "$PARAVIEW_HEADLESS_MODE" ]
+then
+    EGL_INCLUDE_ROOT_DIR=
+    EGL_LIBRARY_ROOT_DIR=
+    # check EGL/egl.h is present
+    LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION"
+    case $LINUX_DISTRIBUTION in
+        CO6|CO7|FD26|FD30|FD32)
+            if [ -f /usr/include/EGL/egl.h ] && [ -f /usr/lib64/libEGL.so ]
+            then
+                EGL_FOUND=true
+                EGL_INCLUDE_ROOT_DIR=/usr/include
+                EGL_LIBRARY_ROOT_DIR=/usr/lib64
+            fi
+            ;;
+        *)
+            ;;
+    esac
+    if [ $EGL_FOUND == "true" ]; then
+        echo "WARNING: Building with headless mode support..."
+        CMAKE_OPTIONS="${CMAKE_OPTIONS} -DVTK_OPENGL_HAS_EGL:BOOL=ON"
+        CMAKE_OPTIONS="${CMAKE_OPTIONS} -DEGL_INCLUDE_DIR=${EGL_INCLUDE_ROOT_DIR}"
+        CMAKE_OPTIONS="${CMAKE_OPTIONS} -DEGL_opengl_LIBRARY=${EGL_LIBRARY_ROOT_DIR}/libEGL.so"
+    else
+        echo "FATAL: Headless mode cannot be set on node $LINUX_DISTRIBUTION! Please set EGL_INCLUDE_ROOT_DIR and EGL_LIBRARY_ROOT_DIR environment variables in script: $0"
+        exit 1
+    fi
+fi
+
 ### Ray-tracing settings
 if [ -n "$OSPRAY_ROOT_DIR" ] 
 then