Re: .libs/httpd

2001-08-25 Thread Sascha Schumann

> Actually, there is nothing wrong with that -- especially with
> libtool 1.4, it makes sense to have only libtool script,
  ^ one

> because it is not preconfigured to build certain types of
> object files.  It can be used by all included libraries,
> because you can tell libtool on the command-line whether it
> should build an object file which is suitable for an archive
> or a DSO.

- Sascha Experience IRCG
  http://schumann.cx/http://schumann.cx/ircg




Re: .libs/httpd

2001-08-25 Thread Sascha Schumann

> Then you should have stopped the "one libtool for everybody" push.

Actually, there is nothing wrong with that -- especially with
libtool 1.4, it makes sense to have only libtool script,
because it is not preconfigured to build certain types of
object files.  It can be used by all included libraries,
because you can tell libtool on the command-line whether it
should build an object file which is suitable for an archive
or a DSO.

- Sascha Experience IRCG
  http://schumann.cx/http://schumann.cx/ircg




Re: .libs/httpd

2001-08-25 Thread Sascha Schumann

> But as I said, libtool sucks.  Basically, libtool 1.4 has
> combined ltconfig and libtool into one executable.  If you pass
> --disable-shared to the configure step, the libtool is built in
> such a way, that it can no longer create shared libraries.

A user should not directly temper with the way libtool is
created, because it is unlikely that she understands the
impact of doing so.  I would suggest to set enable_shared and
enable_static to yes before AC_PROG_LIBTOOL is run, so that
the build framework can choose what libtool does during
compile-time.  This would facilitate supporting a flag
--enable-static-apr or something similar which acts locally
instead of bogusly setting one global flag.

- Sascha Experience IRCG
  http://schumann.cx/http://schumann.cx/ircg




Re: .libs/httpd

2001-08-24 Thread Ryan Bloom

On Friday 24 August 2001 13:51, Greg Stein wrote:
> On Fri, Aug 24, 2001 at 08:27:57AM -0700, Ryan Bloom wrote:
> > On Friday 24 August 2001 00:33, Greg Stein wrote:
> > > On Fri, Aug 24, 2001 at 12:15:17AM -0700, Doug MacEachern wrote:
> >
> >...
> >
> > > > libuncooltool.  i didn't realize libapr was now linked as a shared
> > > > library.  that explains everything.
> > >
> > > You could probably pass --disable-shared at Apache's config line. Of
> > > course, then *everything* would be built statically and you'd get a big
> > > ass blob of an executable :-)
> >
> > Please don't do that.  Passing --disable-shared is what caused the shared
> > modules to stop working.
>
> Apache should be able to work as one big monolithic executable. Shared
> modules should still be able to work because Apache would still have DSO
> loading capabilities.

But as I said, libtool sucks.  Basically, libtool 1.4 has combined ltconfig and
libtool into one executable.  If you pass --disable-shared to the configure
step, the libtool is built in such a way, that it can no longer create shared
libraries.

Ryan

__
Ryan Bloom  [EMAIL PROTECTED]
Covalent Technologies   [EMAIL PROTECTED]
--



Re: .libs/httpd

2001-08-24 Thread Greg Stein

On Fri, Aug 24, 2001 at 08:27:57AM -0700, Ryan Bloom wrote:
> On Friday 24 August 2001 00:33, Greg Stein wrote:
> > On Fri, Aug 24, 2001 at 12:15:17AM -0700, Doug MacEachern wrote:
>...
> > > libuncooltool.  i didn't realize libapr was now linked as a shared
> > > library.  that explains everything.
> >
> > You could probably pass --disable-shared at Apache's config line. Of
> > course, then *everything* would be built statically and you'd get a big ass
> > blob of an executable :-)
> 
> Please don't do that.  Passing --disable-shared is what caused the shared
> modules to stop working.

Apache should be able to work as one big monolithic executable. Shared
modules should still be able to work because Apache would still have DSO
loading capabilities.

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/



Re: .libs/httpd

2001-08-24 Thread Greg Stein

On Fri, Aug 24, 2001 at 08:27:05AM -0700, Ryan Bloom wrote:
> On Friday 24 August 2001 00:15, Doug MacEachern wrote:
> > On Thu, 23 Aug 2001, Roy T. Fielding wrote:
> > > As I recall, libtool modifies the runtime library path within the exec
> > > when it installs the file, or something like that.
> >
> > libuncooltool.  i didn't realize libapr was now linked as a shared
> > library.  that explains everything.
> 
> That's because libtool SUCKS!

Has nothing to do with libtool. That is just a convenient scapegoat.

APR can/should be a shared library. Should have been a long time ago, but we
didn't have installation running for it, so we made it a static library.
That was turned off recently, making things as they should be.

What are you blaming libtool for? Can you state the specific problem?

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/



Re: .libs/httpd

2001-08-24 Thread Ryan Bloom

On Friday 24 August 2001 14:58, Greg Stein wrote:
> On Fri, Aug 24, 2001 at 02:42:30PM -0700, Ryan Bloom wrote:
> >...
> > Because it is absolutely bogus that I have to choose whether EVERYTHING
> > in the build is static or dynamic.  I should be able to configure APR to
> > be built as a static lib, but still have shared modules.
>
> Then you should have stopped the "one libtool for everybody" push. As long
> as we have a single libtool, and that thing is responsible for building
> static and/or dynamic outputs, then we can only build in the way specified
> by that one libtool.

I completely disagree.  I should be able to pass a set of flags to the libtool line,
and have those flags determine how libtools works.  That was how it worked when
libtool and ltconfig were separate packages.

Ryan

__
Ryan Bloom  [EMAIL PROTECTED]
Covalent Technologies   [EMAIL PROTECTED]
--



Re: .libs/httpd

2001-08-24 Thread Greg Stein

On Fri, Aug 24, 2001 at 02:42:30PM -0700, Ryan Bloom wrote:
>...
> Because it is absolutely bogus that I have to choose whether EVERYTHING
> in the build is static or dynamic.  I should be able to configure APR to be built
> as a static lib, but still have shared modules.

Then you should have stopped the "one libtool for everybody" push. As long
as we have a single libtool, and that thing is responsible for building
static and/or dynamic outputs, then we can only build in the way specified
by that one libtool.

Then you could build APR statically, and the rest of the system shared. Of
course, this also assumes that httpd-2.0/configure has the right set of
switches to prepare such a system.

But without the configure switches, you have no hope to do it anyways. So
you aren't even at a libtool problem yet.

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/



Re: .libs/httpd

2001-08-24 Thread Ryan Bloom

On Friday 24 August 2001 14:40, Greg Stein wrote:
> On Fri, Aug 24, 2001 at 01:50:06PM -0700, Ryan Bloom wrote:
> > On Friday 24 August 2001 13:51, Greg Stein wrote:
> > > On Fri, Aug 24, 2001 at 08:27:57AM -0700, Ryan Bloom wrote:
> >
> >...
> >
> > > > Please don't do that.  Passing --disable-shared is what caused the
> > > > shared modules to stop working.
> > >
> > > Apache should be able to work as one big monolithic executable. Shared
> > > modules should still be able to work because Apache would still have
> > > DSO loading capabilities.
> >
> > But as I said, libtool sucks.  Basically, libtool 1.4 has combined
> > ltconfig and libtool into one executable.  If you pass --disable-shared
> > to the configure step, the libtool is built in such a way, that it can no
> > longer create shared libraries.
>
> That has nothing to do with libtool. You configured the system to build
> things as static libraries. Why would you suddenly expected the *output* of
> that configuration to be able to build shared libs?
>
> Even so, an external module could be built as a shared lib, and loaded by
> that monolithic Apache. And hey... maybe somebody built a monolithic Apache
> *specifically* to disallow new modules.
>
> So I'm not sure why your undies are all in a bunch about libtool and the
> --disable-shared switch.

Because it is absolutely bogus that I have to choose whether EVERYTHING
in the build is static or dynamic.  I should be able to configure APR to be built
as a static lib, but still have shared modules.

Ryan
__
Ryan Bloom  [EMAIL PROTECTED]
Covalent Technologies   [EMAIL PROTECTED]
--



Re: .libs/httpd

2001-08-24 Thread Doug MacEachern

On Fri, 24 Aug 2001, Ryan Bloom wrote:
 
> That's because libtool SUCKS!  This was all a part of my patches to 
> make shared modules work with libtool.  We could potentially configure
> APR to always be a static lib, but I'm not sure how hard that would be to
> do.

i don't mind libapr being shared, i just had no idea it was shared when i
was having that problem last night.  now that i know, symlinking install
(*.so) to the build tree works fine.







Re: .libs/httpd

2001-08-24 Thread Ryan Bloom

On Friday 24 August 2001 08:50, Victor J. Orlikowski wrote:
> > > libuncooltool.  i didn't realize libapr was now linked as a shared
> > > library.  that explains everything.
> >
> > That's because libtool SUCKS!  This was all a part of my patches to
> > make shared modules work with libtool.  We could potentially configure
> > APR to always be a static lib, but I'm not sure how hard that would be to
> > do.
>
> Believe that we've had this thread before. ;(
> I agree; libtool is being a pain. Now, what do we want to do about it
> (which was not resolved the last time this discussion came
> up - ISTR it was a discussion in London, last year.)?

It is actually possible to configure Apache to not use libtool, but running

./configure --disable-libtool

I haven't kept that logic up to date though.

Ryan
__
Ryan Bloom  [EMAIL PROTECTED]
Covalent Technologies   [EMAIL PROTECTED]
--



Re: .libs/httpd

2001-08-24 Thread Ryan Bloom

On Friday 24 August 2001 00:33, Greg Stein wrote:
> On Fri, Aug 24, 2001 at 12:15:17AM -0700, Doug MacEachern wrote:
> > On Thu, 23 Aug 2001, Roy T. Fielding wrote:
> > > As I recall, libtool modifies the runtime library path within the exec
> > > when it installs the file, or something like that.
> >
> > libuncooltool.  i didn't realize libapr was now linked as a shared
> > library.  that explains everything.
>
> You could probably pass --disable-shared at Apache's config line. Of
> course, then *everything* would be built statically and you'd get a big ass
> blob of an executable :-)

Please don't do that.  Passing --disable-shared is what caused the shared
modules to stop working.

Ryan
__
Ryan Bloom  [EMAIL PROTECTED]
Covalent Technologies   [EMAIL PROTECTED]
--



Re: .libs/httpd

2001-08-24 Thread Ryan Bloom

On Friday 24 August 2001 00:15, Doug MacEachern wrote:
> On Thu, 23 Aug 2001, Roy T. Fielding wrote:
> > As I recall, libtool modifies the runtime library path within the exec
> > when it installs the file, or something like that.
>
> libuncooltool.  i didn't realize libapr was now linked as a shared
> library.  that explains everything.

That's because libtool SUCKS!  This was all a part of my patches to 
make shared modules work with libtool.  We could potentially configure
APR to always be a static lib, but I'm not sure how hard that would be to
do.

Ryan

__
Ryan Bloom  [EMAIL PROTECTED]
Covalent Technologies   [EMAIL PROTECTED]
--



Re: .libs/httpd

2001-08-24 Thread Greg Stein

On Fri, Aug 24, 2001 at 12:15:17AM -0700, Doug MacEachern wrote:
> On Thu, 23 Aug 2001, Roy T. Fielding wrote:
>  
> > As I recall, libtool modifies the runtime library path within the exec
> > when it installs the file, or something like that.
> 
> libuncooltool.  i didn't realize libapr was now linked as a shared
> library.  that explains everything.

You could probably pass --disable-shared at Apache's config line. Of course,
then *everything* would be built statically and you'd get a big ass blob of
an executable :-)

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/



Re: .libs/httpd

2001-08-23 Thread Doug MacEachern

On Thu, 23 Aug 2001, Roy T. Fielding wrote:
 
> As I recall, libtool modifies the runtime library path within the exec
> when it installs the file, or something like that.

libuncooltool.  i didn't realize libapr was now linked as a shared
library.  that explains everything.





Re: .libs/httpd

2001-08-23 Thread Roy T. Fielding

> It should be placed via make install by "libtool --mode=install" now.  
> I'd have to see if the act of installation changes the file - I only 
> thought it helped copy the right file.  If it changes it, blech.  

As I recall, libtool modifies the runtime library path within the exec
when it installs the file, or something like that.

Roy




Re: .libs/httpd

2001-08-23 Thread Doug MacEachern

On Thu, 23 Aug 2001, Justin Erenkrantz wrote:
 
> libtool --version?  -- justin

% libtool --version
ltmain.sh (GNU libtool) 1.4 (1.920 2001/04/24 23:26:18)






Re: .libs/httpd

2001-08-23 Thread Justin Erenkrantz

On Thu, Aug 23, 2001 at 09:47:36PM -0700, Doug MacEachern wrote:
> if i edit/save filepath.c and make, everything relinks and i still have
> the same problem.  after 'make install', the installed binary works as
> expected, as does .libs/httpd.  but, change a file, run 'make', appears to
> relink .libs/httpd, yet it behaves like the old version.  very weird.

libtool --version?  -- justin




Re: .libs/httpd

2001-08-23 Thread Justin Erenkrantz

On Thu, Aug 23, 2001 at 09:31:57PM -0700, Doug MacEachern wrote:
> why is the installed httpd different from .libs/httpd?
> 
> % ls -l ~/ap/prefork/bin/httpd
> -rwxr-xr-x1 dougmdougm 4318551 Aug 23 21:11
> 
> % ls -l .libs/httpd 
> -rwxr-xr-x1 dougmdougm 4318583 Aug 23 21:21 .libs/httpd*
> 
> i normally don't "make install" everytime i'm working on a change and run
> httpd out of the build directory.  now it seems i have to to install get a
> proper httpd.  what gives?

That's odd.

Does .libs/httpd even work?  

It should be placed via make install by "libtool --mode=install" now.  
I'd have to see if the act of installation changes the file - I only 
thought it helped copy the right file.  If it changes it, blech.  
-- justin




Re: .libs/httpd

2001-08-23 Thread Doug MacEachern

whoops, file sizes are the same, i made a change before make install
again.  but i still have the same problem, they are still different
somehow.  i had done this:

make distclean
cvs up
buildconf
configure ... && make depend && make

yet somehow (note warning):
(gdb) b apr_filepath_root 
Breakpoint 1 at 0x4003655f: file filepath.c, line 102.
(gdb) c
Continuing.

Breakpoint 1, apr_filepath_root (rootpath=0xb774, inpath=0xb784, 
flags=0, p=0x825570c) at filepath.c:102
warning: Source file is more recent than executable.

102 if (**inpath == '/') 
(gdb) info source
Current source file is filepath.c
Compilation directory is /home/dougm/ap/httpd-2.0-prefork/srclib/apr/file_io/unix/
Located in /home/dougm/ap/httpd-2.0-prefork/srclib/apr/file_io/unix/filepath.c
Contains 324 lines.
Source language is c.
Compiled with stabs debugging format.
(gdb) q
% ls -l /home/dougm/ap/httpd-2.0-prefork/srclib/apr/file_io/unix/filepath.c
-rw-r--r--1 dougmdougm   11237 Aug 23 20:33

% wc -l /home/dougm/ap/httpd-2.0-prefork/srclib/apr/file_io/unix/filepath.c
324

% ls -l ~/ap/httpd-2.0-prefork/.libs/httpd 
-rwxr-xr-x1 dougmdougm 4318551 Aug 23 20:51

if i edit/save filepath.c and make, everything relinks and i still have
the same problem.  after 'make install', the installed binary works as
expected, as does .libs/httpd.  but, change a file, run 'make', appears to
relink .libs/httpd, yet it behaves like the old version.  very weird.






.libs/httpd

2001-08-23 Thread Doug MacEachern

why is the installed httpd different from .libs/httpd?

% ls -l ~/ap/prefork/bin/httpd
-rwxr-xr-x1 dougmdougm 4318551 Aug 23 21:11

% ls -l .libs/httpd 
-rwxr-xr-x1 dougmdougm 4318583 Aug 23 21:21 .libs/httpd*

i normally don't "make install" everytime i'm working on a change and run
httpd out of the build directory.  now it seems i have to to install get a
proper httpd.  what gives?