gcc/maintainer-scripts/update_version_git
Jakub Jelinek f4ae1f2c43 maintainer-scripts: Use /sourceware/snapshot-tmp/gcc as temp directory if possible
> https://gcc.gnu.org/pipermail/gccadmin/2020q4/017037.html
>
> OSError: [Errno 28] No space left on device:
> '/tmp/tmp.Zq3p6D4MxS/gcc/.git/objects/objn31xpefh' ->
> '/tmp/tmp.Zq3p6D4MxS/gcc/.git/objects/db/ffb02a4bcdd4ec04af3db75d86b8cc2e52bdff'
>
> Maybe change the script to use /sourceware/snapshot-tmp/gcc (which has
> rather more space) instead of /tmp?

This patch implements that.

2020-12-17  Jakub Jelinek  <jakub@redhat.com>

	* update_version_git: Put BASEDIR into /sourceware/snapshot-tmp/gcc
	if it exist.
2020-12-17 00:15:23 +01:00

36 lines
742 B
Bash
Executable File

#!/bin/sh
#
# Update the current version date in DATESTAMP files and generate
# ChangeLog file entries since the last DATESTAMP update from the
# commit messages.
GITROOT=${GITROOT:-"/git/gcc.git"}
if [ -z "$TMPDIR" ]; then
if [ -d /sourceware/snapshot-tmp/gcc ]; then
TMPDIR=/sourceware/snapshot-tmp/gcc
else
TMPDIR=/tmp
fi
fi
# Run this from $TMPDIR.
export GITROOT TMPDIR
BASEDIR=`mktemp -d`
cd "$BASEDIR"
GIT=${GIT:-/usr/local/bin/git}
# Assume all will go well.
SUBDIR="$BASEDIR/gcc"
${GIT} clone -q -b master "$GITROOT" "$SUBDIR"
cp -a "$SUBDIR"/contrib/gcc-changelog "$BASEDIR"/gcc-changelog
cd "$SUBDIR"
python3 ../gcc-changelog/git_update_version.py -p
RESULT=$?
cd "$TMPDIR"
/bin/rm -rf "$BASEDIR"
exit $RESULT