X-Git-Url: http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=blobdiff_plain;f=gen_changelog.sh;h=b4f5bc883760e2aea2eb0002249457dd192dcace;hp=fdb415c39376ba95218d461553dbb186a06bba1d;hb=refs%2Fheads%2Fmaster;hpb=cbe2074d6b330b9077444448a788b1ab1f309dfe
diff --git a/gen_changelog.sh b/gen_changelog.sh
index fdb415c3..b47a1a2d 100755
--- a/gen_changelog.sh
+++ b/gen_changelog.sh
@@ -1,40 +1,52 @@
-#!/bin/bash
-
-# Script to update ChangeLog file,
-# it keeps "pre-svn" history and inserts git log at top,
-# it uses C locale for date format.
-# It has to be run where ChangeLog is.
-# Old ChangeLog is saved as ChangeLog.bak
-#
-# ChangeLog.html is also created
-
-[ ! -e "ChangeLog" ] && exit 1
-[ ! -x "$(command -v git)" ] && exit 0
-
-tail -6614 ChangeLog > ChangeLog.$$.old && \
-LC_ALL=C git log --no-merges --no-notes --encoding=UTF-8 --no-follow --use-mailmap 1b58572cf58e9d2d4a0305108395dab5c66d3a09..HEAD > ChangeLog.$$.new && \
-cat ChangeLog.$$.old >> ChangeLog.$$.new && \
-mv -f ChangeLog ChangeLog.bak && \
-mv -f ChangeLog.$$.new ChangeLog
-
-rm -f ChangeLog.$$.old
-
-
-echo "" >>ChangeLog.$$.old.html && \
-echo "" > ChangeLog.$$.new.html && \
-echo "
" >> ChangeLog.$$.new.html && \
-echo "" >> ChangeLog.$$.new.html && \
-echo "" >> ChangeLog.$$.new.html && \
-echo "" >> ChangeLog.$$.new.html
-[ -e ChangeLog.html ] && mv -f ChangeLog.html ChangeLog.html.bak
-mv -f ChangeLog.$$.new.html ChangeLog.html
-
-rm -f ChangeLog.$$.old.html
+#!/bin/sh
+
+## @file
+## @brief Update ChangeLog file
+## - it keeps "pre-svn" history and inserts git log at top,
+## - it uses C locale for date format.
+## - It has to be run where ChangeLog.gqview is.
+##
+## ChangeLog.html is also created
+##
+
+builddir="$2"
+
+cd "$1" || exit
+
+[ ! -e "ChangeLog.gqview" ] && exit 1
+[ ! -x "$(command -v git)" ] && exit 1
+[ ! -d ".git" ] && exit 1
+
+LC_ALL=C git log --no-merges --no-notes --encoding=UTF-8 --no-follow --use-mailmap 1b58572cf58e9d2d4a0305108395dab5c66d3a09..HEAD > "$builddir/ChangeLog.$$.new" && \
+cat ChangeLog.gqview >> "$builddir/ChangeLog.$$.new" && \
+mv -f "$builddir/ChangeLog.$$.new" "$builddir/ChangeLog"
+
+
+echo "" >>"$builddir/ChangeLog.$$.old.html" && \
+echo "" > "$builddir/ChangeLog.$$.new.html" && \
+echo "" >> "$builddir/ChangeLog.$$.new.html" && \
+echo "" >> "$builddir/ChangeLog.$$.new.html" && \
+echo "" >> "$builddir/ChangeLog.$$.new.html" && \
+echo "" >> "$builddir/ChangeLog.$$.new.html"
+
+rm "$builddir/ChangeLog.$$.old.html"
+mv -f "$builddir/ChangeLog.$$.new.html" "$builddir/ChangeLog.html"
+
+# Meson: distribute in tarballs. The first variable is more reliable, but requires Meson 0.58.
+# Fallback to the older one if necessary
+# shellcheck disable=SC2154
+for distdir in "$MESON_PROJECT_DIST_ROOT" "$MESON_DIST_ROOT"; do
+ if [ -n "$distdir" ]; then
+ cp -f "$builddir/ChangeLog.html" "$distdir/ChangeLog.html"
+ cp -f "$builddir/ChangeLog" "$distdir/ChangeLog"
+ break
+ fi
+done
exit 0