diff --git a/repack.sh b/repack.sh index adea2069..4e023429 100755 --- a/repack.sh +++ b/repack.sh @@ -5,40 +5,47 @@ set -e BOOST_VERSION=1.67.0 function finish { - rm -rf ${tmp_dir} + rm -rf "${tmp_dir}" } trap finish EXIT -out_dir=$(pwd) -patch_dir=$(pwd)/patch/${BOOST_VERSION} -tmp_dir=$(mktemp -d) +undotted_BOOST_VERSION="${BOOST_VERSION//\./_}" +out_dir="$(pwd)" +patch_dir="$(pwd)/patch/${BOOST_VERSION}" +tmp_dir="$(mktemp -d)" +extract_dir="${tmp_dir}/extract" +orig_boost_file="${tmp_dir}/boost_${BOOST_VERSION}.tar.bz2" echo "Downloading Boost ${BOOST_VERSION}..." -curl -L "https://boostorg.jfrog.io/artifactory/main/release/${BOOST_VERSION}/source/boost_${BOOST_VERSION//\./_}.tar.bz2" > ${tmp_dir}/boost_${BOOST_VERSION}.tar.bz2 +curl -L "https://boostorg.jfrog.io/artifactory/main/release/${BOOST_VERSION}/source/boost_${undotted_BOOST_VERSION}.tar.bz2" -o "$orig_boost_file" -mkdir -p ${tmp_dir}/extract -cd ${tmp_dir}/extract +mkdir -p "$extract_dir" +cd "$extract_dir" echo "Extracting archive..." -tar xf ${tmp_dir}/boost_${BOOST_VERSION}.tar.bz2 +tar -xjf "$orig_boost_file" cd boost_* if [ -d "${patch_dir}" ]; then mkdir patch - for f in ${patch_dir}/*.patch; do + for f in "${patch_dir}"/*.patch; do echo "Applying patch ${f}..." - git apply --verbose $f - cp $f patch/ + git apply --verbose "$f" + cp "$f" patch/ done fi echo "Removing extra files..." -find . -name "doc" -print0 | xargs -0 -- rm -rf -find . -name "*.htm*" -delete -find . -name "*.png" -delete -find . -name "*.bmp" -delete -find . -name "*.jpg" -delete +find . \ + \( \ + -name "doc" -prune -or \ + -name "*.htm*" -or \ + -name "*.png" -or \ + -name "*.bmp" -or \ + -name "*.jpg" \ + \) \ + -exec rm -rf {} + cd .. echo "Recompressing archive..." -tar cfJ ${out_dir}/boost_${BOOST_VERSION//./_}.tar.xz boost_* +tar -I "xz -z9evT0" -cf "${out_dir}/boost_${undotted_BOOST_VERSION}.tar.xz" boost_*