From owner-freebsd-arch Fri Apr 7 22:26:27 2000 Delivered-To: freebsd-arch@freebsd.org Received: from ns1.yes.no (ns1.yes.no [195.204.136.10]) by hub.freebsd.org (Postfix) with ESMTP id 1095E37B695 for ; Fri, 7 Apr 2000 22:26:24 -0700 (PDT) (envelope-from eivind@bitbox.follo.net) Received: from bitbox.follo.net (bitbox.follo.net [195.204.143.218]) by ns1.yes.no (8.9.3/8.9.3) with ESMTP id HAA02855 for ; Sat, 8 Apr 2000 07:29:58 +0200 (CEST) Received: (from eivind@localhost) by bitbox.follo.net (8.8.8/8.8.6) id HAA41957 for freebsd-arch@freebsd.org; Sat, 8 Apr 2000 07:26:19 +0200 (CEST) Received: from rover.village.org (rover.village.org [204.144.255.49]) by hub.freebsd.org (Postfix) with ESMTP id D841E37BD38; Fri, 7 Apr 2000 22:26:09 -0700 (PDT) (envelope-from imp@harmony.village.org) Received: from harmony.village.org (harmony.village.org [10.0.0.6]) by rover.village.org (8.9.3/8.9.3) with ESMTP id XAA08983; Fri, 7 Apr 2000 23:26:06 -0600 (MDT) (envelope-from imp@harmony.village.org) Received: from harmony.village.org (localhost.village.org [127.0.0.1]) by harmony.village.org (8.9.3/8.8.3) with ESMTP id XAA04514; Fri, 7 Apr 2000 23:25:12 -0600 (MDT) Message-Id: <200004080525.XAA04514@harmony.village.org> To: Chuck Robey Subject: Re: Import of tcsh into src/contrib/, replacing src/usr.bin/csh Cc: Bob Bishop , obrien@freebsd.org, arch@freebsd.org In-reply-to: Your message of "Fri, 07 Apr 2000 23:54:13 EDT." References: Date: Fri, 07 Apr 2000 23:25:12 -0600 From: Warner Losh Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG In message Chuck Robey writes: : Bleah. David, go try talking them into replacing vi with Vim. I'll go : get a soda, pull up a chair, and watch the fur fly! If we're gonna have a : stupid donnybrook, let's really get into it! One can argue that tcsh is really csh version N+1. There's already a precident in the tree when we replaced vi with nvi, which is vi version N + 1. And look at how much sendmail has grown since FreeBSD 1.0, yet you don't hear calls for removing it from the system due to its size (other reasons, yes, but not its size). And look how much bigger the new bind is than the older one. That that was a huge, incompatible change with config files even. Oh, and did I mention xntpd vs ntpd? Heck, the name even changed there an no one batted an eye, once they got a couple of niggles with the config files ironed out. I don't see what the huge hub-bub is. Besides, most of that "bloat" is in the static tcsh due to the fact that it is linked with curses. Eliminate that, and you've eliminated most of the bloat. Looks like all it uses are: tgetstr, tgetflag, tgoto, tputs, tgetent, tgetnum so why it is linking all of ncurses on my box I'm not sure. And all of them are in ed.screen.c. Also, I think that obrien's numbers were wrong initially. I think that tcsh is more like 580k statically linked, not the 720k number I recall from a previous post. At least that's what I got right now when I tried it. This is still 298k larger than /bin/csh on my box right now. Of course ed.chared.o and ed.screen.o do account for a large mount of the difference (43k just on these two modules according to size). tcsh also has its own malloc/free junk. I think that one could save some space by keeping it out, but it would be only 5k or so. I suspect that if we were to provide a way to compile out the command line editing and curses use for those folks that want a small csh, we'd have a csh that's close enough to the same size that they wouldn't notice. Then again, I suppose that those doing the complaining about size really should do this work :-) It doesn't look trivial to do, but it isn't hard work, just lots of it. Warner To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message