[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Call for seconds: Policy modifications



At 20:10 -0700 1998-09-12, Richard Braakman wrote:
>I find it amusing that the FSF contradicts its own "GNU/Linux" stance
>here :-)  Apparently linux is "GNU/Linux", but the Hurd is called "gnu"
>to distinguish it from "linux".

There isn't a contradiction, the names that config.guess/config.sub use are
different from the names humans would use; config.guess/config.sub use a
three-part string of the following form to name a particular configuration:
<machine>-<vendor>-<os>, where <machine> identifies the processor/hardware,
<vendor> defines the manufacturer of the hardware, and <os> identifies the
operating system; resulting in strings such as: "sparc-sun-solaris" (a
sparc-based machine made by sun running solaris),
"powerpc-unknown-linux-gnu" (a powerpc machine running GNU/Linux),
"m68k-apple-netbsd" (a m68k Mac running NetBSD), or "i586-pc-linux-gnu"[8]
(a x86 PC with a 586-class processor running GNU/Linux).

Note there are three of these strings, host, build, and target[0].

The normal os string for "GNU/Linux" is "linux-gnu", and the os string for
"GNU"[4] is "gnu".

configure also has the concept of host, build, and target aliases, this is
specified by giving configure a --host and/or --target argument (a bare
argument that looks like a configuration triplet is treated as if it were
preceded by '--host='), otherwise, configure uses what config.guess[5]
"guesses" for the host, build, and target. This is how we can use
<arch>-linux[6][7] in autoconf-based programs.

Some packages (e.g. gcc 2.7.2.x) are sufficiently old to still guess
"linux" instead of "linux-gnu" though.

[0] this allows such weird things as a compiler that runs on a powerpc and
generates code for an i386, to be built on a sparc[1][3]
[1] cygnus calls such a configuration a "canadian cross"[2]
[2] When cygnus named such configurations, Canada had three major political
parties
[3] the practical purpose is bootstrapping a new architecture
[4] "Linux systems" are "modified GNU systems" according to FSF, which
makes a hurd-based system an "unmodified" GNU system, so "gnu" is an
appropriate name for such a system
[5] assuming a modern autoconf, earlier ones have the guessing stuff in
configure itself
[6] I see a lot of packages using <arch>-debian-linux though
[7] I don't understand why we use "i486" for some things and "i386" for
others though
[8] Comment in config.sub: "# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users."
--
Joel Klecker (aka Espy)
<URL:mailto:jk@espy.org>        <URL:http://web.espy.org/>
   Debian GNU/Linux user/developer on i386 and powerpc.
<URL:mailto:espy@debian.org>  <URL:http://www.debian.org/>


Reply to: