X-Git-Url: http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=blobdiff_plain;f=gen_changelog.sh;h=b4f5bc883760e2aea2eb0002249457dd192dcace;hp=33acebabe7b03d615c6510ce42610bdac1ac56a0;hb=refs%2Fheads%2Fmaster;hpb=04a1bff55ff08bd59ad07115f6abc2e3de31cca0 diff --git a/gen_changelog.sh b/gen_changelog.sh index 33acebab..b47a1a2d 100755 --- a/gen_changelog.sh +++ b/gen_changelog.sh @@ -1,7 +1,7 @@ #!/bin/sh ## @file -## @brief Script to update ChangeLog 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. @@ -9,29 +9,44 @@ ## ChangeLog.html is also created ## +builddir="$2" + +cd "$1" || exit + [ ! -e "ChangeLog.gqview" ] && exit 1 -[ ! -x "$(command -v git)" ] && exit 0 - -LC_ALL=C git log --no-merges --no-notes --encoding=UTF-8 --no-follow --use-mailmap 1b58572cf58e9d2d4a0305108395dab5c66d3a09..HEAD > ChangeLog.$$.new && \ -cat ChangeLog.gqview >> ChangeLog.$$.new && \ -mv -f ChangeLog.$$.new ChangeLog - - -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 +[ ! -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