Simon Urbanek
2003-Sep-14 19:17 UTC
[Rd] configure problem in R-devel caused by conditionals
I re-generated configure of the latest R-devel with autoconf 2.57 and got the following problem: configure: error: conditional "HAVE_ORBIT" was never defined. Usually this means the macro was only invoked conditionally. (resolving HAVE_ORBIT leaves us with HAVE_GNORBA causing the same problem. You should be able to reproduce it by running autoreconf (or aclocal; autoconf - not just autoconf!) and configure on the r-devel tree). The culprit is primarily located in acinclude.m4, namely the macro GNOME_GNORBA_HOOK (used by GNOME_GNORBA_CHECK) afaik it's never used in configure.ac (I couldn't find it at least), but the conditionals are "seen" by autoconf. Since all conditionals must be properly defined, it bails out. (from automake docs: The shell condition (suitable for use in a shell if statement) is evaluated when configure is run. Note that you must arrange for every AM_CONDITIONAL to be invoked *every* time configure is run - if AM_CONDITIONAL is run conditionally (e.g., in a shell if statement), then the result will confuse automake. ) Removing those macros from acinclude.m4 resolves the issue. But, I'm wondering: in the m4 directory the README states that the files in m4 are used to create acinclude.m4 - is that done by hand or is there any "official" way to do it? There is no script called 'bootstrap' in the root dir so the whole autoconf process seems to be non-standartized ... (ok, in the develper docs it says that one should simply run autoconf .. but then such issues as the above won't become visible as autoconf doesn't call aclocal, whereas e.g. autoreconf does ...). So, how is the 'official' configure created? --- Simon Urbanek Department of computer oriented statistics and data analysis Universit?tsstr. 14 86135 Augsburg Germany Tel: +49-821-598-2236 Fax: +49-821-598-2280 Simon.Urbanek@Math.Uni-Augsburg.de http://simon.urbanek.info
Prof Brian Ripley
2003-Sep-14 20:46 UTC
[Rd] configure problem in R-devel caused by conditionals
On Sun, 14 Sep 2003, Simon Urbanek wrote:> I re-generated configure of the latest R-devel with autoconf 2.57 and > got the following problem: > > configure: error: conditional "HAVE_ORBIT" was never defined. > Usually this means the macro was only invoked conditionally. > > (resolving HAVE_ORBIT leaves us with HAVE_GNORBA causing the same > problem. You should be able to reproduce it by running autoreconf (or > aclocal; autoconf - not just autoconf!) and configure on the r-devel > tree). > > The culprit is primarily located in acinclude.m4, namely the macro > GNOME_GNORBA_HOOK (used by GNOME_GNORBA_CHECK) > afaik it's never used in configure.ac (I couldn't find it at least), > but the conditionals are "seen" by autoconf. Since all conditionals > must be properly defined, it bails out. > (from automake docs: The shell condition (suitable for use in a shell > if statement) is evaluated when configure is run. Note that you must > arrange for every AM_CONDITIONAL to be invoked *every* time configure > is run - if AM_CONDITIONAL is run conditionally (e.g., in a shell if > statement), then the result will confuse automake. ) > > Removing those macros from acinclude.m4 resolves the issue. > > But, I'm wondering: in the m4 directory the README states that the > files in m4 are used to create acinclude.m4 - is that done by hand or > is there any "official" way to do it? There is no script called > 'bootstrap' in the root dir so the whole autoconf process seems to be > non-standartized ... (ok, in the develper docs it says that one should > simply run autoconf .. but then such issues as the above won't become > visible as autoconf doesn't call aclocal, whereas e.g. autoreconf does > ...). So, how is the 'official' configure created?configure --enable-maintainer-mode make and I think that is as `official' a way as any. FWIW, autoconf works for me on 2.57. -- Brian D. Ripley, ripley@stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595