axiom-developer
[Top][All Lists]
Advanced

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

RE: [Axiom-developer] [build-improvements] Requests for discussion


From: Page, Bill
Subject: RE: [Axiom-developer] [build-improvements] Requests for discussion
Date: Tue, 1 Aug 2006 17:49:13 -0400

Gaby,

On Tuesday, August 01, 2006 3:50 PM you wrote:
> 
>   Instead of fiddling at infinitum with the new build machinery on
> my local disk.  I decided to trim it down to something "simple" to
> request feedback about some aspects of the work.
> 
>   The core goal is to move Axiom's build system to GNU Autotools
> which have become quite standard now, in the Unix-world.

Yes! ++1

> 
>    For that I've converted the current configure file to
> configure.ac (which Autoconf will use to regenerate configure).
> The main motivation here is factor out many platforms variability
> issues and dump them on Autoconf -- who already knows how to solve
> them.
> 
>    Axiom has the requirement that the source files must be
> literate -- use of pamphlet files.  Autoconf expects its input to
> be in particular form.  Furthermore, the pamphlet file requirement
> introduces an unpleasant bootstrapping issue that will hopefully
> be resolved.

Are you referring to the problem of the noweb dependency? I think
this is not so much of a problem if we treat it properly as a
dependency.

configure.ac itself should be a named chunk - probably in the main
Makefile.pamphlet. This might make regenerating ./configure a little
more complex than usual but not much.

Most open source installations ship a pre-generated ./configure
file and I think Axiom should be no different.

The first thing ./configure should do is check for noweb and tell
you what to do about it if it is not found. One "last resort" option
to ./configure can be to build and install noweb from the sources
supplied with Axiom. But in general Axiom should not be in the
business of re-distributing noweb.

> So, in its current form, I put the literate stuff in comments, so
> that if you do
> 
>     cat configure.ac | sed -e 's/^## //' > configure.tex
> 
> you can an almost LaTeX file.  "Almost" because LaTeX commands need
> to start with a backslash.  That character used to be reserved for
> line continuation in shell world.  So to avoid any surprise, I used
> the percent character (which unfortunately is LaTeX comment 
> character).  So to get the LaTeX document, one needs to apply another
> sed that replaces the percent character with the backslash character.
> 
> I've tested that I can feed the file to Autoconf, get a configure
> file out of it and launch a successful build.
> 
> This work is being done on the "build-improvements" branch -- and it
> has not been committed there yet.
> 
> Before painting myself into a corner, I would like to have feedbacks
> from all y'all.
> 

All this looks like a horrible hack to me - unless I am missing
something fairly basic. What is wrong with the usual way of using
noweb?

Regards,
Bill Page.




reply via email to

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