#!/bin/bash #------------------------------------------------------------------------------ # ========= | # \\ / F ield | foam-extend: Open Source CFD # \\ / O peration | # \\ / A nd | For copyright notice see file Copyright # \\/ M anipulation | #------------------------------------------------------------------------------ # License # This file is part of foam-extend. # # foam-extend is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the # Free Software Foundation, either version 3 of the License, or (at your # option) any later version. # # foam-extend is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with foam-extend. If not, see . # # Script # AllMake.stage2 # # Description # Build script for ThirdParty packages: Stage2 # # Communication libraries # # Once this stage is built, you would normally re-initialize your # foam-extend environment in order redirect foam-extend toward the # appropriate communication library # # NOTE: This stage is optional. Use it only if you want to override # your system communication libraries # # Requirements: # 1: Your foam-extend environment must be properly initialized # 2: AllMake.stage1 if you are overriding your system compiler # 3: The file etc/prefs.sh should be used for setting the variables # enabling the compilation of the various packages # # Author: # Martin Beaudoin, Hydro-Quebec, (2015) # #------------------------------------------------------------------------------ # run from third-party directory only cd ${0%/*} || exit 1 wmakeCheckPwd "$WM_THIRD_PARTY_DIR" || { echo "Error: Current directory is not \$WM_THIRD_PARTY_DIR" echo " The environment variables are inconsistent with the installation." echo " Check the foam-extend entries in your dot-files and source them." exit 1 } . tools/makeThirdPartyFunctionsForRPM #------------------------------------------------------------------------------ echo ======================================== echo Starting ThirdParty AllMake: Stage2 echo ======================================== echo if [ "$WM_MPLIB" != "SYSTEMOPENMPI" ] then # MPI # openmpi 1.4.1 # [ ! -z "$WM_THIRD_PARTY_USE_OPENMPI_141" ] && { echo "Building openmpi 1.4.1" ( rpm_make -p openmpi-1.4.1 -s openmpi-1.4.1.spec -u http://www.open-mpi.org/software/ompi/v1.4/downloads/openmpi-1.4.1.tar.gz ) } # openmpi 1.4.3 # [ ! -z "$WM_THIRD_PARTY_USE_OPENMPI_143" ] && { echo "Building openmpi 1.4.3" ( rpm_make -p openmpi-1.4.3 -s openmpi-1.4.3.spec -u http://www.open-mpi.org/software/ompi/v1.4/downloads/openmpi-1.4.3.tar.gz ) } # openmpi 1.5 # [ ! -z "$WM_THIRD_PARTY_USE_OPENMPI_15" ] && { echo "Building openmpi 1.5" ( rpm_make -p openmpi-1.5 -s openmpi-1.5.spec -u http://www.open-mpi.org/software/ompi/v1.5/downloads/openmpi-1.5.tar.gz ) } # openmpi 1.6.5 # [ ! -z "$WM_THIRD_PARTY_USE_OPENMPI_165" ] && { echo "Building openmpi 1.6.5" ( rpm_make -p openmpi-1.6.5 -s openmpi-1.6.5.spec -u http://www.open-mpi.org/software/ompi/v1.6/downloads/openmpi-1.6.5.tar.gz \ -f --define '_configureAdditionalArgs "$WM_THIRD_PARTY_USE_OPENMPI_165_ConfigureAdditionalArgs"') } # openmpi 1.8.8 # [ ! -z "$WM_THIRD_PARTY_USE_OPENMPI_188" ] && { echo "Building openmpi 1.8.8" ( rpm_make -p openmpi-1.8.8 -s openmpi-1.8.8.spec -u https://www.open-mpi.org/software/ompi/v1.8/downloads/openmpi-1.8.8.tar.gz \ -f --define '_configureAdditionalArgs "$WM_THIRD_PARTY_USE_OPENMPI_188_ConfigureAdditionalArgs"') } # openmpi 3.1.1 # [ ! -z "$WM_THIRD_PARTY_USE_OPENMPI_311" ] && { echo "Building openmpi 3.1.1" ( rpm_make -p openmpi-3.1.1 -s openmpi-3.1.1.spec -u https://www.open-mpi.org/software/ompi/v3.1/downloads/openmpi-3.1.1.tar.gz \ -f --define '_configureAdditionalArgs "$WM_THIRD_PARTY_USE_OPENMPI_311_ConfigureAdditionalArgs"') } # openmpi 4.0.0 # [ ! -z "$WM_THIRD_PARTY_USE_OPENMPI_400" ] && { echo "Building openmpi 4.0.0" ( rpm_make -p openmpi-4.0.0 -s openmpi-4.0.0.spec -u https://www.open-mpi.org/software/ompi/v4.0/downloads/openmpi-4.0.0.tar.gz \ -f --define '_configureAdditionalArgs "$WM_THIRD_PARTY_USE_OPENMPI_400_ConfigureAdditionalArgs"') } # mvipich2-2.2 # [ ! -z "$WM_THIRD_PARTY_USE_MVAPICH2_22" ] && { echo "Building mvapich2 2.2" ( rpm_make -p mvapich2-2.2 -s mvapich2-2.2.spec -u http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-2.2.tar.gz \ -f --define '_configureAdditionalArgs "$WM_THIRD_PARTY_USE_MVAPICH2_22_ConfigureAdditionalArgs"') } else echo "Using system installed OpenMPI" echo "" fi echo ======================================== echo Done ThirdParty AllMake: Stage2 echo ======================================== echo # ----------------------------------------------------------------- end-of-file