From f0e2d113c55362d962bcda2364a8fc4a54e65748 Mon Sep 17 00:00:00 2001 From: Nabil Ghodbane Date: Fri, 22 Dec 2023 14:01:11 +0100 Subject: [PATCH] SPNS #38031: support Debian 12 bookworm platform --- applications/SALOME-9.12.0-native.pyconf | 28 ++++++--- applications/SALOME-master-native.pyconf | 15 ++++- products/ParaView.pyconf | 33 ++++++++++- products/PyFMI.pyconf | 11 ++++ products/compil_scripts/C3PO.sh | 22 +++++++ products/compil_scripts/PyFMI-2.6.sh | 14 +++-- products/compil_scripts/YACSGEN.sh | 13 ++++- products/compil_scripts/med-4.1.1.sh | 40 +++++++++---- products/compil_scripts/opencv.sh | 2 +- products/compil_scripts/openturns-1.21.sh | 58 ++++++++++++++++--- products/compil_scripts/tbb-2021.9.0.sh | 49 ++++++++++++++++ products/opencv.pyconf | 8 +++ products/openturns.pyconf | 8 +++ .../paraview-5.11.0.p010-python-3.11.patch | 29 ++++++++++ products/tbb.pyconf | 14 +++++ 15 files changed, 305 insertions(+), 39 deletions(-) create mode 100755 products/compil_scripts/tbb-2021.9.0.sh create mode 100644 products/patches/paraview-5.11.0.p010-python-3.11.patch diff --git a/applications/SALOME-9.12.0-native.pyconf b/applications/SALOME-9.12.0-native.pyconf index 6c8454a..b68cf83 100644 --- a/applications/SALOME-9.12.0-native.pyconf +++ b/applications/SALOME-9.12.0-native.pyconf @@ -11,7 +11,7 @@ APPLICATION : debug : 'no' base : 'no' python3 : 'yes' - platform : ["FD32", "FD34", "FD36", "FD37", "FD38", "CO8", "CO9", "DB10", "DB11", "UB20.04", "UB22.04"] + platform : ["FD32", "FD34", "FD36", "FD37", "FD38", "CO8", "CO9", "DB10", "DB11", "DB12", "UB20.04", "UB22.04"] environ : { build : @@ -255,6 +255,18 @@ __overwrite__ : 'APPLICATION.products.PyFMI' : {tag:'2.6', base: 'no', section: 'version_2_6_no_pip'} 'APPLICATION.products.MEDCOUPLING' : {tag:'V9_12_0', base: 'no', section: 'default_MPI', hpc: 'yes'} } + { + __condition__ : "VARS.dist in ['DB12']" + 'APPLICATION.rm_products' : ['root', 'URANIE'] + 'APPLICATION.products.cmake' : 'native' # TTK requires cmake > 3.21 + 'APPLICATION.products.opencv' : {tag: '3.2.0', base: 'no', section: 'version_3_2_0_DB12'} + 'APPLICATION.products.cminpack' : 'native' + 'APPLICATION.products.tbb' : '2021.9.0' + 'APPLICATION.products.PyFMI' : {tag: '2.6', base: 'no', section: 'version_2_6_DB12' } + 'APPLICATION.products.nlopt' : '2.5.0' + 'APPLICATION.products.openturns' : {tag: '1.21', base: 'no', section: 'version_1_21_DB12' } + 'APPLICATION.products.ParaView' : {tag: '5.11.0', base: 'no', section: 'version_5_11_0_MPI_DB12', hpc: 'yes' } + } { # CentOS 8 repositories don't include sphinxintl package which must be installed through pip. # To avoid its missing (system_info pyconf key doesn't handle this use case), we embed it. @@ -285,8 +297,8 @@ __overwrite__ : '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.YDEFX' : {tag: 'V9_12_0',base: 'no', section: 'version_V9_12_0_CO9' } - 'APPLICATION.products.YACS' : {tag: 'V9_12_0',base: 'no',section: 'version_V9_12_0_CO9' } + 'APPLICATION.products.YDEFX' : {tag: 'V9_12_0',base: 'no', section: 'version_V9_12_0_CO9' } + 'APPLICATION.products.YACS' : {tag: 'V9_12_0',base: 'no',section: 'version_V9_12_0_CO9' } } { __condition__ : "VARS.dist in ['FD32']" @@ -334,13 +346,13 @@ __overwrite__ : 'APPLICATION.products.PyFMI' : {tag: '2.6', base: 'no', section: 'version_2_6_FD37' } 'APPLICATION.products.medfile' : {tag: '4.1.1', base: 'no', section: 'version_4_1_1_FD37' } 'APPLICATION.products.ParaView' : {tag: '5.11.0', base: 'no', section: 'version_5_11_0_MPI_FD37', hpc: 'yes'} - 'APPLICATION.products.CONFIGURATION' : {tag:'V9_12_0', base: 'no', section: 'default' } - 'APPLICATION.products.SHAPER' : {tag:'V9_12_0', base: 'no', section: 'default', hpc: 'no' } + 'APPLICATION.products.CONFIGURATION' : {tag:'V9_12_0', base: 'no', section: 'default' } + 'APPLICATION.products.SHAPER' : {tag:'V9_12_0', base: 'no', section: 'default', hpc: 'no' } } { __condition__ : "VARS.dist in ['FD38']" - 'APPLICATION.rm_products' : ['root', 'URANIE', 'mesa'] + 'APPLICATION.rm_products' : ['root', 'URANIE'] 'APPLICATION.products.cmake' : 'native' 'APPLICATION.products.opencv' : {tag: '3.2.0', base: 'no', section: 'version_3_2_0_FD38' } 'APPLICATION.products.omniORB' : '4.2.5' @@ -355,7 +367,7 @@ __overwrite__ : 'APPLICATION.products.catalyst' : {tag: '2.0', base: 'no', section: 'version_2_0_FD38' } 'APPLICATION.products.gmsh' : {tag: '4.10.3', base: 'no', section: 'version_4_10_3_FD38' } 'APPLICATION.products.ParaView' : {tag: '5.11.0', base: 'no', section: 'version_5_11_0_MPI_FD38', hpc: 'yes' } - 'APPLICATION.products.CONFIGURATION' : {tag:'V9_12_0', base: 'no', section: 'default' } - 'APPLICATION.products.SHAPER' : {tag:'V9_12_0', base: 'no', section: 'default', hpc: 'no' } + 'APPLICATION.products.CONFIGURATION' : {tag:'V9_12_0', base: 'no', section: 'default' } + 'APPLICATION.products.SHAPER' : {tag:'V9_12_0', base: 'no', section: 'default', hpc: 'no' } } ] diff --git a/applications/SALOME-master-native.pyconf b/applications/SALOME-master-native.pyconf index 56d2511..edc0fa6 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", "CO9", "DB10", "DB11", "UB20.04", "UB22.04"] + platform : ["FD32", "FD34", "FD36", "FD37", "FD38", "CO8", "CO9", "DB10", "DB11", "DB12", "UB20.04", "UB22.04"] environ : { build : @@ -255,6 +255,18 @@ __overwrite__ : 'APPLICATION.products.PyFMI' : {tag:'2.6', base: 'no', section: 'version_2_6_no_pip'} 'APPLICATION.products.MEDCOUPLING' : {tag:'master', base: 'no', section: 'default_MPI', hpc: 'yes'} } + { + __condition__ : "VARS.dist in ['DB12']" + 'APPLICATION.rm_products' : ['root', 'URANIE'] + 'APPLICATION.products.cmake' : 'native' # TTK requires cmake > 3.21 + 'APPLICATION.products.opencv' : {tag: '3.2.0', base: 'no', section: 'version_3_2_0_DB12'} + 'APPLICATION.products.cminpack' : 'native' + 'APPLICATION.products.tbb' : '2021.9.0' + 'APPLICATION.products.PyFMI' : {tag: '2.6', base: 'no', section: 'version_2_6_DB12' } + 'APPLICATION.products.nlopt' : '2.5.0' + 'APPLICATION.products.openturns' : {tag: '1.21', base: 'no', section: 'version_1_21_DB12' } + 'APPLICATION.products.ParaView' : {tag: '5.11.0', base: 'no', section: 'version_5_11_0_MPI_DB12', hpc: 'yes' } + } { # CentOS 8 repositories don't include sphinxintl package which must be installed through pip. # To avoid its missing (system_info pyconf key doesn't handle this use case), we embed it. @@ -337,7 +349,6 @@ __overwrite__ : 'APPLICATION.products.CONFIGURATION' : {tag:'master', base: 'no', section: 'default' } 'APPLICATION.products.SHAPER' : {tag:'master', base: 'no', section: 'default', hpc: 'no' } } - { __condition__ : "VARS.dist in ['FD38']" 'APPLICATION.rm_products' : ['root', 'URANIE', 'mesa'] diff --git a/products/ParaView.pyconf b/products/ParaView.pyconf index 7d806dd..ade4070 100755 --- a/products/ParaView.pyconf +++ b/products/ParaView.pyconf @@ -405,6 +405,33 @@ version_5_11_0_MPI_LATA_64BITS_IDS : opt_depend : ['openmpi', 'ospray','tbb', 'openturns', 'gdal', 'netcdf', 'catalyst'] } +version_5_11_0_MPI_DB12 : +{ + 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.p006-GIL.patch', + 'paraview-5.11.0.p007-mpi4py-FD37.patch', + 'paraview-5.11.0.p009-openturns-1.21.patch', + 'paraview-5.11.0.p010-python-3.11.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_DB10 : { compil_script : 'ParaView-5.11.0.sh' @@ -492,7 +519,8 @@ version_5_11_0_MPI_FD38 : 'paraview-5.11.0.p006-GIL.patch', 'paraview-5.11.0.p007-mpi4py-FD37.patch', 'paraview-5.11.0.p008-cstdint-FD38.patch', - 'paraview-5.11.0.p009-openturns-1.21.patch' + 'paraview-5.11.0.p009-openturns-1.21.patch', + 'paraview-5.11.0.p010-python-3.11.patch' ] depend : [ 'Python', @@ -518,7 +546,8 @@ version_5_11_0_MPI_FD37 : 'paraview-5.11.0.p002-FindMPI.patch', 'paraview-5.11.0.p006-GIL.patch', 'paraview-5.11.0.p007-mpi4py-FD37.patch', - 'paraview-5.11.0.p009-openturns-1.21.patch' + 'paraview-5.11.0.p009-openturns-1.21.patch', + 'paraview-5.11.0.p010-python-3.11.patch' ] depend : [ 'Python', diff --git a/products/PyFMI.pyconf b/products/PyFMI.pyconf index e7261fe..f30da84 100644 --- a/products/PyFMI.pyconf +++ b/products/PyFMI.pyconf @@ -51,6 +51,17 @@ version_2_6_win : } } +version_2_6_DB12: +{ + patches: ['pyfmi-2.6-python-3.1x.01.patch'] + compil_script : "PyFMI-2.6.sh" + properties: + { + incremental : "yes" + pip : "no" + } +} + version_2_6_UB22_04: { patches: ['pyfmi-2.6-python-3.1x.01.patch'] diff --git a/products/compil_scripts/C3PO.sh b/products/compil_scripts/C3PO.sh index 041be0f..ba67547 100755 --- a/products/compil_scripts/C3PO.sh +++ b/products/compil_scripts/C3PO.sh @@ -38,6 +38,28 @@ then exit 4 fi +echo "INFO: check presence of $PRODUCT_INSTALL/local" +if [ -d "$PRODUCT_INSTALL/local" ]; then + echo "INFO: $PRODUCT_INSTALL/local is present - reearrange ..." + if [ -d ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ]; then + mv ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/site-packages + fi + for D in $(ls $PRODUCT_INSTALL/local); do + echo "INFO: next subdirectory: $PRODUCT_INSTALL/local/$D" + if [ -d $PRODUCT_INSTALL/$D ]; then + cp -r $PRODUCT_INSTALL/local/$D/* $PRODUCT_INSTALL/$D/ + else + mv $PRODUCT_INSTALL/local/$D $PRODUCT_INSTALL/$D + fi + done + rm -rf $PRODUCT_INSTALL/local +fi + +if [ -d $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/site-packages/c3po-2.0-py${PYTHON_VERSION}.egg/c3po ]; then + echo "WARNING: rearrange site-packages/c3po" + mv $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/site-packages/c3po-2.0-py${PYTHON_VERSION}.egg/c3po $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/site-packages/c3po +fi + export LD_LIBRARY_PATH="${MEDCOUPLING_ROOT_DIR}/lib:${LD_LIBRARY_PATH}" export PYTHONPATH="${MEDCOUPLING_ROOT_DIR}/${PYTHON_LIBDIR}:${PYTHONPATH}" export PYTHONPATH="${MEDCOUPLING_ROOT_DIR}/lib:${PYTHONPATH}" diff --git a/products/compil_scripts/PyFMI-2.6.sh b/products/compil_scripts/PyFMI-2.6.sh index b193618..b14a3cb 100755 --- a/products/compil_scripts/PyFMI-2.6.sh +++ b/products/compil_scripts/PyFMI-2.6.sh @@ -4,17 +4,13 @@ echo "########################################################################## echo "PyFMI " $VERSION echo "##########################################################################" -echo "*** build in SOURCE directory" - - +rm -rf $BUILD_DIR cd $BUILD_DIR cp -R $SOURCE_DIR/* . rm -f $BUILD_DIR/src/pyfmi/*.c -#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" @@ -42,6 +38,14 @@ 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/local/lib" ]; then + echo "WARNING: renaming local/lib directory to lib" + mv $PRODUCT_INSTALL/local/lib $PRODUCT_INSTALL/lib + rm -rf $PRODUCT_INSTALL/local +fi + +if [ -d "$PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/dist-packages" ]; then + mv $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/dist-packages $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/site-packages fi echo diff --git a/products/compil_scripts/YACSGEN.sh b/products/compil_scripts/YACSGEN.sh index 4afd768..9f15eb7 100755 --- a/products/compil_scripts/YACSGEN.sh +++ b/products/compil_scripts/YACSGEN.sh @@ -17,9 +17,16 @@ export PYTHONPATH=${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages:$ echo echo "*** build and install with $PYTHONBIN" -$PYTHONBIN setup.py install --prefix=$PRODUCT_INSTALL -if [ $? -ne 0 ] -then +case $LINUX_DISTRIBUTION in + DB12) + $PYTHONBIN setup.py install --install-lib=${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages --install-scripts=${PRODUCT_INSTALL}/bin + ;; + *) + $PYTHONBIN setup.py install --prefix=$PRODUCT_INSTALL + ;; +esac + +if [ $? -ne 0 ]; then echo "ERROR on build/install" exit 3 fi diff --git a/products/compil_scripts/med-4.1.1.sh b/products/compil_scripts/med-4.1.1.sh index e963b86..b3155aa 100755 --- a/products/compil_scripts/med-4.1.1.sh +++ b/products/compil_scripts/med-4.1.1.sh @@ -61,21 +61,39 @@ fi LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION" case $LINUX_DISTRIBUTION in CO7) - if [ -n "$X_SCLS" ] - then - X_SCLSVALUE=$(echo $X_SCLS) - if [ $X_SCLSVALUE == "devtoolset-8" ]; then - echo "WARNING: devtoolset-8 is installed on ${LINUX_DISTRIBUTION} - libgfortran will be embedded..." - cp -RP /usr/lib64/libgfortran.so.5* $PRODUCT_INSTALL/lib/ - fi - else - echo "INFO: X_SCLS does not seem to be set. skipping..." - fi - ;; + if [ -n "$X_SCLS" ] + then + X_SCLSVALUE=$(echo $X_SCLS) + if [ $X_SCLSVALUE == "devtoolset-8" ]; then + echo "WARNING: devtoolset-8 is installed on ${LINUX_DISTRIBUTION} - libgfortran will be embedded..." + cp -RP /usr/lib64/libgfortran.so.5* $PRODUCT_INSTALL/lib/ + fi + else + echo "INFO: X_SCLS does not seem to be set. skipping..." + fi + ;; *) ;; esac + +#TODO: figure out which environment variable uses this dist-dir +if [ -d $PRODUCT_INSTALL/local/lib/python${PYTHON_VERSION} ]; then + mv $PRODUCT_INSTALL/local/lib/python${PYTHON_VERSION} $PRODUCT_INSTALL/lib +fi +if [ -d $PRODUCT_INSTALL/local/bin ]; then + mv $PRODUCT_INSTALL/local/bin/* $PRODUCT_INSTALL/bin +fi +if [ -d $PRODUCT_INSTALL/local/share ]; then + mv $PRODUCT_INSTALL/local/share/* $PRODUCT_INSTALL/share +fi +if [ -d $PRODUCT_INSTALL/local ]; then + rm -rf $PRODUCT_INSTALL/local +fi +if [ -d $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/dist-packages ]; then + mv $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/dist-packages $PRODUCT_INSTALL/lib/python${PYTHON_VERSION}/site-packages +fi + echo echo "########## END" diff --git a/products/compil_scripts/opencv.sh b/products/compil_scripts/opencv.sh index 17b6866..467f559 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*|CO9) + FD34|FD35|FD36|FD37|FD38|UB22*|CO9|DB12) CMAKE_OPTIONS+=" -DCMAKE_CXX_FLAGS=\"-std=c++14\"" CMAKE_OPTIONS+=" -DCMAKE_CXX_STANDARD=14" ;; diff --git a/products/compil_scripts/openturns-1.21.sh b/products/compil_scripts/openturns-1.21.sh index 071408e..2ceb922 100755 --- a/products/compil_scripts/openturns-1.21.sh +++ b/products/compil_scripts/openturns-1.21.sh @@ -4,9 +4,7 @@ echo "########################################################################## echo "openturns" $VERSION echo "##########################################################################" -# 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 @@ -171,11 +169,8 @@ elif [ -d "${PRODUCT_INSTALL}/local/lib64" ]; then rm -rf ${PRODUCT_INSTALL}/local/lib64 fi -if [[ -d "${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/dist-packages" ]]; then - echo "WARNING: renaming ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/dist-packages as ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages" - cd ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION} - ln -sf dist-packages site-packages - cd $BUILD_DIR/openturns +if [ -d ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/dist-packages ]; then + mv ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/dist-packages ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages fi export PYTHONPATH=${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages:${PYTHONPATH} @@ -278,6 +273,22 @@ if [[ -d "$SOURCE_DIR/otfftw-0.13" ]]; then echo "ERROR on make install" exit 3 fi + echo "INFO: check presence of $PRODUCT_INSTALL/local" + if [ -d "$PRODUCT_INSTALL/local" ]; then + echo "INFO: $PRODUCT_INSTALL/local is present - reearrange ..." + if [ -d ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ]; then + mv ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/site-packages + fi + for D in $(ls $PRODUCT_INSTALL/local); do + echo "INFO: next subdirectory: $PRODUCT_INSTALL/local/$D" + if [ -d $PRODUCT_INSTALL/$D ]; then + cp -r $PRODUCT_INSTALL/local/$D/* $PRODUCT_INSTALL/$D/ + else + mv $PRODUCT_INSTALL/local/$D $PRODUCT_INSTALL/$D + fi + done + rm -rf $PRODUCT_INSTALL/local + fi done declare -A OTP @@ -319,6 +330,23 @@ if [[ -d "$SOURCE_DIR/otfftw-0.13" ]]; then exit 6 fi fi + echo "INFO: check presence of $PRODUCT_INSTALL/local" + if [ -d "$PRODUCT_INSTALL/local" ]; then + echo "INFO: $PRODUCT_INSTALL/local is present - reearrange ..." + if [ -d ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ]; then + mv ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/site-packages + fi + for D in $(ls $PRODUCT_INSTALL/local); do + echo "INFO: next subdirectory: $PRODUCT_INSTALL/local/$D" + if [ -d $PRODUCT_INSTALL/$D ]; then + cp -r $PRODUCT_INSTALL/local/$D/* $PRODUCT_INSTALL/$D/ + else + mv $PRODUCT_INSTALL/local/$D $PRODUCT_INSTALL/$D + fi + done + rm -rf $PRODUCT_INSTALL/local + fi + # else # non native Python if [[ $k == "otfmi" ]]; then echo "INFO: install dill-0.3.4" @@ -386,6 +414,22 @@ if [[ -d "$SOURCE_DIR/otfftw-0.13" ]]; then exit 5 fi fi + echo "INFO: check presence of $PRODUCT_INSTALL/local" + if [ -d "$PRODUCT_INSTALL/local" ]; then + echo "INFO: $PRODUCT_INSTALL/local is present - reearrange ..." + if [ -d ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ]; then + mv ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/site-packages + fi + for D in $(ls $PRODUCT_INSTALL/local); do + echo "INFO: next subdirectory: $PRODUCT_INSTALL/local/$D" + if [ -d $PRODUCT_INSTALL/$D ]; then + cp -r $PRODUCT_INSTALL/local/$D/* $PRODUCT_INSTALL/$D/ + else + mv $PRODUCT_INSTALL/local/$D $PRODUCT_INSTALL/$D + fi + done + rm -rf $PRODUCT_INSTALL/local + fi done # diff --git a/products/compil_scripts/tbb-2021.9.0.sh b/products/compil_scripts/tbb-2021.9.0.sh new file mode 100755 index 0000000..ab86878 --- /dev/null +++ b/products/compil_scripts/tbb-2021.9.0.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +echo "##########################################################################" +echo "tbb" $VERSION +echo "##########################################################################" + +rm -rf $BUILD_DIR +mkdir -p $BUILD_DIR +cd $BUILD_DIR + +CMAKE_OPTIONS= +CMAKE_OPTIONS+=" -DCMAKE_INSTALL_PREFIX:STRING=$PRODUCT_INSTALL" +CMAKE_OPTIONS+=" -DCMAKE_INSTALL_LIBDIR:STRING=lib" + +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 + +# apply a post-fix +LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION" +case $LINUX_DISTRIBUTION in + DB12) + echo "WARNING: Fixing tbb until Paraview version is updated: issue with tbb AND ParaView/vtk/vtk-m cmake files tbbbind target not found" + sed -i 's/ TBB::tbbbind_2_5//g' $PRODUCT_INSTALL/lib/cmake/TBB/TBBTargets.cmake + ;; + *) + ;; +esac + diff --git a/products/opencv.pyconf b/products/opencv.pyconf index 0ce44c5..6e4bdbb 100644 --- a/products/opencv.pyconf +++ b/products/opencv.pyconf @@ -56,6 +56,14 @@ version_3_2_0_FD36 : patches : ["opencv-3.2.0-ccache.patch", "SPNS-29988-opencv-3.2.0-persistence.patch", "SPNS-29988-opencv-3.2.0-cv2.patch"] } +version_3_2_0_DB12 : +{ + patches : ["opencv-3.2.0-ccache.patch", + "SPNS-29988-opencv-3.2.0-persistence.patch", + "SPNS-29988-opencv-3.2.0-cv2.patch" + ] +} + version_3_2_0_win : { patches : ["opencv-3.2.0-ccache.patch","opencv-3.2.0_windows.patch"] diff --git a/products/openturns.pyconf b/products/openturns.pyconf index 750c799..6f0820c 100644 --- a/products/openturns.pyconf +++ b/products/openturns.pyconf @@ -60,6 +60,14 @@ version_1_21_win : } } +version_1_21_DB12 : +{ + compil_script : "openturns-1.21.sh" + patches : ['openturns-1.21.0001.patch','openturns-1.21.0005.patch', 'openturns-1.21.0006.patch'] + depend : ['Python', 'lapack', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen', 'matplotlib', 'cminpack', 'FMILibrary', 'PyFMI', 'boost'] + opt_depend : ['pandas', 'statsmodels', 'patsy'] +} + version_1_21_RO8 : { compil_script : "openturns-1.21.sh" diff --git a/products/patches/paraview-5.11.0.p010-python-3.11.patch b/products/patches/paraview-5.11.0.p010-python-3.11.patch new file mode 100644 index 0000000..81767bd --- /dev/null +++ b/products/patches/paraview-5.11.0.p010-python-3.11.patch @@ -0,0 +1,29 @@ +--- ParaView-ref/Wrapping/Python/paraview/detail/pythonalgorithm.py 2023-12-22 09:06:14.044130563 +0100 ++++ ParaView-dev/Wrapping/Python/paraview/detail/pythonalgorithm.py 2023-12-22 09:07:49.505485846 +0100 +@@ -3,7 +3,7 @@ + from functools import wraps + from xml.dom.minidom import parseString + from xml.parsers.expat import ExpatError +-from inspect import getargspec ++from inspect import signature + + import sys + +@@ -135,7 +135,7 @@ + attrs = smproperty._update_property_defaults(func, attrs) + + if attrs.get("number_of_elements", None) is None: +- attrs["number_of_elements"] = len(getargspec(func).args) - 1 ++ attrs["number_of_elements"] = len(signature(func).args) - 1 + + if attrs.get("default_values", None) is None: + attrs["default_values"] = "None" +@@ -147,7 +147,7 @@ + # if not set. + if attrs.get("repeat_command", None) is not None and \ + attrs.get("number_of_elements_per_command", None) is None: +- attrs["number_of_elements_per_command"] = len(getargspec(func).args) - 1 ++ attrs["number_of_elements_per_command"] = len(signature(func).args) - 1 + return attrs + + @staticmethod diff --git a/products/tbb.pyconf b/products/tbb.pyconf index acd1049..b2b348a 100644 --- a/products/tbb.pyconf +++ b/products/tbb.pyconf @@ -21,6 +21,20 @@ default : } } +version_2021_9_0 : +{ + compil_script : "tbb-2021.9.0.sh" + archive_info : {archive_name : "tbb-2021.9.0.tar.gz"} + depend : ['Python', 'llvm'] + opt_depend : ['ispc'] + build_depend : ['swig', "cmake"] + properties : + { + incremental : "yes" + single_install_dir : "no" + } +} + version_2019_U8 : { compil_script : "tbb-2019_U8.sh" -- 2.30.2