autoconf
[Top][All Lists]
Advanced

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

Re: Problems with bringing mozilla's configury up to date


From: Christopher Seawood
Subject: Re: Problems with bringing mozilla's configury up to date
Date: Mon, 19 May 2003 14:19:40 -0700
User-agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.4b) Gecko/20030505

Philipp Thomas wrote:

I'm trying to adapt Mozilla's autoconf stuff to current autoconf in order to
be able to make configure regenerable and adaptable. Now mozilla does things
in its own special way.

I'm not sure how using autoconf 2.13 makes Mozilla's configure less regenerable or less adaptable but to get it to work with autoconf 2.5x will probably require a major rewrite/butchering of the current script (which is not necessarily a bad thing).

Mozilla's initial problems with autoconf 2.5x have already been outlined at http://bugzilla.mozilla.org/show_bug.cgi?id=104642 .

The major known problems are as follows:

IIRC, the MOZ_TOPSRCDIR define needs to be moved into the toplevel configure.in script so that it's not processed before AC_INIT is called.

Autoconf 2.5x requires that macros only be called once which screws up the cross-compiling checks and some other conditional library checks. When building a specific version of the browser (say against gtk2), we don't want to check for unneeded libraries (like gtk1 or qt). I still don't understand why conditional checks are frowned upon especially when some of them (like AC_PROG_CXX) will stop the script if they fail.

There appears to be no mechanism in autoconf 2.5x to allow extra arguments to be passed down to sub-configures. This is needed for Mozilla as several of the libraries in cvs are released as standalone libraries and we need to pass options down from the toplevel configure to configure those sub-builds to suit the browser build. It's not worth further forking those sub-projects just to change their default build configuration. We exploit some exposed internal autoconf 2.13 variables & functions to get that hack to work.

The toplevel Mozilla configure script contains a hack to generate a mozilla-config.h header from any AC_DEFINEs which were called durinng configure. (Yes, there should have been a mozilla-config.h.in file, don't get me started.) Recently, that hack was hacked to allow modules to have their own individual module-config.h headers.

I think that should be all of the major gotchas.

- cls






reply via email to

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