configure.in 98.8 KB
Newer Older
1
dnl  Autoconf script for GNU Emacs
David J. MacKenzie's avatar
David J. MacKenzie committed
2 3 4
dnl To rebuild the `configure' script from this, execute the command
dnl 	autoconf
dnl in the directory containing this script.
5
dnl
Glenn Morris's avatar
Glenn Morris committed
6
dnl  Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
7
dnl  Free Software Foundation, Inc.
8
dnl
9
dnl  This file is part of GNU Emacs.
10
dnl
11 12 13 14
dnl  GNU Emacs is free software; you can redistribute it and/or modify
dnl  it under the terms of the GNU General Public License as published by
dnl  the Free Software Foundation; either version 2, or (at your option)
dnl  any later version.
15
dnl
16 17 18 19 20 21
dnl  GNU Emacs is distributed in the hope that it will be useful,
dnl  but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
dnl  GNU General Public License for more details.
dnl
dnl  You should have received a copy of the GNU General Public License
Karl Heuer's avatar
Karl Heuer committed
22
dnl  along with GNU Emacs; see the file COPYING.  If not, write to the
Lute Kamstra's avatar
Lute Kamstra committed
23 24
dnl  Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
dnl  Boston, MA 02110-1301, USA.
25

Richard M. Stallman's avatar
Richard M. Stallman committed
26
AC_PREREQ(2.61)dnl
David J. MacKenzie's avatar
David J. MacKenzie committed
27
AC_INIT(src/lisp.h)
28
AC_CONFIG_HEADER(src/config.h:src/config.in)
David J. MacKenzie's avatar
David J. MacKenzie committed
29

30 31 32 33
dnl Support for --program-prefix, --program-suffix and
dnl --program-transform-name options
AC_ARG_PROGRAM

David J. MacKenzie's avatar
David J. MacKenzie committed
34
lispdir='${datadir}/emacs/${version}/lisp'
35
locallisppath='${datadir}/emacs/${version}/site-lisp:'\
36 37
'${datadir}/emacs/site-lisp'
lisppath='${locallisppath}:${lispdir}:${datadir}/emacs/${version}/leim'
David J. MacKenzie's avatar
David J. MacKenzie committed
38
etcdir='${datadir}/emacs/${version}/etc'
39
archlibdir='${libexecdir}/emacs/${version}/${configuration}'
David J. MacKenzie's avatar
David J. MacKenzie committed
40
docdir='${datadir}/emacs/${version}/etc'
41
gamedir='${localstatedir}/games/emacs'
42 43

gameuser=games
David J. MacKenzie's avatar
David J. MacKenzie committed
44

45
AC_ARG_WITH(gcc,
Dave Love's avatar
Dave Love committed
46
[  --without-gcc           don't use GCC to compile Emacs if GCC is found])
David J. MacKenzie's avatar
David J. MacKenzie committed
47
AC_ARG_WITH(pop,
Dave Love's avatar
Dave Love committed
48 49 50 51
[  --without-pop           don't support POP mail retrieval with movemail],
[if test "$withval" = yes; then
   AC_DEFINE(MAIL_USE_POP)
else :
Dave Love's avatar
Dave Love committed
52 53
fi],
AC_DEFINE(MAIL_USE_POP))
54
AH_TEMPLATE(MAIL_USE_POP, [Define to support POP mail retrieval.])dnl
55 56
AC_ARG_WITH(kerberos,
[  --with-kerberos         support Kerberos-authenticated POP],
57 58 59
[if test "$withval" = yes; then
   AC_DEFINE(KERBEROS)
fi])
60 61
AH_TEMPLATE(KERBEROS,
	    [Define to support Kerberos-authenticated POP mail retrieval.])dnl
62
AC_ARG_WITH(kerberos5,
63
[  --with-kerberos5        support Kerberos version 5 authenticated POP],
64 65 66 67 68
[if test "${with_kerberos5+set}" = set; then
  if test "${with_kerberos+set}" != set; then
    with_kerberos=yes
    AC_DEFINE(KERBEROS)
  fi
69 70
  AC_DEFINE(KERBEROS5, 1, [Define to use Kerberos 5 instead of Kerberos 4.])
fi])
David J. MacKenzie's avatar
David J. MacKenzie committed
71 72
AC_ARG_WITH(hesiod,
[  --with-hesiod           support Hesiod to get the POP server host],
73 74 75
[if test "$withval" = yes; then
  AC_DEFINE(HESIOD, 1, [Define to support using a Hesiod database to find the POP server.])
fi])
Pavel Janík's avatar
Pavel Janík committed
76 77 78 79

AC_ARG_WITH(sound,
[  --without-sound         don't compile with sound support])

David J. MacKenzie's avatar
David J. MacKenzie committed
80 81 82
dnl This should be the last --with option, because --with-x is
dnl added later on when we find the path of X, and it's best to
dnl keep them together visually.
David J. MacKenzie's avatar
David J. MacKenzie committed
83
AC_ARG_WITH(x-toolkit,
84
[  --with-x-toolkit=KIT    use an X toolkit
Jan Djärv's avatar
Jan Djärv committed
85
                              (KIT = yes/lucid/athena/motif/gtk/no)],
David J. MacKenzie's avatar
David J. MacKenzie committed
86 87 88 89
[	  case "${withval}" in
	    y | ye | yes )	val=athena ;;
	    n | no )		val=no  ;;
	    l | lu | luc | luci | lucid )	val=lucid ;;
90
	    a | at | ath | athe | athen | athena )	val=athena ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
91
	    m | mo | mot | moti | motif )	val=motif ;;
Jan Djärv's avatar
Jan Djärv committed
92
	    g | gt | gtk  )	val=gtk ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
93 94 95
dnl These don't currently work.
dnl	    o | op | ope | open | open- | open-l | open-lo \
dnl		| open-loo | open-look )	val=open-look ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
96
	    * )
Dave Love's avatar
Dave Love committed
97 98 99
dnl AC_MSG_ERROR([the `--with-x-toolkit' option is supposed to have a value
dnl which is `yes', `no', `lucid', `athena', `motif' or `open-look'.])
AC_MSG_ERROR([`--with-x-toolkit=$withval' is invalid\;
Jan Djärv's avatar
Jan Djärv committed
100
this option's value should be `yes', `no', `lucid', `athena', `motif' or `gtk'.
Dave Love's avatar
Dave Love committed
101
Currently, `yes', `athena' and `lucid' are synonyms.])
David J. MacKenzie's avatar
David J. MacKenzie committed
102 103 104 105
	    ;;
	  esac
	  with_x_toolkit=$val
])
Gerd Moellmann's avatar
Gerd Moellmann committed
106 107 108 109 110
AC_ARG_WITH(xpm,
[  --with-xpm              use -lXpm for displaying XPM images])
AC_ARG_WITH(jpeg,
[  --with-jpeg             use -ljpeg for displaying JPEG images])
AC_ARG_WITH(tiff,
Gerd Moellmann's avatar
Gerd Moellmann committed
111
[  --with-tiff             use -ltiff for displaying TIFF images])
Gerd Moellmann's avatar
Gerd Moellmann committed
112 113 114 115
AC_ARG_WITH(gif,
[  --with-gif              use -lungif for displaying GIF images])
AC_ARG_WITH(png,
[  --with-png              use -lpng for displaying PNG images])
Jan Djärv's avatar
Jan Djärv committed
116 117 118 119
AC_ARG_WITH(gtk,
[  --with-gtk              use GTK (same as --with-x-toolkit=gtk)])
AC_ARG_WITH(pkg-config-prog,
[  --with-pkg-config-prog  Path to pkg-config to use for finding GTK])
120
AC_ARG_WITH(toolkit-scroll-bars,
121
[  --without-toolkit-scroll-bars
Pavel Janík's avatar
Pavel Janík committed
122
                          don't use Motif or Xaw3d scroll bars])
Gerd Moellmann's avatar
Gerd Moellmann committed
123
AC_ARG_WITH(xim,
Pavel Janík's avatar
Pavel Janík committed
124
[  --without-xim           don't use X11 XIM])
125 126
AC_ARG_WITH(carbon,
[  --without-carbon        don't use Carbon GUI on Mac OS X])
127 128 129 130
AC_ARG_ENABLE(carbon-app,
[[  --enable-carbon-app[=DIR]  [DIR=/Application]
                          specify install directory for Emacs.app on Mac OS X]],
[ carbon_appdir_x=${enableval}])
David J. MacKenzie's avatar
David J. MacKenzie committed
131

132 133 134 135 136
AC_ARG_ENABLE(asserts,
[  --enable-asserts        compile code with asserts enabled],
      USE_XASSERTS=$enableval,
      USE_XASSERTS=no)

137 138 139 140 141 142 143 144 145 146 147 148
AC_ARG_ENABLE(maintainer-mode,
[  --enable-maintainer-mode enable make rules and dependencies not useful
                          (and sometimes confusing) to the casual installer],
      USE_MAINTAINER_MODE=$enableval,
      USE_MAINTAINER_MODE=no)
if test $USE_MAINTAINER_MODE = yes; then
  MAINT=
else
  MAINT=#
fi
AC_SUBST(MAINT)

Lute Kamstra's avatar
Lute Kamstra committed
149 150 151 152 153 154 155 156 157 158
AC_ARG_ENABLE(locallisppath,
[  --enable-locallisppath=PATH
                          directories Emacs should search for lisp files
                          specific to this site],
if test "${enableval}" = "no"; then
  locallisppath=
elif test "${enableval}" != "yes"; then
  locallisppath=${enableval}
fi)

David J. MacKenzie's avatar
David J. MacKenzie committed
159
#### Make srcdir absolute, if it isn't already.  It's important to
160
#### avoid running the path through pwd unnecessarily, since pwd can
David J. MacKenzie's avatar
David J. MacKenzie committed
161 162
#### give you automounter prefixes, which can go away.  We do all this
#### so Emacs can find its files when run uninstalled.
163 164
## Make sure CDPATH doesn't affect cd (in case PWD is relative).
unset CDPATH
David J. MacKenzie's avatar
David J. MacKenzie committed
165 166 167 168 169
case "${srcdir}" in
  /* ) ;;
  . )
    ## We may be able to use the $PWD environment variable to make this
    ## absolute.  But sometimes PWD is inaccurate.
170 171 172 173
    ## Note: we used to use ${PWD} at the end instead of `pwd`,
    ## but that tested only for a well-formed and valid PWD,
    ## it did not object when PWD was well-formed and valid but just wrong.
    if test ".${PWD}" != "." && test ".`(cd ${PWD} ; sh -c pwd)`" = ".`pwd`"  ;
David J. MacKenzie's avatar
David J. MacKenzie committed
174 175 176 177 178 179 180 181 182 183 184 185
    then
      srcdir="$PWD"
    else
      srcdir="`(cd ${srcdir}; pwd)`"
    fi
  ;;
  *  ) srcdir="`(cd ${srcdir}; pwd)`" ;;
esac

#### Check if the source directory already has a configured system in it.
if test `pwd` != `(cd ${srcdir} && pwd)` \
   && test -f "${srcdir}/src/config.h" ; then
Dave Love's avatar
Dave Love committed
186
  AC_MSG_WARN([[The directory tree `${srcdir}' is being used
David J. MacKenzie's avatar
David J. MacKenzie committed
187 188 189
   as a build directory right now; it has been configured in its own
   right.  To configure in another directory as well, you MUST
   use GNU make.  If you do not have GNU make, then you must
Dave Love's avatar
Dave Love committed
190 191
   now do `make distclean' in ${srcdir},
   and then run $0 again.]])
David J. MacKenzie's avatar
David J. MacKenzie committed
192 193 194 195 196 197 198 199 200
fi

#### Given the configuration name, set machfile and opsysfile to the
#### names of the m/*.h and s/*.h files we should use.

### Canonicalize the configuration name.

AC_CANONICAL_HOST
canonical=$host
201
configuration=${host_alias-$host}
David J. MacKenzie's avatar
David J. MacKenzie committed
202

Dave Love's avatar
Dave Love committed
203 204 205 206
dnl This used to use changequote, but, apart from `changequote is evil'
dnl per the autoconf manual, we can speed up autoconf somewhat by quoting
dnl the great gob of text.  Thus it's not processed for possible expansion.
dnl Just make sure the brackets remain balanced.
207 208 209 210
dnl
dnl Since Emacs can't find matching pairs of quotes, boundaries are
dnl indicated by comments.
dnl quotation begins
Dave Love's avatar
Dave Love committed
211
[
David J. MacKenzie's avatar
David J. MacKenzie committed
212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238

### If you add support for a new configuration, add code to this
### switch statement to recognize your configuration name and select
### the appropriate operating system and machine description files.

### You would hope that you could choose an m/*.h file pretty much
### based on the machine portion of the configuration name, and an s-
### file based on the operating system portion.  However, it turns out
### that each m/*.h file is pretty manufacturer-specific - for
### example, apollo.h, hp9000s300.h, mega68k, news.h, and tad68k are
### all 68000 machines; mips.h, pmax.h, and news-risc are all MIPS
### machines.  So we basically have to have a special case for each
### configuration name.
###
### As far as handling version numbers on operating systems is
### concerned, make sure things will fail in a fixable way.  If
### /etc/MACHINES doesn't say anything about version numbers, be
### prepared to handle anything reasonably.  If version numbers
### matter, be sure /etc/MACHINES says something about it.
###
### Eric Raymond says we should accept strings like "sysvr4" to mean
### "System V Release 4"; he writes, "The old convention encouraged
### confusion between `system' and `release' levels'."

machine='' opsys='' unported=no
case "${canonical}" in

239 240 241 242 243
  ## FreeBSD ports
  *-*-freebsd* )
    opsys=freebsd
    case "${canonical}" in
      alpha*-*-freebsd*)	machine=alpha ;;
244 245 246
      ia64-*-freebsd*)		machine=ia64 ;;
      sparc64-*-freebsd*)	machine=sparc ;;
      powerpc-*-freebsd*)	machine=macppc ;;
247
      i[3456]86-*-freebsd*)	machine=intel386 ;;
Karl Berry's avatar
Karl Berry committed
248
      amd64-*-freebsd*|x86_64-*-freebsd*) machine=amdx86-64 ;;
249 250 251
    esac
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
252 253 254
  ## NetBSD ports
  *-*-netbsd* )
    opsys=netbsd
255
    if test -f /usr/lib/crti.o; then]
256 257 258
dnl The close and open brackets here are because this section is quoted --
dnl see the `changequote' comment above.
      AC_DEFINE(HAVE_CRTIN, [], [Define to 1 if you have /usr/lib/crti.o.])
259
[   fi
260

David J. MacKenzie's avatar
David J. MacKenzie committed
261
    case "${canonical}" in
262
      alpha*-*-netbsd*)	machine=alpha ;;
263
      i[3456]86-*-netbsd*) machine=intel386 ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
264 265 266 267
      m68k-*-netbsd*)
			# This is somewhat bogus.
			machine=hp9000s300 ;;
      mips-*-netbsd*)	machine=pmax ;;
268
      mipsel-*-netbsd*)	machine=pmax ;;
269
      mipseb-*-netbsd*)	machine=pmax ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
270
      ns32k-*-netbsd*)	machine=ns32000 ;;
271
      powerpc-*-netbsd*) machine=macppc ;;
Gerd Moellmann's avatar
Gerd Moellmann committed
272
      sparc*-*-netbsd*)	machine=sparc ;;
Richard M. Stallman's avatar
Richard M. Stallman committed
273
      vax-*-netbsd*)	machine=vax ;;
274
      arm-*-netbsd*)	machine=arm ;;
275
      x86_64-*-netbsd*)	machine=amdx86-64 ;;
276
      hppa-*-netbsd*)	machine=hp800 ;;
277
      shle-*-netbsd*)	machine=sh3el ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
278 279 280
    esac
  ;;

281 282 283 284
  ## OpenBSD ports
  *-*-openbsd* )
    opsys=openbsd
    case "${canonical}" in
285
      alpha*-*-openbsd*)	machine=alpha ;;
286 287 288 289 290 291 292 293 294 295 296
      arm-*-openbsd*)          machine=arm ;;
      hppa-*-openbsd*)         machine=hp9000s300 ;;
      i386-*-openbsd*)         machine=intel386 ;;
      m68k-*-openbsd*)         machine=hp9000s300 ;;
      m88k-*-openbsd*)         machine=aviion ;;
      mips64-*-openbsd*)       machine=mips64 ;;
      powerpc-*-openbsd*)      machine=macppc ;;
      sh-*-openbsd*)           machine=sh3el ;;
      sparc*-*-openbsd*)       machine=sparc ;;
      vax-*-openbsd*)          machine=vax ;;
      x86_64-*-openbsd*)       machine=amdx86-64 ;;
297 298 299
    esac
  ;;

300 301 302 303 304 305 306 307 308
  ## LynxOS ports
  *-*-lynxos* )
    opsys=lynxos
    case "${canonical}" in
      i[3456]86-*-lynxos*) machine=intel386 ;;
      powerpc-*-lynxos*) machine=powerpc ;;
    esac
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
309 310 311 312 313
  ## Acorn RISCiX:
  arm-acorn-riscix1.1* )
    machine=acorn opsys=riscix1-1
  ;;
  arm-acorn-riscix1.2* | arm-acorn-riscix )
314 315 316
    ## This name is riscix12 instead of riscix1.2
    ## to avoid a file name conflict on MSDOS.
    machine=acorn opsys=riscix12
David J. MacKenzie's avatar
David J. MacKenzie committed
317 318
  ;;

319 320 321 322 323 324
  ## BSDI ports
  *-*-bsdi* )
    opsys=bsdi
    case "${canonical}" in
      i[345]86-*-bsdi*) machine=intel386 ;;
      sparc-*-bsdi*)  machine=sparc ;;
325
      powerpc-*-bsdi*)  machine=macppc ;;
326 327 328 329 330 331
    esac
    case "${canonical}" in
      *-*-bsd386* | *-*-bsdi1* )	opsys=bsd386 ;;
      *-*-bsdi2.0* )		opsys=bsdos2 ;;
      *-*-bsdi2* )		opsys=bsdos2-1 ;;
      *-*-bsdi3* )		opsys=bsdos3 ;;
Eli Zaretskii's avatar
Eli Zaretskii committed
332
      *-*-bsdi[45]* )		opsys=bsdos4 ;;
333 334 335
    esac
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
336 337 338 339 340 341 342 343 344 345 346 347 348
  ## Alliant machines
  ## Strictly speaking, we need the version of the alliant operating
  ## system to choose the right machine file, but currently the
  ## configuration name doesn't tell us enough to choose the right
  ## one; we need to give alliants their own operating system name to
  ## do this right.  When someone cares, they can help us.
  fx80-alliant-* )
    machine=alliant4 opsys=bsd4-2
  ;;
  i860-alliant-* )
    machine=alliant-2800 opsys=bsd4-3
  ;;

349
  ## Alpha (DEC) machines.
350
  alpha*-dec-osf* )
David J. MacKenzie's avatar
David J. MacKenzie committed
351
    machine=alpha opsys=osf1
352
    # This is needed to find X11R6.1 libraries for certain tests.
353 354
    NON_GCC_LINK_TEST_OPTIONS=-Wl,-rpath,/usr/X11R6/lib
    GCC_LINK_TEST_OPTIONS=-Wl,-rpath,/usr/X11R6/lib
Dave Love's avatar
Dave Love committed
355 356 357 358 359
    # NON_GNU_CPP is necessary on 5.0 to avoid mangling src/Makefile
    # due to non-traditional preprocessing with the current compiler
    # defaults.  OSF 4 can also have that compiler version, and there
    # seems always to have been a usable /usr/bin/cpp.
    NON_GNU_CPP=/usr/bin/cpp
360
    case "${canonical}" in
361
    alpha*-dec-osf[5-9]*)
362
      opsys=osf5-0 ;;
363
    esac
David J. MacKenzie's avatar
David J. MacKenzie committed
364 365
  ;;

366
  alpha*-*-linux-gnu* )
367
    machine=alpha opsys=gnu-linux
368 369
  ;;

370 371 372 373
  arm*-*-linux-gnu* )
    machine=arm opsys=gnu-linux
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
374 375 376 377
  ## Altos 3068
  m68*-altos-sysv* )
    machine=altos opsys=usg5-2
  ;;
378

David J. MacKenzie's avatar
David J. MacKenzie committed
379 380 381 382 383
  ## Amdahl UTS
  580-amdahl-sysv* )
    machine=amdahl opsys=usg5-2-2
  ;;

384 385 386
  ## Apollo, Domain/OS
  m68*-apollo-* )
    machine=apollo opsys=bsd4-3
David J. MacKenzie's avatar
David J. MacKenzie committed
387 388
  ;;

389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406
  ## Apple Darwin / Mac OS X
  *-apple-darwin* )
    case "${canonical}" in
      i[3456]86-* )  machine=intel386 ;;
      powerpc-* )    machine=powermac ;;
      * )            unported=yes ;;
    esac
    opsys=darwin
    # Define CPP as follows to make autoconf work correctly.
    CPP="${CC-cc} -E -no-cpp-precomp"
    # Use fink packages if available.
    if test -d /sw/include && test -d /sw/lib; then
      GCC_TEST_OPTIONS="-I/sw/include -L/sw/lib"
      CPP="${CPP} ${GCC_TEST_OPTIONS}"
      NON_GCC_TEST_OPTIONS=${GCC_TEST_OPTIONS}
    fi
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450
  ## AT&T 3b2, 3b5, 3b15, 3b20
  we32k-att-sysv* )
    machine=att3b opsys=usg5-2-2
  ;;

  ## AT&T 3b1 - The Mighty Unix PC!
  m68*-att-sysv* )
    machine=7300 opsys=usg5-2-2
  ;;

  ## Bull dpx20
  rs6000-bull-bosx* )
    machine=ibmrs6000 opsys=aix3-2
  ;;

  ## Bull dpx2
  m68*-bull-sysv3* )
    machine=dpx2 opsys=usg5-3
  ;;

  ## Bull sps7
  m68*-bull-sysv2* )
    machine=sps7 opsys=usg5-2
  ;;

  ## CCI 5/32, 6/32 -- see "Tahoe".

  ## Celerity
  ## I don't know what configuration name to use for this; config.sub
  ## doesn't seem to know anything about it.  Hey, Celerity users, get
  ## in touch with us!
  celerity-celerity-bsd* )
    machine=celerity opsys=bsd4-2
  ;;

  ## Clipper
  ## What operating systems does this chip run that Emacs has been
  ## tested on?
  clipper-* )
    machine=clipper
    ## We'll use the catch-all code at the bottom to guess the
    ## operating system.
  ;;

451 452 453 454 455
  ## Compaq Nonstop
  mips-compaq-nonstopux* )
    machine=nonstopux opsys=nonstopux
    ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
456 457 458
  ## Convex
  *-convex-bsd* | *-convex-convexos* )
    machine=convex opsys=bsd4-3
Karl Heuer's avatar
Karl Heuer committed
459
    ## Prevents spurious white space in makefiles - d.m.cooke@larc.nasa.gov
David J. MacKenzie's avatar
David J. MacKenzie committed
460 461 462 463
    NON_GNU_CPP="cc -E -P"
  ;;

  ## Cubix QBx/386
464
  i[3456]86-cubix-sysv* )
David J. MacKenzie's avatar
David J. MacKenzie committed
465 466 467 468 469 470 471 472 473
    machine=intel386 opsys=usg5-3
  ;;

  ## Cydra 5
  cydra*-cydrome-sysv* )
    machine=cydra5 opsys=usg5-3
  ;;

  ## Data General AViiON Machines
474 475 476
  ## DG changed naming conventions with the release of 5.4.4.10, they
  ## dropped the initial 5.4 but left the intervening R.  Because of the
  ## R this shouldn't conflict with older versions of the OS (which I
477 478
  ## think were named like dgux4.*). In addition, DG new AViiONs series
  ## uses either Motorola M88k or Intel Pentium CPUs.
Karl Heuer's avatar
Karl Heuer committed
479
  m88k-dg-dguxR4.* | m88k-dg-dgux4* )
480 481
    machine=aviion opsys=dgux4
  ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
482
  m88k-dg-dgux5.4R3* | m88k-dg-dgux5.4.3* )
483 484 485
    ## This name is dgux5-4-3 instead of dgux5-4r3
    ## to avoid a file name conflict on MSDOS.
    machine=aviion opsys=dgux5-4-3
David J. MacKenzie's avatar
David J. MacKenzie committed
486 487 488 489 490 491 492 493
  ;;
  m88k-dg-dgux5.4R2* | m88k-dg-dgux5.4.2* )
    machine=aviion opsys=dgux5-4r2
  ;;
  m88k-dg-dgux* )
    machine=aviion opsys=dgux
  ;;

Karl Heuer's avatar
Karl Heuer committed
494 495 496
  ## Data General AViiON Intel (x86) Machines
  ## Exists from 5.4.3 (current i586-dg-dguxR4.11)
  ## Ehud Karni, 1998-may-30, ehud@unix.simonwiesel.co.il
Karl Heuer's avatar
Karl Heuer committed
497
  i[345]86-dg-dguxR4* )
Karl Heuer's avatar
Karl Heuer committed
498 499 500
    machine=aviion-intel opsys=dgux4
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
501 502 503 504
  ## DECstations
  mips-dec-ultrix[0-3].* | mips-dec-ultrix4.0* | mips-dec-bsd4.2* )
    machine=pmax opsys=bsd4-2
  ;;
505
  mips-dec-ultrix4.[12]* | mips-dec-bsd* )
David J. MacKenzie's avatar
David J. MacKenzie committed
506 507
    machine=pmax opsys=bsd4-3
  ;;
508 509 510
  mips-dec-ultrix* )
    machine=pmax opsys=ultrix4-3
  ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
511 512 513
  mips-dec-osf* )
    machine=pmax opsys=osf1
  ;;
514 515 516
  mips-dec-mach_bsd4.3* )
    machine=pmax opsys=mach-bsd4-3
  ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
517 518 519 520 521

  ## Motorola Delta machines
  m68k-motorola-sysv* | m68000-motorola-sysv* )
    machine=delta opsys=usg5-3
    if test -z "`type gnucc | grep 'not found'`"
522 523 524 525
    then
      if test -s /etc/167config
      then CC="gnucc -m68040"
      else CC="gnucc -m68881"
526
      fi
David J. MacKenzie's avatar
David J. MacKenzie committed
527 528 529 530 531 532 533 534
    else
      if test -z "`type gcc | grep 'not found'`"
      then CC=gcc
      else CC=cc
      fi
    fi
  ;;
  m88k-motorola-sysv4* )
535 536 537 538 539
    # jbotte@bnr.ca says that UNIX_System_V <hostName> 4.0 R40V4.3 m88k mc88110
    # needs POSIX_SIGNALS and therefore needs usg5-4-2.
    # I hope there are not other 4.0 versions for this machine
    # which really need usg5-4 instead.
    machine=delta88k opsys=usg5-4-2
David J. MacKenzie's avatar
David J. MacKenzie committed
540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562
  ;;
  m88k-motorola-sysv* | m88k-motorola-m88kbcs* )
    machine=delta88k opsys=usg5-3
  ;;

  ## Dual machines
  m68*-dual-sysv* )
    machine=dual opsys=usg5-2
  ;;
  m68*-dual-uniplus* )
    machine=dual opsys=unipl5-2
  ;;

  ## Elxsi 6400
  elxsi-elxsi-sysv* )
    machine=elxsi opsys=usg5-2
  ;;

  ## Encore machines
  ns16k-encore-bsd* )
    machine=ns16000 opsys=umax
  ;;

Dave Love's avatar
Dave Love committed
563 564
  ## The GEC 63 - apparently, this port isn't really finished yet.
  #  I'm sure we finished off the last of the machines, though.  -- fx
David J. MacKenzie's avatar
David J. MacKenzie committed
565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584

  ## Gould Power Node and NP1
  pn-gould-bsd4.2* )
    machine=gould opsys=bsd4-2
  ;;
  pn-gould-bsd4.3* )
    machine=gould opsys=bsd4-3
  ;;
  np1-gould-bsd* )
    machine=gould-np1 opsys=bsd4-3
  ;;

  ## Harris Night Hawk machines running CX/UX (a 5000 looks just like a 4000
  ## as far as Emacs is concerned).
  m88k-harris-cxux* )
    # Build needs to be different on 7.0 and later releases
    case "`uname -r`" in
       [56].[0-9] ) machine=nh4000 opsys=cxux ;;
       [7].[0-9] ) machine=nh4000 opsys=cxux7 ;;
    esac
585
    NON_GNU_CPP="/lib/cpp"
David J. MacKenzie's avatar
David J. MacKenzie committed
586 587 588 589 590
  ;;
  ## Harris ecx or gcx running CX/UX (Series 1200, Series 3000)
  m68k-harris-cxux* )
    machine=nh3000 opsys=cxux
  ;;
591 592 593 594 595
  ## Harris power pc NightHawk running Power UNIX (Series 6000)
  powerpc-harris-powerunix )
    machine=nh6000 opsys=powerunix
    NON_GNU_CPP="cc -Xo -E -P"
  ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
596 597 598 599 600 601 602 603 604
  ## Honeywell XPS100
  xps*-honeywell-sysv* )
    machine=xps100 opsys=usg5-2
  ;;

  ## HP 9000 series 200 or 300
  m68*-hp-bsd* )
    machine=hp9000s300 opsys=bsd4-3
  ;;
605
  ## HP/UX 7, 8, 9, and 10 are supported on these machines.
David J. MacKenzie's avatar
David J. MacKenzie committed
606 607 608 609 610 611 612
  m68*-hp-hpux* )
    case "`uname -r`" in
      ## Someone's system reports A.B8.05 for this.
      ## I wonder what other possibilities there are.
      *.B8.* ) machine=hp9000s300 opsys=hpux8 ;;
      *.08.* ) machine=hp9000s300 opsys=hpux8 ;;
      *.09.* ) machine=hp9000s300 opsys=hpux9 ;;
613
      *.1[0-9].* ) machine=hp9000s300 opsys=hpux9shr ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
614 615 616 617
      *) machine=hp9000s300 opsys=hpux ;;
    esac
  ;;

618 619 620 621 622 623 624 625
  hppa*-*-linux-gnu* )
    machine=hp800 opsys=gnu-linux
  ;;

  hppa*-*-nextstep* )
    machine=hp800 opsys=nextstep
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
626 627 628 629 630 631 632 633 634
  ## Orion machines
  orion-orion-bsd* )
    machine=orion opsys=bsd4-2
  ;;
  clipper-orion-bsd* )
    machine=orion105 opsys=bsd4-2
  ;;

  ## IBM machines
635
  i[3456]86-ibm-aix1.1* )
David J. MacKenzie's avatar
David J. MacKenzie committed
636 637
    machine=ibmps2-aix opsys=usg5-2-2
  ;;
638
  i[3456]86-ibm-aix1.[23]* | i[3456]86-ibm-aix* )
David J. MacKenzie's avatar
David J. MacKenzie committed
639 640 641 642 643
    machine=ibmps2-aix opsys=usg5-3
  ;;
  i370-ibm-aix*)
    machine=ibm370aix opsys=usg5-3
  ;;
Dave Love's avatar
Dave Love committed
644
  s390-*-linux-gnu* )
645 646
    machine=ibms390 opsys=gnu-linux
  ;;
647 648 649
  s390x-*-linux-gnu* )
    machine=ibms390x opsys=gnu-linux
  ;;
650
  rs6000-ibm-aix3.1* | powerpc-ibm-aix3.1*  )
David J. MacKenzie's avatar
David J. MacKenzie committed
651 652
    machine=ibmrs6000 opsys=aix3-1
  ;;
653
  rs6000-ibm-aix3.2.5 | powerpc-ibm-aix3.2.5 )
David J. MacKenzie's avatar
David J. MacKenzie committed
654 655
    machine=ibmrs6000 opsys=aix3-2-5
  ;;
656 657 658
  rs6000-ibm-aix4.1* | powerpc-ibm-aix4.1*  )
    machine=ibmrs6000 opsys=aix4-1
  ;;
659 660 661
  rs6000-ibm-aix4.2* | powerpc-ibm-aix4.2*  )
    machine=ibmrs6000 opsys=aix4-2
  ;;
662 663 664
  rs6000-ibm-aix4.3* | powerpc-ibm-aix4.3*  )
    machine=ibmrs6000 opsys=aix4-2
  ;;
665
  rs6000-ibm-aix5* | powerpc-ibm-aix5*  )
Eli Zaretskii's avatar
Eli Zaretskii committed
666 667
    machine=ibmrs6000 opsys=aix4-2
  ;;
668
  rs6000-ibm-aix4.0* | powerpc-ibm-aix4.0*  )
669 670
    machine=ibmrs6000 opsys=aix4
  ;;
671 672 673
  rs6000-ibm-aix4* | powerpc-ibm-aix4*  )
    machine=ibmrs6000 opsys=aix4-1
  ;;
674
  rs6000-ibm-aix* | powerpc-ibm-aix* )
David J. MacKenzie's avatar
David J. MacKenzie committed
675 676 677 678
    machine=ibmrs6000 opsys=aix3-2
  ;;
  romp-ibm-bsd4.3* )
    machine=ibmrt opsys=bsd4-3
679
  ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
680 681 682 683 684
  romp-ibm-bsd4.2* )
    machine=ibmrt opsys=bsd4-2
  ;;
  romp-ibm-aos4.3* )
    machine=ibmrt opsys=bsd4-3
685
  ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707
  romp-ibm-aos4.2* )
    machine=ibmrt opsys=bsd4-2
  ;;
  romp-ibm-aos* )
    machine=ibmrt opsys=bsd4-3
  ;;
  romp-ibm-bsd* )
    machine=ibmrt opsys=bsd4-3
  ;;
  romp-ibm-aix* )
    machine=ibmrt-aix opsys=usg5-2-2
  ;;

  ## Integrated Solutions `Optimum V'
  m68*-isi-bsd4.2* )
    machine=isi-ov opsys=bsd4-2
  ;;
  m68*-isi-bsd4.3* )
    machine=isi-ov opsys=bsd4-3
  ;;

  ## Intel 386 machines where we do care about the manufacturer
708
  i[3456]86-intsys-sysv* )
David J. MacKenzie's avatar
David J. MacKenzie committed
709 710 711 712
    machine=is386 opsys=usg5-2-2
  ;;

  ## Prime EXL
713
  i[3456]86-prime-sysv* )
David J. MacKenzie's avatar
David J. MacKenzie committed
714 715 716
    machine=i386 opsys=usg5-3
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
717
  ## Sequent Symmetry running Dynix
718
  i[3456]86-sequent-bsd* )
David J. MacKenzie's avatar
David J. MacKenzie committed
719 720 721
    machine=symmetry opsys=bsd4-3
  ;;

722 723 724
  ## Sequent Symmetry running ptx 4, which is a modified SVR4.
  i[3456]86-sequent-ptx4* | i[3456]86-sequent-sysv4* )
    machine=sequent-ptx opsys=ptx4
725
    NON_GNU_CPP=/lib/cpp
726 727
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
728 729
  ## Sequent Symmetry running DYNIX/ptx
  ## Use the old cpp rather than the newer ANSI one.
730
  i[3456]86-sequent-ptx* )
David J. MacKenzie's avatar
David J. MacKenzie committed
731 732 733 734
    machine=sequent-ptx opsys=ptx
    NON_GNU_CPP="/lib/cpp"
  ;;

735 736 737 738 739
  ## ncr machine running svr4.3.
  i[3456]86-ncr-sysv4.3 )
    machine=ncr386 opsys=usg5-4-3
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
740 741
  ## Unspecified sysv on an ncr machine defaults to svr4.2.
  ## (Plain usg5-4 doesn't turn on POSIX signals, which we need.)
742
  i[3456]86-ncr-sysv* )
Richard M. Stallman's avatar
Richard M. Stallman committed
743
    machine=ncr386 opsys=usg5-4-2
David J. MacKenzie's avatar
David J. MacKenzie committed
744 745
  ;;

746 747 748 749 750
  ## Intel Paragon OSF/1
  i860-intel-osf1* )
    machine=paragon opsys=osf1 NON_GNU_CPP=/usr/mach/lib/cpp
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
751 752 753 754 755 756 757
  ## Intel 860
  i860-*-sysv4* )
    machine=i860 opsys=usg5-4
    NON_GNU_CC="/bin/cc" # Ie, not the one in /usr/ucb/cc.
    NON_GNU_CPP="/usr/ccs/lib/cpp" # cc -E tokenizes macro expansion.
  ;;

758 759 760 761 762
  ## Macintosh PowerPC
  powerpc*-*-linux-gnu* )
    machine=macppc opsys=gnu-linux
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792
  ## Masscomp machines
  m68*-masscomp-rtu* )
    machine=masscomp opsys=rtu
  ;;

  ## Megatest machines
  m68*-megatest-bsd* )
    machine=mega68 opsys=bsd4-2
  ;;

  ## Workstations sold by MIPS
  ## This is not necessarily all workstations using the MIPS processor -
  ## Irises are produced by SGI, and DECstations by DEC.

  ## etc/MACHINES lists mips.h and mips4.h as possible machine files,
  ## and usg5-2-2 and bsd4-3 as possible OS files.  The only guidance
  ## it gives for choosing between the alternatives seems to be "Use
  ## -machine=mips4 for RISCOS version 4; use -opsystem=bsd4-3 with
  ## the BSD world."  I'll assume that these are instructions for
  ## handling two odd situations, and that every other situation
  ## should use mips.h and usg5-2-2, they being listed first.
  mips-mips-usg* )
    machine=mips4
    ## Fall through to the general code at the bottom to decide on the OS.
  ;;
  mips-mips-riscos4* )
    machine=mips4 opsys=bsd4-3
    NON_GNU_CC="cc -systype bsd43"
    NON_GNU_CPP="cc -systype bsd43 -E"
  ;;
793 794 795 796 797
  mips-mips-riscos5* )
    machine=mips4 opsys=riscos5
    NON_GNU_CC="cc -systype bsd43"
    NON_GNU_CPP="cc -systype bsd43 -E"
  ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
798 799 800 801 802 803 804 805
  mips-mips-bsd* )
    machine=mips opsys=bsd4-3
  ;;
  mips-mips-* )
    machine=mips opsys=usg5-2-2
  ;;

  ## NeXT
806 807
  m68*-next-* | m68k-*-nextstep* )
    machine=m68k opsys=nextstep
David J. MacKenzie's avatar
David J. MacKenzie committed
808 809 810 811 812 813 814 815 816 817 818 819 820 821 822
  ;;

  ## The complete machine from National Semiconductor
  ns32k-ns-genix* )
    machine=ns32000 opsys=usg5-2
  ;;

  ## NCR machines
  m68*-ncr-sysv2* | m68*-ncr-sysvr2* )
    machine=tower32 opsys=usg5-2-2
  ;;
  m68*-ncr-sysv3* | m68*-ncr-sysvr3* )
    machine=tower32v3 opsys=usg5-3
  ;;

Kenichi Handa's avatar
Kenichi Handa committed
823 824 825 826 827
  ## NEC EWS4800
  mips-nec-sysv4*)
  machine=ews4800 opsys=ux4800
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858
  ## Nixdorf Targon 31
  m68*-nixdorf-sysv* )
    machine=targon31 opsys=usg5-2-2
  ;;

  ## Nu (TI or LMI)
  m68*-nu-sysv* )
    machine=nu opsys=usg5-2
  ;;

  ## Plexus
  m68*-plexus-sysv* )
    machine=plexus opsys=usg5-2
  ;;

  ## Pyramid machines
  ## I don't really have any idea what sort of processor the Pyramid has,
  ## so I'm assuming it is its own architecture.
  pyramid-pyramid-bsd* )
    machine=pyramid opsys=bsd4-2
  ;;

  ## Sequent Balance
  ns32k-sequent-bsd4.2* )
    machine=sequent opsys=bsd4-2
  ;;
  ns32k-sequent-bsd4.3* )
    machine=sequent opsys=bsd4-3
  ;;

  ## Siemens Nixdorf
859
  mips-siemens-sysv* | mips-sni-sysv*)
David J. MacKenzie's avatar
David J. MacKenzie committed
860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876
    machine=mips-siemens opsys=usg5-4
    NON_GNU_CC=/usr/ccs/bin/cc
    NON_GNU_CPP=/usr/ccs/lib/cpp
  ;;

  ## Silicon Graphics machines
  ## Iris 2500 and Iris 2500 Turbo (aka the Iris 3030)
  m68*-sgi-iris3.5* )
    machine=irist opsys=iris3-5
  ;;
  m68*-sgi-iris3.6* | m68*-sgi-iris*)
    machine=irist opsys=iris3-6
  ;;
  ## Iris 4D
  mips-sgi-irix3* )
    machine=iris4d opsys=irix3-3
  ;;
877 878 879
  mips-sgi-irix4* )
    machine=iris4d opsys=irix4-0
  ;;
Karl Heuer's avatar
Karl Heuer committed
880 881
  mips-sgi-irix6.5 )
    machine=iris4d opsys=irix6-5
882 883 884 885
    # Without defining _LANGUAGE_C, things get masked out in the headers
    # so that, for instance, grepping for `free' in stdlib.h fails and
    # AC_HEADER_STD_C fails.   (MIPSPro 7.2.1.2m compilers, Irix 6.5.3m).
    NON_GNU_CPP="/lib/cpp -D_LANGUAGE_C"
886
    NON_GCC_TEST_OPTIONS="-D_LANGUAGE_C"
Karl Heuer's avatar
Karl Heuer committed
887
  ;;
888
  mips-sgi-irix6* )
889
    machine=iris4d opsys=irix6-0
890
    # It's not clear whether -D_LANGUAGE_C is necessary as it is for 6.5,
891 892
    # but presumably it does no harm.
    NON_GNU_CPP="/lib/cpp -D_LANGUAGE_C"
893
    # -32 probably isn't necessary in later v.6s -- anyone know which?
894
    NON_GCC_TEST_OPTIONS=-32
895
  ;;
896
  mips-sgi-irix5.[01]* )
David J. MacKenzie's avatar
David J. MacKenzie committed
897 898
    machine=iris4d opsys=irix5-0
  ;;
899 900
  mips-sgi-irix5* | mips-sgi-irix* )
    machine=iris4d opsys=irix5-2
David J. MacKenzie's avatar
David J. MacKenzie committed
901 902 903 904 905 906 907 908 909
  ;;

  ## SONY machines
  m68*-sony-bsd4.2* )
    machine=news opsys=bsd4-2
  ;;
  m68*-sony-bsd4.3* )
    machine=news opsys=bsd4-3
  ;;
910
  m68*-sony-newsos3* | m68*-sony-news3*)
David J. MacKenzie's avatar
David J. MacKenzie committed
911 912
    machine=news opsys=bsd4-3
  ;;
913
  mips-sony-bsd* | mips-sony-newsos4* | mips-sony-news4*)
David J. MacKenzie's avatar
David J. MacKenzie committed
914 915
    machine=news-risc opsys=bsd4-3
  ;;
916
  mips-sony-newsos6* )
917
    machine=news-r6 opsys=newsos6
918
  ;;
919
  mips-sony-news* )
David J. MacKenzie's avatar
David J. MacKenzie committed
920 921 922 923 924 925 926 927 928
    machine=news-risc opsys=newsos5
  ;;

  ## Stride
  m68*-stride-sysv* )
    machine=stride opsys=usg5-2
  ;;

  ## Suns
Dave Love's avatar
Dave Love committed
929
  sparc-*-linux-gnu* | sparc64-*-linux-gnu* )
930
    machine=sparc opsys=gnu-linux
Karl Heuer's avatar
Karl Heuer committed
931 932
  ;;

933
  *-auspex-sunos* | *-sun-sunos* | *-sun-bsd* | *-sun-solaris* \
934
    | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* | powerpc*-*-solaris2* \
935
    | rs6000-*-solaris2*)
David J. MacKenzie's avatar
David J. MacKenzie committed
936 937 938 939
    case "${canonical}" in
      m68*-sunos1* )	machine=sun1 ;;
      m68*-sunos2* )	machine=sun2 ;;
      m68* )		machine=sun3 ;;
940 941
      i[3456]86-sun-sunos[34]* )	machine=sun386 ;;
      i[3456]86-*-* )     machine=intel386 ;;
942
      amd64-*-*|x86_64-*-*)	machine=amdx86-64 ;;
943
      powerpcle* )      machine=powerpcle ;;
944
      powerpc* | rs6000* )  machine=ibmrs6000 ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
945 946 947 948 949
      sparc* )		machine=sparc ;;
      * )		unported=yes ;;
    esac
    case "${canonical}" in
      ## The Sun386 didn't get past 4.0.
950
      i[3456]86-*-sunos4	  ) opsys=sunos4-0 ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
951
      *-sunos4.0*	  ) opsys=sunos4-0 ;;
952
      *-sunos4.1.[3-9]*noshare )
953 954 955
		## This name is sunos413 instead of sunos4-1-3
		## to avoid a file name conflict on MSDOS.
		opsys=sunos413
956 957 958 959
		NON_GNU_CPP=/usr/lib/cpp
		NON_GCC_TEST_OPTIONS=-Bstatic
		GCC_TEST_OPTIONS=-static
		;;
960 961 962 963
      *-sunos4.1.[3-9]* | *-sunos4shr*)
		opsys=sunos4shr
		NON_GNU_CPP=/usr/lib/cpp
		;;
964 965
      *-sunos4* | *-sunos )
		opsys=sunos4-1
David J. MacKenzie's avatar
David J. MacKenzie committed
966 967 968 969 970 971 972 973 974 975
		NON_GCC_TEST_OPTIONS=-Bstatic
		GCC_TEST_OPTIONS=-static
		;;
      *-sunos5.3* | *-solaris2.3* )
		opsys=sol2-3
		NON_GNU_CPP=/usr/ccs/lib/cpp
		;;
      *-sunos5.4* | *-solaris2.4* )
		opsys=sol2-4
		NON_GNU_CPP=/usr/ccs/lib/cpp
976
		RANLIB="ar -ts"
David J. MacKenzie's avatar
David J. MacKenzie committed
977
		;;
978 979 980
      *-sunos5.5* | *-solaris2.5* )
		opsys=sol2-5
		NON_GNU_CPP=/usr/ccs/lib/cpp
981
		RANLIB="ar -ts"
982
		;;
983 984 985 986 987
      *-sunos5.6* | *-solaris2.6* )
		opsys=sol2-6
		NON_GNU_CPP=/usr/ccs/lib/cpp
		RANLIB="ar -ts"
		;;
David J. MacKenzie's avatar
David J. MacKenzie committed
988
      *-sunos5* | *-solaris* )
989
		opsys=sol2-6
David J. MacKenzie's avatar
David J. MacKenzie committed
990 991 992 993
		NON_GNU_CPP=/usr/ccs/lib/cpp
		;;
      *			  ) opsys=bsd4-2   ;;
    esac
994 995 996 997 998 999 1000 1001 1002 1003 1004
    ## Watch out for a compiler that we know will not work.
    case "${canonical}" in
     *-solaris* | *-sunos5* )
		if [ "x$CC" = x/usr/ucb/cc ]; then
		  ## /usr/ucb/cc doesn't work;
		  ## we should find some other compiler that does work.
		  unset CC
		fi
		;;
      *) ;;
    esac
David J. MacKenzie's avatar
David J. MacKenzie committed
1005
  ;;
1006
  sparc-*-nextstep* )
1007
    machine=sparc opsys=nextstep
1008
  ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047

  ## Tadpole 68k
  m68*-tadpole-sysv* )
    machine=tad68k opsys=usg5-3
  ;;

  ## Tahoe machines
  tahoe-tahoe-bsd4.2* )
    machine=tahoe opsys=bsd4-2
  ;;
  tahoe-tahoe-bsd4.3* )
    machine=tahoe opsys=bsd4-3
  ;;

  ## Tandem Integrity S2
  mips-tandem-sysv* )
    machine=tandem-s2 opsys=usg5-3
  ;;

  ## Tektronix XD88
  m88k-tektronix-sysv3* )
  machine=tekxd88 opsys=usg5-3
  ;;

  ## Tektronix 16000 box (6130?)
  ns16k-tektronix-bsd* )
    machine=ns16000 opsys=bsd4-2
  ;;
  ## Tektronix 4300
  ## src/m/tek4300.h hints that this is a m68k machine.
  m68*-tektronix-bsd* )
    machine=tek4300 opsys=bsd4-3
  ;;

  ## Titan P2 or P3
  ## We seem to have lost the machine-description file titan.h!
  titan-titan-sysv* )
    machine=titan opsys=usg5-3
  ;;
1048

David J. MacKenzie's avatar
David J. MacKenzie committed
1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079
  ## Ustation E30 (SS5E)
  m68*-unisys-uniplus* )
    machine=ustation opsystem=unipl5-2
  ;;

  ## Vaxen.
  vax-dec-* )
    machine=vax
    case "${canonical}" in
      *-bsd4.1* ) 					opsys=bsd4-1 ;;
      *-bsd4.2* | *-ultrix[0-3].* | *-ultrix4.0* )	opsys=bsd4-2 ;;
      *-bsd4.3* | *-ultrix* ) 				opsys=bsd4-3 ;;
      *-sysv[01]* | *-sysvr[01]* ) 			opsys=usg5-0 ;;
      *-sysv2* | *-sysvr2* )				opsys=usg5-2 ;;
      *-vms* ) 						opsys=vms ;;
      * ) 						unported=yes
    esac
  ;;

  ## Whitechapel MG1
  ns16k-whitechapel-* )
    machine=mg1
    ## We don't know what sort of OS runs on these; we'll let the
    ## operating system guessing code below try.
  ;;

  ## Wicat
  m68*-wicat-sysv* )
    machine=wicat opsys=usg5-2
  ;;

1080 1081 1082 1083 1084
  ## IA-64
  ia64*-*-linux* )
    machine=ia64 opsys=gnu-linux
  ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
1085
  ## Intel 386 machines where we don't care about the manufacturer
1086
  i[3456]86-*-* )
David J. MacKenzie's avatar
David J. MacKenzie committed
1087 1088
    machine=intel386
    case "${canonical}" in
Juanma Barranquero's avatar
Juanma Barranquero committed
1089
      *-cygwin )                opsys=cygwin ;;
1090
      *-darwin* )               opsys=darwin
1091 1092
                                CPP="${CC-cc} -E -no-cpp-precomp"
 				;;
David J. MacKenzie's avatar
David J. MacKenzie committed
1093 1094 1095
      *-isc1.* | *-isc2.[01]* )	opsys=386-ix ;;
      *-isc2.2* )		opsys=isc2-2 ;;
      *-isc4.0* )		opsys=isc4-0 ;;
1096 1097 1098 1099
      *-isc4.* )		opsys=isc4-1
				GCC_TEST_OPTIONS=-posix
				NON_GCC_TEST_OPTIONS=-Xp
				;;
David J. MacKenzie's avatar
David J. MacKenzie committed
1100 1101 1102 1103
      *-isc* )			opsys=isc3-0 ;;
      *-esix5* )		opsys=esix5r4; NON_GNU_CPP=/usr/lib/cpp ;;
      *-esix* )			opsys=esix ;;
      *-xenix* )		opsys=xenix ;;
1104
      *-linux-gnu* )		opsys=gnu-linux ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
1105
      *-sco3.2v4* )		opsys=sco4 ; NON_GNU_CPP=/lib/cpp  ;;
1106
      *-sco3.2v5* )		opsys=sco5
1107 1108 1109
				NON_GNU_CPP=/lib/cpp
				# Prevent -belf from being passed to $CPP.
				# /lib/cpp does not accept it.
Richard M. Stallman's avatar
Richard M. Stallman committed
1110
				OVERRIDE_CPPFLAGS=" "
1111
				;;
1112
      *-sysv4.2uw* )	  	opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
1113 1114
      *-sysv5uw* )	  	opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
      *-sysv5OpenUNIX* )  	opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
1115
      *-386bsd* )	        opsys=386bsd ;;
1116
      *-nextstep* )             opsys=nextstep ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
1117 1118 1119 1120
      ## Otherwise, we'll fall through to the generic opsys code at the bottom.
    esac
  ;;

1121
  ## m68k Linux-based GNU system
1122 1123
  m68k-*-linux-gnu* )
    machine=m68k opsys=gnu-linux
1124 1125
  ;;

1126
  ## Mips Linux-based GNU system
1127
  mips-*-linux-gnu* | mipsel-*-linux-gnu* )
1128 1129 1130
    machine=mips opsys=gnu-linux
  ;;

1131 1132 1133 1134 1135 1136 1137
  ## UXP/DS
  sparc-fujitsu-sysv4* )
    machine=sparc opsys=uxpds
    NON_GNU_CPP=/usr/ccs/lib/cpp
    RANLIB="ar -ts"
  ;;

1138 1139 1140 1141 1142
  ## UXP/V
  f301-fujitsu-uxpv4.1)
    machine=f301 opsys=uxpv
  ;;

Andreas Schwab's avatar
Andreas Schwab committed
1143 1144
  ## AMD x86-64 Linux-based GNU system
  x86_64-*-linux-gnu* )
1145
    machine=amdx86-64 opsys=gnu-linux
Andreas Schwab's avatar
Andreas Schwab committed
1146 1147
  ;;

1148 1149 1150 1151 1152
  ## Tensilica Xtensa Linux-based GNU system    
  xtensa-*-linux-gnu* )
    machine=xtensa opsys=gnu-linux
    ;;

David J. MacKenzie's avatar
David J. MacKenzie committed
1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172
  * )
    unported=yes
  ;;
esac

### If the code above didn't choose an operating system, just choose
### an operating system based on the configuration name.  You really
### only want to use this when you have no idea what the right
### operating system is; if you know what operating systems a machine
### runs, it's cleaner to make it explicit in the case statement
### above.
if test x"${opsys}" = x; then
  case "${canonical}" in
    *-gnu* )				opsys=gnu ;;
    *-bsd4.[01] )			opsys=bsd4-1 ;;
    *-bsd4.2 )				opsys=bsd4-2 ;;
    *-bsd4.3 )				opsys=bsd4-3 ;;
    *-sysv0 | *-sysvr0 )		opsys=usg5-0 ;;
    *-sysv2 | *-sysvr2 )		opsys=usg5-2 ;;
    *-sysv2.2 | *-sysvr2.2 )		opsys=usg5-2-2 ;;
1173
    *-sysv3* | *-sysvr3* )		opsys=usg5-3 ;;
1174
    *-sysv4.2uw* )			opsys=unixware ;;
1175 1176
    *-sysv5uw* )			opsys=unixware ;;
    *-sysv5OpenUNIX* )			opsys=unixware ;;
1177
    *-sysv4.1* | *-sysvr4.1* )
David J. MacKenzie's avatar
David J. MacKenzie committed
1178 1179
	NON_GNU_CPP=/usr/lib/cpp
	opsys=usg5-4 ;;
1180
    *-sysv4.[2-9]* | *-sysvr4.[2-9]* )
1181
	if [ x$NON_GNU_CPP = x ]; then
1182 1183 1184 1185 1186
	  if [ -f /usr/ccs/lib/cpp ]; then
	    NON_GNU_CPP=/usr/ccs/lib/cpp
	  else
	    NON_GNU_CPP=/lib/cpp
	  fi
1187 1188
	fi
	opsys=usg5-4-2 ;;
1189
    *-sysv4* | *-sysvr4* )		opsys=usg5-4 ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
1190 1191 1192 1193 1194 1195
    * )
      unported=yes
    ;;
  esac
fi

Dave Love's avatar
Dave Love committed
1196
]
1197
dnl quotation ends
David J. MacKenzie's avatar
David J. MacKenzie committed
1198 1199

if test $unported = yes; then
Dave Love's avatar
Dave Love committed
1200 1201
  AC_MSG_ERROR([Emacs hasn't been ported to `${canonical}' systems.
Check `etc/MACHINES' for recognized configuration names.])
David J. MacKenzie's avatar
David J. MacKenzie committed
1202 1203 1204 1205 1206 1207 1208 1209 1210
fi

machfile="m/${machine}.h"
opsysfile="s/${opsys}.h"


#### Choose a compiler.
test -n "$CC" && cc_specified=yes

1211 1212 1213
# Save the value of CFLAGS that the user specified.
SPECIFIED_CFLAGS="$CFLAGS"

David J. MacKenzie's avatar
David J. MacKenzie committed
1214 1215
case ${with_gcc} in
  "yes" ) CC="gcc" GCC=yes ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
1216
  "no"  ) : ${CC=cc} ;;
Andreas Schwab's avatar
Andreas Schwab committed
1217
  * )
David J. MacKenzie's avatar
David J. MacKenzie committed
1218
esac
Andreas Schwab's avatar
Andreas Schwab committed
1219
AC_PROG_CC
David J. MacKenzie's avatar
David J. MacKenzie committed
1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230