httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Reid" <dr...@jetnet.co.uk>
Subject [PATCH] Build process
Date Mon, 16 Apr 2001 22:43:36 GMT
Folks,

At ApacheCon I talked to a few people about altering the way the build
process is done in apache.  There was general agreement on the principal,
and here is the patch.

http://www.apache.org/~dreid/diffs

The reason for the change may not be apparent to a lot of people 9from my
conversations it's not) so I'll try to explain.

On some platforms ("brain dead" may well describe them) in order to build a
DSO we need to provide FULL link details in one way or another.  On some
platforms it needs a complete list of symbols (AIX) and on others it needs
to be able to resolve all symbols at link time.  In fact on BeOS it's even
more bizarre (well you'd have guessed that wouldn't you??).

The solution to a lot of these seems to be to change the build process to 2
stages.

At present when we do a build we make every object we need in the sub
directories, static or shared.  In reality we only need to make the static
objects as the aim of the make is to get the httpd executable.  This becomes
our first step.  Simply go through and make all static objects and link the
httpd and support binaries.

Step 2 we simply walk the directory structure and build all the shared
objects we need.  Before and after we do this we have an opportunity to have
a platform specific command executed.  The intent of these commands is where
we get a lot of the flexibility that this patch offers.  On AIX we can
generate our list of symbols direct from the httpd binary, on BeOS we can
create and destroy the link we'll link against, on other platforms we can do
whatever is required.

If we aren't doing any shared object builds then we don't even consider step
2, simply do step 1 and so nothing changes.

This has been tested on FreeBSD 4.3 and BeOS so far and Victor has used to
on AIX (with I think some success).

If I don't hear any violent concerns I'll commit before I go to Denver on
Thursday.

david



Mime
View raw message