--- a/support/mkversion
+++ b/support/mkversion
@@ -11,6 +11,25 @@ version="$1"
 extra="$2"
 string="INN $version"
 
+for where in . .. ../.. ../../.. ../../../.. ../../../../..; do
+  if [ -e $where/debian/changelog ]; then
+    DEBIAN_CHANGELOG=$where/debian/changelog
+    break
+  fi
+done
+
+# use the date in the Debian package version, if there is one
+if [ "$extra" = "prerelease" ]; then
+  debian_version="$(dpkg-parsechangelog -l $DEBIAN_CHANGELOG -SVersion)"
+  [ "$debian_version" ] || exit 1
+  debian_version="${debian_version%~bpo[0-9]*+[0-9]*}"
+  debian_version="${debian_version%-*}"
+  debian_prerelease="${debian_version#*~}"
+  if [ "$debian_version" != "$debian_prerelease" ]; then
+    extra="$debian_prerelease $extra"
+  fi
+fi
+
 if [ x"$extra" = x"prerelease" ]; then
     # Default date is the build date.
     date=$(date +%Y%m%d)
