55 lines
1.6 KiB
Bash
55 lines
1.6 KiB
Bash
|
set -eu
|
||
|
set -o pipefail
|
||
|
|
||
|
LAST_VERSION="1.61.0"
|
||
|
NEW_VERSION="1.62.0"
|
||
|
|
||
|
: '
|
||
|
|
||
|
manual intervention:
|
||
|
|
||
|
- change/upgrade icu version used by boost_regex
|
||
|
- new libraries available to build?
|
||
|
|
||
|
'
|
||
|
|
||
|
CLEAN="${CLEAN:-false}"
|
||
|
|
||
|
|
||
|
if [[ ${CLEAN} ]]; then
|
||
|
rm -rf scripts/boost/${NEW_VERSION}
|
||
|
fi
|
||
|
|
||
|
mkdir scripts/boost/${NEW_VERSION}
|
||
|
cp -r scripts/boost/${LAST_VERSION}/. scripts/boost/${NEW_VERSION}/
|
||
|
perl -i -p -e "s/MASON_VERSION=${LAST_VERSION}/MASON_VERSION=${NEW_VERSION}/g;" scripts/boost/${NEW_VERSION}/base.sh
|
||
|
export BOOST_VERSION=${NEW_VERSION//./_}
|
||
|
export CACHE_PATH="mason_packages/.cache"
|
||
|
mkdir -p "${CACHE_PATH}"
|
||
|
if [[ ! -f ${CACHE_PATH}/boost-${NEW_VERSION} ]]; then
|
||
|
curl --retry 3 -f -S -L http://downloads.sourceforge.net/project/boost/boost/${NEW_VERSION}/boost_${BOOST_VERSION}.tar.bz2 -o ${CACHE_PATH}/boost-${NEW_VERSION}
|
||
|
fi
|
||
|
|
||
|
NEW_SHASUM=$(git hash-object ${CACHE_PATH}/boost-${NEW_VERSION})
|
||
|
|
||
|
perl -i -p -e "s/BOOST_SHASUM=(.*)/BOOST_SHASUM=${NEW_SHASUM}/g;" scripts/boost/${NEW_VERSION}/base.sh
|
||
|
|
||
|
for lib in $(find scripts/ -maxdepth 1 -type dir -name 'boost_lib*' -print); do
|
||
|
if [[ -d $lib/${LAST_VERSION} ]]; then
|
||
|
if [[ ${CLEAN} ]]; then
|
||
|
rm -rf $lib/${NEW_VERSION}
|
||
|
fi
|
||
|
mkdir $lib/${NEW_VERSION}
|
||
|
cp -r $lib/${LAST_VERSION}/. $lib/${NEW_VERSION}/
|
||
|
else
|
||
|
echo "skipping creating package for $lib"
|
||
|
fi
|
||
|
done
|
||
|
|
||
|
./mason trigger boost ${NEW_VERSION}
|
||
|
for lib in $(find scripts/ -maxdepth 1 -type dir -name 'boost_lib*' -print); do
|
||
|
echo "running ./mason build $(basename $lib) ${NEW_VERSION}"
|
||
|
./mason trigger $(basename $lib) ${NEW_VERSION}
|
||
|
done
|
||
|
|