apply-all.sh (1080B)
1 #!/bin/bash 2 3 # 4 # This file applies optional Autoconf patches for better MSys2 and new 5 # compiler compatibility. 6 # 7 # Based on Debian SID baseline files as of April 2023. 8 # 9 10 patchesdir=$(dirname $BASH_SOURCE) || exit 2 11 test -n "$patchesdir" || exit 2 12 cd "$patchesdir" || exit 2 13 patchesdir=$(pwd) || exit 2 14 15 patches=( 16 # No patches currently 17 ) 18 19 failed=( ) 20 21 cd "${patchesdir}/../.." || exit 1 22 23 patch_params="-Nf -p1 --no-backup-if-mismatch -r - --read-only=fail" 24 25 for patch in ${patches[@]}; do 26 patchfile="${patchesdir}/${patch}" 27 echo "*** Applying $patch..." 28 if echo "$patch_data" | patch $patch_params -i "$patchfile" 29 then 30 echo "** $patch successfully applied." 31 else 32 echo "** $patch failed." 33 failed+=("$patch") 34 fi 35 unset patch_data 36 done 37 38 39 addl_file="c_backported.m4" 40 echo "*** Copying $addl_file" 41 cp -fT "${patchesdir}/$addl_file" "m4/$addl_file" || exit 2 42 echo "$addl_file copied." 43 44 echo '' 45 46 if [[ -n "${failed[@]}" ]]; then 47 printf '* Failed patch: %s\n' "${failed[@]}" >&2 48 exit 2 49 else 50 echo "* All patches have been successfully applied." 51 fi 52 53 exit 0