Implement `vput' modifier: store result in variable..
[s-mailx.git] / mk-release.sh
blob44d8e9748e697cee516c86484405ca09c0682601
1 #!/bin/sh -
2 #@ mk-release.sh: simple somewhat generic release builder
4 # In order to be able to remove the release scripts from the release tarball,
5 # we must delete them, which some shells may not like while they are running.
6 # So be safe and move instances temporarily to .git/, the .inc will remove them
7 if [ "`basename \`pwd\``" != .git ]; then
8 cp mk-release.* .git/
9 cd .git
10 exec sh mk-release.sh
12 cd ..
14 ## Variables
16 : ${PROGRAM:=s-nail}
17 : ${UPROGRAM:=S-nail}
18 : ${MANUAL:=code-nail.html}
20 : ${UPLOAD:=steffen@sdaoden.eu:/var/www/localhost/downloads}
22 # Mail
23 : ${MAILX:=s-nail -Snofollowup-to -Ssmime-sign}
24 : ${ACCOUNT:=ich}
25 : ${MAILBCC:=mailx-announce-bcc}
26 : ${MAILTO:=mailx-announce}
28 ## Hooks
30 update_stable_hook() {
31 if [ -f nail.1 ]; then
32 < nail.1 > nail.1x awk '
33 BEGIN { written = 0 }
34 /\.\\"--MKREL-START--/, /\.\\"--MKREL-END--/ {
35 if (written++ != 0)
36 next
37 print ".\\\"--MKREL-START--"
38 print ".\\\"@ '"${UPROGRAM}"'(1): v'"${REL}"' / '"${DATE_ISO}"'"
39 print ".Dd '"${DATE_MAN}"'"
40 print ".ds VV \\\\%v'"${REL}"'"
41 print ".\\\"--MKREL-END--"
42 next
44 {print}
45 ' &&
46 mv -f nail.1x nail.1
47 git add nail.1
50 if [ -f nail.rc ]; then
51 < nail.rc > nail.rcx awk '
52 BEGIN { written = 0 }
53 /^#--MKREL-START--/, /^#--MKREL-END--/ {
54 if (written++ != 0)
55 next
56 print "#--MKREL-START--"
57 print "#@ '"${UPROGRAM}"'(1): v'"${REL}"' / '"${DATE_ISO}"'"
58 print "#--MKREL-END--"
59 next
61 {print}
62 ' &&
63 mv -f nail.rcx nail.rc
64 git add nail.rc
67 [ -f ./mk-okey-map.pl ] && ./mk-okey-map.pl && git add okeys.h
68 [ -f ./mk-tcap-map.pl ] && ./mk-tcap-map.pl && git add tcaps.h
71 update_release_hook() {
72 if [ -f nail.1 ]; then
73 sed -E -e '/^\.\\"--MKREL-(START|END)--/d' \
74 -e '/--BEGINSTRIP--/,$ {' \
75 -e '/^\.[[:space:]]*$/d' -e '/^\.[[:space:]]*\\"/d' \
76 -e '}' \
77 -e '/^\.$/d' \
78 < nail.1 > nail.1x
79 mv -f nail.1x nail.1
80 if command -v mdocmx.sh >/dev/null 2>&1; then
81 mdocmx.sh < nail.1 > nail.1x
82 mv -f nail.1x nail.1
84 git add nail.1
87 if [ -f nail.rc ]; then
88 sed -Ee '/^#--MKREL-(START|END)--/d' < nail.rc > nail.rcx
89 mv -f nail.rcx nail.rc
90 git add nail.rc
93 [ -f ./mk-okey-map.pl ] && ./mk-okey-map.pl noverbose && git add okeys.h
94 [ -f ./mk-tcap-map.pl ] && ./mk-tcap-map.pl noverbose && git add tcaps.h
97 . ./mk-release.inc
99 # s-sh-mode