Files
MX_Pmodule/bin/manage_variants

33 lines
742 B
Bash
Executable File

#!/bin/bash
declare buildblock=$1
declare variants=$2
declare -r OS=$(uname -s)
# File format example
# 1.10.2 Linux,Darwin unstable gcc/4.8.5
declare -a toks=()
declare version=''
declare oss=''
declare release=''
declare -a dependencies=()
while read -a toks; do
# skip comment and empty line
(( ${#toks[@]} == 0 )) && continue
[[ "${toks[0]:0:1}" == "#" ]] && continue
version=${toks[0]}
oss=${toks[1]}
release=${toks[2]}
dependencies=( ${toks[@]:3} )
[[ "${oss}" =~ "${OS}" ]] || continue
"${buildblock}" "${version}" --release=${release} "${dependencies[@]/#/--with=}"
if [[ $? != 0 ]]; then
echo "Failed building: ${version} --release=${release} ${dependencies[@]/#/--with=}" 1>&2
exit 42
fi
done < "${variants}"