/[ascend]/trunk/base/autotools/NOTES.configure
ViewVC logotype

Contents of /trunk/base/autotools/NOTES.configure

Parent Directory Parent Directory | Revision Log Revision Log


Revision 134 - (show annotations) (download)
Wed Dec 21 04:37:33 2005 UTC (14 years, 2 months ago) by johnpye
File size: 2205 byte(s)
Renamed unixAC213 to 'autotools'
Updated 'config.guess' to a newer version that can detect MinGW.
1 Ok, so here's the assumptions and goals.
2
3 0) source directory layout:"
4 blas
5 linpack
6 lsod
7 base
8 base/generic
9 base/generic/[compiler, etc]
10 base/unixac213
11
12 1) configure and its auxiliaries will exist in unixac213 for the 2.13 autoconf build.
13 2) relative to unixac213, the source code is in ../generic.
14 3) unixac213/configure may be run from *anywhere*
15 and therefore the makefiles must be structured accordingly.
16 4) We will require gnu make in the autoconf-based builds.
17 gmake is available on all but windows now, and windows users
18 generally want to use a Visual tool or jam or something other
19 than autoconf anyway.
20
21 Let's assume we're going to build in /tmp/ascend
22 and the subversion source is in $HOME/newcmu.
23 This means $HOME/newcmu/code/trunk/base/unixAC213 exists and is the home
24 of the configure source for ac213 purposes.
25
26 The implications of 3) are--
27
28 a) generated files will all be under /tmp/ascend, including:
29 makefiles from configure, parser from yacc, .o from compiler, etc.
30 b) The source is never touched by the build process, just read.
31 c) If we want to blow away the build mess and start over, it's easy.
32 d) configure has to have a clue or be given one. The autotools standard
33 says the clue is given: --srcdir=where-the-configure-is-dir
34 e) VPATH must *always* be present in the generated makefiles,
35 not just when --srcdir is passed to configure. Note autoconf 2.13
36 gets rid of VPATH lines in makefiles whenever it can, as it isn't
37 portable to solaris make, so we force VPATH lines to be left in
38 by using a gmake-ism (VPATH := or VPATH += rather than VPATH=).
39
40
41 So the build example cases that must work are:
42
43 A) (build in place -- this is what we should never do, btw.)
44 cd $HOME/newcmu/code/trunk/base/unixAC213; ./configure {stuff}; make; make install
45
46 B) (srcdir build)
47 cd /tmp/ascend; ../../home/baallan/newcmu/code/trunk/base/unixAC213/configure --srcdir=$HOME/newcmu/code/trunk/base/unixAC213 {stuff}; make; make install
48
49 (B) is what Mark had working almost forever while we were at CMU,
50 but under the old directory layout. When (B) works, A is the trivial
51 case, so the challenge is to make B work and to use --src-dir as
52 required when configuring ascend.

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22