# Copyright 1995-2001 by Norman Ramsey. All rights reserved.
# See file COPYRIGHT for more information.
#
# Adjust these two lines for your ANSI C compiler
#CC=gcc -ansi -pedantic
#CFLAGS=
# If you have Icon, you should use the Icon versions of the noweb pipeline.
# Set LIBSRC=icon
LIBSRC=icon
#LIBSRC=awk
# If you have no Icon compiler, but do have icont, make ICONC=icont
ICONC=icont
ICONT=icont
# BIN is where the commands (notangle, noweave, nountangle, noroots) land
# LIB is where the pieces of the pipes (nt, markup, unmarkup) are stored
# MAN is the root of your local man pages directory
# MANEXT is the extension for your commands' man pages (usually 1 or l)
# MAN7EXT is the extension for the nowebstyle man page (usually 7)
# TEXINPUTS is the directory for TeX macro files
# ELISP is the directory for emacs lisp files, or /dev/null not to install
BIN=${PREFIX}/bin
LIB=${PREFIX}/share/noweb
MAN=${PREFIX}/man
MANEXT=1
MAN7EXT=7
TEXINPUTS=${LIB}/tex
ELISP=${PREFIX}/share/emacs/site-lisp
# change WEAVE if you want a different version of noweave to be installed
WEAVE=noweave
# Stop editing. No user-serviceable parts below.
SHELL=/bin/sh
CINAME=
CIMSG=
MANDIR=$(MAN)/man$(MANEXT)
MAN7DIR=$(MAN)/man$(MAN7EXT)
CATDIR=$(MAN)/cat$(MANEXT)
CAT7DIR=$(MAN)/cat$(MAN7EXT)
LIBNAME=$(LIB)
TEXNAME=$(TEXINPUTS)
all:
cd c; make "CC=$(CC)" "CFLAGS=$(CFLAGS)" all
for i in shell lib xdoc tex; do (cd $$i; make all); done
cd $(LIBSRC); make "ICONT=$(ICONT)" "ICONC=$(ICONC)" all
FAQ: FAQ.html
sleep 1; html2ascii FAQ.html > FAQ
FAQ.html: $(HOME)/www/noweb/FAQ.html
rm -f FAQ.html
/bin/cp $(HOME)/www/noweb/FAQ.html FAQ.html
chmod -w FAQ.html
install: install-code install-man install-tex install-elisp
uninstall: uninstall-code uninstall-man uninstall-tex uninstall-elisp
-rmdir $(BIN) $(LIB) 2>/dev/null
install-shell:
-mkdir $(BIN) $(LIB) 2>/dev/null
sed "s@|LIBDIR|@$(LIBNAME)@" shell/noweb > $(BIN)/noweb
chmod +x $(BIN)/noweb
sed "s@|LIBDIR|@$(LIBNAME)@" shell/notangle > $(BIN)/notangle
chmod +x $(BIN)/notangle
sed "s@|LIBDIR|@$(LIBNAME)@" shell/$(WEAVE) > $(BIN)/$(WEAVE)
chmod +x $(BIN)/$(WEAVE)
sed "s@|LIBDIR|@$(LIBNAME)@" shell/nountangle > $(BIN)/nountangle
chmod +x $(BIN)/nountangle
sed "s@|LIBDIR|@$(LIBNAME)@" shell/nodefs > $(BIN)/nodefs
chmod +x $(BIN)/nodefs
sed "s@|LIBDIR|@$(LIBNAME)@" shell/noroots > $(BIN)/noroots
chmod +x $(BIN)/noroots
sed "s@|LIBDIR|@$(LIBNAME)@" shell/nuweb2noweb > $(BIN)/nuweb2noweb
chmod +x $(BIN)/nuweb2noweb
sed "s@|LIBDIR|@$(LIBNAME)@" shell/cpif > $(BIN)/cpif
chmod +x $(BIN)/cpif
sed "s@|LIBDIR|@$(LIBNAME)@" shell/htmltoc > $(BIN)/htmltoc
chmod +x $(BIN)/htmltoc
sed "s@|LIBDIR|@$(LIBNAME)@" shell/noroff > $(BIN)/noroff
chmod +x $(BIN)/noroff
sed "s@|LIBDIR|@$(LIBNAME)@" shell/toroff > $(LIB)/toroff
chmod +x $(LIB)/toroff
cp shell/tmac.w $(LIB)
uninstall-shell:
rm -f $(BIN)/noweb
rm -f $(BIN)/notangle
rm -f $(BIN)/$(WEAVE)
rm -f $(BIN)/nountangle
rm -f $(BIN)/nodefs
rm -f $(BIN)/noroots
rm -f $(BIN)/nuweb2noweb
rm -f $(BIN)/cpif
rm -f $(BIN)/htmltoc
rm -f $(BIN)/noroff
rm -f $(LIB)/toroff
rm $(LIB)/tmac.w
install-code: install-shell
-mkdir $(BIN) $(LIB) 2>/dev/null
strip c/nt c/markup c/mnt c/finduses
cp c/nt c/markup c/mnt c/finduses $(LIB)
cd $(LIBSRC); make ICONT=$(ICONT) ICONC=$(ICONC) LIB=$(LIB) BIN=$(BIN) install
cd lib; make LIB=$(LIB) install
uninstall-code: uninstall-shell
rm $(LIB)/nt $(LIB)/markup $(LIB)/mnt $(LIB)/finduses
cd $(LIBSRC); make ICONT=$(ICONT) ICONC=$(ICONC) LIB=$(LIB) BIN=$(BIN) uninstall
cd lib; make LIB=$(LIB) uninstall
install-man:
-mkdir $(MAN) $(MANDIR) $(MAN7DIR) 2>/dev/null
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/cpif.1 > $(MANDIR)/cpif.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nodefs.1 > $(MANDIR)/nodefs.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noroots.1 > $(MANDIR)/noroots.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noweb.1 > $(MANDIR)/noweb.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noindex.1 > $(MANDIR)/noindex.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nuweb2noweb.1 > $(MANDIR)/nuweb2noweb.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/notangle.1 > $(MANDIR)/notangle.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noroff.1 > $(MANDIR)/noroff.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/sl2h.1 > $(MANDIR)/sl2h.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/htmltoc.1 > $(MANDIR)/htmltoc.$(MANEXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nowebstyle.7 > $(MAN7DIR)/nowebstyle.$(MAN7EXT)
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nowebfilters.7 > $(MAN7DIR)/nowebfilters.$(MAN7EXT)
rm -f $(MANDIR)/noweave.$(MANEXT)
(cd $(MANDIR); ln notangle.$(MANEXT) noweave.$(MANEXT))
rm -f $(MANDIR)/nountangle.$(MANEXT)
(cd $(MANDIR); ln notangle.$(MANEXT) nountangle.$(MANEXT))
uninstall-man:
rm -f $(MANDIR)/cpif.$(MANEXT)
rm -f $(MANDIR)/nodefs.$(MANEXT)
rm -f $(MANDIR)/noroots.$(MANEXT)
rm -f $(MANDIR)/noweb.$(MANEXT)
rm -f $(MANDIR)/noindex.$(MANEXT)
rm -f $(MANDIR)/nuweb2noweb.$(MANEXT)
rm -f $(MANDIR)/notangle.$(MANEXT)
rm -f $(MANDIR)/noroff.$(MANEXT)
rm -f $(MANDIR)/sl2h.$(MANEXT)
rm -f $(MANDIR)/htmltoc.$(MANEXT)
rm -f $(MAN7DIR)/nowebstyle.$(MAN7EXT)
rm -f $(MAN7DIR)/nowebfilters.$(MAN7EXT)
rm -f $(MANDIR)/noweave.$(MANEXT)
rm -f $(MANDIR)/nountangle.$(MANEXT)
install-gzipped-man:
-mkdir $(MAN) $(MANDIR) $(MAN7DIR) 2>/dev/null
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/cpif.1 | gzip -9 > $(MANDIR)/cpif.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nodefs.1 | gzip -9 > $(MANDIR)/nodefs.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noroots.1 | gzip -9 > $(MANDIR)/noroots.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noweb.1 | gzip -9 > $(MANDIR)/noweb.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noindex.1 | gzip -9 > $(MANDIR)/noindex.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nuweb2noweb.1 | gzip -9 > $(MANDIR)/nuweb2noweb.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/notangle.1 | gzip -9 > $(MANDIR)/notangle.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noroff.1 | gzip -9 > $(MANDIR)/noroff.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/sl2h.1 | gzip -9 > $(MANDIR)/sl2h.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/htmltoc.1 | gzip -9 > $(MANDIR)/htmltoc.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nowebstyle.7 | gzip -9 > $(MAN7DIR)/nowebstyle.$(MAN7EXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nowebfilters.7 | gzip -9 > $(MAN7DIR)/nowebfilters.$(MAN7EXT).gz
rm -f $(MANDIR)/noweave.$(MANEXT).gz
(cd $(MANDIR); ln notangle.$(MANEXT).gz noweave.$(MANEXT).gz)
rm -f $(MANDIR)/nountangle.$(MANEXT).gz
(cd $(MANDIR); ln notangle.$(MANEXT).gz nountangle.$(MANEXT).gz)
install-preformat-man:
-echo "Warning: install-preformat-man is obsolete, even on Slackware systems" 1>&2
-mkdir $(MAN) $(CATDIR) $(CAT7DIR) 2>/dev/null
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/cpif.txt | gzip > $(CATDIR)/cpif.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nodefs.txt | gzip > $(CATDIR)/nodefs.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noroots.txt | gzip > $(CATDIR)/noroots.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noweb.txt | gzip > $(CATDIR)/noweb.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noindex.txt | gzip > $(CATDIR)/noindex.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nuweb2noweb.txt | gzip > $(CATDIR)/nuweb2noweb.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/notangle.txt | gzip > $(CATDIR)/notangle.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/noroff.txt | gzip > $(CATDIR)/noroff.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/sl2h.txt | gzip > $(CATDIR)/sl2h.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/htmltoc.txt | gzip > $(CATDIR)/htmltoc.$(MANEXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nowebstyle.txt | gzip > $(CAT7DIR)/nowebstyle.$(MAN7EXT).gz
sed -e "s@|LIBDIR|@$(LIBNAME)@" -e "s@|TEXINPUTS|@$(TEXNAME)@" xdoc/nowebfilters.txt | gzip > $(CAT7DIR)/nowebfilters.$(MAN7EXT).gz
rm -f $(CATDIR)/noweave.$(MANEXT).gz
(cd $(CATDIR); ln notangle.$(MANEXT).gz noweave.$(MANEXT).gz)
rm -f $(CATDIR)/nountangle.$(MANEXT).gz
(cd $(CATDIR); ln notangle.$(MANEXT).gz nountangle.$(MANEXT).gz)
install-tex:
-${MKDIR} $(TEXINPUTS) 2>/dev/null
cp tex/nwmac.tex tex/noweb.sty $(TEXINPUTS)
-texhash || echo "Program texhash not found or failed"
uninstall-tex:
rm -f $(TEXINPUTS)/nwmac.tex $(TEXINPUTS)/noweb.sty
install-elisp:
-${MKDIR} $(ELISP) 2>/dev/null
cp elisp/noweb-mode.el $(ELISP)
uninstall-elisp:
rm -f $(ELISP)/noweb-mode.el
checkin:
for i in lib tex xdoc; do (cd $$i; make "CINAME=$(CINAME)" "CIMSG=$(CIMSG)" checkin); done
for i in c icon awk; do (cd $$i; ci -l $(CINAME) $(CIMSG) *.nw Makefile); done
(cd elisp; ci -l $(CINAME) $(CIMSG) *.el)
ci -l $(CINAME) $(CIMSG) Makefile.nw INSTALL INSTALL.DOS README FAQ COPYRIGHT nwmake *.nw
source: FAQ
for i in c shell lib xdoc icon awk tex; do (cd $$i; make CPIF=">" source); done
sleep 1
for i in c shell lib xdoc icon awk tex; do (cd $$i; make touch); done
touch:
touch FAQ
for i in c shell lib xdoc icon awk tex; do (cd $$i; make touch); done
clean:
for i in c shell lib xdoc icon awk tex; do (cd $$i; make clean); done
rm -f nwsrcfilter *~ */*~
clobber: clean
for i in c lib icon awk xdoc; do (cd $$i; make clobber); done
Makefile: Makefile.nw
chmod +w Makefile
notangle -R'script' Makefile.nw | sh > Makefile
chmod -w Makefile
syntax highlighted by Code2HTML, v. 0.9.1