megamgr/build_orig.sh
Mario Fetka 43254d00af Bump
2017-11-10 16:36:24 +01:00

86 lines
2.2 KiB
Bash

#!/bin/bash
# the directory of the script
DIR=`cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd`
echo "Working directory $DIR"
# the temp directory used, within $DIR
WORK_DIR=`mktemp -d -p "$DIR"`
echo "Creating temp working directory $WORK_DIR"
# deletes the temp directory
function cleanup {
rm -rf "$WORK_DIR"
echo "Deleted temp working directory $WORK_DIR"
}
# register the cleanup function to be called on the EXIT signal
trap cleanup EXIT
# Download Files specified in files.diz
while IFS=! read type app version outputfile url md5
do
echo "Downloading $app Version: $version"
#use -O for output file. define $outputfile yourself
wget --no-check-certificate --tries=1 -O $DIR/../$outputfile --timeout=5 "$url"
# use $(..) instead of backticks.
calculated_md5=$(md5sum "$DIR/../$outputfile" | cut -f 1 -d " ")
# compare md5
case "$calculated_md5" in
"$md5" )
echo "$DIR/../$outputfile md5 ok"
;;
*)
echo "$DIR/../$outputfile md5 NOT ok"
exit 1
;;
esac
done < "$DIR/files.diz"
# Extract to specified dir and set some variables
while IFS=! read type app version outputfile url md5
do
mkdir -p $WORK_DIR/${type}
pushd $WORK_DIR/${type}
unzip $DIR/../$outputfile
popd
mkdir -p $WORK_DIR/${app}-${version}/${type}
dos2unix $WORK_DIR/${type}/*.txt
mv $WORK_DIR/${type}/*.txt $WORK_DIR/${app}-${version}
mv $WORK_DIR/${type}/*.bin $WORK_DIR/${app}-${version}/${type}
pushd $WORK_DIR/${app}-${version}/${type}
case "${type}" in
"amd64" )
rm -f opt/MegaRAID/MegaCli/MegaCli
;;
"i386" )
rm -f opt/MegaRAID/MegaCli/MegaCli64
rm -f opt/MegaRAID/MegaCli/libstorelibir-2.so*
;;
*)
echo "Wrong arch"
exit 1
;;
esac
echo "${app}_${version}.orig.tar.gz" > $WORK_DIR/filename.txt
echo "${app}-${version}" > $WORK_DIR/dirname.txt
echo "${version}" > $WORK_DIR/version.txt
popd
done < "$DIR/files.diz"
FILENAME=`cat $WORK_DIR/filename.txt`
DIRNAME=`cat $WORK_DIR/dirname.txt`
echo "Creating $DIR/../$FILENAME "
pushd $WORK_DIR
tar -czf $DIR/../$FILENAME $DIRNAME
popd
#exit 1
VER=`cat $WORK_DIR/version.txt`
echo "Importing $DIR/../$FILENAME as $VER into git"
cleanup
gbp import-orig --pristine-tar -u $VER $DIR/../$FILENAME
exit 0