diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /web/noweb/src/Makefile |
Initial commit
Diffstat (limited to 'web/noweb/src/Makefile')
-rw-r--r-- | web/noweb/src/Makefile | 222 |
1 files changed, 222 insertions, 0 deletions
diff --git a/web/noweb/src/Makefile b/web/noweb/src/Makefile new file mode 100644 index 0000000000..339df3b9b4 --- /dev/null +++ b/web/noweb/src/Makefile @@ -0,0 +1,222 @@ +# Copyright 1995-2018 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 -O -Wall -Werror +CFLAGS= +# If you have Icon, you should use the Icon versions of the noweb pipeline. +# Set LIBSRC=icon +LIBSRC=awk +# If you have no Icon compiler, but do have icont, make ICONC=icont +ICONC=iconc +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=/usr/local/noweb +LIB=/usr/local/noweb/lib +MAN=/usr/local/noweb/man +MANEXT=1 +MAN7EXT=7 +TEXINPUTS=/usr/local/tex/inputs +ELISP=/dev/null + +# 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 || true + +install-shell: + mkdir -p $(BIN) $(LIB) + 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 -f $(LIB)/tmac.w + +install-code: install-shell + mkdir -p $(BIN) $(LIB) + strip c/nt c/markup c/mnt c/finduses c/nwmktemp + cp c/nt c/markup c/mnt c/finduses c/nwmktemp $(LIB) + cd $(LIBSRC); make ICONT=$(ICONT) ICONC=$(ICONC) LIB=$(LIB) BIN=$(BIN) install + cd lib; make LIB=$(LIB) install + +uninstall-code: uninstall-shell + rm -f $(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 -p $(MAN) $(MANDIR) $(MAN7DIR) + 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) + -rmdir $(MANDIR) $(MAN7DIR) $(MAN) 2>/dev/null || true +install-gzipped-man: + mkdir -p $(MAN) $(MANDIR) $(MAN7DIR) + 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 -p $(MAN) $(CATDIR) $(CAT7DIR) + 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 -p $(TEXINPUTS) + 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 || true + +install-elisp: + if [ "/dev/null" != "$(ELISP)" ]; then mkdir -p $(ELISP); fi + cp elisp/noweb-mode.el $(ELISP) + +uninstall-elisp: + rm -f $(ELISP)/noweb-mode.el || true +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 +boot: + for i in c shell lib xdoc icon awk tex; do (cd $$i; make boot); 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 shell lib xdoc icon awk tex; do (cd $$i; make clobber); done + +Makefile: Makefile.nw + chmod +w Makefile + notangle -R'script' Makefile.nw | sh > Makefile + chmod -w Makefile + |