--- /dev/null
+#!/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 [ ! -z "$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"
+
# specific to some platform(s)
"CO7" :
{
- rpm : ["lz4", "gsl", "libgeotiff", "giflib", "geos", "fftw", "postgresql-libs", "pcllib"]
- rpm_dev : ["perl", "gsl-devel", "libpng-devel", "libtiff-devel", "libgeotiff-devel", "giflib-devel", "geos-devel", "fftw-devel", "devtoolset-8-gcc", "texlive-dvipng"]
+ rpm : ["lz4", "gsl", "libgeotiff", "giflib", "geos", "fftw", "postgresql-libs", "pcllib", "libxml++"]
+ rpm_dev : ["perl", "gsl-devel", "libpng-devel", "libtiff-devel", "libgeotiff-devel", "giflib-devel", "geos-devel", "fftw-devel", "devtoolset-8-gcc", "texlive-dvipng", "libxml++-devel"]
}
"CO8" :
{
- rpm : ["lz4", "openmpi", "gsl", "libgeotiff", "giflib", "geos", "sqlite", "netcdf"]
- rpm_dev : ["perl-interpreter", "qt5-devel", "openmpi-devel", "gsl-devel", "libpng-devel", "libtiff-devel", "libgeotiff-devel", "giflib-devel", "geos-devel", "netcdf-devel", "texlive-dvipng"]
+ rpm : ["lz4", "openmpi", "gsl", "libgeotiff", "giflib", "geos", "sqlite", "netcdf", "libxml++"]
+ rpm_dev : ["perl-interpreter", "qt5-devel", "openmpi-devel", "gsl-devel", "libpng-devel", "libtiff-devel", "libgeotiff-devel", "giflib-devel", "geos-devel", "netcdf-devel", "texlive-dvipng",
+ "libxml++-devel"]
}
"FD30" :
{
- rpm : ["lz4", "gsl"]
- rpm_dev : ["perl-interpreter", "qt5-devel", "gsl-devel", "texlive-dvipng"]
+ rpm : ["lz4", "gsl", "libxml++"]
+ rpm_dev : ["perl-interpreter", "qt5-devel", "gsl-devel", "texlive-dvipng", "libxml++-devel"]
}
"FD32" :
{
- rpm : ["lz4", "gsl", "openmpi", "netcdf", "gdal"]
- rpm_dev : ["perl-interpreter", "qt5-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "protobuf-devel", "python3-protobuf", "texlive-dvipng"]
+ rpm : ["lz4", "gsl", "openmpi", "netcdf", "gdal", "libxml++"]
+ rpm_dev : ["perl-interpreter", "qt5-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "protobuf-devel", "python3-protobuf", "texlive-dvipng", "libxml++-devel"]
}
"FD34" :
{
- rpm : ["lz4-libs", "gsl", "openmpi", "netcdf", "gdal"]
- rpm_dev : ["lz4-devel", "qt5-qtbase-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "gdal-devel", "texlive-dvipng"]
+ rpm : ["lz4-libs", "gsl", "openmpi", "netcdf", "gdal", "libxml++"]
+ rpm_dev : ["lz4-devel", "qt5-qtbase-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "gdal-devel", "texlive-dvipng", "libxml++-devel"]
}
"FD36" :
{
- rpm : ["lz4-libs", "gsl", "openmpi", "netcdf", "gdal"]
- rpm_dev : ["lz4-devel", "qt5-qtbase-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "gdal-devel"]
+ rpm : ["lz4-libs", "gsl", "openmpi", "netcdf", "gdal", "libxml++"]
+ rpm_dev : ["lz4-devel", "qt5-qtbase-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "gdal-devel", "libxml++-devel"]
}
"DB08" :
{
{
apt : ["libdc1394-22", "libopenexr23", "libwebp6", "libgfortran5", "libilmbase23", "libevent-2.1-6", "libpng16-16", "libgcc-8-dev",
"libffi6", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libjsoncpp1", "libopenblas-base", "libscotch-6.0", "openmpi-bin",
- "libnetcdf13", "libgdal20", "libtbb2"]
+ "libnetcdf13", "libgdal20", "libtbb2", "libxml++2.6-2v5"]
apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
"qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
- "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev", "texlive-latex-base", "texlive-latex-extra", "dvipng"]
+ "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev",
+ "texlive-latex-base", "texlive-latex-extra", "dvipng", "libxml++2.6-dev"]
}
"DB11" :
{
apt : ["libdc1394-25", "libopenexr25", "libwebp6", "libgfortran5", "libilmbase25", "libevent-2.1-7", "libpng16-16", "libgcc-10-dev",
"libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libjsoncpp24",
- "openmpi-bin", "libnetcdf18", "libgdal28", "libtbb2", "pypy-setuptools"]
+ "openmpi-bin", "libnetcdf18", "libgdal28", "libtbb2", "pypy-setuptools", "libxml++2.6-2v5"]
apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
"qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
- "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev", "texlive-latex-base", "texlive-latex-extra", "dvipng"]
+ "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev",
+ "texlive-latex-base", "texlive-latex-extra", "dvipng", "libxml++2.6-dev"]
+ }
+ "DB12" :
+ {
+ apt : ["libdc1394-25", "libopenexr-3-1-30", "libwebp6", "libgfortran5", "libevent-2.1-7", "libpng16-16", "libgcc",
+ "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libjsoncpp25",
+ "openmpi-bin", "libnetcdf19", "libgdal32", "libtbb12", "python3-setuptools", "libxml++2.6-2v5"]
+ apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
+ "qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
+ "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev",
+ "texlive-latex-base", "texlive-latex-extra", "dvipng", "libxml++2.6-dev"]
}
"UB16.04" :
{
"UB18.04" :
{
apt : ["libdc1394-22", "libopenexr22", "libwebp6", "libgfortran4", "libilmbase12", "libevent-2.1-6", "libpng16-16", "libgcc-7-dev",
- "libffi6", "libtinfo5", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libopenblas-base", "libgeos-c1v5", "libtbb2"]
+ "libffi6", "libtinfo5", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libopenblas-base", "libgeos-c1v5", "libtbb2", "libxml++2.6"]
apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
- "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "dvipng"]
+ "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "dvipng", "libxml++2.6-dev"]
}
"UB20.04" :
{
apt : ["libdc1394-22", "libopenexr24", "libwebp6", "libgfortran5", "libilmbase24", "libevent-2.1-7", "libpng16-16", "libgcc-9-dev",
- "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "openmpi-bin", "libgdal26", "libopenblas0-serial", "libtbb2"]
+ "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "openmpi-bin", "libgdal26", "libopenblas0-serial", "libtbb2",
+ "libxml++2.6-2v5"]
apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
"qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
- "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libgdal-dev", "dvipng"]
+ "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libgdal-dev", "dvipng", "libxml++2.6-dev"]
}
"UB22.04" :
{
apt : ["libdc1394-25", "libopenexr25", "libwebp7", "gfortran-11", "libilmbase25", "libevent-2.1-7", "libpng16-16", "libgcc-11-dev",
- "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "openmpi-bin", "libgdal30", "libopenblas0-serial", "libtbb12"]
+ "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "openmpi-bin", "libgdal30", "libopenblas0-serial", "libtbb12",
+ "libxml++2.6-2v5"]
apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
"qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
- "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libgdal-dev", "dvipng"]
+ "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libgdal-dev", "dvipng", "libxml++2.6-dev"]
}
}