From: Guytri Kastane Date: Thu, 26 Oct 2023 13:40:07 +0000 (+0200) Subject: spns #38030: support Rocky 9 (native) X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=f22606e3ada32d96c12da898ab2f1d58ca278091;p=tools%2Fsat_salome.git spns #38030: support Rocky 9 (native) --- diff --git a/applications/SALOME-master-native.pyconf b/applications/SALOME-master-native.pyconf index 93762e7..f6d4890 100644 --- a/applications/SALOME-master-native.pyconf +++ b/applications/SALOME-master-native.pyconf @@ -11,7 +11,7 @@ APPLICATION : debug : 'no' base : 'no' python3 : 'yes' - platform : ["FD32", "FD34", "FD36", "FD37", "FD38", "CO8", "DB10", "DB11", "UB20.04", "UB22.04"] + platform : ["FD32", "FD34", "FD36", "FD37", "FD38", "CO8", "CO9", "DB10", "DB11", "UB20.04", "UB22.04"] environ : { build : @@ -145,7 +145,7 @@ APPLICATION : 'RESTRICTED' 'LIBBATCH' : 'V2_5_0' 'KERNEL' - 'MEDCOUPLING' : {tag:'akr/paramedfile', base: 'no', section: 'default_MPI', hpc: 'yes'} + 'MEDCOUPLING' : {tag:'master', base: 'no', section: 'default_MPI', hpc: 'yes'} 'GUI' 'GEOM' 'SMESH' @@ -267,6 +267,26 @@ __overwrite__ : 'APPLICATION.products.swig' : '4.0.2' 'APPLICATION.products.openturns' : {tag: '1.21', base: 'no', section: 'version_1_21_RO8' } } + { + __condition__ : "VARS.dist in ['CO9']" + 'APPLICATION.products.cminpack' : '1.3.6' + 'APPLICATION.products.qwt' : '6.1.2' + 'APPLICATION.products.PyQt' : '5.15.3' + 'APPLICATION.products.swig' : '4.0.2' + 'APPLICATION.products.opencv' : '3.2.0' + 'APPLICATION.products.openmpi' : '4.1.5' + 'APPLICATION.products.root' : {tag: '6.22.02', base: 'no', section: 'version_6_22_02_CO9' } + 'APPLICATION.products.qt' : {tag: '5.12.10', base: 'no', section: 'version_5_12_10_CO9' } + 'APPLICATION.products.sip' : {tag: '5.5.0', base: 'no', section: 'version_5_5_0_CO9' } + 'APPLICATION.products.sphinxintl' : {tag: '0.9.10', base: 'no', section: 'version_0_9_10_no_pip' } + 'APPLICATION.products.PyFMI' : {tag: '2.6', base: 'no', section: 'version_2_6_no_pip' } + 'APPLICATION.products.numpydoc' : {tag: '0.9.0', base: 'no', section: 'version_0_9_0_no_pip' } + 'APPLICATION.products.pandas' : {tag: '1.1.5', base: 'no', section: 'version_1_1_5_no_pip' } + 'APPLICATION.products.statsmodels' : {tag: '0.6.1', base: 'no', section: 'version_0_6_1_no_pip' } + 'APPLICATION.products.nose' : {tag: '1.3.7', base: 'no', section: 'version_1_3_7_no_pip' } + 'APPLICATION.products.ParaView' : {tag: '5.11.0', base: 'no', section: 'version_5_11_0_MPI_CO9', hpc: 'yes'} + 'APPLICATION.products.YACS' : {tag: 'master', base: 'no', section: 'version_master_CO9' } + } { __condition__ : "VARS.dist in ['FD32']" 'APPLICATION.products.opencv' : '3.2.0' diff --git a/applications/SALOME-master-windows.pyconf b/applications/SALOME-master-windows.pyconf index 34d264e..121dc99 100644 --- a/applications/SALOME-master-windows.pyconf +++ b/applications/SALOME-master-windows.pyconf @@ -148,7 +148,7 @@ APPLICATION : 'RESTRICTED' 'LIBBATCH' : {tag :'V2_5_0'} 'KERNEL' - 'MEDCOUPLING': 'akr/paramedfile' + 'MEDCOUPLING' 'GUI' 'GEOM' 'SMESH' diff --git a/applications/SALOME-master.pyconf b/applications/SALOME-master.pyconf index dc466c1..bb716b3 100644 --- a/applications/SALOME-master.pyconf +++ b/applications/SALOME-master.pyconf @@ -149,7 +149,7 @@ APPLICATION : 'RESTRICTED' 'LIBBATCH' : 'V2_5_0' 'KERNEL' - 'MEDCOUPLING' : {tag:'akr/paramedfile', base: 'no', section: 'default_MPI', hpc: 'yes'} + 'MEDCOUPLING' : {tag:'master', base: 'no', section: 'default_MPI', hpc: 'yes'} 'GUI' 'GEOM' 'SMESH' diff --git a/products/ParaView.pyconf b/products/ParaView.pyconf index cf5746a..7d806dd 100755 --- a/products/ParaView.pyconf +++ b/products/ParaView.pyconf @@ -431,6 +431,32 @@ version_5_11_0_MPI_DB10 : opt_depend : ['openmpi', 'ospray','tbb', 'openturns', 'gdal', 'netcdf', 'catalyst'] } +version_5_11_0_MPI_CO9 : +{ + compil_script : 'ParaView-5.11.0.sh' + archive_info : {archive_name : "ParaView-5.11.0.tar.gz"} + patches : ['paraview-5.11.0.p001-FindCGNS.patch', + 'paraview-5.11.0.p002-FindMPI.patch', + 'paraview-5.11.0.p003-ParaViewClient.patch', + 'paraview-5.11.0.p006-GIL.patch', + 'paraview-5.11.0.p009-openturns-1.21.patch' + ] + depend : [ + 'Python', + 'hdf5', + 'qt', + 'PyQt', + 'sip', + 'boost', + 'libxml2', + 'freetype', + 'matplotlib', + 'cgns', + 'Pygments' + ] + opt_depend : ['openmpi', 'ospray','tbb', 'openturns', 'gdal', 'netcdf', 'catalyst'] +} + version_5_11_0_MPI_CO8 : { compil_script : 'ParaView-5.11.0.sh' diff --git a/products/YACS.pyconf b/products/YACS.pyconf index 0f4d219..cc6ec06 100644 --- a/products/YACS.pyconf +++ b/products/YACS.pyconf @@ -47,6 +47,11 @@ default : patches : [] } +version_master_CO9 : +{ + cmake_options : " -DSALOME_YACS_USE_EMBEDDED_PMML=OFF -DQT_HELP_GENERATOR=${QT5_ROOT_DIR}/bin/qhelpgenerator -DQt5LinguistTools_DIR=${QT5_ROOT_DIR}/lib/cmake/Qt5LinguistTools" +} + version_V9_11_0_FD38 : { patches : ['YACS_FD38.patch'] diff --git a/products/compil_scripts/nose-1.3.7.sh b/products/compil_scripts/nose-1.3.7.sh new file mode 100755 index 0000000..b8ecdc1 --- /dev/null +++ b/products/compil_scripts/nose-1.3.7.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +echo "##########################################################################" +echo "nose " $VERSION +echo "##########################################################################" + +echo "*** build in SOURCE directory" + +cd $BUILD_DIR +cp -R $SOURCE_DIR/* . + +export PATH=$(pwd)/bin:$PATH +export PYTHONPATH=$(pwd):$PYTHONPATH + +echo +echo "*** install with $PYTHONBIN" +$PYTHONBIN -m pip install --cache-dir=$BUILD_DIR/cache/pip . --no-deps --prefix=$PRODUCT_INSTALL +if [ $? -ne 0 ] +then + echo "ERROR on install" + exit 3 +fi + +# ensure that lib is used +if [ -d "$PRODUCT_INSTALL/lib64" ]; then + echo "WARNING: renaming lib64 directory to lib" + mv $PRODUCT_INSTALL/lib64 $PRODUCT_INSTALL/lib +elif [ -d "$PRODUCT_INSTALL/local/lib64" ]; then + echo "WARNING: renaming local/lib64 directory to lib" + mv $PRODUCT_INSTALL/local/lib64 $PRODUCT_INSTALL/lib + rm -rf $PRODUCT_INSTALL/local +fi + +echo +echo "########## END" diff --git a/products/compil_scripts/numpydoc-0.9.0.sh b/products/compil_scripts/numpydoc-0.9.0.sh new file mode 100755 index 0000000..e3a6b39 --- /dev/null +++ b/products/compil_scripts/numpydoc-0.9.0.sh @@ -0,0 +1,47 @@ +#!/bin/bash + +#!/bin/bash + +echo "##########################################################################" +echo "numpydoc " $VERSION +echo "##########################################################################" + +echo "*** build in SOURCE directory" + + +cd $BUILD_DIR +cp -R $SOURCE_DIR/* . + +export PATH=$(pwd)/bin:$PATH +export PYTHONPATH=$(pwd):$PYTHONPATH + +echo +echo "*** build with $PYTHONBIN" +$PYTHONBIN setup.py build +if [ $? -ne 0 ] +then + echo "ERROR on build" + exit 2 +fi + +echo +echo "*** install with $PYTHONBIN" +$PYTHONBIN setup.py install --prefix=$PRODUCT_INSTALL +if [ $? -ne 0 ] +then + echo "ERROR on install" + exit 3 +fi + +# ensure that lib is used +if [ -d "$PRODUCT_INSTALL/lib64" ]; then + echo "WARNING: renaming lib64 directory to lib" + mv $PRODUCT_INSTALL/lib64 $PRODUCT_INSTALL/lib +elif [ -d "$PRODUCT_INSTALL/local/lib64" ]; then + echo "WARNING: renaming local/lib64 directory to lib" + mv $PRODUCT_INSTALL/local/lib64 $PRODUCT_INSTALL/lib + rm -rf $PRODUCT_INSTALL/local +fi + +echo +echo "########## END" diff --git a/products/compil_scripts/opencv.sh b/products/compil_scripts/opencv.sh index 7fcb436..17b6866 100755 --- a/products/compil_scripts/opencv.sh +++ b/products/compil_scripts/opencv.sh @@ -35,7 +35,7 @@ if version_ge $VERSION "3."; then CMAKE_OPTIONS+=" -DCMAKE_C_FLAGS=-fPIC" LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION" case $LINUX_DISTRIBUTION in - FD34|FD35|FD36|FD37|FD38|UB22*) + FD34|FD35|FD36|FD37|FD38|UB22*|CO9) CMAKE_OPTIONS+=" -DCMAKE_CXX_FLAGS=\"-std=c++14\"" CMAKE_OPTIONS+=" -DCMAKE_CXX_STANDARD=14" ;; diff --git a/products/compil_scripts/pandas-1.1.5.sh b/products/compil_scripts/pandas-1.1.5.sh new file mode 100755 index 0000000..88b32bc --- /dev/null +++ b/products/compil_scripts/pandas-1.1.5.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +echo "##########################################################################" +echo "pandas " $VERSION +echo "##########################################################################" + +echo "*** build in SOURCE directory" + +cd $BUILD_DIR +cp -R $SOURCE_DIR/* . + +export PATH=$(pwd)/bin:$PATH +export PYTHONPATH=$(pwd):$PYTHONPATH + +echo +echo "*** install with $PYTHONBIN" +$PYTHONBIN -m pip install --cache-dir=$BUILD_DIR/cache/pip . --no-deps --prefix=$PRODUCT_INSTALL +if [ $? -ne 0 ] +then + echo "ERROR on install" + exit 3 +fi + +# ensure that lib is used +if [ -d "$PRODUCT_INSTALL/lib64" ]; then + echo "WARNING: renaming lib64 directory to lib" + mv $PRODUCT_INSTALL/lib64 $PRODUCT_INSTALL/lib +elif [ -d "$PRODUCT_INSTALL/local/lib64" ]; then + echo "WARNING: renaming local/lib64 directory to lib" + mv $PRODUCT_INSTALL/local/lib64 $PRODUCT_INSTALL/lib + rm -rf $PRODUCT_INSTALL/local +fi + +echo +echo "########## END" diff --git a/products/compil_scripts/petsc-3.16.0.sh b/products/compil_scripts/petsc-3.16.0.sh index 6d066cb..106e805 100755 --- a/products/compil_scripts/petsc-3.16.0.sh +++ b/products/compil_scripts/petsc-3.16.0.sh @@ -4,6 +4,17 @@ echo "########################################################################## echo "Petsc" $VERSION echo "##########################################################################" +LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION" + +case $LINUX_DISTRIBUTION in + CO9) + echo "setting PETSC_DIR environment variable" + export PETSC_DIR=${BUILD_DIR} + ;; + *) + ;; +esac + cp -r $SOURCE_DIR/* . CONFIGURE_FLAGS= diff --git a/products/compil_scripts/sip-5.5.0.sh b/products/compil_scripts/sip-5.5.0.sh index 6f46bd1..3e0282b 100755 --- a/products/compil_scripts/sip-5.5.0.sh +++ b/products/compil_scripts/sip-5.5.0.sh @@ -4,52 +4,110 @@ echo "########################################################################## echo SIP + PyQt5_sip $VERSION echo "##########################################################################" +LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION" + +rm -rf $BUILD_DIR +mkdir $BUILD_DIR +cd $BUILD_DIR +cp -R $SOURCE_DIR/sip-5.5.0 . -echo "*** build in SOURCE directory" -cd $SOURCE_DIR/sip-5.5.0 +USE_SETUP=true +case $LINUX_DISTRIBUTION in + CO9) + USE_SETUP=false + ;; + *) + ;; +fi # we don't install in python directory -> modify environment as described in INSTALL file -mkdir -p $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/site-packages export PATH=$(pwd)/bin:$PATH export PYTHONPATH=$(pwd):$PYTHONPATH -export PYTHONPATH=${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages:$PYTHONPATH - -echo -echo "*** build with $PYTHONBIN" -$PYTHONBIN setup.py build -if [ $? -ne 0 ] -then - echo "ERROR on build" - exit 2 -fi +if [ "$USE_SETUP" == "true" ]; then + mkdir -p $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/site-packages + export PYTHONPATH=${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages:$PYTHONPATH + echo + echo "*** build with $PYTHONBIN" + $PYTHONBIN setup.py build + if [ $? -ne 0 ] + then + echo "ERROR on build" + exit 2 + fi -echo -echo "*** install with $PYTHONBIN" -$PYTHONBIN setup.py install --prefix=$PRODUCT_INSTALL -if [ $? -ne 0 ] -then - echo "ERROR on install" - exit 3 + echo + echo "*** install with $PYTHONBIN" + $PYTHONBIN setup.py install --prefix=$PRODUCT_INSTALL + if [ $? -ne 0 ] + then + echo "ERROR on install" + exit 3 + fi +else + $PYTHONBIN -m pip install --cache-dir=$BUILD_DIR/cache/pip . --no-deps --prefix=$PRODUCT_INSTALL + if [ $? -ne 0 ] + then + echo "ERROR on install" + exit 3 + fi + # ensure that lib is used + if [ -d "$PRODUCT_INSTALL/lib64" ]; then + echo "WARNING: renaming lib64 directory to lib" + mv $PRODUCT_INSTALL/lib64 $PRODUCT_INSTALL/lib + elif [ -d "$PRODUCT_INSTALL/local/lib64" ]; then + echo "WARNING: renaming local/lib64 directory to lib" + mv $PRODUCT_INSTALL/local/lib64 $PRODUCT_INSTALL/lib + rm -rf $PRODUCT_INSTALL/local + elif [ -d $PRODUCT_INSTALL/lib ]; then + : + else + echo "WARNING: unhandled case! Please ensure that script is consistent!" + fi fi - -cd $SOURCE_DIR/PyQt5_sip-12.8.1 +cd $BUILD_DIR +cp -R $SOURCE_DIR/PyQt5_sip-12.8.1 $BUILD_DIR/PyQt5_sip-12.8.1 +cd $BUILD_DIR/PyQt5_sip-12.8.1 echo echo "*** build with $PYTHONBIN" -$PYTHONBIN setup.py build -if [ $? -ne 0 ] -then - echo "ERROR on build" - exit 2 -fi +if [ "$USE_SETUP" == "true" ]; then + $PYTHONBIN setup.py build + if [ $? -ne 0 ] + then + echo "ERROR on build" + exit 2 + fi -echo -echo "*** install with $PYTHONBIN" -$PYTHONBIN setup.py install --prefix=$PRODUCT_INSTALL -if [ $? -ne 0 ] -then - echo "ERROR on install" - exit 3 + echo + echo "*** install with $PYTHONBIN" + $PYTHONBIN setup.py install --prefix=$PRODUCT_INSTALL + if [ $? -ne 0 ] + then + echo "ERROR on install" + exit 3 + fi +else + echo + echo "*** install with $PYTHONBIN" + $PYTHONBIN -m pip install --cache-dir=$BUILD_DIR/cache/pip . --no-deps --prefix=$PRODUCT_INSTALL + if [ $? -ne 0 ] + then + echo "ERROR on install" + exit 3 + fi + # ensure that lib is used + if [ -d "$PRODUCT_INSTALL/lib64" ]; then + echo "WARNING: renaming lib64 directory to lib" + mv $PRODUCT_INSTALL/lib64 $PRODUCT_INSTALL/lib + elif [ -d "$PRODUCT_INSTALL/local/lib64" ]; then + echo "WARNING: renaming local/lib64 directory to lib" + mv $PRODUCT_INSTALL/local/lib64 $PRODUCT_INSTALL/lib + rm -rf $PRODUCT_INSTALL/local + elif [ -d $PRODUCT_INSTALL/lib ]; then + : + else + echo "WARNING: unhandled case! Please ensure that script is consistent!" + fi fi mkdir $PRODUCT_INSTALL/include @@ -58,7 +116,6 @@ cp *.h $PRODUCT_INSTALL/include cd $PRODUCT_INSTALL/bin ln -sf sip5 sip -LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION" case $LINUX_DISTRIBUTION in DB10) cd $PRODUCT_INSTALL/lib/python3.7/site-packages diff --git a/products/nose.pyconf b/products/nose.pyconf index a2d0bae..d45963b 100644 --- a/products/nose.pyconf +++ b/products/nose.pyconf @@ -29,3 +29,17 @@ default : pip : "yes" } } + +version_1_3_7_no_pip : +{ + compil_script : "nose-1.3.7.sh" + archive_info: + { + archive_name : "nose-1.3.7.tar.gz" + } + properties: + { + incremental : "yes" + pip : "no" + } +} diff --git a/products/numpydoc.pyconf b/products/numpydoc.pyconf index 79874de..430a24e 100644 --- a/products/numpydoc.pyconf +++ b/products/numpydoc.pyconf @@ -29,3 +29,17 @@ default : pip : "yes" } } + +version_0_9_0_no_pip : +{ + compil_script : "numpydoc-0.9.0.sh" + archive_info: + { + archive_name : "numpydoc-0.9.0.tar.gz" + } + properties: + { + incremental : "yes" + pip : "no" + } +} diff --git a/products/pandas.pyconf b/products/pandas.pyconf index 67a7b8a..2b4c212 100644 --- a/products/pandas.pyconf +++ b/products/pandas.pyconf @@ -25,3 +25,13 @@ default : pip : "yes" } } + +version_1_1_5_no_pip : +{ + compil_script : "pandas-1.1.5.sh" + properties: + { + incremental : "yes" + pip : "no" + } +} diff --git a/products/patches/qt_numeric_limits_CO9.patch b/products/patches/qt_numeric_limits_CO9.patch new file mode 100644 index 0000000..17ab6ed --- /dev/null +++ b/products/patches/qt_numeric_limits_CO9.patch @@ -0,0 +1,34 @@ +diff -Naur qt.ref/qtbase/src/corelib/global/qendian.h qt.dev/qtbase/src/corelib/global/qendian.h +--- qt.ref/qtbase/src/corelib/global/qendian.h 2020-09-21 15:16:21.000000000 +0200 ++++ qt.dev/qtbase/src/corelib/global/qendian.h 2023-10-11 10:52:55.992773784 +0200 +@@ -47,6 +47,7 @@ + // include stdlib.h and hope that it defines __GLIBC__ for glibc-based systems + #include + #include ++#include + + #ifdef min // MSVC + #undef min +diff -Naur qt.ref/qtbase/src/corelib/tools/qbytearraymatcher.h qt.dev/qtbase/src/corelib/tools/qbytearraymatcher.h +--- qt.ref/qtbase/src/corelib/tools/qbytearraymatcher.h 2020-09-21 15:16:21.000000000 +0200 ++++ qt.dev/qtbase/src/corelib/tools/qbytearraymatcher.h 2023-10-11 10:57:35.066370201 +0200 +@@ -41,6 +41,7 @@ + #define QBYTEARRAYMATCHER_H + + #include ++#include + + QT_BEGIN_NAMESPACE + +diff -Naur qt.ref/qtdeclarative/src/qmldebug/qqmlprofilerevent_p.h qt.dev/qtdeclarative/src/qmldebug/qqmlprofilerevent_p.h +--- qt.ref/qtdeclarative/src/qmldebug/qqmlprofilerevent_p.h 2020-10-15 08:53:19.000000000 +0200 ++++ qt.dev/qtdeclarative/src/qmldebug/qqmlprofilerevent_p.h 2023-10-11 11:36:43.775903667 +0200 +@@ -50,6 +50,8 @@ + #include + #include + ++#include ++ + // + // W A R N I N G + // ------------- diff --git a/products/patches/root-include_limits_CO9.patch b/products/patches/root-include_limits_CO9.patch new file mode 100644 index 0000000..3c0c86d --- /dev/null +++ b/products/patches/root-include_limits_CO9.patch @@ -0,0 +1,11 @@ +--- root.ref/core/foundation/inc/ROOT/libcpp_string_view.h 2020-08-17 14:41:56.000000000 +0200 ++++ root.dev/core/foundation/inc/ROOT/libcpp_string_view.h 2023-10-13 14:49:56.207768679 +0200 +@@ -186,7 +186,7 @@ + #include + #include + #include +- ++#include + //#include <__debug> + + #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) && !defined(_MSC_VER) diff --git a/products/qt.pyconf b/products/qt.pyconf index dccf7f2..9fbc0b0 100644 --- a/products/qt.pyconf +++ b/products/qt.pyconf @@ -44,6 +44,13 @@ version_5_12_10 : patches : ['qt-mapbox-FD32-gcc-10.0.patch'] } +version_5_12_10_CO9 : +{ + compil_script : "qt-5.12.10" + $VARS.scriptExtension + depend : ["freetype", 'llvm'] + patches : ['qt-mapbox-FD32-gcc-10.0.patch', 'qt_numeric_limits_CO9.patch'] +} + version_5_12_10_win : { depend : ["freetype"] diff --git a/products/root.pyconf b/products/root.pyconf index fb21134..649e344 100644 --- a/products/root.pyconf +++ b/products/root.pyconf @@ -66,6 +66,12 @@ version_6_22_02: patches : ['root-6.22.02.patch'] } +version_6_22_02_CO9: +{ + get_source : "archive" + patches : ['root-6.22.02.patch', 'root-include_limits_CO9.patch'] +} + version_6_22_02_UB22_04: { get_source : "archive"