At 12:18 PM 8/18/01 +0200, Richard wrote:
>From: Tom Biggs <[EMAIL PROTECTED]>
>
>tbiggs> It blew up with a NULL pointer fault. I was surprised to discover
>tbiggs> the reason - apparently, Configure assumes that FreeBSD and
>tbiggs> FreeBSD-elf don't have any support for dynamic shared libraries!
>tbiggs> The FreeBSD entries in Configure's $table don't appear to have
>tbiggs> any mention of DSO support. I couldn't see any reason why FreeBSD
>tbiggs> apps couldn't use DLFCN-style DSO, so I did a few temporary
>tbiggs> hacks to build in DLFCN support, such as -DDSO_DLFCN in CFLAGS.
>tbiggs> And it worked.
>
>Good to know. The reason for this is that noone has tested it on
>FreeBSD, so we were cautious. A few questions that come to mind is
>how far back in FreeBSD history did it have dlfcn support? And it
>there was a point where support was officially started, is there a
>clean way to detect it, so config or Configure do the right thing even
>on older FreeBSD installations?
I researched this. DLFCN support is in FreeBSD back to version 2.
The current release version of FreeBSD is version 4.3. I don't
know how many people out there are still using version 1.x -
it doesn't seem very likely.
The only configuration issue I can see is that FreeBSD switched
over to ELF format for 3.x, earlier versions used the a.out
format for executables - by default. ELF support was in
version 2 (i.e., ELF executables could be built and run)
but the default was to compile to a.out format.
This impacts the DSO stuff because in a.out dynamic libraries,
C language symbol strings passed into dlsym() (used by
DSO_bind_func()) must have a leading underscore. The ELF
format dynamic libraries do not require that.
I'm not sure what happens now. Will someone who knows Configure
take this information and add DLFCN support to the script?
Or is it my responsibility? I'm afraid of mucking up the script.
Tom Biggs
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]