Add tool to update GMSL

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
This commit is contained in:
Timothy Gu 2014-04-26 21:07:00 -07:00
parent 1fb8ff6fa6
commit 53b4442df6
1 changed files with 45 additions and 0 deletions

45
tools/update-gmsl Executable file
View File

@ -0,0 +1,45 @@
#!/bin/sh
# This file is part of MXE.
# See index.html for further information.
#
# Script to automatically update GNU Make Standard Library
# (http://gmsl.sourceforge.net/)
clean(){
rm -rf tmp-gmsl.tar.gz gmsl-*
}
# Ported from main Makefile
SED='sed'
SORT='sort'
if [ gsed --help >/dev/null 2>&1 ]; then
SED='gsed'
fi
if [ gsort --help >/dev/null 2>&1 ]; then
SED='gsort'
fi
WGET="wget --no-check-certificate
--user-agent=$(wget --version |
$SED -n 's,GNU \(Wget\) \([0-9.]*\).*,\1/\2,p')"
# Current GMSL version. E.g. '1.1.5'
current_version=$(grep 'gmsl_version.*=' 'ext/__gmsl' | \
cut -d'=' -f2 | $SED -e 's/^ //' -e 's/ *$//' | tr ' ' '.')
# Latest GMSL version fetched from SourceForge
latest_version=$(
$WGET -q -O- http://sourceforge.net/projects/gmsl/files/GNU%20Make%20Standard%20Library/ | \
$SED -n 's,.*/v\([0-9][^"]*\)/".*,\1,p' | \
$SORT -V | \
tail -1)
clean
if [ $current_version != $latest_version ]; then
$WGET -q -O tmp-gmsl.tar.gz \
"http://downloads.sourceforge.net/project/gmsl/GNU%20Make%20Standard%20Library/v${latest_version}/gmsl-${latest_version}.tar.gz"
tar xzf tmp-gmsl.tar.gz
rm -f ext/*gmsl doc/gmsl*
cp -a gmsl-${latest_version}/gmsl ext/
cp -a gmsl-${latest_version}/__gmsl ext/
cp -a gmsl-${latest_version}/index.html doc/gmsl.html
clean
fi