Date: Wed, 28 Feb 2001 15:09:02 +0200 From: Maxim Sobolev <sobomax@FreeBSD.org> To: "Jacques A. Vidrine" <n@nectar.com> Cc: "David O'Brien" <obrien@FreeBSD.org>, Christian Weisgerber <naddy@mips.inka.de>, Steve Price <steve@FreeBSD.org>, freebsd-ports@FreeBSD.org Subject: Re: ksh93 Message-ID: <3A9CF86E.18C36ED0@FreeBSD.org> References: <200102260514.f1Q5EHJ96328@freefall.freebsd.org> <20010226215311.A44937@spawn.nectar.com> <20010227154226.A36915@kemoauc.mips.inka.de> <20010227162104.A7892@dragon.nuxi.com> <20010228065758.A29047@hamlet.nectar.com>
next in thread | previous in thread | raw e-mail | index | archive | help
"Jacques A. Vidrine" wrote: > On Tue, Feb 27, 2001 at 04:21:04PM -0800, David O'Brien wrote: > > On Tue, Feb 27, 2001 at 03:42:26PM +0100, Christian Weisgerber wrote: > > > > I notice that this installs the Korn shell as a static binary. > > ... > > > +.if defined(WANT_STATIC) > > > +MAKE_ARGS+= LDFLAGS=-static > > > +.endif > > > > I am very against this. It is not a bug for ksh93 to be built > > statically, but the bug is in those shells that are built dynamically > > in /usr/ports/shells/. Fix the right bug. > > What do you suggest? That all shells be linked and installed > statically? Is there something that makes shells special, or do you > want all ports built static by default? > > I would like it if all the shells in ports/shells were linked dynamic > by default, but had knobs for getting static versions. Then one can > have WANT_STATIC in /etc/make.conf (man, we really need a separate > make.conf-type file just for ports). > > > P.S. What in the world is everyone's aversion to static binaries?? > > Personally I like to keep static versions of my favorite shell(s) > installed in /bin. However, ksh93 supports dynamic loading of > commands. This feature is, of course, unavailable if ksh93 is > statically linked. In the future I expect to see ksh-foo ports in the > same fashion that we have py-* and p5-* ports. But if ksh93 itself is > static by default, such ports could only be used after a recompile. > > Statically linked applications are also a bit of a pain when new > functionality is introduced into libc, either directly or indirectly, > e.g. SOCKS or nsswitch. That doesn't mean that static linking is > never appropriate, I just think that it shouldn't be the default for > most people. Idea: why not to create dynamic executable, but explicitly link static versions of required libs (cc -o foo foo.o bar.o /usr/lib/libc.a ...) into it? The resulting executable will be protected against breakage of system libs, while still able to use dl*() functions. -Maxim To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3A9CF86E.18C36ED0>