2 # Attempt to guess a canonical system name.
3 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4 # 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
8 # This file is free software; you can redistribute it and/or modify it
9 # under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2 of the License, or
11 # (at your option) any later version.
13 # This program is distributed in the hope that it will be useful, but
14 # WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 # General Public License for more details.
18 # You should have received a copy of the GNU General Public License
19 # along with this program; if not, write to the Free Software
20 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22 # As a special exception to the GNU General Public License, if you
23 # distribute this file as part of a program that contains a
24 # configuration script generated by Autoconf, you may include it under
25 # the same distribution terms that you use for the rest of that program.
27 # Originally written by Per Bothner <per@bothner.com>.
28 # Please send patches to <config-patches@gnu.org>. Submit a context
29 # diff and a properly formatted ChangeLog entry.
31 # This script attempts to guess a canonical system name similar to
32 # config.sub. If it succeeds, it prints the system name on stdout, and
33 # exits with 0. Otherwise, it exits with 1.
35 # The plan is that this can be called by configure scripts if you
36 # don't specify an explicit build system type.
38 me=`echo "$0" | sed -e 's,.*/,,'`
43 Output the configuration name of the system \`$me' is run on.
46 -h, --help print this help, then exit
47 -t, --time-stamp print date of last modification, then exit
48 -v, --version print version number, then exit
50 Report bugs and patches to <config-patches@gnu.org>."
53 GNU config.guess ($timestamp)
55 Originally written by Per Bothner.
56 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
57 Free Software Foundation, Inc.
59 This is free software; see the source for copying conditions. There is NO
60 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
63 Try \`$me --help' for more information."
66 while test $# -gt 0 ; do
68 --time-stamp | --time* | -t )
69 echo "$timestamp" ; exit 0 ;;
71 echo "$version" ; exit 0 ;;
73 echo "$usage"; exit 0 ;;
74 -- ) # Stop option processing
76 - ) # Use stdin as input.
79 echo "$me: invalid option $1$help" >&2
87 echo "$me: too many arguments$help" >&2
93 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
94 # compiler to aid in system detection is discouraged as it requires
95 # temporary files to be created and, as you can see below, it is a
96 # headache to deal with in a portable fashion.
98 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
99 # use `HOST_CC' if defined, but it is deprecated.
101 # Portable tmp directory creation inspired by the Autoconf team.
104 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
105 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
107 { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
108 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
109 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
110 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
112 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
113 case $CC_FOR_BUILD,$HOST_CC,$CC in
114 ,,) echo "int x;" > $dummy.c ;
115 for c in cc gcc c89 c99 ; do
116 if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
117 CC_FOR_BUILD="$c"; break ;
120 if test x"$CC_FOR_BUILD" = x ; then
121 CC_FOR_BUILD=no_compiler_found ;
124 ,,*) CC_FOR_BUILD=$CC ;;
125 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
128 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
129 # (ghazi@noc.rutgers.edu 1994-08-24)
130 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
131 PATH=$PATH:/.attbin ; export PATH
134 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
135 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
136 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
137 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
139 case "${UNAME_MACHINE}" in
141 test -z "$VENDOR" && VENDOR=pc
144 test -z "$VENDOR" && VENDOR=unknown
147 test -f /etc/SuSE-release -o -f /.buildenv && VENDOR=suse
149 # Note: order is significant - the case branches are not exclusive.
151 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
153 # NetBSD (nbsd) targets should (where applicable) match one or
154 # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
155 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
156 # switched to ELF, *-*-netbsd* would select the old
157 # object file format. This provides both forward
158 # compatibility and a consistent mechanism for selecting the
159 # object file format.
161 # Note: NetBSD doesn't particularly care about the vendor
162 # portion of the name. We always set it to "unknown".
163 sysctl="sysctl -n hw.machine_arch"
164 UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
165 /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
166 case "${UNAME_MACHINE_ARCH}" in
167 armeb) machine=armeb-unknown ;;
168 arm*) machine=arm-unknown ;;
169 sh3el) machine=shl-unknown ;;
170 sh3eb) machine=sh-unknown ;;
171 *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
173 # The Operating System including object format, if it has switched
174 # to ELF recently, or will in the future.
175 case "${UNAME_MACHINE_ARCH}" in
176 arm*|i386|m68k|ns32k|sh3*|sparc|vax)
177 eval $set_cc_for_build
178 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
179 | grep __ELF__ >/dev/null
181 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
182 # Return netbsd for either. FIX?
193 # Debian GNU/NetBSD machines have a different userland, and
194 # thus, need a distinct triplet. However, they do not need
195 # kernel version information, so it can be replaced with a
196 # suitable tag, in the style of linux-gnu.
197 case "${UNAME_VERSION}" in
202 release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
205 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
206 # contains redundant information, the shorter form:
207 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
208 echo "${machine}-${os}${release}"
211 echo m68k-unknown-openbsd${UNAME_RELEASE}
214 echo mipsel-unknown-openbsd${UNAME_RELEASE}
217 echo m68k-unknown-openbsd${UNAME_RELEASE}
220 echo m68k-unknown-openbsd${UNAME_RELEASE}
223 echo powerpc-unknown-openbsd${UNAME_RELEASE}
226 echo m68k-unknown-openbsd${UNAME_RELEASE}
229 echo m88k-unknown-openbsd${UNAME_RELEASE}
232 echo powerpc-unknown-openbsd${UNAME_RELEASE}
235 echo mipsel-unknown-openbsd${UNAME_RELEASE}
238 echo mipseb-unknown-openbsd${UNAME_RELEASE}
241 echo m68k-unknown-openbsd${UNAME_RELEASE}
244 echo mipsel-unknown-openbsd${UNAME_RELEASE}
247 echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
250 if test $UNAME_RELEASE = "V4.0"; then
251 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
253 # According to Compaq, /usr/sbin/psrinfo has been available on
254 # OSF/1 and Tru64 systems produced since 1995. I hope that
255 # covers most systems running today. This code pipes the CPU
256 # types through head -n 1, so we only detect the type of CPU 0.
257 ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
258 case "$ALPHA_CPU_TYPE" in
260 UNAME_MACHINE="alpha" ;;
262 UNAME_MACHINE="alpha" ;;
263 "LCA4 (21066/21068)")
264 UNAME_MACHINE="alpha" ;;
266 UNAME_MACHINE="alphaev5" ;;
268 UNAME_MACHINE="alphaev56" ;;
270 UNAME_MACHINE="alphapca56" ;;
272 UNAME_MACHINE="alphapca57" ;;
274 UNAME_MACHINE="alphaev6" ;;
276 UNAME_MACHINE="alphaev67" ;;
278 UNAME_MACHINE="alphaev68" ;;
280 UNAME_MACHINE="alphaev68" ;;
282 UNAME_MACHINE="alphaev68" ;;
283 "EV6.9A (21264/EV69A)")
284 UNAME_MACHINE="alphaev69" ;;
286 UNAME_MACHINE="alphaev7" ;;
288 UNAME_MACHINE="alphaev79" ;;
290 # A Vn.n version is a released version.
291 # A Tn.n version is a released field test version.
292 # A Xn.n version is an unreleased experimental baselevel.
293 # 1.2 uses "1.2" for uname -r.
294 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
299 Alpha\ *:Windows_NT*:*)
300 # How do we know it's Interix rather than the generic POSIX subsystem?
301 # Should we change UNAME_MACHINE based on the output of uname instead
302 # of the specific Alpha model?
303 echo alpha-pc-interix
305 21064:Windows_NT:50:3)
306 echo alpha-dec-winnt3.5
308 Amiga*:UNIX_System_V:4.0:*)
309 echo m68k-unknown-sysv4
311 *:[Aa]miga[Oo][Ss]:*:*)
312 echo ${UNAME_MACHINE}-unknown-amigaos
314 *:[Mm]orph[Oo][Ss]:*:*)
315 echo ${UNAME_MACHINE}-unknown-morphos
318 echo i370-ibm-openedition
320 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
321 echo arm-acorn-riscix${UNAME_RELEASE}
323 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
324 echo hppa1.1-hitachi-hiuxmpp
326 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
327 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
328 if test "`(/bin/universe) 2>/dev/null`" = att ; then
329 echo pyramid-pyramid-sysv3
331 echo pyramid-pyramid-bsd
335 echo pyramid-pyramid-svr4
337 DRS?6000:unix:4.0:6*)
340 DRS?6000:UNIX_SV:4.2*:7*)
341 case `/usr/bin/uname -p` in
342 sparc) echo sparc-icl-nx7 && exit 0 ;;
345 echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
347 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
348 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
351 echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
354 # According to config.sub, this is the proper way to canonicalize
355 # SunOS6. Hard to guess exactly what SunOS6 will be like, but
356 # it's likely to be more like Solaris than SunOS4.
357 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
360 case "`/usr/bin/arch -k`" in
362 UNAME_RELEASE=`uname -v`
365 # Japanese Language versions have a version number like `4.1.3-JL'.
366 echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
369 echo m68k-sun-sunos${UNAME_RELEASE}
372 UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
373 test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
374 case "`/bin/arch`" in
376 echo m68k-sun-sunos${UNAME_RELEASE}
379 echo sparc-sun-sunos${UNAME_RELEASE}
384 echo sparc-auspex-sunos${UNAME_RELEASE}
386 # The situation for MiNT is a little confusing. The machine name
387 # can be virtually everything (everything which is not
388 # "atarist" or "atariste" at least should have a processor
389 # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
390 # to the lowercase version "mint" (or "freemint"). Finally
391 # the system name "TOS" denotes a system which is actually not
392 # MiNT. But MiNT is downward compatible to TOS, so this should
394 atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
395 echo m68k-atari-mint${UNAME_RELEASE}
397 atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
398 echo m68k-atari-mint${UNAME_RELEASE}
400 *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
401 echo m68k-atari-mint${UNAME_RELEASE}
403 milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
404 echo m68k-milan-mint${UNAME_RELEASE}
406 hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
407 echo m68k-hades-mint${UNAME_RELEASE}
409 *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
410 echo m68k-unknown-mint${UNAME_RELEASE}
413 echo powerpc-apple-machten${UNAME_RELEASE}
416 echo mips-dec-mach_bsd4.3
419 echo mips-dec-ultrix${UNAME_RELEASE}
422 echo vax-dec-ultrix${UNAME_RELEASE}
424 2020:CLIX:*:* | 2430:CLIX:*:*)
425 echo clipper-intergraph-clix${UNAME_RELEASE}
427 mips:*:*:UMIPS | mips:*:*:RISCos)
428 eval $set_cc_for_build
429 sed 's/^ //' << EOF >$dummy.c
431 #include <stdio.h> /* for printf() prototype */
432 int main (int argc, char *argv[]) {
434 int main (argc, argv) int argc; char *argv[]; {
436 #if defined (host_mips) && defined (MIPSEB)
437 #if defined (SYSTYPE_SYSV)
438 printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
440 #if defined (SYSTYPE_SVR4)
441 printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
443 #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
444 printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
450 $CC_FOR_BUILD -o $dummy $dummy.c \
451 && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
453 echo mips-mips-riscos${UNAME_RELEASE}
455 Motorola:PowerMAX_OS:*:*)
456 echo powerpc-motorola-powermax
458 Motorola:*:4.3:PL8-*)
459 echo powerpc-harris-powermax
461 Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
462 echo powerpc-harris-powermax
464 Night_Hawk:Power_UNIX:*:*)
465 echo powerpc-harris-powerunix
468 echo m88k-harris-cxux7
471 echo m88k-motorola-sysv4
474 echo m88k-motorola-sysv3
477 # DG/UX returns AViiON for all architectures
478 UNAME_PROCESSOR=`/usr/bin/uname -p`
479 if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
481 if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
482 [ ${TARGET_BINARY_INTERFACE}x = x ]
484 echo m88k-dg-dgux${UNAME_RELEASE}
486 echo m88k-dg-dguxbcs${UNAME_RELEASE}
489 echo i586-dg-dgux${UNAME_RELEASE}
492 M88*:DolphinOS:*:*) # DolphinOS (SVR3)
493 echo m88k-dolphin-sysv3
496 # Delta 88k system running SVR3
497 echo m88k-motorola-sysv3
499 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
500 echo m88k-tektronix-sysv3
502 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
503 echo m68k-tektronix-bsd
506 echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
508 ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
509 echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
510 exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
515 if [ -x /usr/bin/oslevel ] ; then
516 IBM_REV=`/usr/bin/oslevel`
518 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
520 echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
523 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
524 eval $set_cc_for_build
525 sed 's/^ //' << EOF >$dummy.c
526 #include <sys/systemcfg.h>
532 puts("powerpc-ibm-aix3.2.5");
536 $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
537 echo rs6000-ibm-aix3.2.5
538 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
539 echo rs6000-ibm-aix3.2.4
541 echo rs6000-ibm-aix3.2
545 IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
546 if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
551 if [ -x /usr/bin/oslevel ] ; then
552 IBM_REV=`/usr/bin/oslevel`
554 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
556 echo ${IBM_ARCH}-ibm-aix${IBM_REV}
561 ibmrt:4.4BSD:*|romp-ibm:BSD:*)
564 ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
565 echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
566 exit 0 ;; # report: romp-ibm BSD 4.3
568 echo rs6000-bull-bosx
573 9000/[34]??:4.3bsd:1.*:*)
576 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
579 9000/[34678]??:HP-UX:*:*)
580 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
581 case "${UNAME_MACHINE}" in
582 9000/31? ) HP_ARCH=m68000 ;;
583 9000/[34]?? ) HP_ARCH=m68k ;;
584 9000/[678][0-9][0-9])
585 if [ -x /usr/bin/getconf ]; then
586 sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
587 sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
588 case "${sc_cpu_version}" in
589 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
590 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
591 532) # CPU_PA_RISC2_0
592 case "${sc_kernel_bits}" in
593 32) HP_ARCH="hppa2.0n" ;;
594 64) HP_ARCH="hppa2.0w" ;;
595 '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
599 if [ "${HP_ARCH}" = "" ]; then
600 eval $set_cc_for_build
601 sed 's/^ //' << EOF >$dummy.c
609 #if defined(_SC_KERNEL_BITS)
610 long bits = sysconf(_SC_KERNEL_BITS);
612 long cpu = sysconf (_SC_CPU_VERSION);
616 case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
617 case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
619 #if defined(_SC_KERNEL_BITS)
622 case 64: puts ("hppa2.0w"); break;
623 case 32: puts ("hppa2.0n"); break;
624 default: puts ("hppa2.0"); break;
626 #else /* !defined(_SC_KERNEL_BITS) */
627 puts ("hppa2.0"); break;
629 default: puts ("hppa1.0"); break;
634 (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
635 test -z "$HP_ARCH" && HP_ARCH=hppa
638 if [ ${HP_ARCH} = "hppa2.0w" ]
640 # avoid double evaluation of $set_cc_for_build
641 test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
642 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
649 echo ${HP_ARCH}-hp-hpux${HPUX_REV}
652 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
653 echo ia64-hp-hpux${HPUX_REV}
656 eval $set_cc_for_build
657 sed 's/^ //' << EOF >$dummy.c
662 long cpu = sysconf (_SC_CPU_VERSION);
663 /* The order matters, because CPU_IS_HP_MC68K erroneously returns
664 true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
666 if (CPU_IS_PA_RISC (cpu))
670 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
671 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
672 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
673 default: puts ("hppa-hitachi-hiuxwe2"); break;
676 else if (CPU_IS_HP_MC68K (cpu))
677 puts ("m68k-hitachi-hiuxwe2");
678 else puts ("unknown-hitachi-hiuxwe2");
682 $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
683 echo unknown-hitachi-hiuxwe2
685 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
691 *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
692 echo hppa1.0-hp-mpeix
694 hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
701 if [ -x /usr/sbin/sysversion ] ; then
702 echo ${UNAME_MACHINE}-unknown-osf1mk
704 echo ${UNAME_MACHINE}-unknown-osf1
708 echo hppa1.1-hp-lites
710 C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
713 C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
714 if getsysinfo -f scalar_acc
715 then echo c32-convex-bsd
716 else echo c2-convex-bsd
719 C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
722 C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
725 C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
729 echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
732 echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
733 | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
734 -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
738 echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
741 echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
744 echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
747 echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
749 F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
750 FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
751 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
752 FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
753 echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
755 i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
756 echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
759 echo sparc-unknown-bsdi${UNAME_RELEASE}
762 echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
764 *:FreeBSD:*:*|*:GNU/FreeBSD:*:*)
765 # Determine whether the default compiler uses glibc.
766 eval $set_cc_for_build
767 sed 's/^ //' << EOF >$dummy.c
768 #include <features.h>
775 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
776 # GNU/FreeBSD systems have a "k" prefix to indicate we are using
777 # FreeBSD's kernel, but not the complete OS.
778 case ${LIBC} in gnu) kernel_only='k' ;; esac
779 echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
782 echo ${UNAME_MACHINE}-pc-cygwin
785 echo ${UNAME_MACHINE}-pc-mingw32
788 echo ${UNAME_MACHINE}-pc-pw32
791 echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
793 [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
794 echo i${UNAME_MACHINE}-pc-mks
796 i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
797 # How do we know it's Interix rather than the generic POSIX subsystem?
798 # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
799 # UNAME_MACHINE based on the output of uname instead of i386?
803 echo ${UNAME_MACHINE}-pc-uwin
806 echo powerpcle-unknown-cygwin
809 echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
812 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
815 echo ${UNAME_MACHINE}-pc-minix
818 echo ${UNAME_MACHINE}-${VENDOR}-linux
824 echo ${UNAME_MACHINE}-${VENDOR}-linux
827 echo ${UNAME_MACHINE}-${VENDOR}-linux
830 eval $set_cc_for_build
831 sed 's/^ //' << EOF >$dummy.c
835 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
838 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
845 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
846 test x"${CPU}" != x && echo "${CPU}-${VENDOR}-linux" && exit 0
849 eval $set_cc_for_build
850 sed 's/^ //' << EOF >$dummy.c
854 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
857 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
864 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
865 test x"${CPU}" != x && echo "${CPU}-${VENDOR}-linux" && exit 0
868 echo powerpc-${VENDOR}-linux
871 echo powerpc64-${VENDOR}-linux
874 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
875 EV5) UNAME_MACHINE=alphaev5 ;;
876 EV56) UNAME_MACHINE=alphaev56 ;;
877 PCA56) UNAME_MACHINE=alphapca56 ;;
878 PCA57) UNAME_MACHINE=alphapca56 ;;
879 EV6) UNAME_MACHINE=alphaev6 ;;
880 EV67) UNAME_MACHINE=alphaev67 ;;
881 EV68*) UNAME_MACHINE=alphaev68 ;;
883 objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
884 if test "$?" = 0 ; then LIBC="-libc1" ; else LIBC="" ; fi
885 echo ${UNAME_MACHINE}-${VENDOR}-linux${LIBC}
887 parisc:Linux:*:* | hppa:Linux:*:*)
889 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
890 PA7*) echo hppa1.1-${VENDOR}-linux ;;
891 PA8*) echo hppa2.0-${VENDOR}-linux ;;
892 *) echo hppa-${VENDOR}-linux ;;
895 parisc64:Linux:*:* | hppa64:Linux:*:*)
896 echo hppa64-${VENDOR}-linux
898 s390:Linux:*:* | s390x:Linux:*:*)
899 echo ${UNAME_MACHINE}-ibm-linux
902 echo ${UNAME_MACHINE}-${VENDOR}-linux
905 echo ${UNAME_MACHINE}-${VENDOR}-linux
907 sparc:Linux:*:* | sparc64:Linux:*:*)
908 echo ${UNAME_MACHINE}-${VENDOR}-linux
911 echo x86_64-${VENDOR}-linux
914 # The BFD linker knows what the default object file format is, so
915 # first see if it will tell us. cd to the root directory to prevent
916 # problems with other programs or directories called `ld' in the path.
917 # Set LC_ALL=C to ensure ld outputs messages in English.
918 ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
919 | sed -ne '/supported targets:/!d
921 s/.*supported targets: *//
924 case "$ld_supported_targets" in
926 TENTATIVE="${UNAME_MACHINE}-${VENDOR}-linux"
929 echo "${UNAME_MACHINE}-${VENDOR}-linuxaout"
932 echo "${UNAME_MACHINE}-${VENDOR}-linuxcoff"
935 # Either a pre-BFD a.out linker (linuxoldld) or
936 # one that does not give us useful --help.
937 echo "${UNAME_MACHINE}-${VENDOR}-linuxoldld"
940 # Determine whether the default compiler is a.out or elf
941 eval $set_cc_for_build
942 sed 's/^ //' << EOF >$dummy.c
943 #include <features.h>
955 #ifdef __INTEL_COMPILER
962 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
963 test x"${LIBC}" != x && echo "${UNAME_MACHINE}-${VENDOR}-linux-${LIBC}" | sed 's/linux-gnu/linux/' && exit 0
964 test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
967 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
968 # earlier versions are messed up and put the nodename in both
969 # sysname and nodename.
970 echo i386-sequent-sysv4
972 i*86:UNIX_SV:4.2MP:2.*)
973 # Unixware is an offshoot of SVR4, but it has its own version
974 # number series starting with 2...
975 # I am not positive that other SVR4 systems won't match this,
976 # I just have to hope. -- rms.
977 # Use sysv4.2uw... so that sysv4* matches it.
978 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
981 # If we were able to find `uname', then EMX Unix compatibility
982 # is probably installed.
983 echo ${UNAME_MACHINE}-pc-os2-emx
986 echo ${UNAME_MACHINE}-unknown-stop
989 echo ${UNAME_MACHINE}-unknown-atheos
991 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
992 echo i386-unknown-lynxos${UNAME_RELEASE}
995 echo ${UNAME_MACHINE}-pc-msdosdjgpp
997 i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
998 UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
999 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1000 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1002 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1006 case `/bin/uname -X | grep "^Machine"` in
1007 *486*) UNAME_MACHINE=i486 ;;
1008 *Pentium) UNAME_MACHINE=i586 ;;
1009 *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1011 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1014 if test -f /usr/options/cb.name; then
1015 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1016 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1017 elif /bin/uname -X 2>/dev/null >/dev/null ; then
1018 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1019 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1020 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1021 && UNAME_MACHINE=i586
1022 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1023 && UNAME_MACHINE=i686
1024 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1025 && UNAME_MACHINE=i686
1026 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1028 echo ${UNAME_MACHINE}-pc-sysv32
1032 # Left here for compatibility:
1033 # uname -m prints for DJGPP always 'pc', but it prints nothing about
1034 # the processor, so we play safe by assuming i386.
1035 echo i386-pc-msdosdjgpp
1041 echo i860-intel-osf1
1043 i860:*:4.*:*) # i860-SVR4
1044 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1045 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1046 else # Add other i860-SVR4 vendors below as they are discovered.
1047 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1052 echo m68010-convergent-sysv
1054 mc68k:UNIX:SYSTEM5:3.51m)
1055 echo m68k-convergent-sysv
1061 test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
1062 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
1064 test -r /etc/.relid \
1065 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1066 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1067 && echo i486-ncr-sysv4.3${OS_REL} && exit 0
1068 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1069 && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
1070 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1071 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1072 && echo i486-ncr-sysv4 && exit 0 ;;
1073 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1074 echo m68k-unknown-lynxos${UNAME_RELEASE}
1076 mc68030:UNIX_System_V:4.*:*)
1077 echo m68k-atari-sysv4
1079 TSUNAMI:LynxOS:2.*:*)
1080 echo sparc-unknown-lynxos${UNAME_RELEASE}
1082 rs6000:LynxOS:2.*:*)
1083 echo rs6000-unknown-lynxos${UNAME_RELEASE}
1085 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1086 echo powerpc-unknown-lynxos${UNAME_RELEASE}
1088 SM[BE]S:UNIX_SV:*:*)
1089 echo mips-dde-sysv${UNAME_RELEASE}
1091 RM*:ReliantUNIX-*:*:*)
1098 if uname -p 2>/dev/null >/dev/null ; then
1099 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1100 echo ${UNAME_MACHINE}-sni-sysv4
1105 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1106 # says <Richard.M.Bartel@ccMail.Census.GOV>
1107 echo i586-unisys-sysv4
1109 *:UNIX_System_V:4*:FTX*)
1110 # From Gerald Hewes <hewes@openmarket.com>.
1111 # How about differentiating between stratus architectures? -djm
1112 echo hppa1.1-stratus-sysv4
1115 # From seanf@swdc.stratus.com.
1116 echo i860-stratus-sysv4
1119 # From Paul.Green@stratus.com.
1120 echo hppa1.1-stratus-vos
1123 echo m68k-apple-aux${UNAME_RELEASE}
1126 echo mips-sony-newsos6
1128 R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1129 if [ -d /usr/nec ]; then
1130 echo mips-nec-sysv${UNAME_RELEASE}
1132 echo mips-unknown-sysv${UNAME_RELEASE}
1135 BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1136 echo powerpc-be-beos
1138 BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1139 echo powerpc-apple-beos
1141 BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1145 echo sx4-nec-superux${UNAME_RELEASE}
1148 echo sx5-nec-superux${UNAME_RELEASE}
1151 echo sx6-nec-superux${UNAME_RELEASE}
1153 Power*:Rhapsody:*:*)
1154 echo powerpc-apple-rhapsody${UNAME_RELEASE}
1157 echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1161 *86) UNAME_PROCESSOR=i686 ;;
1162 powerpc) UNAME_PROCESSOR=powerpc ;;
1164 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1166 *:procnto*:*:* | *:QNX:[0123456789]*:*)
1167 UNAME_PROCESSOR=`uname -p`
1168 if test "$UNAME_PROCESSOR" = "x86"; then
1169 UNAME_PROCESSOR=i386
1172 echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1177 NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*)
1178 echo nsr-tandem-nsk${UNAME_RELEASE}
1181 echo mips-compaq-nonstopux
1184 echo bs2000-siemens-sysv
1186 DS/*:UNIX_System_V:*:*)
1187 echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1190 # "uname -m" is not consistent, so use $cputype instead. 386
1191 # is converted to i386 for consistency with other x86
1192 # operating systems.
1193 if test "$cputype" = "386"; then
1196 UNAME_MACHINE="$cputype"
1198 echo ${UNAME_MACHINE}-unknown-plan9
1201 echo pdp10-unknown-tops10
1204 echo pdp10-unknown-tenex
1206 KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1207 echo pdp10-dec-tops20
1209 XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1210 echo pdp10-xkl-tops20
1213 echo pdp10-unknown-tops20
1216 echo pdp10-unknown-its
1219 echo mips-sei-seiux${UNAME_RELEASE}
1223 #echo '(No uname command or uname output not recognized.)' 1>&2
1224 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1226 eval $set_cc_for_build
1229 # include <sys/types.h>
1230 # include <sys/utsname.h>
1235 #if defined (MIPSEB)
1236 /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
1238 printf ("mips-sony-bsd\n"); exit (0);
1240 #include <sys/param.h>
1241 printf ("m68k-sony-newsos%s\n",
1251 #if defined (__arm) && defined (__acorn) && defined (__unix)
1252 printf ("arm-acorn-riscix"); exit (0);
1255 #if defined (hp300) && !defined (hpux)
1256 printf ("m68k-hp-bsd\n"); exit (0);
1260 #if !defined (__ARCHITECTURE__)
1261 #define __ARCHITECTURE__ "m68k"
1264 version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1266 printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1268 printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1272 #if defined (MULTIMAX) || defined (n16)
1274 printf ("ns32k-encore-sysv\n"); exit (0);
1277 printf ("ns32k-encore-mach\n"); exit (0);
1279 printf ("ns32k-encore-bsd\n"); exit (0);
1284 #if defined (__386BSD__)
1285 printf ("i386-pc-bsd\n"); exit (0);
1288 #if defined (sequent)
1290 printf ("i386-sequent-dynix\n"); exit (0);
1292 #if defined (ns32000)
1293 printf ("ns32k-sequent-dynix\n"); exit (0);
1297 #if defined (_SEQUENT_)
1302 if (strncmp(un.version, "V2", 2) == 0) {
1303 printf ("i386-sequent-ptx2\n"); exit (0);
1305 if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1306 printf ("i386-sequent-ptx1\n"); exit (0);
1308 printf ("i386-sequent-ptx\n"); exit (0);
1313 # if !defined (ultrix)
1314 # include <sys/param.h>
1317 printf ("vax-dec-bsd4.3\n"); exit (0);
1320 printf ("vax-dec-bsd4.3reno\n"); exit (0);
1322 printf ("vax-dec-bsd\n"); exit (0);
1326 printf ("vax-dec-bsd\n"); exit (0);
1329 printf ("vax-dec-ultrix\n"); exit (0);
1333 #if defined (alliant) && defined (i860)
1334 printf ("i860-alliant-bsd\n"); exit (0);
1341 $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
1343 # Apollos put the system type in the environment.
1345 test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
1347 # Convex versions that predate uname can use getsysinfo(1)
1349 if [ -x /usr/convex/getsysinfo ]
1351 case `getsysinfo -f cpu_type` in
1356 if getsysinfo -f scalar_acc
1357 then echo c32-convex-bsd
1358 else echo c2-convex-bsd
1374 $0: unable to guess system type
1376 This script, last modified $timestamp, has failed to recognize
1377 the operating system you are using. It is advised that you
1378 download the most up to date version of the config scripts from
1380 ftp://ftp.gnu.org/pub/gnu/config/
1382 If the version you run ($0) is already up to date, please
1383 send the following data and any information you think might be
1384 pertinent to <config-patches@gnu.org> in order to provide the needed
1385 information to handle your system.
1387 config.guess timestamp = $timestamp
1389 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1390 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1391 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1392 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1394 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1395 /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1397 hostinfo = `(hostinfo) 2>/dev/null`
1398 /bin/universe = `(/bin/universe) 2>/dev/null`
1399 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1400 /bin/arch = `(/bin/arch) 2>/dev/null`
1401 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1402 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1404 UNAME_MACHINE = ${UNAME_MACHINE}
1405 UNAME_RELEASE = ${UNAME_RELEASE}
1406 UNAME_SYSTEM = ${UNAME_SYSTEM}
1407 UNAME_VERSION = ${UNAME_VERSION}
1413 # eval: (add-hook 'write-file-hooks 'time-stamp)
1414 # time-stamp-start: "timestamp='"
1415 # time-stamp-format: "%:y-%02m-%02d"
1416 # time-stamp-end: "'"