axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Axiom-developer] Re: article "standard" header/footer


From: root
Subject: [Axiom-developer] Re: article "standard" header/footer
Date: Tue, 29 Nov 2005 20:39:32 -0500

> 
> > =======================================================================
> > and now the standard "tail":
> > =======================================================================
> > \section{Makefile}
> > <<*>>=
> > PROJECT=tpd
> > TANGLE=/usr/local/bin/NOTANGLE
> > WEAVE=/usr/local/bin/NOWEAVE
> > LATEX=/usr/bin/latex
> > LISP=/sei/lisp
> > MAKEINDEX=/usr/bin/makeindex
> > 
> > all: ${PROJECT}.lisp ${PROJECT}.dvi test
> > 
> > ${PROJECT}.lisp: ${PROJECT}.pamphlet
> >     ${TANGLE} -Rlisp ${PROJECT}.pamphlet >${PROJECT}.lisp
> > 
> > ${PROJECT}.dvi:
> >     ${TANGLE} -Rdummyindex ${PROJECT}.pamphlet >${PROJECT}.ind
> >     ${WEAVE} -t8 -delay ${PROJECT}.pamphlet >${PROJECT}.tex
> >     ${LATEX} ${PROJECT}.tex 
> >     @{MAKEINDEX} ${PROJECT}.idx
> >     ${LATEX} ${PROJECT}.tex 
> > 
> > test:
> >     cat ${PROJECT}.lisp | ${LISP}
> > 
> > remake:
> >     ${TANGLE} -t8 ${PROJECT}.pamphlet >Makefile.${PROJECT}
> > 
> > @
> 
> No, I cannot follow. You mean the Makefile is part of the file that 
> contains the LISP code?

yes. this goes to the issue of writing the document. to build axiom
you must do the "make" from the root directory as every subdirectory
make gets its environment information managed by its parent make.
this is, ultimately, a bad design on my part but it exists in the
current system. in the future i hope to eliminate most, if not all, 
of the makefiles in the source tree. 

there are two reasons for including a Makefile as the default chunk
(only one of which is axiom related).

someone writing a pamphlet NOW has the problem that they need
to incrementally write/modify/write. and if you move around quite
a bit in the source tree (which i do) it is quite convenient to just type 
  make -f Makefile.foo
and have foo "do the right thing".

Note that these "developement Makefiles" are NOT used by the build
system. they are only there for development use. 

i can't claim it's a good idea for everyone but it makes development
incredibly faster since it gives emacs a way to know how to build 
any file. 

notice that none of the actual sources in the axiom tree contain
these makefiles. so i guess i managed to claim as "standard" my
"local standard" for working which is a bad idea. 

t




reply via email to

[Prev in Thread] Current Thread [Next in Thread]