Loading scripts/compile_dep.sh +165 −161 Original line number Diff line number Diff line Loading @@ -42,6 +42,8 @@ optional arguments: --use-bundled-psm2 Build libfabric with the recommended opa-psm2 library. Otherwise system opa-psm2 is linked to libfabric --na_sm_conf_path <PATH> Used by Mercury to store na_sm configurations. Defaults to /tmp -j <COMPILE_CORES>, --compilecores <COMPILE_CORES> number of cores that are used to compile the dependencies defaults to number of available cores Loading @@ -49,14 +51,12 @@ optional arguments: " } list_dependencies() { echo "Available dependencies: " echo -n " Mogon 2: " for d in "${MOGON2_DEPS[@]}" do for d in "${MOGON2_DEPS[@]}"; do echo -n "$d " done echo "" Loading @@ -65,18 +65,19 @@ list_dependencies() { prepare_build_dir() { if [ ! -d "$1/build" ]; then mkdir $1/build mkdir "$1"/build fi rm -rf $1/build/* rm -rf "$1"/build/* } find_cmake() { local CMAKE=`command -v cmake3 || command -v cmake` local CMAKE CMAKE=$(command -v cmake3 || command -v cmake) if [ $? -ne 0 ]; then >&2 echo "ERROR: could not find cmake" echo >&2 "ERROR: could not find cmake" exit 1 fi echo ${CMAKE} echo "${CMAKE}" } PATCH_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" Loading @@ -89,10 +90,10 @@ SOURCE="" INSTALL="" USE_PSM2=false USE_BUNDLED_PSM2=false NA_SM_CONF_PATH=/tmp POSITIONAL=() while [[ $# -gt 0 ]] do while [[ $# -gt 0 ]]; do key="$1" case ${key} in Loading @@ -114,6 +115,11 @@ case ${key} in USE_BUNDLED_PSM2=true shift # past argument ;; --na_sm_conf_path) NA_SM_CONF_PATH="$2" shift # past argument shift # past value ;; -d | --dependency) if [[ -z "$2" ]]; then echo "Missing argument for -d/--dependency option" Loading Loading @@ -159,15 +165,15 @@ SOURCE="$( readlink -mn "${1}" )" INSTALL="$(readlink -mn "${2}")" # deal with optional arguments if [ "${NA_LAYER}" == "" ]; then if [[ "${NA_LAYER}" == "" ]]; then echo "Defaulting NAPLUGIN to 'all'" NA_LAYER="all" fi if [ "${CORES}" == "" ]; then if [[ "${CORES}" == "" ]]; then CORES=$(grep -c ^processor /proc/cpuinfo) echo "CORES = ${CORES} (default)" else if [ ! "${CORES}" -gt "0" ]; then if [[ ! "${CORES}" -gt "0" ]]; then echo "CORES set to ${CORES} which is invalid. Input must be numeric and greater than 0." usage_short Loading @@ -176,7 +182,7 @@ Input must be numeric and greater than 0." echo CORES = "${CORES}" fi fi if [ "${NA_LAYER}" == "bmi" ] || [ "${NA_LAYER}" == "ofi" ] || [ "${NA_LAYER}" == "all" ]; then if [[ "${NA_LAYER}" == "bmi" || "${NA_LAYER}" == "ofi" || "${NA_LAYER}" == "all" ]]; then echo NAPLUGIN = "${NA_LAYER}" else echo "No valid plugin selected" Loading @@ -184,7 +190,7 @@ else exit fi if [[ "${CLUSTER}" != "" ]]; then if [[ ( "${CLUSTER}" == "mogon2" ) ]]; then if [[ "${CLUSTER}" == "mogon2" ]]; then echo CLUSTER = "${CLUSTER}" else echo "${CLUSTER} cluster configuration is invalid. Exiting ..." Loading @@ -198,13 +204,13 @@ fi USE_BMI="-DNA_USE_BMI:BOOL=OFF" USE_OFI="-DNA_USE_OFI:BOOL=OFF" CMAKE=`find_cmake` CMAKE=$(find_cmake) CMAKE="${CMAKE} -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}" echo "Source path = ${SOURCE}"; echo "Install path = ${INSTALL}"; echo "Source path = ${SOURCE}" echo "Install path = ${INSTALL}" mkdir -p ${SOURCE} mkdir -p "${SOURCE}" ######### From now on exits on any error ######## set -e Loading @@ -213,105 +219,104 @@ export CPATH="${CPATH}:${INSTALL}/include" export LIBRARY_PATH="${LIBRARY_PATH}:${INSTALL}/lib:${INSTALL}/lib64" # Set cluster dependencies first if [[ ( "${CLUSTER}" == "mogon2" ) ]]; then if [[ "${CLUSTER}" == "mogon2" ]]; then # compile zstd if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "zstd" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "zstd" ]]; then echo "############################################################ Installing: zstd" CURR=${SOURCE}/zstd/build/cmake prepare_build_dir ${CURR} cd ${CURR}/build $CMAKE -DCMAKE_INSTALL_PREFIX=${INSTALL} -DCMAKE_BUILD_TYPE:STRING=Release .. make -j${CORES} prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX="${INSTALL}" -DCMAKE_BUILD_TYPE:STRING=Release .. make -j"${CORES}" make install fi # build lz4 if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "zstd" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "zstd" ]]; then echo "############################################################ Installing: zstd" CURR=${SOURCE}/lz4 cd ${CURR} make -j${CORES} make DESTDIR=${INSTALL} PREFIX="" install cd "${CURR}" make -j"${CORES}" make DESTDIR="${INSTALL}" PREFIX="" install fi # build snappy if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "snappy" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "snappy" ]]; then echo "############################################################ Installing: snappy" CURR=${SOURCE}/snappy prepare_build_dir ${CURR} cd ${CURR}/build $CMAKE -DCMAKE_INSTALL_PREFIX=${INSTALL} -DCMAKE_BUILD_TYPE:STRING=Release .. make -j${CORES} prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX="${INSTALL}" -DCMAKE_BUILD_TYPE:STRING=Release .. make -j"${CORES}" make install fi # build capstone for syscall-intercept if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "capstone" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "capstone" ]]; then echo "############################################################ Installing: capstone" CURR=${SOURCE}/capstone prepare_build_dir ${CURR} cd ${CURR}/build prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX=/home/vef/gekkofs_deps/install -DCMAKE_BUILD_TYPE:STRING=Release .. make -j${CORES} install make -j"${CORES}" install fi fi # build bmi if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "bmi" ) ]]; then if [[ ( "${NA_LAYER}" == "bmi" ) || ( "${NA_LAYER}" == "all" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "bmi" ]]; then if [[ "${NA_LAYER}" == "bmi" || "${NA_LAYER}" == "all" ]]; then USE_BMI="-DNA_USE_BMI:BOOL=ON" echo "############################################################ Installing: BMI" # BMI CURR=${SOURCE}/bmi prepare_build_dir ${CURR} cd ${CURR} prepare_build_dir "${CURR}" cd "${CURR}" ./prepare cd ${CURR}/build CFLAGS="${CFLAGS} -w" ../configure --prefix=${INSTALL} --enable-shared --disable-static --disable-karma --enable-bmi-only --enable-fast --disable-strict make -j${CORES} cd "${CURR}"/build CFLAGS="${CFLAGS} -w" ../configure --prefix="${INSTALL}" --enable-shared --disable-static --disable-karma --enable-bmi-only --enable-fast --disable-strict make -j"${CORES}" make install fi fi # build ofi if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "ofi" ) ]]; then if [[ ( "${NA_LAYER}" == "ofi" ) || ( "${NA_LAYER}" == "all" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "ofi" ]]; then if [[ "${NA_LAYER}" == "ofi" || "${NA_LAYER}" == "all" ]]; then USE_OFI="-DNA_USE_OFI:BOOL=ON" echo "############################################################ Installing: LibFabric" #libfabric CURR=${SOURCE}/libfabric prepare_build_dir ${CURR} cd ${CURR}/build prepare_build_dir "${CURR}" cd "${CURR}"/build # decide if to build with psm2 if [[ ( "${CLUSTER}" == "mogon2" ) || [[ ( ${USE_PSM2} == true ) && ( ${USE_BUNDLED_PSM2} == true ) ]] ]]; then ../configure --prefix=${INSTALL} --enable-tcp=yes --enable-psm2=yes --with-psm2-src=${SOURCE}/psm2 elif [[ ( ${USE_PSM2} == true ) && ( ${USE_BUNDLED_PSM2} == false ) ]]; then ../configure --prefix=${INSTALL} --enable-tcp=yes --enable-psm2=yes if [[ "${CLUSTER}" == "mogon2" || (${USE_PSM2} == true && ${USE_BUNDLED_PSM2} == true) ]]; then ../configure --prefix="${INSTALL}" --enable-tcp=yes --enable-psm2=yes --with-psm2-src="${SOURCE}"/psm2 elif [[ ${USE_PSM2} == true && ${USE_BUNDLED_PSM2} == false ]]; then ../configure --prefix="${INSTALL}" --enable-tcp=yes --enable-psm2=yes else ../configure --prefix=${INSTALL} --enable-tcp=yes ../configure --prefix="${INSTALL}" --enable-tcp=yes fi make -j${CORES} make -j"${CORES}" make install [ "${PERFORM_TEST}" ] && make check fi fi # Mercury if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "mercury" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "mercury" ]]; then if [ "$NA_LAYER" == "bmi" ] || [ "$NA_LAYER" == "all" ]; then if [[ "${NA_LAYER}" == "bmi" || "${NA_LAYER}" == "all" ]]; then USE_BMI="-DNA_USE_BMI:BOOL=ON" fi if [ "$NA_LAYER" == "ofi" ] || [ "$NA_LAYER" == "all" ]; then if [[ "${NA_LAYER}" == "ofi" || "${NA_LAYER}" == "all" ]]; then USE_OFI="-DNA_USE_OFI:BOOL=ON" fi echo "############################################################ Installing: Mercury" CURR=${SOURCE}/mercury prepare_build_dir ${CURR} cd ${CURR}/build prepare_build_dir "${CURR}" cd "${CURR}"/build PKG_CONFIG_PATH=${INSTALL}/lib/pkgconfig $CMAKE \ -DCMAKE_BUILD_TYPE:STRING=Release \ -DBUILD_TESTING:BOOL=ON \ Loading @@ -321,71 +326,70 @@ if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "mercury" ) ]]; then -DMERCURY_USE_BOOST_PP:BOOL=ON \ -DMERCURY_USE_EAGER_BULK:BOOL=ON \ -DBUILD_SHARED_LIBS:BOOL=ON \ -DNA_SM_TMP_DIRECTORY:STRING="/dev/shm" \ -DCMAKE_INSTALL_PREFIX=${INSTALL} \ -DNA_SM_TMP_DIRECTORY:STRING="${NA_SM_CONF_PATH}" \ -DCMAKE_INSTALL_PREFIX="${INSTALL}" \ ${USE_BMI} ${USE_OFI} \ .. make -j${CORES} make -j"${CORES}" make install fi # Argobots if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "argobots" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "argobots" ]]; then echo "############################################################ Installing: Argobots" CURR=${SOURCE}/argobots prepare_build_dir ${CURR} cd ${CURR} prepare_build_dir "${CURR}" cd "${CURR}" ./autogen.sh cd ${CURR}/build ../configure --prefix=${INSTALL} --enable-perf-opt --disable-checks make -j${CORES} cd "${CURR}"/build ../configure --prefix="${INSTALL}" --enable-perf-opt --disable-checks make -j"${CORES}" make install [ "${PERFORM_TEST}" ] && make check fi # Margo if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "margo" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "margo" ]]; then echo "############################################################ Installing: Margo" CURR=${SOURCE}/margo prepare_build_dir ${CURR} cd ${CURR} prepare_build_dir "${CURR}" cd "${CURR}" ./prepare.sh cd ${CURR}/build ../configure --prefix=${INSTALL} PKG_CONFIG_PATH=${INSTALL}/lib/pkgconfig CFLAGS="${CFLAGS} -Wall -O3" make -j${CORES} cd "${CURR}"/build ../configure --prefix="${INSTALL}" PKG_CONFIG_PATH="${INSTALL}"/lib/pkgconfig CFLAGS="${CFLAGS} -Wall -O3" make -j"${CORES}" make install [ "${PERFORM_TEST}" ] && make check fi # Rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "rocksdb" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "rocksdb" ]]; then echo "############################################################ Installing: Rocksdb" CURR=${SOURCE}/rocksdb cd ${CURR} cd "${CURR}" make clean USE_RTTI=1 make -j${CORES} static_lib INSTALL_PATH=${INSTALL} make install USE_RTTI=1 make -j"${CORES}" static_lib INSTALL_PATH="${INSTALL}" make install fi # syscall_intercept if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "syscall_intercept" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "syscall_intercept" ]]; then echo "############################################################ Installing: Syscall_intercept" CURR=${SOURCE}/syscall_intercept prepare_build_dir ${CURR} cd ${CURR}/build $CMAKE -DCMAKE_INSTALL_PREFIX=${INSTALL} -DCMAKE_BUILD_TYPE:STRING=Debug -DBUILD_EXAMPLES:BOOL=OFF -DBUILD_TESTS:BOOK=OFF .. prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX="${INSTALL}" -DCMAKE_BUILD_TYPE:STRING=Debug -DBUILD_EXAMPLES:BOOL=OFF -DBUILD_TESTS:BOOK=OFF .. make install fi # date if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "date" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "date" ]]; then echo "############################################################ Installing: date" CURR=${SOURCE}/date prepare_build_dir ${CURR} cd ${CURR}/build $CMAKE -DCMAKE_INSTALL_PREFIX=${INSTALL} -DCMAKE_CXX_STANDARD:STRING=14 -DUSE_SYSTEM_TZ_DB:BOOL=ON -DBUILD_SHARED_LIBS:BOOL=ON .. prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX="${INSTALL}" -DCMAKE_CXX_STANDARD:STRING=14 -DUSE_SYSTEM_TZ_DB:BOOL=ON -DBUILD_SHARED_LIBS:BOOL=ON .. make install fi echo "Done" scripts/dl_dep.sh +87 −87 Original line number Diff line number Diff line Loading @@ -19,8 +19,9 @@ MOGON2_DEPS=( # Stop all backround jobs on interruption. # "kill -- -$$" sends a SIGTERM to the whole process group, # thus killing also descendants. trap "trap - SIGTERM && kill -- -$$" SIGINT SIGTERM # Use single quotes, otherwise this expands now rather than when signalled. # See shellcheck SC2064. trap 'trap - SIGTERM && kill -- -$$' SIGINT SIGTERM exit_child() { if [ ! $? -eq 0 ]; then Loading @@ -39,8 +40,7 @@ list_dependencies() { echo "Available dependencies: " echo -n " Mogon 2: " for d in "${MOGON2_DEPS[@]}" do for d in "${MOGON2_DEPS[@]}"; do echo -n "$d " done echo "" Loading @@ -59,20 +59,20 @@ clonedeps() { local ACTION if [ -d "${SOURCE}/${FOLDER}/.git" ]; then cd ${SOURCE}/${FOLDER} && git fetch -q if [[ -d "${SOURCE}/${FOLDER}/.git" ]]; then cd "${SOURCE}/${FOLDER}" && git fetch -q ACTION="Pulled" else git clone ${COMMON_GIT_FLAGS} ${GIT_FLAGS} -- "${REPO}" "${SOURCE}/${FOLDER}" git clone "${COMMON_GIT_FLAGS}" "${GIT_FLAGS}" -- "${REPO}" "${SOURCE}/${FOLDER}" ACTION="Cloned" fi # fix the version cd "${SOURCE}/${FOLDER}" && git checkout -qf ${COMMIT} cd "${SOURCE}/${FOLDER}" && git checkout -qf "${COMMIT}" echo "${ACTION} ${FOLDER} [$COMMIT]" # apply patch if provided if [ ! -z ${PATCH} ]; then git apply --verbose ${PATCH_DIR}/${PATCH} if [[ -n "${PATCH}" ]]; then git apply --verbose "${PATCH_DIR}/${PATCH}" fi } Loading @@ -83,16 +83,17 @@ wgetdeps() { FOLDER=$1 URL=$2 if [ -d "${SOURCE}/${FOLDER}" ]; then rm -rf "${SOURCE}/${FOLDER}" if [[ -d "${SOURCE}/${FOLDER}" ]]; then # SC2115 Use "${var:?}" to ensure this never expands to /* . rm -rf "${SOURCE:?}/${FOLDER:?}" fi mkdir -p "${SOURCE}/${FOLDER}" cd ${SOURCE} cd "${SOURCE}" FILENAME=$(basename $URL) if [ -f "${SOURCE}/$FILENAME" ]; then if [[ -f "${SOURCE}/$FILENAME" ]]; then rm -f "${SOURCE}/$FILENAME" fi curl ${COMMON_CURL_FLAGS} "$URL" || error_exit "Failed to download ${URL}" $? curl "${COMMON_CURL_FLAGS}" "$URL" || error_exit "Failed to download ${URL}" $? tar -xf "$FILENAME" --directory "${SOURCE}/${FOLDER}" --strip-components=1 rm -f "$FILENAME" echo "Downloaded ${FOLDER}" Loading Loading @@ -134,8 +135,7 @@ optional arguments: } POSITIONAL=() while [[ $# -gt 0 ]] do while [[ $# -gt 0 ]]; do key="$1" case ${key} in Loading Loading @@ -188,13 +188,13 @@ fi SOURCE="$(readlink -mn "${1}")" # optional arguments if [ "${NA_LAYER}" == "" ]; then if [[ "${NA_LAYER}" == "" ]]; then echo "Defaulting NAPLUGIN to 'all'" NA_LAYER="all" fi # sanity checks if [[ ( "${NA_LAYER}" == "bmi" ) || ( "${NA_LAYER}" == "ofi" ) || ( "${NA_LAYER}" == "all" ) ]]; then if [[ "${NA_LAYER}" == "bmi" || "${NA_LAYER}" == "ofi" || "${NA_LAYER}" == "all" ]]; then echo NAPLUGIN = "${NA_LAYER}" else echo "No valid plugin selected" Loading @@ -202,7 +202,7 @@ else exit fi if [[ "${CLUSTER}" != "" ]]; then if [[ ( "${CLUSTER}" == "mogon2" ) ]]; then if [[ "${CLUSTER}" == "mogon2" ]]; then echo CLUSTER = "${CLUSTER}" else echo "${CLUSTER} cluster configuration is invalid. Exiting ..." Loading @@ -215,78 +215,78 @@ fi echo "Source path is set to \"${SOURCE}\"" mkdir -p ${SOURCE} mkdir -p "${SOURCE}" # get cluster dependencies if [[ ( "${CLUSTER}" == "mogon2" ) ]]; then if [[ "${CLUSTER}" == "mogon2" ]]; then # get zstd for fast compression in rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "zstd" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "zstd" ]]; then wgetdeps "zstd" "https://github.com/facebook/zstd/archive/v1.3.2.tar.gz" & fi # get zlib for rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "zstd" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "zstd" ]]; then wgetdeps "lz4" "https://github.com/lz4/lz4/archive/v1.8.0.tar.gz" & fi # get snappy for rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "snappy" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "snappy" ]]; then wgetdeps "snappy" "https://github.com/google/snappy/archive/1.1.7.tar.gz" & fi # get capstone for syscall-intercept if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "capstone" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "capstone" ]]; then wgetdeps "capstone" "https://github.com/aquynh/capstone/archive/4.0.1.tar.gz" & fi fi # get BMI if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "bmi" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "bmi" ]]; then if [ "${NA_LAYER}" == "bmi" ] || [ "${NA_LAYER}" == "all" ]; then clonedeps "bmi" "https://xgitlab.cels.anl.gov/sds/bmi.git" "81ad0575fc57a69269a16208417cbcbefa51f9ea" & fi fi # get libfabric if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "ofi" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "ofi" ]]; then if [ "${NA_LAYER}" == "ofi" ] || [ "${NA_LAYER}" == "all" ]; then wgetdeps "libfabric" "https://github.com/ofiwg/libfabric/releases/download/v1.8.1/libfabric-1.8.1.tar.bz2" & fi fi # get opa-psm2 if [[ ( "${DEPENDENCY}" == "psm2" ) || ( "${CLUSTER}" == "mogon2" ) || ( ${USE_PSM2} == true ) ]]; then if [[ "${DEPENDENCY}" == "psm2" || "${CLUSTER}" == "mogon2" || ${USE_PSM2} == true ]]; then wgetdeps "psm2" "https://github.com/intel/opa-psm2/archive/PSM2_11.2.86.tar.gz" & fi # get Mercury if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "mercury" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "mercury" ]]; then clonedeps "mercury" "https://github.com/mercury-hpc/mercury" "fd410dfb9852b2b98d21113531f3058f45bfcd64" "--recurse-submodules" & fi # get Argobots if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "argobots" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "argobots" ]]; then wgetdeps "argobots" "https://github.com/pmodels/argobots/archive/v1.0rc1.tar.gz" & fi # get Margo if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "margo" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "margo" ]]; then clonedeps "margo" "https://xgitlab.cels.anl.gov/sds/margo.git" "016dbdce22da3fe4f97b46c20a53bced9370a217" & fi # get rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "rocksdb" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "rocksdb" ]]; then wgetdeps "rocksdb" "https://github.com/facebook/rocksdb/archive/v6.2.2.tar.gz" & fi # get syscall_intercept if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "syscall_intercept" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "syscall_intercept" ]]; then clonedeps "syscall_intercept" "https://github.com/pmem/syscall_intercept.git" "cc3412a2ad39f2e26cc307d5b155232811d7408e" "" "syscall_intercept.patch" & fi # get date if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "date" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "date" ]]; then clonedeps "date" "https://github.com/HowardHinnant/date.git" "e7e1482087f58913b80a20b04d5c58d9d6d90155" & fi Loading Loading
scripts/compile_dep.sh +165 −161 Original line number Diff line number Diff line Loading @@ -42,6 +42,8 @@ optional arguments: --use-bundled-psm2 Build libfabric with the recommended opa-psm2 library. Otherwise system opa-psm2 is linked to libfabric --na_sm_conf_path <PATH> Used by Mercury to store na_sm configurations. Defaults to /tmp -j <COMPILE_CORES>, --compilecores <COMPILE_CORES> number of cores that are used to compile the dependencies defaults to number of available cores Loading @@ -49,14 +51,12 @@ optional arguments: " } list_dependencies() { echo "Available dependencies: " echo -n " Mogon 2: " for d in "${MOGON2_DEPS[@]}" do for d in "${MOGON2_DEPS[@]}"; do echo -n "$d " done echo "" Loading @@ -65,18 +65,19 @@ list_dependencies() { prepare_build_dir() { if [ ! -d "$1/build" ]; then mkdir $1/build mkdir "$1"/build fi rm -rf $1/build/* rm -rf "$1"/build/* } find_cmake() { local CMAKE=`command -v cmake3 || command -v cmake` local CMAKE CMAKE=$(command -v cmake3 || command -v cmake) if [ $? -ne 0 ]; then >&2 echo "ERROR: could not find cmake" echo >&2 "ERROR: could not find cmake" exit 1 fi echo ${CMAKE} echo "${CMAKE}" } PATCH_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" Loading @@ -89,10 +90,10 @@ SOURCE="" INSTALL="" USE_PSM2=false USE_BUNDLED_PSM2=false NA_SM_CONF_PATH=/tmp POSITIONAL=() while [[ $# -gt 0 ]] do while [[ $# -gt 0 ]]; do key="$1" case ${key} in Loading @@ -114,6 +115,11 @@ case ${key} in USE_BUNDLED_PSM2=true shift # past argument ;; --na_sm_conf_path) NA_SM_CONF_PATH="$2" shift # past argument shift # past value ;; -d | --dependency) if [[ -z "$2" ]]; then echo "Missing argument for -d/--dependency option" Loading Loading @@ -159,15 +165,15 @@ SOURCE="$( readlink -mn "${1}" )" INSTALL="$(readlink -mn "${2}")" # deal with optional arguments if [ "${NA_LAYER}" == "" ]; then if [[ "${NA_LAYER}" == "" ]]; then echo "Defaulting NAPLUGIN to 'all'" NA_LAYER="all" fi if [ "${CORES}" == "" ]; then if [[ "${CORES}" == "" ]]; then CORES=$(grep -c ^processor /proc/cpuinfo) echo "CORES = ${CORES} (default)" else if [ ! "${CORES}" -gt "0" ]; then if [[ ! "${CORES}" -gt "0" ]]; then echo "CORES set to ${CORES} which is invalid. Input must be numeric and greater than 0." usage_short Loading @@ -176,7 +182,7 @@ Input must be numeric and greater than 0." echo CORES = "${CORES}" fi fi if [ "${NA_LAYER}" == "bmi" ] || [ "${NA_LAYER}" == "ofi" ] || [ "${NA_LAYER}" == "all" ]; then if [[ "${NA_LAYER}" == "bmi" || "${NA_LAYER}" == "ofi" || "${NA_LAYER}" == "all" ]]; then echo NAPLUGIN = "${NA_LAYER}" else echo "No valid plugin selected" Loading @@ -184,7 +190,7 @@ else exit fi if [[ "${CLUSTER}" != "" ]]; then if [[ ( "${CLUSTER}" == "mogon2" ) ]]; then if [[ "${CLUSTER}" == "mogon2" ]]; then echo CLUSTER = "${CLUSTER}" else echo "${CLUSTER} cluster configuration is invalid. Exiting ..." Loading @@ -198,13 +204,13 @@ fi USE_BMI="-DNA_USE_BMI:BOOL=OFF" USE_OFI="-DNA_USE_OFI:BOOL=OFF" CMAKE=`find_cmake` CMAKE=$(find_cmake) CMAKE="${CMAKE} -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}" echo "Source path = ${SOURCE}"; echo "Install path = ${INSTALL}"; echo "Source path = ${SOURCE}" echo "Install path = ${INSTALL}" mkdir -p ${SOURCE} mkdir -p "${SOURCE}" ######### From now on exits on any error ######## set -e Loading @@ -213,105 +219,104 @@ export CPATH="${CPATH}:${INSTALL}/include" export LIBRARY_PATH="${LIBRARY_PATH}:${INSTALL}/lib:${INSTALL}/lib64" # Set cluster dependencies first if [[ ( "${CLUSTER}" == "mogon2" ) ]]; then if [[ "${CLUSTER}" == "mogon2" ]]; then # compile zstd if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "zstd" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "zstd" ]]; then echo "############################################################ Installing: zstd" CURR=${SOURCE}/zstd/build/cmake prepare_build_dir ${CURR} cd ${CURR}/build $CMAKE -DCMAKE_INSTALL_PREFIX=${INSTALL} -DCMAKE_BUILD_TYPE:STRING=Release .. make -j${CORES} prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX="${INSTALL}" -DCMAKE_BUILD_TYPE:STRING=Release .. make -j"${CORES}" make install fi # build lz4 if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "zstd" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "zstd" ]]; then echo "############################################################ Installing: zstd" CURR=${SOURCE}/lz4 cd ${CURR} make -j${CORES} make DESTDIR=${INSTALL} PREFIX="" install cd "${CURR}" make -j"${CORES}" make DESTDIR="${INSTALL}" PREFIX="" install fi # build snappy if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "snappy" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "snappy" ]]; then echo "############################################################ Installing: snappy" CURR=${SOURCE}/snappy prepare_build_dir ${CURR} cd ${CURR}/build $CMAKE -DCMAKE_INSTALL_PREFIX=${INSTALL} -DCMAKE_BUILD_TYPE:STRING=Release .. make -j${CORES} prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX="${INSTALL}" -DCMAKE_BUILD_TYPE:STRING=Release .. make -j"${CORES}" make install fi # build capstone for syscall-intercept if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "capstone" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "capstone" ]]; then echo "############################################################ Installing: capstone" CURR=${SOURCE}/capstone prepare_build_dir ${CURR} cd ${CURR}/build prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX=/home/vef/gekkofs_deps/install -DCMAKE_BUILD_TYPE:STRING=Release .. make -j${CORES} install make -j"${CORES}" install fi fi # build bmi if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "bmi" ) ]]; then if [[ ( "${NA_LAYER}" == "bmi" ) || ( "${NA_LAYER}" == "all" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "bmi" ]]; then if [[ "${NA_LAYER}" == "bmi" || "${NA_LAYER}" == "all" ]]; then USE_BMI="-DNA_USE_BMI:BOOL=ON" echo "############################################################ Installing: BMI" # BMI CURR=${SOURCE}/bmi prepare_build_dir ${CURR} cd ${CURR} prepare_build_dir "${CURR}" cd "${CURR}" ./prepare cd ${CURR}/build CFLAGS="${CFLAGS} -w" ../configure --prefix=${INSTALL} --enable-shared --disable-static --disable-karma --enable-bmi-only --enable-fast --disable-strict make -j${CORES} cd "${CURR}"/build CFLAGS="${CFLAGS} -w" ../configure --prefix="${INSTALL}" --enable-shared --disable-static --disable-karma --enable-bmi-only --enable-fast --disable-strict make -j"${CORES}" make install fi fi # build ofi if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "ofi" ) ]]; then if [[ ( "${NA_LAYER}" == "ofi" ) || ( "${NA_LAYER}" == "all" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "ofi" ]]; then if [[ "${NA_LAYER}" == "ofi" || "${NA_LAYER}" == "all" ]]; then USE_OFI="-DNA_USE_OFI:BOOL=ON" echo "############################################################ Installing: LibFabric" #libfabric CURR=${SOURCE}/libfabric prepare_build_dir ${CURR} cd ${CURR}/build prepare_build_dir "${CURR}" cd "${CURR}"/build # decide if to build with psm2 if [[ ( "${CLUSTER}" == "mogon2" ) || [[ ( ${USE_PSM2} == true ) && ( ${USE_BUNDLED_PSM2} == true ) ]] ]]; then ../configure --prefix=${INSTALL} --enable-tcp=yes --enable-psm2=yes --with-psm2-src=${SOURCE}/psm2 elif [[ ( ${USE_PSM2} == true ) && ( ${USE_BUNDLED_PSM2} == false ) ]]; then ../configure --prefix=${INSTALL} --enable-tcp=yes --enable-psm2=yes if [[ "${CLUSTER}" == "mogon2" || (${USE_PSM2} == true && ${USE_BUNDLED_PSM2} == true) ]]; then ../configure --prefix="${INSTALL}" --enable-tcp=yes --enable-psm2=yes --with-psm2-src="${SOURCE}"/psm2 elif [[ ${USE_PSM2} == true && ${USE_BUNDLED_PSM2} == false ]]; then ../configure --prefix="${INSTALL}" --enable-tcp=yes --enable-psm2=yes else ../configure --prefix=${INSTALL} --enable-tcp=yes ../configure --prefix="${INSTALL}" --enable-tcp=yes fi make -j${CORES} make -j"${CORES}" make install [ "${PERFORM_TEST}" ] && make check fi fi # Mercury if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "mercury" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "mercury" ]]; then if [ "$NA_LAYER" == "bmi" ] || [ "$NA_LAYER" == "all" ]; then if [[ "${NA_LAYER}" == "bmi" || "${NA_LAYER}" == "all" ]]; then USE_BMI="-DNA_USE_BMI:BOOL=ON" fi if [ "$NA_LAYER" == "ofi" ] || [ "$NA_LAYER" == "all" ]; then if [[ "${NA_LAYER}" == "ofi" || "${NA_LAYER}" == "all" ]]; then USE_OFI="-DNA_USE_OFI:BOOL=ON" fi echo "############################################################ Installing: Mercury" CURR=${SOURCE}/mercury prepare_build_dir ${CURR} cd ${CURR}/build prepare_build_dir "${CURR}" cd "${CURR}"/build PKG_CONFIG_PATH=${INSTALL}/lib/pkgconfig $CMAKE \ -DCMAKE_BUILD_TYPE:STRING=Release \ -DBUILD_TESTING:BOOL=ON \ Loading @@ -321,71 +326,70 @@ if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "mercury" ) ]]; then -DMERCURY_USE_BOOST_PP:BOOL=ON \ -DMERCURY_USE_EAGER_BULK:BOOL=ON \ -DBUILD_SHARED_LIBS:BOOL=ON \ -DNA_SM_TMP_DIRECTORY:STRING="/dev/shm" \ -DCMAKE_INSTALL_PREFIX=${INSTALL} \ -DNA_SM_TMP_DIRECTORY:STRING="${NA_SM_CONF_PATH}" \ -DCMAKE_INSTALL_PREFIX="${INSTALL}" \ ${USE_BMI} ${USE_OFI} \ .. make -j${CORES} make -j"${CORES}" make install fi # Argobots if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "argobots" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "argobots" ]]; then echo "############################################################ Installing: Argobots" CURR=${SOURCE}/argobots prepare_build_dir ${CURR} cd ${CURR} prepare_build_dir "${CURR}" cd "${CURR}" ./autogen.sh cd ${CURR}/build ../configure --prefix=${INSTALL} --enable-perf-opt --disable-checks make -j${CORES} cd "${CURR}"/build ../configure --prefix="${INSTALL}" --enable-perf-opt --disable-checks make -j"${CORES}" make install [ "${PERFORM_TEST}" ] && make check fi # Margo if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "margo" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "margo" ]]; then echo "############################################################ Installing: Margo" CURR=${SOURCE}/margo prepare_build_dir ${CURR} cd ${CURR} prepare_build_dir "${CURR}" cd "${CURR}" ./prepare.sh cd ${CURR}/build ../configure --prefix=${INSTALL} PKG_CONFIG_PATH=${INSTALL}/lib/pkgconfig CFLAGS="${CFLAGS} -Wall -O3" make -j${CORES} cd "${CURR}"/build ../configure --prefix="${INSTALL}" PKG_CONFIG_PATH="${INSTALL}"/lib/pkgconfig CFLAGS="${CFLAGS} -Wall -O3" make -j"${CORES}" make install [ "${PERFORM_TEST}" ] && make check fi # Rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "rocksdb" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "rocksdb" ]]; then echo "############################################################ Installing: Rocksdb" CURR=${SOURCE}/rocksdb cd ${CURR} cd "${CURR}" make clean USE_RTTI=1 make -j${CORES} static_lib INSTALL_PATH=${INSTALL} make install USE_RTTI=1 make -j"${CORES}" static_lib INSTALL_PATH="${INSTALL}" make install fi # syscall_intercept if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "syscall_intercept" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "syscall_intercept" ]]; then echo "############################################################ Installing: Syscall_intercept" CURR=${SOURCE}/syscall_intercept prepare_build_dir ${CURR} cd ${CURR}/build $CMAKE -DCMAKE_INSTALL_PREFIX=${INSTALL} -DCMAKE_BUILD_TYPE:STRING=Debug -DBUILD_EXAMPLES:BOOL=OFF -DBUILD_TESTS:BOOK=OFF .. prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX="${INSTALL}" -DCMAKE_BUILD_TYPE:STRING=Debug -DBUILD_EXAMPLES:BOOL=OFF -DBUILD_TESTS:BOOK=OFF .. make install fi # date if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "date" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "date" ]]; then echo "############################################################ Installing: date" CURR=${SOURCE}/date prepare_build_dir ${CURR} cd ${CURR}/build $CMAKE -DCMAKE_INSTALL_PREFIX=${INSTALL} -DCMAKE_CXX_STANDARD:STRING=14 -DUSE_SYSTEM_TZ_DB:BOOL=ON -DBUILD_SHARED_LIBS:BOOL=ON .. prepare_build_dir "${CURR}" cd "${CURR}"/build $CMAKE -DCMAKE_INSTALL_PREFIX="${INSTALL}" -DCMAKE_CXX_STANDARD:STRING=14 -DUSE_SYSTEM_TZ_DB:BOOL=ON -DBUILD_SHARED_LIBS:BOOL=ON .. make install fi echo "Done"
scripts/dl_dep.sh +87 −87 Original line number Diff line number Diff line Loading @@ -19,8 +19,9 @@ MOGON2_DEPS=( # Stop all backround jobs on interruption. # "kill -- -$$" sends a SIGTERM to the whole process group, # thus killing also descendants. trap "trap - SIGTERM && kill -- -$$" SIGINT SIGTERM # Use single quotes, otherwise this expands now rather than when signalled. # See shellcheck SC2064. trap 'trap - SIGTERM && kill -- -$$' SIGINT SIGTERM exit_child() { if [ ! $? -eq 0 ]; then Loading @@ -39,8 +40,7 @@ list_dependencies() { echo "Available dependencies: " echo -n " Mogon 2: " for d in "${MOGON2_DEPS[@]}" do for d in "${MOGON2_DEPS[@]}"; do echo -n "$d " done echo "" Loading @@ -59,20 +59,20 @@ clonedeps() { local ACTION if [ -d "${SOURCE}/${FOLDER}/.git" ]; then cd ${SOURCE}/${FOLDER} && git fetch -q if [[ -d "${SOURCE}/${FOLDER}/.git" ]]; then cd "${SOURCE}/${FOLDER}" && git fetch -q ACTION="Pulled" else git clone ${COMMON_GIT_FLAGS} ${GIT_FLAGS} -- "${REPO}" "${SOURCE}/${FOLDER}" git clone "${COMMON_GIT_FLAGS}" "${GIT_FLAGS}" -- "${REPO}" "${SOURCE}/${FOLDER}" ACTION="Cloned" fi # fix the version cd "${SOURCE}/${FOLDER}" && git checkout -qf ${COMMIT} cd "${SOURCE}/${FOLDER}" && git checkout -qf "${COMMIT}" echo "${ACTION} ${FOLDER} [$COMMIT]" # apply patch if provided if [ ! -z ${PATCH} ]; then git apply --verbose ${PATCH_DIR}/${PATCH} if [[ -n "${PATCH}" ]]; then git apply --verbose "${PATCH_DIR}/${PATCH}" fi } Loading @@ -83,16 +83,17 @@ wgetdeps() { FOLDER=$1 URL=$2 if [ -d "${SOURCE}/${FOLDER}" ]; then rm -rf "${SOURCE}/${FOLDER}" if [[ -d "${SOURCE}/${FOLDER}" ]]; then # SC2115 Use "${var:?}" to ensure this never expands to /* . rm -rf "${SOURCE:?}/${FOLDER:?}" fi mkdir -p "${SOURCE}/${FOLDER}" cd ${SOURCE} cd "${SOURCE}" FILENAME=$(basename $URL) if [ -f "${SOURCE}/$FILENAME" ]; then if [[ -f "${SOURCE}/$FILENAME" ]]; then rm -f "${SOURCE}/$FILENAME" fi curl ${COMMON_CURL_FLAGS} "$URL" || error_exit "Failed to download ${URL}" $? curl "${COMMON_CURL_FLAGS}" "$URL" || error_exit "Failed to download ${URL}" $? tar -xf "$FILENAME" --directory "${SOURCE}/${FOLDER}" --strip-components=1 rm -f "$FILENAME" echo "Downloaded ${FOLDER}" Loading Loading @@ -134,8 +135,7 @@ optional arguments: } POSITIONAL=() while [[ $# -gt 0 ]] do while [[ $# -gt 0 ]]; do key="$1" case ${key} in Loading Loading @@ -188,13 +188,13 @@ fi SOURCE="$(readlink -mn "${1}")" # optional arguments if [ "${NA_LAYER}" == "" ]; then if [[ "${NA_LAYER}" == "" ]]; then echo "Defaulting NAPLUGIN to 'all'" NA_LAYER="all" fi # sanity checks if [[ ( "${NA_LAYER}" == "bmi" ) || ( "${NA_LAYER}" == "ofi" ) || ( "${NA_LAYER}" == "all" ) ]]; then if [[ "${NA_LAYER}" == "bmi" || "${NA_LAYER}" == "ofi" || "${NA_LAYER}" == "all" ]]; then echo NAPLUGIN = "${NA_LAYER}" else echo "No valid plugin selected" Loading @@ -202,7 +202,7 @@ else exit fi if [[ "${CLUSTER}" != "" ]]; then if [[ ( "${CLUSTER}" == "mogon2" ) ]]; then if [[ "${CLUSTER}" == "mogon2" ]]; then echo CLUSTER = "${CLUSTER}" else echo "${CLUSTER} cluster configuration is invalid. Exiting ..." Loading @@ -215,78 +215,78 @@ fi echo "Source path is set to \"${SOURCE}\"" mkdir -p ${SOURCE} mkdir -p "${SOURCE}" # get cluster dependencies if [[ ( "${CLUSTER}" == "mogon2" ) ]]; then if [[ "${CLUSTER}" == "mogon2" ]]; then # get zstd for fast compression in rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "zstd" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "zstd" ]]; then wgetdeps "zstd" "https://github.com/facebook/zstd/archive/v1.3.2.tar.gz" & fi # get zlib for rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "zstd" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "zstd" ]]; then wgetdeps "lz4" "https://github.com/lz4/lz4/archive/v1.8.0.tar.gz" & fi # get snappy for rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "snappy" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "snappy" ]]; then wgetdeps "snappy" "https://github.com/google/snappy/archive/1.1.7.tar.gz" & fi # get capstone for syscall-intercept if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "capstone" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "capstone" ]]; then wgetdeps "capstone" "https://github.com/aquynh/capstone/archive/4.0.1.tar.gz" & fi fi # get BMI if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "bmi" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "bmi" ]]; then if [ "${NA_LAYER}" == "bmi" ] || [ "${NA_LAYER}" == "all" ]; then clonedeps "bmi" "https://xgitlab.cels.anl.gov/sds/bmi.git" "81ad0575fc57a69269a16208417cbcbefa51f9ea" & fi fi # get libfabric if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "ofi" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "ofi" ]]; then if [ "${NA_LAYER}" == "ofi" ] || [ "${NA_LAYER}" == "all" ]; then wgetdeps "libfabric" "https://github.com/ofiwg/libfabric/releases/download/v1.8.1/libfabric-1.8.1.tar.bz2" & fi fi # get opa-psm2 if [[ ( "${DEPENDENCY}" == "psm2" ) || ( "${CLUSTER}" == "mogon2" ) || ( ${USE_PSM2} == true ) ]]; then if [[ "${DEPENDENCY}" == "psm2" || "${CLUSTER}" == "mogon2" || ${USE_PSM2} == true ]]; then wgetdeps "psm2" "https://github.com/intel/opa-psm2/archive/PSM2_11.2.86.tar.gz" & fi # get Mercury if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "mercury" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "mercury" ]]; then clonedeps "mercury" "https://github.com/mercury-hpc/mercury" "fd410dfb9852b2b98d21113531f3058f45bfcd64" "--recurse-submodules" & fi # get Argobots if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "argobots" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "argobots" ]]; then wgetdeps "argobots" "https://github.com/pmodels/argobots/archive/v1.0rc1.tar.gz" & fi # get Margo if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "margo" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "margo" ]]; then clonedeps "margo" "https://xgitlab.cels.anl.gov/sds/margo.git" "016dbdce22da3fe4f97b46c20a53bced9370a217" & fi # get rocksdb if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "rocksdb" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "rocksdb" ]]; then wgetdeps "rocksdb" "https://github.com/facebook/rocksdb/archive/v6.2.2.tar.gz" & fi # get syscall_intercept if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "syscall_intercept" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "syscall_intercept" ]]; then clonedeps "syscall_intercept" "https://github.com/pmem/syscall_intercept.git" "cc3412a2ad39f2e26cc307d5b155232811d7408e" "" "syscall_intercept.patch" & fi # get date if [[ ( "${DEPENDENCY}" == "" ) || ( "${DEPENDENCY}" == "date" ) ]]; then if [[ "${DEPENDENCY}" == "" || "${DEPENDENCY}" == "date" ]]; then clonedeps "date" "https://github.com/HowardHinnant/date.git" "e7e1482087f58913b80a20b04d5c58d9d6d90155" & fi Loading