From owner-freebsd-arch Mon Oct 29 13:42:39 2001 Delivered-To: freebsd-arch@freebsd.org Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by hub.freebsd.org (Postfix) with ESMTP id 1524A37B406 for ; Mon, 29 Oct 2001 13:42:34 -0800 (PST) Received: from fledge.watson.org (robert@fledge.pr.watson.org [192.0.2.3]) by fledge.watson.org (8.11.6/8.11.5) with SMTP id f9TLgMB46558; Mon, 29 Oct 2001 16:42:22 -0500 (EST) (envelope-from robert@fledge.watson.org) Date: Mon, 29 Oct 2001 16:42:21 -0500 (EST) From: Robert Watson X-Sender: robert@fledge.watson.org To: Lyndon Nerenberg Cc: arch@FreeBSD.ORG Subject: Re: GNU Compiler Symlinks In-Reply-To: <200110292042.f9TKgu0H005799@atg.aciworldwide.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Mon, 29 Oct 2001, Lyndon Nerenberg wrote: > > This seems wrong to me. The man page I get when I look at the current > > cc man page is clearly the man page for gcc. > > No, it's the manpage for cc. The fact that you get a manual page that > corresponds to the GNU C compiler is purely an implementation artifact. > (The fact that the title and command name references in the formatted > manpage refer to "gcc" is a bug, IMO.) Are you sure? /usr/share/man/man1/cc.1.gz: .\" $FreeBSD: src/contrib/gcc.295/gcc.1,v 1.16 2001/08/01 18:35:54 obrien Exp $ .\" Copyright (c) 1991, 1992, 1993, 1994 Free Software Foundation -*-Text-*- .\" See section COPYING for conditions for redistribution And... The information in this man page is an extract from the full documentation of the GNU C compiler, and is limited to the meaning of the options. It documents GNU-specific CC command-line options later in the man page, as far as I can tell, anyway. > > This seems backwards. The GNU tools should be installed with the GNU > > names. Installing as "cc" and "cc.1" should be the optional bit, as you > > might want to install an alternative compiler with those names, but retain > > gcc since that's what the system is designed to build with. > > No, the system is designed to be built with cc. Again, the fact that cc > happens to be the GNU compiler on FreeBSD is an implementation artifact. > The canonical command name for the system C compiler is still cc. > Compiler implementations can change (witness Ultrix/Digital UNIX and the > introduction of the MIPSco compilers) however the name stays the same. > Without standard naming the system would be impossible to use, since you > would have no idea what the names of any of the commands might be. You appear to be misunderstanding what I'm suggesting. I'm not saying that cc shouldn't point as gcc, I'm saying that gcc should be gcc, and cc should be a pointer that can be directed at the administrator's choice of cc's, which by default would be gcc. I don't see that removing the 'g' from gcc accomplishes anything: in fact, it attempts to obfuscate that fact that cc really is gcc, and it serves the purpose of creating naming conflicts in the event that another cc becomes available. Look at how we addresses the MTA issue. Also, contrary to what you're suggesting, the system is designed to be built with the GNU C compiler. We have gcc'isms in a number of places in the source tree, and the chances are very high that the system would not work properly unless the compiler perfectly emulated these gcc-isms. We also ship (and test) only with the GNU C compiler. Arguably, we should support other C compilers, if any decent ones existed. Robert N M Watson FreeBSD Core Team, TrustedBSD Project robert@fledge.watson.org NAI Labs, Safeport Network Services To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message