diff --git a/Makefile b/Makefile index ce6308dbf..ca85d257b 100644 --- a/Makefile +++ b/Makefile @@ -17,6 +17,9 @@ ifndef DODEPEND DODEPENDOPT = "DODEPEND=no" endif +doc:: + (cd doc && $(MAKE) $(DODEPENDOPT) install) || exit 1; + install:: for dir in $(SUBDIRS); \ do \ diff --git a/configure.in b/configure.in index b3f10da0d..5ff933c28 100644 --- a/configure.in +++ b/configure.in @@ -344,6 +344,9 @@ AC_PROG_CPP AC_PROG_CXXCPP AC_CHECK_PROG(AR,ar,ar) AC_CHECK_PROG(PERL,perl,perl) +AC_PATH_PROG(PDFLATEX,pdflatex,,$PATH:/usr/local/bin) +AC_PATH_PROG(PSLATEX,pslatex,,$PATH:/usr/local/bin) +AC_PATH_PROG(BIBTEX,bibtex,,$PATH:/usr/local/bin) dnl The lack of certain tools is a show stopper @@ -568,5 +571,6 @@ AC_SUBST(ENABLESHARED) dnl make Makefiles in object tree $PERL $srcdir/bin/objectdir.pl $EXCLUDED_DIRS $srcdir -AC_OUTPUT(src/bin/MakeVars src/lib/MakeVars src/lib/MakeRules src/lib/MakeSuffixRules) +AC_OUTPUT(src/bin/MakeVars src/lib/MakeVars src/lib/MakeRules src/lib/MakeSuffixRules + doc/MakeVars doc/MakeRules doc/MakeSuffixRules) diff --git a/doc/MakeRules.in b/doc/MakeRules.in new file mode 100644 index 000000000..71507b3f6 --- /dev/null +++ b/doc/MakeRules.in @@ -0,0 +1,17 @@ + +default: $(TARGET) + +install:: install_target + +install_target:: $(TARGET) + $(INSTALL) $(INSTALLDIROPT) $(docdir) + $(LTINST) $(INSTALL) $(INSTALLDOCOPT) $< $(docdir) + +clean: $(SRCDIR)/Makefile + -rm -f $(TEXGARBAGE) + +distclean:: clean + +targetclean:: clean + +realclean:: clean diff --git a/doc/MakeSuffixRules.in b/doc/MakeSuffixRules.in new file mode 100644 index 000000000..1cfb87706 --- /dev/null +++ b/doc/MakeSuffixRules.in @@ -0,0 +1,20 @@ + +ifdef BIBTEX +ifdef PDFLATEX +%.pdf: $(SRCDIR)/%.tex + TEXINPUTS=$(TEXINPUTS) $(PDFLATEX) $< + BIBINPUTS=$(BIBINPUTS) $(BIBTEX) $(@:%.pdf=%) + TEXINPUTS=$(TEXINPUTS) $(PDFLATEX) $< + TEXINPUTS=$(TEXINPUTS) $(PDFLATEX) $< + TEXINPUTS=$(TEXINPUTS) $(PDFLATEX) $< +endif + +ifdef PSLATEX +%.ps: $(SRCDIR)/%.tex + TEXINPUTS=$(TEXINPUTS) $(PSLATEX) $< + BIBINPUTS=$(BIBINPUTS) $(BIBTEX) $(@:%.ps=%) + TEXINPUTS=$(TEXINPUTS) $(PSLATEX) $< + TEXINPUTS=$(TEXINPUTS) $(PSLATEX) $< + TEXINPUTS=$(TEXINPUTS) $(PSLATEX) $< +endif +endif diff --git a/doc/MakeVars.in b/doc/MakeVars.in new file mode 100644 index 000000000..1af8a10be --- /dev/null +++ b/doc/MakeVars.in @@ -0,0 +1,52 @@ +# Emacs should use -*- Makefile -*- mode. + +# this is usually overridden +TARGET_TO_MAKE = $(shell basename `pwd`) + +ifndef SRCDIR + SRCDIR = . +endif +SRCTOPDIR = $(SRCDIR)/$(TOPDIR) + +host = @host@ +host_cpu = @host_cpu@ +host_vendor = @host_vendor@ +host_os = @host_os@ + +target = @target@ +target_cpu = @target_cpu@ +target_vendor = @target_vendor@ +target_os = @target_os@ + +LIBINT_VERSION = @LIBINT_VERSION@ +LIBINT_SO_VERSION = @LIBINT_SO_VERSION@ +BUILDID = @BUILDID@ + +PDFLATEX = @PDFLATEX@ +PSLATEX = @PSLATEX@ +BIBTEX = @BIBTEX@ +# The document suffix (pdf or ps) +# Preferentially make pdf manuals, only revert to ps if necessary +ifdef BIBTEX +ifdef PSLATEX +DOCSUF = ps +LATEX = $(PSLATEX) +endif +ifdef PDFLATEX +DOCSUF = pdf +LATEX = $(PDFLATEX) +endif +endif +TEXINPUTS = :$(SRCDIR):$(SRCDIR)/..: +BIBINPUTS = $(TEXINPUTS) +TEXGARBAGE = *.bbl *.blg *.aux *.log *.ps *.pdf + +INSTALL = @INSTALL@ +INSTALLDIROPT = -d -m 0755 +INSTALLDOCOPT = -m 0644 + +prefix=@prefix@ +exec_prefix=@exec_prefix@ +docdir=$(prefix)/doc +includedir=@libintincludedir@ + diff --git a/doc/Makefile b/doc/Makefile new file mode 100644 index 000000000..82e063b98 --- /dev/null +++ b/doc/Makefile @@ -0,0 +1,55 @@ +TOPDIR=.. +ifndef SRCDIR + SRCDIR=$(shell pwd) +endif + +include $(TOPDIR)/Makedirlist + +SUBDIRS = progman + +default:: + for dir in $(SUBDIRS); \ + do \ + (cd $${dir} && $(MAKE) $(JOBS)) || exit 1; \ + done + +ifndef DODEPEND +DODEPENDOPT = "DODEPEND=no" +endif + +install:: + for dir in $(SUBDIRS); \ + do \ + (cd $${dir} && $(MAKE) $(DODEPENDOPT) install) || exit 1; \ + done + +install_target:: + for dir in $(SUBDIRS); \ + do \ + (cd $${dir} && $(MAKE) $(DODEPENDOPT) install_target) || exit 1; \ + done + +clean:: + for dir in $(SUBDIRS); \ + do \ + (cd $${dir} && $(MAKE) $(DODEPENDOPT) clean) || exit 1; \ + done + +distclean:: + for dir in $(SUBDIRS); \ + do \ + (cd $${dir} && $(MAKE) $(DODEPENDOPT) distclean) || exit 1; \ + done + +targetclean:: + for dir in $(SUBDIRS); \ + do \ + (cd $${dir} && $(MAKE) $(DODEPENDOPT) targetclean) || exit 1; \ + done + +realclean:: + for dir in $(SUBDIRS); \ + do \ + (cd $${dir} && $(MAKE) $(DODEPENDOPT) realclean) || exit 1; \ + done + diff --git a/doc/progman/Makefile b/doc/progman/Makefile new file mode 100644 index 000000000..870cdccf3 --- /dev/null +++ b/doc/progman/Makefile @@ -0,0 +1,11 @@ +TOPDIR=../.. +ifndef SRCDIR + SRCDIR=$(shell pwd) +endif +TOPOBJDIR = $(shell ls -d `pwd`/$(TOPDIR)) + +TARGET = progman.$(DOCSUF) + +include $(TOPDIR)/doc/MakeVars +include $(TOPDIR)/doc/MakeRules +include $(TOPDIR)/doc/MakeSuffixRules diff --git a/doc/progman/progman.tex b/doc/progman/progman.tex index 53028210c..7a1061beb 100644 --- a/doc/progman/progman.tex +++ b/doc/progman/progman.tex @@ -3,7 +3,6 @@ % \documentclass[12pt]{article} -\usepackage{html} \usepackage{amsmath} \setlength{\textheight}{9in} \setlength{\textwidth}{6.5in} diff --git a/doc/progman/refs.bib b/doc/progman/refs.bib index 3bcef9546..249b5071c 100644 --- a/doc/progman/refs.bib +++ b/doc/progman/refs.bib @@ -60,7 +60,7 @@ @Misc{Libint1 author = "J.~T.~Fermann and E.~F.~Valeev", title = "{Libint: Machine-generated library for efficient evaluation of molecular integrals over Gaussians}", howpublished = "", - note = "\url{http://www.ccmst.gatech.edu/evaleev/libint/}", + note = "Freely available at {\tt http://www.ccmst.gatech.edu/evaleev/libint/} or one of the authors.", year = 2003 } } diff --git a/updates b/updates index 1da8a0695..5c8697a56 100644 --- a/updates +++ b/updates @@ -1,4 +1,6 @@ +12/05/2003: Added programmer's documentation. -EFV + 12/05/2003: Fixed Makefiles to avoid compilation errors. -EFV 12/05/2003: Started updates file. -EFV