aboutsummaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorAndrew Pinski <apinski@marvell.com>2021-08-24 05:56:59 +0000
committerAndrew Pinski <apinski@marvell.com>2021-08-24 08:09:53 +0000
commit0deabebedd16c9519bfb1dfbff303c2d9bd701ee (patch)
tree245fce087f413b4cec17882e5c2186e4e0866850 /contrib
parentf8977166135de09fe36a3b57cc11daa67587604e (diff)
downloadgcc-0deabebedd16c9519bfb1dfbff303c2d9bd701ee.zip
gcc-0deabebedd16c9519bfb1dfbff303c2d9bd701ee.tar.gz
gcc-0deabebedd16c9519bfb1dfbff303c2d9bd701ee.tar.bz2
Fix a few problems with download_prerequisites.
There are a few problems with download_prerequisites are described in PR 82704. The first is on busy-box version of shasum and md5sum the extended option --check don't exist so just use -c. The second issue is the code for which shasum program to use is included twice and is different. So move which program to use for the checksum after argument parsing. The last issue is --md5 option has been broken for sometime now as the program is named md5sum and not just md5. Nobody updated switch table to be correct. contrib/ChangeLog: PR other/82704 * download_prerequisites: Fix issues with --md5 and --sha512 options.
Diffstat (limited to 'contrib')
-rwxr-xr-xcontrib/download_prerequisites59
1 files changed, 30 insertions, 29 deletions
diff --git a/contrib/download_prerequisites b/contrib/download_prerequisites
index 51e715f..8f69b61 100755
--- a/contrib/download_prerequisites
+++ b/contrib/download_prerequisites
@@ -46,18 +46,6 @@ verify=1
force=0
OS=$(uname)
-case $OS in
- "Darwin"|"FreeBSD"|"DragonFly"|"AIX")
- chksum='shasum -a 512 --check'
- ;;
- "OpenBSD")
- chksum='sha512 -c'
- ;;
- *)
- chksum='sha512sum -c'
- ;;
-esac
-
if type wget > /dev/null ; then
fetch='wget'
else
@@ -113,7 +101,7 @@ do
done
unset arg
-# Emulate Linux's 'md5 --check' on macOS
+# Emulate Linux's 'md5sum --check' on macOS
md5_check() {
# Store the standard input: a line from contrib/prerequisites.md5:
md5_checksum_line=$(cat -)
@@ -162,26 +150,10 @@ do
verify=0
;;
--sha512)
- case $OS in
- "Darwin")
- chksum='shasum -a 512 --check'
- ;;
- *)
- chksum='sha512sum --check'
- ;;
- esac
chksum_extension='sha512'
verify=1
;;
--md5)
- case $OS in
- "Darwin")
- chksum='md5_check'
- ;;
- *)
- chksum='md5 --check'
- ;;
- esac
chksum_extension='md5'
verify=1
;;
@@ -212,6 +184,35 @@ done
[ "x${argnext}" = x ] || die "Missing argument for option --${argnext}"
unset arg argnext
+case $chksum_extension in
+ sha512)
+ case $OS in
+ "Darwin"|"FreeBSD"|"DragonFly"|"AIX")
+ chksum='shasum -a 512 --check'
+ ;;
+ "OpenBSD")
+ chksum='sha512 -c'
+ ;;
+ *)
+ chksum='sha512sum -c'
+ ;;
+ esac
+ ;;
+ md5)
+ case $OS in
+ "Darwin")
+ chksum='md5_check'
+ ;;
+ *)
+ chksum='md5sum -c'
+ ;;
+ esac
+ ;;
+ *)
+ die "Unkown checksum $chksum_extension"
+ ;;
+esac
+
[ -e ./gcc/BASE-VER ] \
|| die "You must run this script in the top-level GCC source directory"