httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From GOMEZ Henri <hgo...@slib.fr>
Subject RE: Apache 2.0.27 and 2.0.28 RPM available
Date Mon, 26 Nov 2001 08:21:26 GMT
>We (as the Apache Group) can't make the assumption that every 
>OS knows what they are doing.  What you guys should probably do 
>is *always* run ./buildconf to ensure that your libtool version 
>overrides whatever one we distribute.  We're going to try to make 
>the decision that is best across all platforms - which is to 
>recommend using the one we provide in the release tarball.  In your 
>situations (both you and Henri), your libtool is known to be 
>better - so, just do ./buildconf and it'll magically be identical 
>to the one you have in your path.  =)

I'm just rebuilding my RPM with the ./buildconf and but it fail,
nota that my Redhat 6.2 box use libtool 1.3.4 :

Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.76092
+ umask 022
+ cd /usr/src/redhat/BUILD
+ cd httpd-2_0_28
+ cat
+ ./buildconf
rebuilding srclib/apr/configure
buildconf: checking installation...
buildconf: autoconf version 2.13 (ok)
buildconf: libtool version 1.3.4 (ok)
Copying libtool helper files ...
Creating include/arch/unix/apr_private.h.in ...
Creating configure ...
rebuilding srclib/apr-util/configure
Creating include/private/apu_config.h ...
Creating configure ...
Invoking xml/expat/buildconf.sh ...
Incorporating /usr/share/aclocal/libtool.m4 into aclocal.m4 ...
Copying libtool helper files ...
Putting files in AC_CONFIG_AUX_DIR, `conftools'.
Creating config.h.in ...
Creating configure ...
rebuilding srclib/pcre/configure
rebuilding include/ap_config_auto.h.in
rebuilding configure
+ CFLAGS=-O2 -m486 -fno-strength-reduce
+ ./configure --with-program-name=httpd2 --with-port=8092
--with-mpm=threaded --prefix=/etc/httpd2 --exec-prefix=/usr
--bindir=/usr/sbin --sbindir=/usr/sbin --libexecdir=/usr/lib/apache2
--mandir=/usr/man --localstatedir=/var --sysconfdir=/etc/httpd2/conf
--datadir=/var/www2 --includedir=/usr/include/apache2
--enable-layout=RedHat6 --enable-modules=all --enable-mods-shared=all
--enable-ssl --enable-so --with-ssl=/usr/include/
creating cache ./config.cache
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking build system type... i686-pc-linux-gnu

...

/usr/src/redhat/BUILD/httpd-2_0_28/include/ap_config_auto.h:158: warning:
`SERVER_CONFIG_FILE' redefined
/usr/src/redhat/BUILD/httpd-2_0_28/include/ap_config_auto.h:152: warning:
this is the location of the previous definition
/bin/sh /usr/src/redhat/BUILD/httpd-2_0_28/srclib/apr/libtool --silent
--mode=compile gcc  -pthread -DNO_DBM_REWRITEMAP  -O2 -m486
-fno-strength-reduce  -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500
-D_BSD_SOURCE -D_SVID_SOURCE -I/usr/include/db1
-DAP_HAVE_DESIGNATED_INITIALIZER   -I.
-I/usr/src/redhat/BUILD/httpd-2_0_28/os/unix
-I/usr/src/redhat/BUILD/httpd-2_0_28/server/mpm/threaded
-I/usr/src/redhat/BUILD/httpd-2_0_28/modules/http
-I/usr/src/redhat/BUILD/httpd-2_0_28/modules/proxy
-I/usr/src/redhat/BUILD/httpd-2_0_28/include
-I/usr/src/redhat/BUILD/httpd-2_0_28/srclib/apr/include
-I/usr/src/redhat/BUILD/httpd-2_0_28/srclib/apr-util/include
-I/usr/include/openssl -I/usr/src/redhat/BUILD/httpd-2_0_28/modules/dav/main
-c ssl_util_ssl.c && touch ssl_util_ssl.slo
In file included from
/usr/src/redhat/BUILD/httpd-2_0_28/include/ap_config.h:270,
                 from /usr/src/redhat/BUILD/httpd-2_0_28/include/httpd.h:72,
                 from mod_ssl.h:93,
                 from ssl_util_ssl.c:60:
/usr/src/redhat/BUILD/httpd-2_0_28/include/ap_config_auto.h:158: warning:
`SERVER_CONFIG_FILE' redefined
/usr/src/redhat/BUILD/httpd-2_0_28/include/ap_config_auto.h:152: warning:
this is the location of the previous definition
/bin/sh /usr/src/redhat/BUILD/httpd-2_0_28/srclib/apr/libtool --silent
--mode=compile gcc  -pthread -DNO_DBM_REWRITEMAP  -O2 -m486
-fno-strength-reduce  -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500
-D_BSD_SOURCE -D_SVID_SOURCE -I/usr/include/db1
-DAP_HAVE_DESIGNATED_INITIALIZER   -I.
-I/usr/src/redhat/BUILD/httpd-2_0_28/os/unix
-I/usr/src/redhat/BUILD/httpd-2_0_28/server/mpm/threaded
-I/usr/src/redhat/BUILD/httpd-2_0_28/modules/http
-I/usr/src/redhat/BUILD/httpd-2_0_28/modules/proxy
-I/usr/src/redhat/BUILD/httpd-2_0_28/include
-I/usr/src/redhat/BUILD/httpd-2_0_28/srclib/apr/include
-I/usr/src/redhat/BUILD/httpd-2_0_28/srclib/apr-util/include
-I/usr/include/openssl -I/usr/src/redhat/BUILD/httpd-2_0_28/modules/dav/main
-c ssl_util_table.c && touch ssl_util_table.slo
/bin/sh /usr/src/redhat/BUILD/httpd-2_0_28/shlibtool --silent --mode=link
gcc  -pthread -DNO_DBM_REWRITEMAP  -O2 -m486 -fno-strength-reduce  -DLINUX=2
-D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE
-I/usr/include/db1 -DAP_HAVE_DESIGNATED_INITIALIZER   -I.
-I/usr/src/redhat/BUILD/httpd-2_0_28/os/unix
-I/usr/src/redhat/BUILD/httpd-2_0_28/server/mpm/threaded
-I/usr/src/redhat/BUILD/httpd-2_0_28/modules/http
-I/usr/src/redhat/BUILD/httpd-2_0_28/modules/proxy
-I/usr/src/redhat/BUILD/httpd-2_0_28/include
-I/usr/src/redhat/BUILD/httpd-2_0_28/srclib/apr/include
-I/usr/src/redhat/BUILD/httpd-2_0_28/srclib/apr-util/include
-I/usr/include/openssl -I/usr/src/redhat/BUILD/httpd-2_0_28/modules/dav/main
-export-dynamic      -o mod_ssl.la -rpath /usr/lib/apache2 -module
-avoid-version  mod_ssl.lo ssl_engine_config.lo ssl_engine_dh.lo
ssl_engine_ds.lo ssl_engine_ext.lo ssl_engine_init.lo ssl_engine_io.lo
ssl_engine_kernel.lo ssl_engine_log.lo ssl_engine_mutex.lo
ssl_engine_pphrase.lo ssl_engine_rand.lo ssl_engine_vars.lo ssl_expr.lo
ssl_expr_eval.lo ssl_expr_parse.lo ssl_expr_scan.lo ssl_scache.lo
ssl_scache_dbm.lo ssl_scache_shmcb.lo ssl_scache_shmht.lo ssl_util.lo
ssl_util_ssl.lo ssl_util_table.lo  -ldb1 -lm -lcrypt -lnsl -ldl -lssl
-lcrypto
/usr/src/redhat/BUILD/httpd-2_0_28/srclib/apr-util/xml/expat/lib/libexpat.la

shlibtool: link: error: cannot link shared libraries into libtool libraries
make[4]: *** [mod_ssl.la] Error 1
make[4]: Leaving directory `/usr/src/redhat/BUILD/httpd-2_0_28/modules/ssl'
make[3]: *** [shared-build-recursive] Error 1
make[3]: Leaving directory `/usr/src/redhat/BUILD/httpd-2_0_28/modules/ssl'
make[2]: *** [shared-build-recursive] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/httpd-2_0_28/modules'
make[1]: *** [shared-build-recursive] Error 1
make[1]: Leaving directory `/usr/src/redhat/BUILD/httpd-2_0_28'
make: *** [all-recursive] Error 1
Bad exit status from /var/tmp/rpm-tmp.76092 (%build)



>> Hm, well I just shang it on 443 regardless. Should add some Debconf
>> stuff to make this configurable. But at this stage, if the 
>user says yes
>> to SSL support and then enables that host, SSL support is 
>almost up and
>> happening - all the need to do is generate the certs (must write a
>> script to do this).
>
>Very nice feature.  However, Debconf isn't portable (is it?).  =)

And on RPM platform, we didn't have such tools ;(

>Ideally, we *would* have it so that we can have them make choices
>at compile-time, but there really isn't a nice way to do that.
>So, we rely on docs.
>
>> > It may be worthwhile to step back and determine what the
>> > optimal layout is for each of you and see if we can support
>> > that out-of-the-box via config.layout.  -- justin
>> 
>> Feel free to talk to me about this - I'd be only too happy 
>to respond.
>> :)
>
>Okay.  Here are the config.layout fields:
>    prefix, exec_prefix, bindir, sbindir, libexecdir, mandir,
>    sysconfdir, datadir, installbuilddir, errordir, iconsdir, 
>htdocsdir,
>    manualdir, cgidir, includedir, localstatedir, runtimedir,
>    logfiledir, proxycachedir
>
>Geesh - that's a lot.  What *can't* you do with that?  I think 
>the biggest problem is that we aren't doing enough with this 
>provided information in the configuration file.  I bet that the 
>Makefiles will copy it everywhere correctly, but that httpd.conf 
>and the support scripts - like apachectl - have no knowledge where 
>things are.  That leads to a poor default configuration on our
>part.
>
>Now for the question that Henri brought up - is ServerRoot 
>sysconfdir?  I think we could make a case that ServerRoot is 
>prefix, but that httpd itself would know to look in 
>sysconfdir/httpd.conf for the config file and that we teach
>httpd.conf about the various location of things (like iconsdir,
>htdocsdir, etc, etc, etc).
>
>So, what's wrong with that?  We have a bunch of relative paths flying 
>around in our config file all keyed off of ServerRoot.  That's nice
>if you use our layout (which has everything as a descendant of 
>prefix), but horrific once you think differently than us.  So, maybe
>httpd-std.conf needs to be redone to handle all of the layout stuff.
>
>This gets me down a road that sounds like someone with commit 
>access may veto.  So, I'll leave it at this for now and try to 
>solicit feedback.
>
>Just to give you an idea of my ideal configuration:
>./configure --prefix=/pkg/httpd-2.0.28 \
>    --sysconfdir=/etc/pkg/httpd-2.0.28 \
>    --localstatedir=/var/pkg/httpd-2.0.28
>    
>To me this means:
>- All binaries and anything that is read-only is located in /pkg.
>- All configuration files are located in /etc.
>- All error docs, icons, htdocs are located in /var.
>
>Everything magically ends up in the right directory and is 
>installed correctly.  The config file knows that the right stuff
>is in the right directory.  FWIW, I'd also state that logs ends 
>up in localstatedir.  
>
>It almost seems as if we have too much flexibility.  No way am 
>I going to type this:
>
>./configure --prefix=/pkg/httpd-2.0.28 \
>    --sysconfdir=/etc/pkg/httpd-2.0.28 \
>    --localstatedir=/var/pkg/httpd-2.0.28 \
>    --iconsdir=/var/pkg/httpd-2.0.28/icons \
>    --errordir=/var/pkg/httpd-2.0.28/errors \
>    --htdocsdir=/var/pkg/httpd-2.0.28/htdocsdir \
>    --logfiledir=/var/pkg/httpd-2.0.28/logs \
>
>Yes, I can do this.  But, that's way too specific and as an
>admin, I think we need better default groupings (i.e. localstatedir
>consists of X, Y, Z).  -- justin

Fine for me, even if layout still didn't works having it in configure
is suffisant, but before my patch to Makefile.in, errordir wasn't handle.

My Redhat layout is :

/etc/httdp2/conf/
/etc/httdp2/build/		(needed ?)
/usr/bin/			(ie htpasswd)
/usr/sbin/			(httpd2, apachectl2)
/usr/lib/apache2/ 		(modules)
/usr/share/man/man1,8	(man pages)
/var/www2/cgi-bin/
/var/www2/error/		
/var/www2/icons/		
/var/www2/html/		(html)
/usr/lib/libapr*
/usr/include/apache2/
/var/log/http2/		(error, access)
/var/run/httpd2.pid

What should I use in configure ? 

I'd like also :)

/usr/include/apr/
/usr/include/expat/expat.h


Mime
View raw message