From: Guytri KASTANE Date: Wed, 13 Sep 2023 07:50:28 +0000 (+0200) Subject: Add fftw dependency and add sections in config files (petsc, fftw); add compilation... X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=30241cb1638d34713c8e499f09b842b3d7c1d0ec;p=tools%2Fsat_salome.git Add fftw dependency and add sections in config files (petsc, fftw); add compilation script for petsc 3.19.4 and fftw 3.3.10 --- diff --git a/applications/SALOME-master.pyconf b/applications/SALOME-master.pyconf index 1c3562f..e76666c 100644 --- a/applications/SALOME-master.pyconf +++ b/applications/SALOME-master.pyconf @@ -56,6 +56,7 @@ APPLICATION : eigen : '3.3.4' embree : '3.12.2' FMILibrary : '2.0.3' + fftw : {tag : '3.3.10', section: 'version_3_3_10', base: 'no'} freeimage : '3.16.0' freetype : '2.9.1' gcc : '8.5.0' @@ -102,7 +103,7 @@ APPLICATION : patsy : '0.5.2' ParaView : {tag:'5.11.0', base: 'no', section: 'version_5_11_0_MPI', hpc: 'yes'} PERSALYS: 'v14.0.1' - petsc : {tag : '3.16.0', base: 'no', section: 'version_3_16_0', hpc: 'yes'} + petsc : {tag : '3.19.4', base: 'no', section: 'version_3_19_4', hpc: 'yes'} Pillow : '8.4.0' planegcs : '0.18-3cb6890' psutil : '5.7.2' diff --git a/products/compil_scripts/fftw-3.3.10.sh b/products/compil_scripts/fftw-3.3.10.sh new file mode 100755 index 0000000..82728f9 --- /dev/null +++ b/products/compil_scripts/fftw-3.3.10.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +echo "##########################################################################" +echo "FFTW" $VERSION +echo "##########################################################################" + +echo +echo "*** configure --libdir=${MPI_ROOT_DIR} --prefix=${PRODUCT_INSTALL} " +${SOURCE_DIR}/configure \ + --enable-mpi \ + --prefix=${PRODUCT_INSTALL} \ + CFLAGS=-fPIC + +if [ $? -ne 0 ]; then + echo "ERROR on configure" + exit 1 +fi + +echo +echo "*** make" +make +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 + +echo +echo "########## END" diff --git a/products/compil_scripts/petsc-3.19.4.sh b/products/compil_scripts/petsc-3.19.4.sh new file mode 100755 index 0000000..2c50abe --- /dev/null +++ b/products/compil_scripts/petsc-3.19.4.sh @@ -0,0 +1,73 @@ +#!/bin/bash + +echo "##########################################################################" +echo "Petsc" $VERSION +echo "##########################################################################" + +cp -r $SOURCE_DIR/* . + +CONFIGURE_FLAGS= +CONFIGURE_FLAGS+=" --with-blaslapack-dir=${LAPACK_ROOT_DIR}" +CONFIGURE_FLAGS+=" --with-python-dir=${PYTHON_ROOT_DIR}" +CONFIGURE_FLAGS+=" --download-slepc=/home/salome-public/prerequis/archives/slepc-3.19.2.tar.gz" +CONFIGURE_FLAGS+=" --with-hdf5-dir=${HDF5_ROOT_DIR}" +CONFIGURE_FLAGS+=" --with-fftw-dir=${FFTW_ROOT_DIR}" +CONFIGURE_FLAGS+=" --with-cuda=0" # +CONFIGURE_FLAGS+=" --with-debugging=0" # by default Petsc is build in debug mode +CONFIGURE_FLAGS+=" --with-petsc4py=yes" +CONFIGURE_FLAGS+=" --download-slepc-configure-arguments=--with-slepc4py=yes " +CONFIGURE_FLAGS+=" --CFLAGS=-fPIC" # +echo +if [ -n "${SAT_HPC}" ] +then + CONFIGURE_FLAGS+=" --download-hypre=ext/hypre-2.27.0.tar.gz" + CONFIGURE_FLAGS+=" --download-parms=ext/parms-3.2-p5.tar.gz" + CONFIGURE_FLAGS+=" --download-metis=ext/metis-5.1.0-p10.tar.gz" + CONFIGURE_FLAGS+=" --download-parmetis=ext/parmetis-4.0.3-p6.tar.gz" + CONFIGURE_FLAGS+=" --download-ptscotch=ext/scotch_6.1.0.tar.gz" + if [ -n "${MPI4PY_ROOT_DIR}" ] + then + CONFIGURE_FLAGS+=" --with-mpi4py-dir=${MPI4PY_ROOT_DIR}" + else + CONFIGURE_FLAGS+=" --download-mpi4py=ext/mpi4py-3.0.3.tar.gz" + fi + echo "*** configure --prefix=${PRODUCT_INSTALL} --with-mpi-dir=${MPI_ROOT_DIR} ${CONFIGURE_FLAGS}" + ./configure --prefix=${PRODUCT_INSTALL} --with-mpi-dir=${MPI_ROOT_DIR} ${CONFIGURE_FLAGS} +else + CONFIGURE_FLAGS+=" --with-metis-dir=${METIS_ROOT_DIR}" + echo "*** configure --prefix=${PRODUCT_INSTALL} --with-mpi=0 ${CONFIGURE_FLAGS}" + ./configure --prefix=${PRODUCT_INSTALL} --with-mpi=0 ${CONFIGURE_FLAGS} +fi + +if [ $? -ne 0 ] +then + echo "ERROR on configure" + exit 1 +fi + +MAKE_OPTIONS="PETSC_DIR=${BUILD_DIR}" + +echo +echo "*** make" $MAKE_OPTIONS +make $MAKE_OPTIONS +if [ $? -ne 0 ] +then + echo "ERROR on make" + exit 2 +fi + +# CentOS 6 automatically set PETSC_ARCH to arch-linux2-c-debug : remove arch specification +# MAKE_OPTIONS=$MAKE_OPTIONS" PETSC_ARCH=arch-linux-c-debug" + +echo +echo "*** make install" +make $MAKE_OPTIONS install +if [ $? -ne 0 ] +then + echo "ERROR on make install" + exit 3 +fi + +echo +echo "########## END" + diff --git a/products/fftw.pyconf b/products/fftw.pyconf index 6b9f294..471c4a2 100644 --- a/products/fftw.pyconf +++ b/products/fftw.pyconf @@ -37,6 +37,12 @@ default_win : } } +version_3_3_10: +{ + compil_script: "fftw-3.3.10.sh" + depend : ['Python', 'cmake', 'openmpi'] +} + version_3_3_9 : {} diff --git a/products/petsc.pyconf b/products/petsc.pyconf index d7da291..9133a55 100644 --- a/products/petsc.pyconf +++ b/products/petsc.pyconf @@ -21,6 +21,12 @@ default : post_script: "fix_permissions.sh" } +version_3_19_4 : +{ + compil_script : "petsc-3.19.4.sh" + depend : ["hdf5", "Python", "lapack","fftw", "llvm"] +} + version_3_17_0 : { compil_script : "petsc-3.17.0.sh"