Blob


1 #!/bin/sh
2 #
3 # stuff we should do in the makefile
4 # but can't for portability reasons.
5 # public domain
7 pair()
8 {
9 files="$files $2"
10 dotfiles="$HOME/$1 $dotfiles"
11 xxxfiles="${2%.lp} $xxxfiles"
13 dname=$(dirname "$HOME/$1")
14 cat <<EOF >> Makefile.local
15 $HOME/$1: $2
16 [ ! -d "$dname" ] && mkdir -p "$dname" || true
17 ./lpp \$? > \$@
18 EOF
20 if [ -n "$3" ]; then
21 printf '\tchmod %s $@\n' "$3" >> Makefile.local
22 fi
23 echo >> Makefile.local
24 }
26 conv()
27 {
28 gemfiles="gem/$1.gmi $gemfiles"
29 wwwfiles="www/$1.html $wwwfiles"
30 dname=$(dirname "$1")
31 cat <<EOF >> Makefile.local
32 gem/$1.gmi: $2
33 [ ! -d "gem/$dname" ] && mkdir -p "gem/$dname" || true
34 sed 's/EXT/gmi'/ $2 | ./unpar | ./gc > \$@
36 www/$1.html: gem/$1.gmi header.html footer.html
37 [ ! -d "www/$dname" ] && mkdir -p "www/$dname" || true
38 sed 's!TITLE!$1!' header.html > \$@
39 sed 's/EXT/html/' $2 | ./unpar | ./gc | ./gem2html >> \$@
40 cat footer.html >> \$@
42 EOF
43 }
45 rm -f Makefile.local
47 pair .profile profile.lp
48 pair .kshrc kshrc.lp
49 pair lib/profile rc.lp
50 pair .sqliterc sqliterc.lp
51 pair .psqlrc psqlrc.lp
53 pair bin/acmerc bin/acmerc.lp +x
54 pair bin/browser bin/browser.lp +x
55 pair bin/sshot bin/sshot.lp +x
57 conv index index.lp
58 for file in $files; do
59 conv "${file%.lp}" "$file"
60 done
62 cat <<EOF >> Makefile.local
63 DOTFILES = $dotfiles
64 GEMFILES = $gemfiles
65 WWWFILES = $wwwfiles
66 XXXFILES = $(printf "%s\n" $xxxfiles | sort | xargs echo)
67 EOF