Date: Mon, 26 May 1997 15:49:31 +0800 From: Peter Wemm <peter@spinner.dialix.com.au> To: Doug Rabson <dfr@nlsystems.com> Cc: Eivind Eklund <perhaps@yes.no>, "Jordan K. Hubbard" <jkh@time.cdrom.com>, jkh@freebsd.org, cvs-committers@freebsd.org, cvs-all@freebsd.org, cvs-release@freebsd.org, hackers@freebsd.org Subject: Re: cvs commit: src/release boot_crunch.conf Message-ID: <199705260749.PAA06710@spinner.dialix.com.au> In-Reply-To: Your message of "Mon, 26 May 1997 08:46:38 %2B0100." <Pine.BSF.3.95q.970526084454.349A-100000@herring.nlsystems.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Doug Rabson wrote: > On Mon, 26 May 1997, Peter Wemm wrote: > > > Eivind Eklund wrote: > > > > > > [please delete committers etc if you reply to this - this belong in hacke rs] > > > > > > > Well, I was mostly just trying to get the SNAPshot servers happy again. .. > > > > > > > > As to making it a compile-time option.. Hmmm. I like the idea of > > > > saving space, but it would also complicate the build to have two > > > > versions of ppp build at release time. What we really need is a > > > > dynamically loadable alias module. :-) > > > > > > It shouldn't be too hard to use libalias through dlopen()/dlsym(), > > > should it? I've never used these interfaces, but the aliasing > > > routines need only about three calls to work. > > > > For dlopen/dlclose/etc to work, it requires that the calling executable is > > dynamically linked, linked with libc.so.xx and that /usr/libexec/ld.so is > > present. A dynamic libc is important since if libalias makes any libc > > calls (memcpy, strcmp, etc) then the symbols have to be dynamically > > resolveable. For sysinstall on the boot floppy, this is probably a > > showstopper. However, at runtime on an installed system, there's probably > > not much stopping /usr/bin/ppp from doing this. > > I recently changed ld so that you can link a dynamic executable even if it > doesn't use any dynamic libs. This means that the symbol table is > generated and the program can load new libraries but it is itself static. > Use the -Bforcedynamic flag to ld instead of -Bdynamic. I suspect the catch would be that if the dynamic object wanted to use memmove() and the calling -Bforcedynamic program hadn't caused memmove to be linked in from libc.a, then it might fail. Anyway, it's something to watch out for.. > I must remember to document this stuff in the manpage :-( > > -- > Doug Rabson Mail: dfr@nlsystems.com > Nonlinear Systems Ltd. Phone: +44 181 951 1891 > Fax: +44 181 381 1039 Cheers, -Peter
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199705260749.PAA06710>