summaryrefslogtreecommitdiff
path: root/src/scripts
diff options
context:
space:
mode:
authorHeiko Schlittermann (HS12-RIPE) <hs@schlittermann.de>2021-04-02 12:37:15 +0200
committerHeiko Schlittermann (HS12-RIPE) <hs@schlittermann.de>2021-04-02 23:58:38 +0200
commit47e7b0467bf1af70378ed5fd4accfb4da60e38bb (patch)
tree83a4ac2ce486b14a9c6634fbfb68bf9ac3be17e7 /src/scripts
parentf779a7442b3269dd65f5cebe5fe3815a1d61771b (diff)
downloadexim4-47e7b0467bf1af70378ed5fd4accfb4da60e38bb.tar.gz
build: Allow environment EXIM_RELEASE_VERSION
This should easy automated testing where no .git directory is available (as is happens with git worktrees) Setting this environment variable makes the reversion script using it instead of searching for version.sh or using `git describe`.
Diffstat (limited to 'src/scripts')
-rwxr-xr-xsrc/scripts/reversion13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/scripts/reversion b/src/scripts/reversion
index 6854112d7..cec1db2fb 100755
--- a/src/scripts/reversion
+++ b/src/scripts/reversion
@@ -29,7 +29,11 @@ fi
# Read version information that was generated by a previous run of
# this script, or during the release process.
-if [ -f ./version.sh ]; then
+# Override, used for automated testing w/o access to the
+# .git directory (w.g. inside a git worktree)
+if [ -n "$EXIM_RELEASE_VERSION" ]; then
+ :
+elif [ -f ./version.sh ]; then
. ./version.sh
elif [ -f ../src/version.sh ]; then
. ../src/version.sh
@@ -51,9 +55,12 @@ elif [ -d ../../.git ] || [ -f ../../.git ] || [ "$1" = release ]; then
EXIM_VARIANT_VERSION="$3"
rm -f version.h
fi
-else
+fi
+
+if [ -z "$EXIM_RELEASE_VERSION" ]; then
echo "Cannot determine the release number" >&2
- exit
+ echo "You may want to override it with EXIM_RELEASE_VERSION" >&2
+ exit 1
fi
# If you are maintaining a patched version of Exim, you can either