# Makefile -- install feynmf. # Copyright (C) 1994,1995 Thorsten.Ohl@Physik.TH-Darmstadt.de # # Feynmf is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # Feynmf is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # $Id: Makefile,v 1.27 1996/12/02 09:20:35 ohl Exp $ # ######################################################################## VERSION = 1 RELEASE = 08 STATUS = ######################################################################## # Directories prefix = $(HOME) bindir = $(prefix)/bin mandir = $(prefix)/man/man1 texdir = $(prefix)/tex/inputs mfdir = $(prefix)/mf/inputs docdir = $(texdir)/doc # Commands INSTALL = install -c -m 755 INSTALL_DATA = install -c -m 644 # INSTALL = cp # INSTALL_DATA = cp # This has to be the new LaTeX LATEX = latex # This should be the old LaTeX LATEX209 = tex '&latex209' # This must not have the cmbase preloaded: MF = mf MP = mp MAKEINDEX = makeindex # Your local printer mode MFMODE = laserjet ######################################################################## # No user serviceable parts below: ######################################################################## RESOLVE_XREF = \ $(LATEX) $*.drv && \ while grep 'Rerun to get cross-references right\.' $*.log; \ do \ $(LATEX) $*.drv; \ done RESOLVE_XREF209 = \ $(LATEX209) $*.drv && \ while grep 'Rerun to get cross-references right\.' $*.log; \ do \ $(LATEX209) $*.drv; \ done RUN_METAFONT = \ $(MF) '\mode:=$(MFMODE); input fmfsamp1'; \ $(MF) '\mode:=$(MFMODE); input fmfsamp2'; \ $(MF) '\mode:=$(MFMODE); input fmfsamp3'; \ $(MF) '\mode:=$(MFMODE); input fmfsamp4' RUN_METAPOST = \ $(MP) fmfsamp1; \ $(MP) fmfsamp2; \ $(MP) fmfsamp3; \ $(MP) fmfsamp4; RUN_MAKEINDEX = \ $(MAKEINDEX) -s gind.ist -o $*.ind $*.idx && \ $(MAKEINDEX) -s gglo.ist -o $*.gls $*.glo MANPICS = manpics.1 manpics.2 manpics.3 all: feynmf.sty feynmf.mf feynmf.drv \ feynmp.sty feynmp.mp feynmp.drv $(MANPICS) \ feynmf.1 all209: feynmf209.sty feynmf.mf feynmf209.drv \ feynmp209.sty feynmp.mp feynmp209.drv $(MANPICS) man: fmfman.dvi man209: fmfman209.dvi quick-man: $(MAKE) man RUN_MAKEINDEX=: RESOLVE_XREF=: dvi: feynmf.dvi dvi209: feynmf209.dvi quick-dvi: $(MAKE) dvi RUN_MAKEINDEX=: RESOLVE_XREF=: bigtest: feynmf.dvi feynmp.dvi fmfman.dvi fmfmanps.dvi manual.ps bigtest209: feynmf209.dvi feynmp209.dvi fmfman209.dvi \ fmfman209ps.dvi manual209.ps install: all $(INSTALL_DATA) feynmf.mf $(mfdir) $(INSTALL_DATA) feynmp.mp $(mfdir) $(INSTALL_DATA) feynmf.sty $(texdir) $(INSTALL_DATA) feynmp.sty $(texdir) $(INSTALL_DATA) feynmf.1 $(mandir) $(INSTALL) feynmf.pl $(bindir)/feynmf install.doc: all $(INSTALL_DATA) feynmf.dtx $(docdir) $(INSTALL_DATA) feynmf.drv $(docdir) $(INSTALL_DATA) fmfman.drv $(docdir) $(INSTALL_DATA) $(MANPICS) $(docdir) uninstall: rm -f $(mfdir)/feynmf.mf rm -f $(mfdir)/feynmp.mp rm -f $(texdir)/feynmf.sty rm -f $(texdir)/feynmp.sty rm -f $(bindir)/feynmf rm -f $(mandir)/feynmf.1 uninstall.doc: rm -f $(docdir)/feynmf.dtx rm -f $(docdir)/feynmf.drv rm -f $(docdir)/fmfman.drv feynmf.sty: feynmf.dtx feynmf.ins $(LATEX) feynmf.ins feynmf209.sty: feynmf.dtx feynmf209.ins $(LATEX209) feynmf209.ins feynmf.mf feynmf.drv feynmp.sty feynmp.mp feynmp.drv \ fmfman.drv fmfmanps.drv: feynmf.sty feynmf209.drv feynmp209.sty feynmp209.drv \ fmfman209.drv fmfman209ps.drv: feynmf209.sty feynmf.dvi: feynmf.dtx feynmf.drv feynmf.sty feynmf.mf $(MANPICS) -$(LATEX) $*.drv $(RUN_METAFONT) -$(LATEX) $*.drv $(RUN_MAKEINDEX) $(RESOLVE_XREF) feynmf209.dvi: feynmf.dtx feynmf209.drv feynmf209.sty feynmf.mf $(MANPICS) -$(LATEX209) $*.drv $(RUN_METAFONT) -$(LATEX209) $*.drv $(RUN_MAKEINDEX) $(RESOLVE_XREF209) feynmp.dvi: feynmf.dtx feynmp.drv feynmp.sty feynmp.mp $(MANPICS) -$(LATEX) $*.drv $(RUN_METAPOST) -$(LATEX) $*.drv $(RUN_MAKEINDEX) $(RESOLVE_XREF) feynmp209.dvi: feynmf.dtx feynmp209.drv feynmp209.sty feynmp.mp $(MANPICS) -$(LATEX209) $*.drv $(RUN_METAPOST) -$(LATEX209) $*.drv $(RUN_MAKEINDEX) $(RESOLVE_XREF209) fmfman.dvi: feynmf.dtx fmfman.drv feynmf.sty feynmf.mf $(MANPICS) -$(LATEX) $*.drv $(RUN_METAFONT) -$(LATEX) $*.drv $(RUN_MAKEINDEX) $(RESOLVE_XREF) fmfman209.dvi: feynmf.dtx fmfman209.drv feynmf209.sty feynmf.mf $(MANPICS) -$(LATEX209) $*.drv $(RUN_METAFONT) -$(LATEX209) $*.drv $(RUN_MAKEINDEX) $(RESOLVE_XREF209) fmfmanps.dvi: feynmf.dtx fmfmanps.drv feynmp.sty feynmp.mp $(MANPICS) -$(LATEX) $*.drv $(RUN_METAPOST) -$(LATEX) $*.drv $(RUN_MAKEINDEX) $(RESOLVE_XREF) fmfman209ps.dvi: feynmf.dtx fmfman209ps.drv feynmp209.sty feynmp.mp $(MANPICS) -$(LATEX209) $*.drv $(RUN_METAPOST) -$(LATEX209) $*.drv $(RUN_MAKEINDEX) $(RESOLVE_XREF209) manual.ps.gz: manual.ps gzip < $< > $@ manual.ps: fmfmanps.dvi $(MANPICS) dvips -o $@ $< manual209.ps: fmfman209ps.dvi $(MANPICS) dvips -o $@ $< manpics.1: manpics.mp -mp $< manpics.2 manpics.3: manpics.1 feynmf.1: feynmf.pl pod2man --section 1 \ --release "FeynMF Version $(VERSION).$(RELEASE)$(STATUS)" \ --center "Contributed LaTeX Utilities" $< > $@ clean: rm -f fmfsamp?.* \ *.tfm *.*gf *.*pk \ *.log *.t[1-9] *.t[1-9][0-9] *.t[12][0-9][0-9] \ *.dvi *.aux *.toc *.ilg *.glo *.gls *.idx *.ind \ *.ps *.mpx '#*#' *~ .*~ realclean: clean rm -f feynmf.mf feynmf.sty feynmf.drv feynmp.* fmfman* \ feynmf209.sty feynmf209.drv feynmp209.* distclean: realclean ######################################################################## # Maintenance: DISTFILES = /usr/local/etc/COPYING README Makefile feynmf.dtx \ feynmf.ins feynmf209.ins manpics.mp $(MANPICS) \ feynmf.pl template.tex distdir = feynmf-$(VERSION).$(RELEASE)$(STATUS) CVSTAG = FEYNMF_$(VERSION)_$(RELEASE)$(STATUS) TEXTAG = v$(VERSION).$(RELEASE) M = fileversion: perl -pe \ 's/^\\def\\fileversion\{.*\}/\\def\\fileversion{$(TEXTAG)}/;' \ feynmf.dtx > feynmf.vtmp if cmp -s feynmf.dtx feynmf.vtmp; then \ rm -f feynmf.vtmp; \ else \ mv feynmf.vtmp feynmf.dtx; \ fi commit: fileversion @if test -n "$(M)"; then \ echo "cvs commit -m '$(M)'"; cvs commit -m '$(M)'; \ echo "cvs tag $(CVSTAG)"; cvs tag $(CVSTAG); \ echo "cvs tag -b $(CVSTAG)_"; cvs tag -b $(CVSTAG)_; \ else \ echo "usage: make commit M=''" 1>&2; \ fi dist: $(distdir).tar.gz snap: feynmf-current.tar.gz $(distdir).tar.gz: rm -fr $(distdir) $(distdir).tmp cvs export -r $(CVSTAG) -d $(distdir).tmp feynmf mkdir $(distdir) (cd ./$(distdir).tmp && \ make $(DISTFILES) && \ cp $(DISTFILES) ../$(distdir)) tar cf - $(distdir) | gzip > $@ rm -fr $(distdir) $(distdir).tmp feynmf-current.tar.gz: $(DISTFILES) fileversion rm -fr feynmf-current mkdir feynmf-current touch feynmf-current/1_THIS_IS_A_SNAPSHOT_OF_ touch feynmf-current/2_WORK_IN_PROGRESS_AND__ touch feynmf-current/3_NOT_YET_RELEASED_CODE_ cp $(DISTFILES) feynmf-current # perl -pe \ # 's/\[\\filedate/[(UNRELEASED and UNSUPPORTED snapshot)/;' \ feynmf.dtx > feynmf-current/feynmf.dtx tar cf - feynmf-current | gzip > $@ rm -fr feynmf-current ######################################################################## # Local Variables: # mode:text # End: