[Top][All Lists]

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

Re: 329-gary-allow-RTLD_GLOBAL

From: Gary V. Vaughan
Subject: Re: 329-gary-allow-RTLD_GLOBAL
Date: Mon, 21 May 2007 18:20:39 +0100

On 21 May 2007, at 17:15, Ralf Wildenhues wrote:
Hello Gary,

Apologies for the huge delay.

Hallo Ralf,

No problem.  Life always seems to be an endless sink for my time too ;-)

* Gary V. Vaughan wrote on Tue, May 08, 2007 at 04:42:09PM CEST:
  +for file in modresident modlocal modglobal moddepend; do
  +  $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c $file.c
  +  AT_CHECK([$LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o
$ \
  +            $file.lo -rpath /foo -avoid-version], [], [ignore],

What about -no-undefined, for w32?

That would defeat building moddepend with unresolved symbols at link time,
so that we can test that it correctly calls the matching symbols from
modglobal after load time symbol resolution :-( Known issue, but I don't know how to fix it. I guess we'll need to skip this test on Windows and
AIX due to linker brain damage?

Erm.  First, we can use -no-undefined for all but moddepend, no?

Yes, that's true.

Second, we could avoid moddepend on w32.  Hmm.  This seems like
an undesirable situation.  If we named the modules with a `lib'
prefix, then there would be one less issue.

That's true, as long as we are testing the non-lib-prefix case elsewhere
in our testsuite.  As a matter of fact, my pending 330 patch does that,
so I think adding back the lib prefix is correct for 329!

If we linked `moddepend'
against the other modules it depends upon at mode=link time, that
would work on w32, except now libtool still outputs the warning
| *** Warning: Linking the executable m against the loadable module
| *** is not portable!

which is in place because of Darwin.  Hmm.  It's just a warning --
libtool will try to link against the static copy of the module.

I believe it actually breaks on darwin, which is why other hosts get that

I guess a proper test would use a separate, real shared library
which moddepend would then depend upon.  WDYT?

Yes that is doable, and is in fact how m4 modules are built on HEAD, which
works on linux, darwin and w32 (among others).  I'll make a start at
implementing these changes while I wait for the 330 review.


  ())_.              Email me: address@hidden
  ( '/           Read my blog:
  / )=         ...and my book:
`(_~)_ Join my AGLOCO Network:

Attachment: PGP.sig
Description: This is a digitally signed message part

reply via email to

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