Fix #975, #977: Change scripts from /bin/bash to /bin/sh
[geeqie.git] / gen_changelog.sh
1 #!/bin/sh
2
3 ## @file
4 ## @brief Update ChangeLog file  
5 ## - it keeps "pre-svn" history and inserts git log at top,  
6 ## - it uses C locale for date format.  
7 ## - It has to be run where ChangeLog.gqview is.  
8 ##
9 ## ChangeLog.html is also created
10 ##
11
12 [ ! -e "ChangeLog.gqview" ] && exit 1
13 [ ! -x "$(command -v git)" ] && exit 0
14 [ ! -d ".git" ] && exit 0
15
16 LC_ALL=C git log --no-merges --no-notes --encoding=UTF-8 --no-follow --use-mailmap 1b58572cf58e9d2d4a0305108395dab5c66d3a09..HEAD > ChangeLog.$$.new && \
17 cat ChangeLog.gqview >> ChangeLog.$$.new && \
18 mv -f ChangeLog.$$.new ChangeLog
19
20
21 echo "<textarea rows='6614' cols='100'>" >ChangeLog.$$.old.html && \
22 tail -6613 ChangeLog >> ChangeLog.$$.old.html && \
23 echo "</textarea>" >>ChangeLog.$$.old.html && \
24 echo "<html>" > ChangeLog.$$.new.html && \
25 echo "<body>" >> ChangeLog.$$.new.html && \
26 echo "<ul>" >> ChangeLog.$$.new.html && \
27 LC_ALL=C git log --no-merges --no-notes --encoding=UTF-8 --date=format:'%Y-%m-%d' --no-follow --use-mailmap --pretty=format:"<li><a href=\"http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=%H\">view commit </a></li><p>Author: %aN<br>Date: %ad<br><textarea rows=4 cols=100>%s %n%n%b</textarea><br><br></p>" 1b58572cf58e9d2d4a0305108395dab5c66d3a09..HEAD >> ChangeLog.$$.new.html && \
28 echo "" >> ChangeLog.$$.new.html && \
29 cat ChangeLog.$$.old.html >> ChangeLog.$$.new.html && \
30 echo "</ul>" >> ChangeLog.$$.new.html && \
31 echo "</body>" >> ChangeLog.$$.new.html && \
32 echo "</html>" >> ChangeLog.$$.new.html
33 [ -e ChangeLog.html ] && mv -f ChangeLog.html ChangeLog.html.bak
34 mv -f ChangeLog.$$.new.html ChangeLog.html
35
36 rm -f ChangeLog.$$.old.html
37
38 exit 0