#!/bin/sh #------------------------------------------------------------------------------ # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | # \\ / A nd | www.openfoam.com # \\/ M anipulation | #------------------------------------------------------------------------------ # Copyright (C) 2018-2020 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. # # Script # makeAdios2 # # Description # Build script for ADIOS2 # # ---------------------------------------------- # NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE #------------------------------------------------------------------------------ # Dynamic library ending (default is .so) [ "$(uname -s)" = Darwin ] && EXT_SO=.dylib || EXT_SO=.so # Short-circuit test for an installation if [ "$1" = "-test" ] then [ "$#" -eq 2 ] || { echo "${0##*/} -test : needs 1 argument"; exit 1; } dir="${2%/}" # <- FFTW_ARCH_PATH if [ -d "$dir/include" -a -r "$dir/lib$WM_COMPILER_LIB_ARCH/libadios2$EXT_SO" ] then echo " adios2 include: $dir/include" echo " adios2 library: $dir/lib$WM_COMPILER_LIB_ARCH" exit 0 else exit 2 fi fi #------------------------------------------------------------------------------ # Run from third-party directory only cd "${0%/*}" || exit wmakeCheckPwd "$WM_THIRD_PARTY_DIR" 2>/dev/null || { echo "Error (${0##*/}) : not located in \$WM_THIRD_PARTY_DIR" echo " Check your OpenFOAM environment and installation" exit 1 } . etc/tools/ThirdPartyFunctions #------------------------------------------------------------------------------ # ADIOS2 version from OpenFOAM etc/config.sh file: _foamConfig adios2 adiosPACKAGE=${adios2_version:-adios-none} #------------------------------------------------------------------------------ usage() { exec 1>&2 while [ "$#" -ge 1 ]; do echo "$1"; shift; done cat</dev/null mkdir -p $buildDIR # May not work properly with FOAM_MPI = dummy if [ "$FOAM_MPI" != dummy ] then CC=mpicc CXX=mpicxx fi cmake=$(findCMake) # Install into lib64/ cd $buildDIR && $cmake \ -DCMAKE_INSTALL_PREFIX=$ADIOS2_ARCH_PATH \ -DCMAKE_BUILD_TYPE=Release \ -DADIOS2_USE_Fortran=FALSE \ -DADIOS2_BUILD_EXAMPLES=FALSE \ ${WM_QUIET:+-DCMAKE_RULE_MESSAGES=OFF} \ $ADIOS2_SOURCE_DIR \ && make -j $WM_NCOMPPROCS all \ && make install \ && echo "Built: $adiosPACKAGE" ) || { echo "Error building: $adiosPACKAGE" exit 1 } fi # -----------------------------------------------------------------------------