104 lines
3 KiB
Bash
104 lines
3 KiB
Bash
#! /bin/sh
|
|
|
|
# This script is used to generate the codeblocks orig tarball for a release build used for this
|
|
# package.
|
|
# It is copied from ubuntus codeblocks-package.
|
|
|
|
# Some variables to make maintaining this script easier
|
|
CODEBLOCKS_VERSION="20.03-1"
|
|
CODEBLOCKS_URL_DIR="https://sourceforge.net/projects/codeblocks/files/Sources/20.03/"
|
|
CODEBLOCKS_TARBALL="codeblocks_${CODEBLOCKS_VERSION}.tar.gz"
|
|
CODEBLOCKS_TARBALL_CHECKSUM="4b450f620d9f1875ecf6882ab3c11402"
|
|
|
|
USAGE='This script is used to generate the orig tarball used in building \
|
|
Debian packages for codeblocks-$CODEBLOCKS_VERSION. \
|
|
Usage: get-orig-source [OPTION] \
|
|
\
|
|
-h, --help Display this help message. \
|
|
--keep-upstream-files Keep downloaded files. \
|
|
--keep-orig-dir Keep the generated orig directory.
|
|
'
|
|
|
|
while [ "$#" -gt "0" ]
|
|
do
|
|
case "$1" in
|
|
--keep-upstream-files)
|
|
KEEP_UPSTREAM_FILES=1
|
|
shift
|
|
;;
|
|
--keep-orig-dir)
|
|
KEEP_ORIG_DIR=1
|
|
shift
|
|
;;
|
|
-h|--help|*)
|
|
echo >&2 "${USAGE}"
|
|
exit 1
|
|
;;
|
|
esac
|
|
done
|
|
|
|
set -e
|
|
|
|
# Function to download files. Takes two parameters, the directory name of the
|
|
# url to use, and the filename of the file.
|
|
download() {
|
|
local url="$1/$2"
|
|
if [ ! -f $2 ] ; then
|
|
# Download the tarball
|
|
wget $url
|
|
fi
|
|
}
|
|
|
|
# Function to verify the checksum. Takes two parameters, the file to compute the
|
|
# checksum for and the checksum it should be.
|
|
verify_checksum() {
|
|
local checksum=`md5sum $1 | cut -d ' ' -f 1`
|
|
|
|
if [ $2 != $checksum ] ; then
|
|
echo "Checksum verification failed. Checksum was $checksum
|
|
Expected checksum $2"
|
|
exit 1
|
|
else
|
|
echo "Checksum verified. Checksum is $2"
|
|
fi
|
|
}
|
|
|
|
# The rest is our main functions.
|
|
#Download the files
|
|
download $CODEBLOCKS_URL_DIR $CODEBLOCKS_TARBALL
|
|
|
|
# Verify the checksums
|
|
#verify_checksum $CODEBLOCKS_TARBALL $CODEBLOCKS_TARBALL_CHECKSUM
|
|
|
|
# Unpack the upstream source
|
|
if [ ! -d codeblocks-$CODEBLOCKS_VERSION-release -a ! -d codeblocks-$CODEBLOCKS_VERSION ]; then
|
|
echo "Unpacking upstream source."
|
|
tar jxf $CODEBLOCKS_TARBALL
|
|
# mv codeblocks-$CODEBLOCKS_VERSION-release codeblocks-$CODEBLOCKS_VERSION
|
|
else
|
|
echo -n "Please remove or move codeblocks-$CODEBLOCKS_VERSION-release and codeblocks-$CODEBLOCKS_VERSION "
|
|
echo "directory."
|
|
exit 1
|
|
fi
|
|
|
|
# Pack into a gzipped tarball
|
|
if [ ! -f codeblocks-$CODEBLOCKS_VERSION ]; then
|
|
echo "Removing all prebuilt windows binaries"
|
|
find codeblocks-$CODEBLOCKS_VERSION -name "*.dll" | xargs rm -f
|
|
echo "Creating codeblocks_$CODEBLOCKS_VERSION orig tarball."
|
|
tar --owner=root --group=root -cjf codeblocks_$CODEBLOCKS_VERSION.orig.tar.bz2 codeblocks-$CODEBLOCKS_VERSION
|
|
else
|
|
echo "Please remove or move codeblocks_$CODEBLOCKS_VERSION.orig.tar.gz."
|
|
exit 1
|
|
fi
|
|
|
|
# Perform cleanup
|
|
if [ -z "$KEEP_ORIG_DIR" ]; then
|
|
echo "Removing extracted directory."
|
|
rm -rf codeblocks-$CODEBLOCKS_VERSION
|
|
fi
|
|
if [ -z "$KEEP_UPSTREAM_FILES" ]; then
|
|
echo "Removing upstream files."
|
|
rm $CODEBLOCKS_TARBALL
|
|
fi
|