top_srcdir = @top_srcdir@ srcdir = @srcdir@ VPATH = @srcdir@ SHELL = /bin/sh AUTODOC = ${srcdir}/../devkit/autodoc CEXCERPT = ${srcdir}/../devkit/cexcerpt # Installation targets # prefix = @prefix@ exec_prefix = @exec_prefix@ datarootdir = @datarootdir@ bindir = @bindir@ libdir = @libdir@ includedir = @includedir@ mandir = @mandir@ docdir = @docdir@ pdfdir = @pdfdir@ mandir = @mandir@ man1dir = ${mandir}/man1 man1ext = .1 # Each module in this list obeys three documentation conventions: # # 1. It has a .tex file documenting its API. # These are handwritten, in the source directory with # the .c and .h files. # # 2. It can be processed with autodoc_functions to # produce the function documentation appendix to # each module. These appendices go to the # autotext/ subdir. # # 3. It can be processed with cexcerpts to extract # verbatim code fragments for inclusion in the # documentation. These fragments go to the cexcerpts/ # subdir. # MODULES = easel\ esl_alphabet\ esl_buffer\ esl_cluster\ esl_dirichlet\ esl_distance\ esl_dmatrix\ esl_dsqdata\ esl_exponential\ esl_fileparser\ esl_gamma\ esl_getopts\ esl_gev\ esl_gumbel\ esl_histogram\ esl_hyperexp\ esl_keyhash\ esl_minimizer\ esl_mpi\ esl_msa\ esl_msacluster\ esl_msaweight\ esl_normal\ esl_paml\ esl_random\ esl_randomseq\ esl_ratematrix\ esl_regexp\ esl_rootfinder\ esl_scorematrix\ esl_sq\ esl_sqio\ esl_sse\ esl_ssi\ esl_stack\ esl_stats\ esl_stopwatch\ esl_stretchexp\ esl_tree\ esl_vectorops\ esl_weibull\ esl_wuss # esl_mixgev # esl_msafile # esl_swat TEXFILES = \ codestyle.tex\ copyright.tex\ doctricks.tex\ format_a2m.tex\ format_ncbi.tex\ format_stockholm.tex\ format_wuss.tex\ install.tex\ installation.tex\ intro.tex\ macros.tex\ main.tex\ statistics.tex\ titlepage.tex\ typography.tex .PHONY: pdf install uninstall clean distclean pdf: current.pdf current.pdf: symlinks.stamp autodoc.stamp cexcerpt.stamp apitables.stamp @for prog in pdflatex bibtex; do \ command -v $$prog >/dev/null 2>&1 || { echo >&2 "The $$prog program is required to build the Userguide, but it's not installed. Aborting."; exit 1; } \ done @echo " LATEX current.pdf (see latex.log for output)" @pdflatex -interaction=nonstopmode main > latex.log 2>&1 @bibtex main >> latex.log 2>&1 @pdflatex main >> latex.log 2>&1 @pdflatex main >> latex.log 2>&1 @mv main.pdf current.pdf # symlinks.stamp: if we're in a build tree, symlink the tex files. # if we're in a source tree, no-op. symlinks.stamp: @if test "x${srcdir}" != "x."; then \ for texfile in ${TEXFILES}; do \ if ! (test -e $$texfile); then \ ln -s ${srcdir}/$$texfile . ;\ fi ;\ done ;\ if ! (test -e figures); then \ ln -s ${srcdir}/figures . ;\ fi ;\ fi @for module in ${MODULES}; do \ if ! (test -e $$module.tex); then \ ln -s ${srcdir}/../$$module.tex . ;\ fi ;\ done @echo "symlinks created:\c" > $@ @date >> $@ autodoc.stamp: mkdir -p autotext for module in ${MODULES}; do\ ${AUTODOC} ${srcdir}/../$$module.c > autotext/$${module}_functions.tex;\ done @echo "autotext created:\c" > $@ @date >> $@ cexcerpt.stamp: mkdir -p cexcerpts for module in ${MODULES}; do\ ${CEXCERPT} ${srcdir}/../$$module.c cexcerpts;\ ${CEXCERPT} ${srcdir}/../$$module.h cexcerpts;\ done @echo "cexcerpts created:\c" > $@ @date >> $@ apitables.stamp: mkdir -p apitables for module in ${MODULES}; do\ ${AUTODOC} -t ${srcdir}/../$$module.c > apitables/$${module}_api.tex;\ done @echo "apitables created:\c" > $@ @date >> $@ install: ${INSTALL} -m 0644 current.pdf ${DESTDIR}${pdfdir}/ uninstall: -rm -f ${DESTDIR}${pdfdir}/current.pdf clean: if test "x${srcdir}" != "x."; then \ for texfile in ${TEXFILES}; do \ if (test -L $$texfile); then \ rm -f $$texfile ;\ fi ;\ done ;\ if (test -L figures); then \ rm -f figures ;\ fi ;\ fi for module in ${MODULES}; do \ if (test -L $$module.tex); then \ rm -f $$module.tex ;\ fi ;\ done -rm -f symlinks.stamp autodoc.stamp cexcerpt.stamp apitables.stamp -rm -rf cexcerpts -rm -rf autotext -rm -rf apitables -rm -f latex.log -rm -f x.log -rm -f *~ TAGS -rm -f main.log main.out main.pdf main.aux main.toc -rm -f main.bbl main.blg main.brf -rm -f typography.log typography.aux typography.out ifndef V @echo ' ' CLEAN documentation endif distclean: clean -rm -f Makefile -rm -f current.pdf