#!/bin/sh
SRC=src
DST=gopher
CGI=cgi

build_cgi() {
   build_gophermap $1 $2
   chmod a+rx $2
   return
}

build_gophermap() {
   in=$1
   out=$2
   echo "m4 $in >$out ..."
   m4 $in >$out
   return
}

# gophermaps

for f in gophermap     \
   audio/gophermap    \
   books/gophermap    \
   images/gophermap   \
   software/gophermap \
   video/gophermap
do
   build_gophermap ${SRC}/${f}.m4 ${DST}/$f
done

# CGI

for f in account \
   details      \
   download     \
   list         \
   lists        \
   listsort     \
   raw          \
   search       \
   sort         \
   wizard/step1 \
   wizard/step2 \
   wizard/step3
do
   build_cgi ${SRC}/${f}.m4 ${CGI}/$f
done

# special cases

build_cgi ${SRC}/raw.m4 ${CGI}/debug
build_cgi ${SRC}/raw.m4 ${CGI}/text
build_cgi ${SRC}/download.m4 ${CGI}/direct
build_cgi ${SRC}/raw.m4 ${CGI}/links
cp ${SRC}/about.txt ${DST}/
cp ${SRC}/wizard/gophermap  ${CGI}/wizard/

cp pass.tsv ${DST}/pass.tsv
exit 0