From owner-cvs-release Mon May 26 00:52:00 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id AAA05359 for cvs-release-outgoing; Mon, 26 May 1997 00:52:00 -0700 (PDT) Received: from spinner.dialix.com.au (spinner.dialix.com.au [192.203.228.67]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id AAA05316; Mon, 26 May 1997 00:51:39 -0700 (PDT) Received: from spinner.dialix.com.au (localhost.dialix.com.au [127.0.0.1]) by spinner.dialix.com.au with ESMTP id PAA06710; Mon, 26 May 1997 15:49:32 +0800 (WST) Message-Id: <199705260749.PAA06710@spinner.dialix.com.au> X-Mailer: exmh version 2.0gamma 1/27/96 To: Doug Rabson cc: Eivind Eklund , "Jordan K. Hubbard" , 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 In-reply-to: Your message of "Mon, 26 May 1997 08:46:38 +0100." Date: Mon, 26 May 1997 15:49:31 +0800 From: Peter Wemm Sender: owner-cvs-etc@freebsd.org X-Loop: FreeBSD.org Precedence: bulk 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