Hintsdb sqlite: use transaction rather than file lock
[exim.git] / src / scripts / reversion
index 6854112d7d97b2e0666ad737931db3962722c289..6fd0782a423ccaa3d7ff67abdbf1ed55c2245f82 100755 (executable)
@@ -1,5 +1,6 @@
 #!/bin/sh
-# Copyright (c) The Exim Maintainers 1995 - 2018
+# Copyright (c) The Exim Maintainers 1995 - 2021
+# SPDX-License-Identifier: GPL-2.0-or-later
 
 set -e
 LC_ALL=C
@@ -29,7 +30,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 +56,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