]> SALOME platform Git repositories - tools/sat_salome.git/commitdiff
Salome HOME
bos #43653: integration of Persalys 17.0.1
authorGuytri KASTANE <guytri.kastane@cea.fr>
Wed, 20 Nov 2024 14:59:36 +0000 (15:59 +0100)
committerGuytri KASTANE <guytri.kastane@cea.fr>
Wed, 20 Nov 2024 14:59:36 +0000 (15:59 +0100)
applications/SALOME-master-native.pyconf
applications/SALOME-master.pyconf
products/PERSALYS.pyconf
products/compil_scripts/PERSALYS-v17.0.1.sh [new file with mode: 0755]
products/env_scripts/PERSALYS.py

index be750a62e9a955574e276dee1ff4df1b64dd40eb..84cacc31e8cbdacb2a68fd4117bd9edd1a675137 100644 (file)
@@ -114,7 +114,7 @@ APPLICATION :
         pandas : 'native'
         patsy : 'native'
         ParaView : {tag:'5.11.0', base: 'no',  section: 'version_5_11_0_MPI', hpc: 'yes'}
-        PERSALYS : 'v16.0.1'
+        PERSALYS : 'v17.0.1'
         petsc : {tag : '3.16.0', section: 'version_3_16_0'}
         Pillow : 'native'
         planegcs : '0.18-3cb6890'
index 196c746aaaf5192d7013cbf69ecafd0f822b27fc..0012954101b145c4db138b532da3f478f4de83c6 100644 (file)
@@ -117,7 +117,7 @@ APPLICATION :
         pandas : '1.1.5'
         patsy : '0.5.4'
         ParaView : {tag:'5.11.0', base: 'no',  section: 'version_5_11_0_MPI', hpc: 'yes'}
-        PERSALYS: 'v16.0.1'
+        PERSALYS: 'v17.0.1'
         petsc : {tag : '3.16.0', base: 'no', section: 'version_3_16_0', hpc: 'yes'}
         Pillow : '8.4.0'
         planegcs : '0.18-3cb6890'
index 777f79643bf28d0c897593b8851ccfc667802d14..c116fefc9402118684443198b4cd60cad9c978d2 100644 (file)
@@ -58,6 +58,12 @@ default_win :
       incremental : "yes"
     }
 }
+
+version_v17_0_1 :
+{
+   compil_script : 'PERSALYS-v17.0.1.sh'
+}
+
 version_v16_0_1 :
 {
    compil_script : 'PERSALYS-v16.0.1.sh'
diff --git a/products/compil_scripts/PERSALYS-v17.0.1.sh b/products/compil_scripts/PERSALYS-v17.0.1.sh
new file mode 100755 (executable)
index 0000000..07c0b37
--- /dev/null
@@ -0,0 +1,139 @@
+#!/bin/bash
+
+echo "##########################################################################"
+echo "PERSALYS $VERSION"
+echo "##########################################################################"
+
+if [ -n "$SAT_HPC" ]  && [ -n "$MPI_ROOT_DIR" ]; then
+    echo "WARNING: setting CC and CXX environment variables and target MPI wrapper"
+    CMAKE_OPTIONS+=" -DCMAKE_CXX_COMPILER:STRING=${MPI_CXX_COMPILER}"
+    CMAKE_OPTIONS+=" -DCMAKE_C_COMPILER:STRING=${MPI_C_COMPILER}"
+    CMAKE_OPTIONS+=" -DMPI_C_FOUND=$MPI_C_FOUND"
+fi
+
+CMAKE_OPTIONS=""
+CMAKE_OPTIONS+=" -DCMAKE_INSTALL_PREFIX:STRING=$PRODUCT_INSTALL"
+CMAKE_OPTIONS+=" -DCMAKE_INSTALL_LIBDIR:STRING=lib"
+CMAKE_OPTIONS+=" -DADAO_ROOT_DIR=$ADAO_ROOT_DIR"
+CMAKE_OPTIONS+=" -DBOOST_ROOT:PATH=$BOOST_ROOT_DIR"
+CMAKE_OPTIONS+=" -DGUI_ROOT_DIR=$GUI_ROOT_DIR"
+CMAKE_OPTIONS+=" -DSalomeGUI_DIR=$GUI_ROOT_DIR/adm_local/cmake_files"
+CMAKE_OPTIONS+=" -DKERNEL_ROOT_DIR=$KERNEL_ROOT_DIR"
+CMAKE_OPTIONS+=" -DSalomeKERNEL_DIR=$KERNEL_ROOT_DIR/salome_adm/cmake_files"
+CMAKE_OPTIONS+=" -DOpenTURNS_DIR=$OT_ROOT_DIR/lib/cmake/openturns"
+CMAKE_OPTIONS+=" -DPy2cpp_DIR=$PY2CPP_ROOT_DIR//lib/cmake/py2cpp"
+
+# strangely some distributions fail to guess qwt installation location
+#  - CentOS 8
+#  - Ubuntu 20.04
+if [[ $DIST_NAME == "CO" && $DIST_VERSION == "8" && "$SAT_qwt_IS_NATIVE" == "1" ]]; then
+    CMAKE_OPTIONS+=" -DQWT_LIBRARY=/usr/lib64/libqwt-qt5.so"
+    CMAKE_OPTIONS+=" -DQWT_INCLUDE_DIR=/usr/include/qt5/qwt"
+elif [[ $DIST_NAME == "UB" && $DIST_VERSION == "20.04" && "$SAT_qwt_IS_NATIVE" == "1" ]]; then
+    CMAKE_OPTIONS+=" -DQWT_LIBRARY=/usr/lib/libqwt-qt5.so"
+    CMAKE_OPTIONS+=" -DQWT_INCLUDE_DIR=/usr/include/qwt"
+elif [ "$SAT_qwt_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DQWT_LIBRARY=$QWT_ROOT_DIR/lib/libqwt.so"
+    CMAKE_OPTIONS+=" -DQWT_INCLUDE_DIR=$QWT_ROOT_DIR/include"
+fi
+
+if [[ "$DIST_NAME$DIST_VERSION" == "CO8" ]]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" # missing tex-preview LateX package for CentOS 8
+elif [[ "$DIST_NAME$DIST_VERSION" == "CO7" ]]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" # missing tex-preview LateX package for CentOS 7 - à installer
+elif [ "$DIST_NAME$DIST_VERSION" == "FD36" ]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" #
+elif [ "$DIST_NAME$DIST_VERSION" == "FD37" ]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" #
+elif [ "$DIST_NAME$DIST_VERSION" == "FD38" ]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" #
+else
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=ON"
+fi
+CMAKE_OPTIONS+=" -DSPHINX_ROOT_DIR=$SPHINX_ROOT_DIR"
+CMAKE_OPTIONS+=" -DYACS_ROOT_DIR=$YACS_ROOT_DIR"
+CMAKE_OPTIONS+=" -DSalomeYACS_DIR=$YACS_ROOT_DIR/adm/cmake"
+CMAKE_OPTIONS+=" -Dydefx_DIR=$YDEFX_ROOT_DIR/salome_adm/cmake_files"
+CMAKE_OPTIONS+=" -DAdaoCppLayer_INCLUDE_DIR=$ADAO_INTERFACE_ROOT_DIR/include"
+CMAKE_OPTIONS+=" -DAdaoCppLayer_ROOT_DIR=$ADAO_INTERFACE_ROOT_DIR"
+CMAKE_OPTIONS+=" -DUSE_SALOME=ON"
+if [ -n "$TBB_ROOT" ]; then
+    CMAKE_OPTIONS+=" -DTBB_ROOT=$TBB_ROOT_DIR"
+    CMAKE_OPTIONS+=" -DTBB_INCLUDE_DIR=$TBB_ROOT_DIR/include"
+fi
+CMAKE_OPTIONS+=" -DPYTHON_EXECUTABLE=$PYTHONBIN"
+
+CMAKE_OPTIONS+=" -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE"
+if [ "$SAT_Python_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DPYTHON_LIBRARY=$PYTHON_ROOT_DIR/lib/libpython$PYTHON_VERSION.so"
+fi
+
+if [ "$SAT_Sphinx_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DSPHINX_ROOT_DIR:FILEPATH=$SPHINX_ROOT_DIR"
+    CMAKE_OPTIONS+=" -DSPHINX_EXECUTABLE:FILEPATH=$SPHINX_ROOT_DIR/bin/sphinx-build"
+fi
+
+CMAKE_OPTIONS+=" -DCMAKE_FIND_ROOT_PATH=ON"
+CMAKE_OPTIONS+=" -DSWIG_EXECUTABLE:PATH=$(which swig)"
+if [ "${SAT_cgns_IS_NATIVE}" != "1" ]
+then
+    CMAKE_OPTIONS+=" -DCGNS_INCLUDE_DIR:PATH=${CGNS_ROOT_DIR}/include"
+    CMAKE_OPTIONS+=" -DCGNS_LIBRARY:PATH=${CGNS_ROOT_DIR}/lib/libcgns.so"
+fi
+if [ -n "$SAT_DEBUG" ]; then
+    CMAKE_OPTIONS+=" -DCMAKE_BUILD_TYPE:STRING=Debug"
+else
+    CMAKE_OPTIONS+=" -DCMAKE_BUILD_TYPE:STRING=Release"
+fi
+
+echo
+echo "*** cmake $CMAKE_OPTIONS"
+cmake $CMAKE_OPTIONS $SOURCE_DIR
+if [ $? -ne 0 ]
+then
+    echo "ERROR on cmake"
+    exit 1
+fi
+
+echo
+echo "*** make" $MAKE_OPTIONS
+make $MAKE_OPTIONS
+if [ $? -ne 0 ]
+then
+    echo "ERROR on make"
+    exit 2
+fi
+
+echo
+echo "*** make install"
+make install
+if [ $? -ne 0 ]
+then
+    echo "ERROR on make install"
+    exit 3
+fi
+
+# spns #32377
+#  setting -DCMAKE_INSTALL_LIBDIR to lib is not enough on Fedora nodes
+echo
+echo "*** check installation"
+if [ ! -d "${PRODUCT_INSTALL}/lib" ]; then
+    mkdir -p ${PRODUCT_INSTALL}/lib
+fi
+
+if [ -d "${PRODUCT_INSTALL}/lib64" ]; then
+    echo "WARNING: moving lib64 to lib"
+    mv ${PRODUCT_INSTALL}/lib64/* ${PRODUCT_INSTALL}/lib/
+    rmdir ${PRODUCT_INSTALL}/lib64
+fi
+
+
+if [ -d "${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/dist-packages" ]; then
+    echo "WARNING: linking against dist-packages"
+    cd ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}
+    ln -sf dist-packages site-packages
+fi
+
+echo
+echo "########## END"
+
index fc49fd28eca592c4e7170b6dc99b32394f9f2f35..a6ff0c9a78e6e74fe60cbe06c7d95004c20c2c56 100644 (file)
@@ -17,7 +17,7 @@ def set_env(env, prereq_dir, version):
         pyver = 'python' + env.get('PYTHON_VERSION')
         env.prepend('PYTHONPATH', os.path.join(prereq_dir, 'lib', pyver, 'site-packages'))
     env.set('OTGUI_HTML_DOCUMENTATION_PATH',os.path.join(prereq_dir,'share','otgui','doc','html/'))
-    env.set('PERSALYS_HTML_DOCUMENTATION_PATH', os.path.join(prereq_dir,'share','persalys','doc','html/'))
+    env.set('PERSALYS_HTML_DOCUMENTATION_PATH', os.path.join(prereq_dir,'share','doc','persalys','html/'))
 
 def set_nativ_env(env):
     pass