12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- #!/bin/sh
- if [ ! -e "version.py" ]; then
- echo "This script should be ran from the root folder of the Godot repository."
- exit 1
- fi
- while getopts "h?sv:g:" opt; do
- case "$opt" in
- h|\?)
- echo "Usage: $0 [OPTIONS...]"
- echo
- echo " -s script friendly file name (godot.tar.gz)"
- echo " -v godot version for file name (e.g. 4.0-stable)"
- echo " -g git treeish to archive (e.g. master)"
- echo
- exit 1
- ;;
- s)
- script_friendly_name=1
- ;;
- v)
- godot_version=$OPTARG
- ;;
- g)
- git_treeish=$OPTARG
- ;;
- esac
- done
- if [ ! -z "$git_treeish" ]; then
- HEAD=$(git rev-parse $git_treeish)
- else
- HEAD=$(git rev-parse HEAD)
- fi
- if [ ! -z "$script_friendly_name" ]; then
- NAME=godot
- else
- if [ ! -z "$godot_version" ]; then
- NAME=godot-$godot_version
- else
- NAME=godot-$HEAD
- fi
- fi
- CURDIR=$(pwd)
- TMPDIR=$(mktemp -d -t godot-XXXXXX)
- echo "Generating tarball for revision $HEAD with folder name '$NAME'."
- echo
- echo "The tarball will be written to the parent folder:"
- echo " $(dirname $CURDIR)/$NAME.tar.gz"
- git archive $HEAD --prefix=$NAME/ -o $TMPDIR/$NAME.tar
- # Adding custom .git/HEAD to tarball so that we can generate VERSION_HASH.
- cd $TMPDIR
- mkdir -p $NAME/.git
- echo $HEAD > $NAME/.git/HEAD
- tar -uf $NAME.tar $NAME
- cd $CURDIR
- gzip -c $TMPDIR/$NAME.tar > ../$NAME.tar.gz
- rm -rf $TMPDIR
|