.SH BUGS
The correct operation of
.B batch
-diff -Nru at-3.1.8/at.c at-3.1.8.new/at.c
---- at-3.1.8/at.c Sun Mar 28 19:48:00 1999
-+++ at-3.1.8.new/at.c Sun Mar 28 19:46:41 1999
-@@ -235,6 +235,7 @@
- /* Install the signal handler for SIGINT; terminate after removing the
- * spool file if necessary
- */
-+ memset(&act, 0, sizeof act);
- act.sa_handler = sigc;
- sigemptyset(&(act.sa_mask));
- act.sa_flags = 0;
-@@ -274,8 +275,8 @@
- if ((jobno = nextjob()) == EOF)
- perr("Cannot generate job number");
-
-- sprintf(ppos, "%c%5lx%8lx", queue,
-- jobno, (unsigned long) (runtimer / 60));
-+ (void)snprintf(ppos, sizeof(atfile) - (ppos - atfile),
-+ "%c%5lx%8lx", queue, jobno, (unsigned long) (runtimer / 60));
-
- for (ap = ppos; *ap != '\0'; ap++)
- if (*ap == ' ')
-@@ -291,7 +292,7 @@
- * bit. Yes, this is a kluge.
- */
- cmask = umask(S_IRUSR | S_IWUSR | S_IXUSR);
-- if ((fd = creat(atfile, O_WRONLY)) == -1)
-+ if ((fd = open(atfile, O_CREAT | O_TRUNC | O_WRONLY, S_IRUSR)) == -1)
- perr("Cannot create atjob file %.500s", atfile);
-
- if ((fd2 = dup(fd)) < 0)
-@@ -461,14 +462,6 @@
-
- close(fd2);
-
-- /* POSIX.2 allows the shell specified by the user's SHELL environment
-- variable, the login shell from the user's password database entry,
-- or /bin/sh to be the command interpreter that processes the at-job.
-- It also alows a warning diagnostic to be printed. Because of the
-- possible variance, we always output the diagnostic. */
--
-- fprintf(stderr, "warning: commands will be executed using /bin/sh\n");
--
- runtime = localtime(&runtimer);
-
- /* We only use the sick POSIX time format if POSIXLY_CORRECT
-@@ -546,6 +539,7 @@
- long jobno;
- time_t runtimer;
- char timestr[TIMESIZE];
-+ struct passwd *pwd;
-
- PRIV_START
-
-@@ -581,7 +575,10 @@
- } else {
- strftime(timestr, TIMESIZE, TIMEFORMAT_ISO, runtime);
- }
-- printf("%ld\t%s %c\n", jobno, timestr, queue);
-+ if ((pwd = getpwuid(buf.st_uid)))
-+ printf("%ld\t%s %c %s\n", jobno, timestr, queue, pwd->pw_name);
-+ else
-+ printf("%ld\t%s %c\n", jobno, timestr, queue);
- }
- PRIV_END
- }
-@@ -695,7 +692,7 @@
- char *pgm;
-
- int program = AT; /* our default program */
-- char *options = "q:f:mvldVc"; /* default options for at */
-+ char *options = "q:f:mvldhVc"; /* default options for at */
- int disp_version = 0;
- time_t timer;
- struct passwd *pwe;
-@@ -726,16 +723,20 @@
- */
- if (strcmp(pgm, "atq") == 0) {
- program = ATQ;
-- options = "q:V";
-+ options = "hq:V";
- } else if (strcmp(pgm, "atrm") == 0) {
- program = ATRM;
-- options = "V";
-+ options = "hV";
- }
- /* process whatever options we can process
- */
- opterr = 1;
- while ((c = getopt(argc, argv, options)) != EOF)
- switch (c) {
-+ case 'h':
-+ usage();
-+ exit (0);
-+
- case 'v': /* verify time settings */
- atverify = 1;
- break;
-@@ -753,7 +754,7 @@
- usage();
-
- atqueue = queue = *optarg;
-- if (!(islower(queue) || isupper(queue)))
-+ if (!(islower(queue) || isupper(queue)) & (queue != '='))
- usage();
-
- queue_set = 1;
-@@ -842,6 +843,15 @@
- struct tm *tm = localtime(&timer);
- fprintf(stderr, "%s\n", asctime(tm));
- }
-+
-+ /* POSIX.2 allows the shell specified by the user's SHELL environment
-+ variable, the login shell from the user's password database entry,
-+ or /bin/sh to be the command interpreter that processes the at-job.
-+ It also alows a warning diagnostic to be printed. Because of the
-+ possible variance, we always output the diagnostic. */
-+
-+ fprintf(stderr, "warning: commands will be executed using /bin/sh\n");
-+
- writefile(timer, queue);
- break;
-
diff -Nru at-3.1.8/at.deny at-3.1.8.new/at.deny
--- at-3.1.8/at.deny Sun Feb 23 21:24:34 1997
+++ at-3.1.8.new/at.deny Sun Mar 28 19:46:41 1999
should be merged into
-.BR cron(1) .
+.BR cron (8) .
-diff -Nru at-3.1.8/atd.c at-3.1.8.new/atd.c
---- at-3.1.8/atd.c Sun Sep 28 22:00:37 1997
-+++ at-3.1.8.new/atd.c Sun Mar 28 19:46:41 1999
-@@ -255,6 +255,13 @@
-
- fcntl(fd_in, F_SETFD, fflags & ~FD_CLOEXEC);
-
-+ /*
-+ * If the spool directory is mounted via NFS `atd' isn't able to
-+ * read from the job file and will bump out here. The file is
-+ * opened as "root" but it is read as "daemon" which fails over
-+ * NFS and works with local file systems. It's not clear where
-+ * the bug is located. -Joey
-+ */
- if (fscanf(stream, "#!/bin/sh\n# atrun uid=%d gid=%d\n# mail %8s %d",
- &nuid, &ngid, mailbuf, &send_mail) != 4)
- pabort("File %.500s is in wrong format - aborting",
-diff -Nru at-3.1.8/batch at-3.1.8.new/batch
--- at-3.1.8/batch Thu Jan 1 01:00:00 1970
+++ at-3.1.8.new/batch Sun Mar 28 19:46:41 1999
@@ -0,0 +1,4 @@
+prefix=/usr
+exec_prefix=${prefix}
+exec ${exec_prefix}/bin/at -qb now "$@"
-diff -Nru at-3.1.8/config.guess at-3.1.8.new/config.guess
---- at-3.1.8/config.guess Sun Feb 23 21:24:34 1997
-+++ at-3.1.8.new/config.guess Sun Mar 28 19:46:41 1999
-@@ -1,6 +1,6 @@
- #! /bin/sh
- # Attempt to guess a canonical system name.
--# Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
-+# Copyright (C) 1992, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc.
- #
- # This file is free software; you can redistribute it and/or modify it
- # under the terms of the GNU General Public License as published by
-@@ -51,35 +51,110 @@
- # Note: order is significant - the case branches are not exclusive.
-
- case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-- alpha:OSF1:V*:*)
-- # After 1.2, OSF1 uses "V1.3" for uname -r.
-- echo alpha-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^V//'`
-- exit 0 ;;
- alpha:OSF1:*:*)
-+ if test $UNAME_RELEASE = "V4.0"; then
-+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
-+ fi
-+ # A Vn.n version is a released version.
-+ # A Tn.n version is a released field test version.
-+ # A Xn.n version is an unreleased experimental baselevel.
- # 1.2 uses "1.2" for uname -r.
-- echo alpha-dec-osf${UNAME_RELEASE}
-- exit 0 ;;
-+ cat <<EOF >dummy.s
-+ .globl main
-+ .ent main
-+main:
-+ .frame \$30,0,\$26,0
-+ .prologue 0
-+ .long 0x47e03d80 # implver $0
-+ lda \$2,259
-+ .long 0x47e20c21 # amask $2,$1
-+ srl \$1,8,\$2
-+ sll \$2,2,\$2
-+ sll \$0,3,\$0
-+ addl \$1,\$0,\$0
-+ addl \$2,\$0,\$0
-+ ret \$31,(\$26),1
-+ .end main
-+EOF
-+ ${CC-cc} dummy.s -o dummy 2>/dev/null
-+ if test "$?" = 0 ; then
-+ ./dummy
-+ case "$?" in
-+ 7)
-+ UNAME_MACHINE="alpha"
-+ ;;
-+ 15)
-+ UNAME_MACHINE="alphaev5"
-+ ;;
-+ 14)
-+ UNAME_MACHINE="alphaev56"
-+ ;;
-+ 10)
-+ UNAME_MACHINE="alphapca56"
-+ ;;
-+ 16)
-+ UNAME_MACHINE="alphaev6"
-+ ;;
-+ esac
-+ fi
-+ rm -f dummy.s dummy
-+ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr [[A-Z]] [[a-z]]`
-+ exit 0 ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
- exit 0 ;;
-+ Amiga*:UNIX_System_V:4.0:*)
-+ echo m68k-cbm-sysv4
-+ exit 0;;
- amiga:NetBSD:*:*)
- echo m68k-cbm-netbsd${UNAME_RELEASE}
- exit 0 ;;
-+ amiga:OpenBSD:*:*)
-+ echo m68k-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ arc64:OpenBSD:*:*)
-+ echo mips64el-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ arc:OpenBSD:*:*)
-+ echo mipsel-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ hkmips:OpenBSD:*:*)
-+ echo mips-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ pmax:OpenBSD:*:*)
-+ echo mipsel-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ sgi:OpenBSD:*:*)
-+ echo mips-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ wgrisc:OpenBSD:*:*)
-+ echo mipsel-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
- exit 0;;
-- Pyramid*:OSx*:*:*)
-+ arm32:NetBSD:*:*)
-+ echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-+ exit 0 ;;
-+ SR2?01:HI-UX/MPP:*:*)
-+ echo hppa1.1-hitachi-hiuxmpp
-+ exit 0;;
-+ Pyramid*:OSx*:*:*|MIS*:OSx*:*:*)
-+ # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- if test "`(/bin/universe) 2>/dev/null`" = att ; then
- echo pyramid-pyramid-sysv3
- else
- echo pyramid-pyramid-bsd
- fi
- exit 0 ;;
-- sun4*:SunOS:5.*:*)
-+ NILE:*:*:dcosx)
-+ echo pyramid-pyramid-svr4
-+ exit 0 ;;
-+ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
- i86pc:SunOS:5.*:*)
-- echo i386-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-+ echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
- sun4*:SunOS:6*:*)
- # According to config.sub, this is the proper way to canonicalize
-@@ -99,24 +174,86 @@
- sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
- exit 0 ;;
-+ sun*:*:4.2BSD:*)
-+ UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-+ test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
-+ case "`/bin/arch`" in
-+ sun3)
-+ echo m68k-sun-sunos${UNAME_RELEASE}
-+ ;;
-+ sun4)
-+ echo sparc-sun-sunos${UNAME_RELEASE}
-+ ;;
-+ esac
-+ exit 0 ;;
-+ aushp:SunOS:*:*)
-+ echo sparc-auspex-sunos${UNAME_RELEASE}
-+ exit 0 ;;
- atari*:NetBSD:*:*)
- echo m68k-atari-netbsd${UNAME_RELEASE}
- exit 0 ;;
-+ atari*:OpenBSD:*:*)
-+ echo m68k-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
- sun3*:NetBSD:*:*)
- echo m68k-sun-netbsd${UNAME_RELEASE}
- exit 0 ;;
-+ sun3*:OpenBSD:*:*)
-+ echo m68k-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
- mac68k:NetBSD:*:*)
- echo m68k-apple-netbsd${UNAME_RELEASE}
- exit 0 ;;
-+ mac68k:OpenBSD:*:*)
-+ echo m68k-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ mvme68k:OpenBSD:*:*)
-+ echo m68k-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ mvme88k:OpenBSD:*:*)
-+ echo m88k-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ powerpc:machten:*:*)
-+ echo powerpc-apple-machten${UNAME_RELEASE}
-+ exit 0 ;;
-+ RISC*:Mach:*:*)
-+ echo mips-dec-mach_bsd4.3
-+ exit 0 ;;
- RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
- exit 0 ;;
- VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
- exit 0 ;;
-- mips:*:5*:RISCos)
-+ 2020:CLIX:*:*)
-+ echo clipper-intergraph-clix${UNAME_RELEASE}
-+ exit 0 ;;
-+ mips:*:*:UMIPS | mips:*:*:RISCos)
-+ sed 's/^ //' << EOF >dummy.c
-+ int main (argc, argv) int argc; char **argv; {
-+ #if defined (host_mips) && defined (MIPSEB)
-+ #if defined (SYSTYPE_SYSV)
-+ printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
-+ #endif
-+ #if defined (SYSTYPE_SVR4)
-+ printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
-+ #endif
-+ #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
-+ printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
-+ #endif
-+ #endif
-+ exit (-1);
-+ }
-+EOF
-+ ${CC-cc} dummy.c -o dummy \
-+ && ./dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-+ && rm dummy.c dummy && exit 0
-+ rm -f dummy.c dummy
- echo mips-mips-riscos${UNAME_RELEASE}
- exit 0 ;;
-+ Night_Hawk:Power_UNIX:*:*)
-+ echo powerpc-harris-powerunix
-+ exit 0 ;;
- m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
- exit 0 ;;
-@@ -127,12 +264,17 @@
- echo m88k-motorola-sysv3
- exit 0 ;;
- AViiON:dgux:*:*)
-+ # DG/UX returns AViiON for all architectures
-+ UNAME_PROCESSOR=`/usr/bin/uname -p`
-+ if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
- -o ${TARGET_BINARY_INTERFACE}x = x ] ; then
- echo m88k-dg-dgux${UNAME_RELEASE}
- else
- echo m88k-dg-dguxbcs${UNAME_RELEASE}
- fi
-+ else echo i586-dg-dgux${UNAME_RELEASE}
-+ fi
- exit 0 ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
-@@ -150,10 +292,10 @@
- *:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
- exit 0 ;;
-- ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
-+ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
-- i[34]86:AIX:*:*)
-+ i?86:AIX:*:*)
- echo i386-ibm-aix
- exit 0 ;;
- *:AIX:2:3)
-@@ -198,7 +340,7 @@
- echo romp-ibm-bsd4.4
- exit 0 ;;
- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and
-- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
-+ echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
- exit 0 ;; # report: romp-ibm BSD 4.3
- *:BOSX:*:*)
- echo rs6000-bull-bosx
-@@ -216,7 +358,7 @@
- case "${UNAME_MACHINE}" in
- 9000/31? ) HP_ARCH=m68000 ;;
- 9000/[34]?? ) HP_ARCH=m68k ;;
-- 9000/7?? | 9000/8?[79] ) HP_ARCH=hppa1.1 ;;
-+ 9000/7?? | 9000/8?[1679] ) HP_ARCH=hppa1.1 ;;
- 9000/8?? ) HP_ARCH=hppa1.0 ;;
- esac
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-@@ -264,6 +406,13 @@
- hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
- exit 0 ;;
-+ i?86:OSF1:*:*)
-+ if [ -x /usr/sbin/sysversion ] ; then
-+ echo ${UNAME_MACHINE}-unknown-osf1mk
-+ else
-+ echo ${UNAME_MACHINE}-unknown-osf1
-+ fi
-+ exit 0 ;;
- parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
- exit 0 ;;
-@@ -291,17 +440,33 @@
- CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE}
- exit 0 ;;
-- CRAY*C90:*:*:*)
-- echo c90-cray-unicos${UNAME_RELEASE}
-+ CRAY*[A-Z]90:*:*:*)
-+ echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
-+ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
-+ exit 0 ;;
-+ CRAY*TS:*:*:*)
-+ echo t90-cray-unicos${UNAME_RELEASE}
- exit 0 ;;
- CRAY-2:*:*:*)
- echo cray2-cray-unicos
- exit 0 ;;
-+ F300:UNIX_System_V:*:*)
-+ FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'`
-+ FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-+ echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-+ exit 0 ;;
-+ F301:UNIX_System_V:*:*)
-+ echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
-+ exit 0 ;;
- hp3[0-9][05]:NetBSD:*:*)
- echo m68k-hp-netbsd${UNAME_RELEASE}
- exit 0 ;;
-- i[34]86:BSD/386:*:* | *:BSD/OS:*:*)
-- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-+ hp300:OpenBSD:*:*)
-+ echo m68k-unknown-openbsd${UNAME_RELEASE}
-+ exit 0 ;;
-+ i?86:BSD/386:*:* | *:BSD/OS:*:*)
-+ echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- exit 0 ;;
- *:FreeBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-@@ -309,36 +474,150 @@
- *:NetBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
- exit 0 ;;
-+ *:OpenBSD:*:*)
-+ echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-+ exit 0 ;;
-+ i*:CYGWIN*:*)
-+ echo ${UNAME_MACHINE}-pc-cygwin32
-+ exit 0 ;;
-+ i*:MINGW*:*)
-+ echo ${UNAME_MACHINE}-pc-mingw32
-+ exit 0 ;;
-+ p*:CYGWIN*:*)
-+ echo powerpcle-unknown-cygwin32
-+ exit 0 ;;
-+ prep*:SunOS:5.*:*)
-+ echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-+ exit 0 ;;
- *:GNU:*:*)
-- echo `echo ${UNAME_MACHINE}|sed -e 's,/.*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit 0 ;;
- *:Linux:*:*)
-+ # uname on the ARM produces all sorts of strangeness, and we need to
-+ # filter it out.
-+ case "$UNAME_MACHINE" in
-+ arm* | sa110*) UNAME_MACHINE="arm" ;;
-+ esac
-+
- # The BFD linker knows what the default object file format is, so
- # first see if it will tell us.
- ld_help_string=`ld --help 2>&1`
-- if echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: elf_i[345]86"; then
-- echo "${UNAME_MACHINE}-unknown-linux" ; exit 0
-- elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: i[345]86linux"; then
-- echo "${UNAME_MACHINE}-unknown-linuxaout" ; exit 0
-- elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: i[345]86coff"; then
-- echo "${UNAME_MACHINE}-unknown-linuxcoff" ; exit 0
-- elif test "${UNAME_MACHINE}" = "alpha" ; then
-- echo alpha-unknown-linux ; exit 0
-- else
-- # Either a pre-BFD a.out linker (linuxoldld) or one that does not give us
-- # useful --help. Gcc wants to distinguish between linuxoldld and linuxaout.
-- test ! -d /usr/lib/ldscripts/. \
-- && echo "${UNAME_MACHINE}-unknown-linuxoldld" && exit 0
-+ ld_supported_emulations=`echo $ld_help_string \
-+ | sed -ne '/supported emulations:/!d
-+ s/[ ][ ]*/ /g
-+ s/.*supported emulations: *//
-+ s/ .*//
-+ p'`
-+ case "$ld_supported_emulations" in
-+ i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;;
-+ i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;;
-+ sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
-+ armlinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
-+ m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
-+ elf32ppc) echo "powerpc-unknown-linux-gnu" ; exit 0 ;;
-+ esac
-+
-+ if test "${UNAME_MACHINE}" = "alpha" ; then
-+ sed 's/^ //' <<EOF >dummy.s
-+ .globl main
-+ .ent main
-+ main:
-+ .frame \$30,0,\$26,0
-+ .prologue 0
-+ .long 0x47e03d80 # implver $0
-+ lda \$2,259
-+ .long 0x47e20c21 # amask $2,$1
-+ srl \$1,8,\$2
-+ sll \$2,2,\$2
-+ sll \$0,3,\$0
-+ addl \$1,\$0,\$0
-+ addl \$2,\$0,\$0
-+ ret \$31,(\$26),1
-+ .end main
-+EOF
-+ LIBC=""
-+ ${CC-cc} dummy.s -o dummy 2>/dev/null
-+ if test "$?" = 0 ; then
-+ ./dummy
-+ case "$?" in
-+ 7)
-+ UNAME_MACHINE="alpha"
-+ ;;
-+ 15)
-+ UNAME_MACHINE="alphaev5"
-+ ;;
-+ 14)
-+ UNAME_MACHINE="alphaev56"
-+ ;;
-+ 10)
-+ UNAME_MACHINE="alphapca56"
-+ ;;
-+ 16)
-+ UNAME_MACHINE="alphaev6"
-+ ;;
-+ esac
-+
-+ objdump --private-headers dummy | \
-+ grep ld.so.1 > /dev/null
-+ if test "$?" = 0 ; then
-+ LIBC="libc1"
-+ fi
-+ fi
-+ rm -f dummy.s dummy
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
-+ elif test "${UNAME_MACHINE}" = "mips" ; then
-+ cat >dummy.c <<EOF
-+main(argc, argv)
-+ int argc;
-+ char *argv[];
-+{
-+#ifdef __MIPSEB__
-+ printf ("%s-unknown-linux-gnu\n", argv[1]);
-+#endif
-+#ifdef __MIPSEL__
-+ printf ("%sel-unknown-linux-gnu\n", argv[1]);
-+#endif
-+ return 0;
-+}
-+EOF
-+ ${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
-+ rm -f dummy.c dummy
-+ else
-+ # Either a pre-BFD a.out linker (linux-gnuoldld)
-+ # or one that does not give us useful --help.
-+ # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
-+ # If ld does not provide *any* "supported emulations:"
-+ # that means it is gnuoldld.
-+ echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
-+ test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
-+
-+ case "${UNAME_MACHINE}" in
-+ i?86)
-+ VENDOR=pc;
-+ ;;
-+ *)
-+ VENDOR=unknown;
-+ ;;
-+ esac
- # Determine whether the default compiler is a.out or elf
- cat >dummy.c <<EOF
-+#include <features.h>
- main(argc, argv)
--int argc;
--char *argv[];
-+ int argc;
-+ char *argv[];
- {
- #ifdef __ELF__
-- printf ("%s-unknown-linux\n", argv[1]);
-+# ifdef __GLIBC__
-+# if __GLIBC__ >= 2
-+ printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
-+# else
-+ printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
-+# endif
-+# else
-+ printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
-+# endif
- #else
-- printf ("%s-unknown-linuxaout\n", argv[1]);
-+ printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
- #endif
- return 0;
- }
-@@ -348,30 +627,45 @@
- fi ;;
- # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions
- # are messed up and put the nodename in both sysname and nodename.
-- i[34]86:DYNIX/ptx:4*:*)
-+ i?86:DYNIX/ptx:4*:*)
- echo i386-sequent-sysv4
- exit 0 ;;
-- i[34]86:*:4.*:* | i[34]86:SYSTEM_V:4.*:*)
-+ i?86:UNIX_SV:4.2MP:2.*)
-+ # Unixware is an offshoot of SVR4, but it has its own version
-+ # number series starting with 2...
-+ # I am not positive that other SVR4 systems won't match this,
-+ # I just have to hope. -- rms.
-+ # Use sysv4.2uw... so that sysv4* matches it.
-+ echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
-+ exit 0 ;;
-+ i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
- if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
- else
-- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}
-+ echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
- fi
- exit 0 ;;
-- i[34]86:*:3.2:*)
-+ i?86:*:3.2:*)
- if test -f /usr/options/cb.name; then
- UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
-- echo ${UNAME_MACHINE}-unknown-isc$UNAME_REL
-+ echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
- elif /bin/uname -X 2>/dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
- (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
-- echo ${UNAME_MACHINE}-unknown-sco$UNAME_REL
-+ (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
-+ && UNAME_MACHINE=i586
-+ echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
- else
-- echo ${UNAME_MACHINE}-unknown-sysv32
-+ echo ${UNAME_MACHINE}-pc-sysv32
- fi
- exit 0 ;;
-+ pc:*:*:*)
-+ # uname -m prints for DJGPP always 'pc', but it prints nothing about
-+ # the processor, so we play safe by assuming i386.
-+ echo i386-pc-msdosdjgpp
-+ exit 0 ;;
- Intel:Mach:3*:*)
-- echo i386-unknown-mach3
-+ echo i386-pc-mach3
- exit 0 ;;
- paragon:*:*:*)
- echo i860-intel-osf1
-@@ -387,30 +681,36 @@
- # "miniframe"
- echo m68010-convergent-sysv
- exit 0 ;;
-- M680[234]0:*:R3V[567]*:*)
-+ M68*:*:R3V[567]*:*)
- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
- 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
-- uname -p 2>/dev/null | grep 86 >/dev/null \
-- && echo i486-ncr-sysv4.3 && exit 0
-- uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-- && echo i586-ncr-sysv4.3 && exit 0 ;;
-+ OS_REL=''
-+ test -r /etc/.relid \
-+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-+ && echo i486-ncr-sysv4.3${OS_REL} && exit 0
-+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-+ && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
-- uname -p 2>/dev/null | grep 86 >/dev/null \
-+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && echo i486-ncr-sysv4 && exit 0 ;;
-- m680[234]0:LynxOS:2.[23]*:*)
-- echo m68k-lynx-lynxos${UNAME_RELEASE}
-+ m68*:LynxOS:2.*:*)
-+ echo m68k-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
- mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
- exit 0 ;;
-- i[34]86:LynxOS:2.[23]*:*)
-- echo i386-lynx-lynxos${UNAME_RELEASE}
-+ i?86:LynxOS:2.*:*)
-+ echo i386-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
-- TSUNAMI:LynxOS:2.[23]*:*)
-- echo sparc-lynx-lynxos${UNAME_RELEASE}
-+ TSUNAMI:LynxOS:2.*:*)
-+ echo sparc-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
-- rs6000:LynxOS:2.[23]*:*)
-- echo rs6000-lynx-lynxos${UNAME_RELEASE}
-+ rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
-+ echo rs6000-unknown-lynxos${UNAME_RELEASE}
-+ exit 0 ;;
-+ SM[BE]S:UNIX_SV:*:*)
-+ echo mips-dde-sysv${UNAME_RELEASE}
- exit 0 ;;
- RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
-@@ -423,6 +723,32 @@
- echo ns32k-sni-sysv
- fi
- exit 0 ;;
-+ PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-+ # says <Richard.M.Bartel@ccMail.Census.GOV>
-+ echo i586-unisys-sysv4
-+ exit 0 ;;
-+ *:UNIX_System_V:4*:FTX*)
-+ # From Gerald Hewes <hewes@openmarket.com>.
-+ # How about differentiating between stratus architectures? -djm
-+ echo hppa1.1-stratus-sysv4
-+ exit 0 ;;
-+ *:*:*:FTX*)
-+ # From seanf@swdc.stratus.com.
-+ echo i860-stratus-sysv4
-+ exit 0 ;;
-+ mc68*:A/UX:*:*)
-+ echo m68k-apple-aux${UNAME_RELEASE}
-+ exit 0 ;;
-+ news*:NEWS-OS:*:6*)
-+ echo mips-sony-newsos6
-+ exit 0 ;;
-+ R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:*)
-+ if [ -d /usr/nec ]; then
-+ echo mips-nec-sysv${UNAME_RELEASE}
-+ else
-+ echo mips-unknown-sysv${UNAME_RELEASE}
-+ fi
-+ exit 0 ;;
- esac
-
- #echo '(No uname command or uname output not recognized.)' 1>&2
-@@ -452,15 +778,6 @@
- #endif
- #endif
-
--#if defined (host_mips) && defined (MIPSEB)
--#if defined (SYSTYPE_BSD43)
-- printf ("mips-mips-riscos4bsd\n"); exit (0);
--#endif
--#if defined (SYSTYPE_SYSV)
-- printf ("mips-mips-riscos4sysv\n"); exit (0);
--#endif
--#endif
--
- #if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix"); exit (0);
- #endif
-@@ -475,7 +792,7 @@
- #endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-- printf ("%s-next-nextstep%s\n", __ARCHITECTURE__, version==2 ? "2" : "3");
-+ printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- exit (0);
- #endif
-
-@@ -492,7 +809,7 @@
- #endif
-
- #if defined (__386BSD__)
-- printf ("i386-unknown-bsd\n"); exit (0);
-+ printf ("i386-pc-bsd\n"); exit (0);
- #endif
-
- #if defined (sequent)
-diff -Nru at-3.1.8/config.sub at-3.1.8.new/config.sub
---- at-3.1.8/config.sub Sun Feb 23 21:24:35 1997
-+++ at-3.1.8.new/config.sub Sun Mar 28 19:46:41 1999
-@@ -1,9 +1,9 @@
- #! /bin/sh
- # Configuration validation subroutine script, version 1.1.
--# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
-+# Copyright (C) 1991, 92-97, 1998 Free Software Foundation, Inc.
- # This file is (in principle) common to ALL GNU software.
- # The presence of a machine in this file suggests that SOME GNU software
--# can handle that machine. It does not imply ALL GNU software can.
-+# can handle that machine. It does not imply ALL GNU software can.
- #
- # This file is free software; you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
-@@ -41,6 +41,8 @@
- # The goal of this file is to map all the various variations of a given
- # machine specification into a single specification in the form:
- # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-+# or in some cases, the newer four-part form:
-+# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
- # It is wrong to echo any other type of specification.
-
- if [ x$1 = x ]
-@@ -62,11 +64,21 @@
- ;;
- esac
-
--# Separate what the user gave into CPU-COMPANY and OS (if any).
--basic_machine=`echo $1 | sed 's/-[^-]*$//'`
--if [ $basic_machine != $1 ]
--then os=`echo $1 | sed 's/.*-/-/'`
--else os=; fi
-+# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-+# Here we must recognize all the valid KERNEL-OS combinations.
-+maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-+case $maybe_os in
-+ linux-gnu*)
-+ os=-$maybe_os
-+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
-+ ;;
-+ *)
-+ basic_machine=`echo $1 | sed 's/-[^-]*$//'`
-+ if [ $basic_machine != $1 ]
-+ then os=`echo $1 | sed 's/.*-/-/'`
-+ else os=; fi
-+ ;;
-+esac
-
- ### Let's recognize common machines as not being operating systems so
- ### that things like config.sub decstation-3100 work. We also
-@@ -81,38 +93,43 @@
- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp )
-+ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-+ -apple)
- os=
- basic_machine=$1
- ;;
- -hiux*)
- os=-hiuxwe2
- ;;
-+ -sco5)
-+ os=sco3.2v5
-+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-+ ;;
- -sco4)
- os=-sco3.2v4
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
-+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
-+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2v[4-9]*)
- # Don't forget version if it is 3.2v4 or newer.
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
-+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco*)
- os=-sco3.2v2
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
-+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -isc)
- os=-isc2.2
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
-+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -clix*)
- basic_machine=clipper-intergraph
- ;;
- -isc*)
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
-+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -lynx*)
- os=-lynxos
-@@ -123,35 +140,49 @@
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
- ;;
-+ -psos*)
-+ os=-psos
-+ ;;
- esac
-
- # Decode aliases for certain CPU-COMPANY combinations.
- case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
-- tahoe | i[345]86 | i860 | m68k | m68000 | m88k | ns32k | arm \
-- | arme[lb] | pyramid \
-- | tron | a29k | 580 | i960 | h8300 | hppa1.0 | hppa1.1 \
-- | alpha | we32k | ns16k | clipper | sparclite | i370 | sh \
-- | powerpc | powerpcle | sparc64 | 1750a | dsp16xx | mips64 | mipsel \
-- | pdp11 | mips64el | mips64orion | mips64orionel \
-- | sparc)
-+ tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
-+ | arme[lb] | pyramid | mn10200 | mn10300 \
-+ | tron | a29k | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 \
-+ | alpha | alphaev5 | alphaev56 | we32k | ns16k | clipper \
-+ | i370 | sh | powerpc | powerpcle | 1750a | dsp16xx | pdp11 \
-+ | mips64 | mipsel | mips64el | mips64orion | mips64orionel \
-+ | mipstx39 | mipstx39el \
-+ | sparc | sparclet | sparclite | sparc64 | v850)
- basic_machine=$basic_machine-unknown
- ;;
-+ # We use `pc' rather than `unknown'
-+ # because (1) that's what they normally are, and
-+ # (2) the word "unknown" tends to confuse beginning users.
-+ i[34567]86)
-+ basic_machine=$basic_machine-pc
-+ ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
-- vax-* | tahoe-* | i[345]86-* | i860-* | m68k-* | m68000-* | m88k-* \
-- | sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \
-- | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* | power-* \
-- | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \
-- | hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \
-- | pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \
-- | pdp11-* | sh-* | powerpc-* | powerpcle-* | sparc64-* | mips64-* | mipsel-* \
-- | mips64el-* | mips64orion-* | mips64orionel-*)
-+ vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* \
-+ | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
-+ | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
-+ | power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \
-+ | xmp-* | ymp-* | hppa-* | hppa1.0-* | hppa1.1-* \
-+ | alpha-* | alphaev5-* | alphaev56-* | we32k-* | cydra-* \
-+ | ns16k-* | pn-* | np1-* | xps100-* | clipper-* | orion-* \
-+ | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
-+ | sparc64-* | mips64-* | mipsel-* \
-+ | mips64el-* | mips64orion-* | mips64orionel-* \
-+ | mipstx39-* | mipstx39el-* \
-+ | f301-*)
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
-@@ -178,9 +209,9 @@
- amiga | amiga-*)
- basic_machine=m68k-cbm
- ;;
-- amigados)
-+ amigaos | amigados)
- basic_machine=m68k-cbm
-- os=-amigados
-+ os=-amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-cbm
-@@ -190,6 +221,10 @@
- basic_machine=m68k-apollo
- os=-sysv
- ;;
-+ aux)
-+ basic_machine=m68k-apple
-+ os=-aux
-+ ;;
- balance)
- basic_machine=ns32k-sequent
- os=-dynix
-@@ -222,6 +257,10 @@
- basic_machine=cray2-cray
- os=-unicos
- ;;
-+ [ctj]90-cray)
-+ basic_machine=c90-cray
-+ os=-unicos
-+ ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
-@@ -303,25 +342,28 @@
- hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
-+ hppa-next)
-+ os=-nextstep3
-+ ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
- os=-mvs
- ;;
- # I'm not sure what "Sysv32" means. Should this be sysv3.2?
-- i[345]86v32)
-- basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
-+ i[34567]86v32)
-+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
- ;;
-- i[345]86v4*)
-- basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
-+ i[34567]86v4*)
-+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
- ;;
-- i[345]86v)
-- basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
-+ i[34567]86v)
-+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
- ;;
-- i[345]86sol2)
-- basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
-+ i[34567]86sol2)
-+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
- iris | iris4d)
-@@ -352,6 +394,14 @@
- miniframe)
- basic_machine=m68000-convergent
- ;;
-+ mipsel*-linux*)
-+ basic_machine=mipsel-unknown
-+ os=-linux-gnu
-+ ;;
-+ mips*-linux*)
-+ basic_machine=mips-unknown
-+ os=-linux-gnu
-+ ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
-@@ -419,21 +469,23 @@
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
-- pentium | p5 | p6)
-- # We don't have specific support for the Intel Pentium (p6) followon yet, so just call it a Pentium
-- basic_machine=i586-intel
-+ pentium | p5 | k5 | nexen)
-+ basic_machine=i586-pc
-+ ;;
-+ pentiumpro | p6 | k6 | 6x86)
-+ basic_machine=i686-pc
-+ ;;
-+ pentiumii | pentium2)
-+ basic_machine=i786-pc
- ;;
-- pentium-* | p5-* | p6-*)
-- # We don't have specific support for the Intel Pentium (p6) followon yet, so just call it a Pentium
-+ pentium-* | p5-* | k5-* | nexen-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
-- k5)
-- # We don't have specific support for AMD's K5 yet, so just call it a Pentium
-- basic_machine=i586-amd
-- ;;
-- nexen)
-- # We don't have specific support for Nexgen yet, so just call it a Pentium
-- basic_machine=i586-nexgen
-+ pentiumpro-* | p6-* | k6-* | 6x86-*)
-+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
-+ pentiumii-* | pentium2-*)
-+ basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
-@@ -517,6 +569,12 @@
- basic_machine=i386-sequent
- os=-dynix
- ;;
-+ tx39)
-+ basic_machine=mipstx39-unknown
-+ ;;
-+ tx39el)
-+ basic_machine=mipstx39el-unknown
-+ ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
-@@ -536,6 +594,9 @@
- basic_machine=vax-dec
- os=-vms
- ;;
-+ vpp*|vx|vx-*)
-+ basic_machine=f301-fujitsu
-+ ;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
-@@ -563,7 +624,11 @@
- # Here we handle the default manufacturer of certain CPU types. It is in
- # some cases the only manufacturer, in others, it is the most popular.
- mips)
-- basic_machine=mips-mips
-+ if [ x$os = x-linux-gnu ]; then
-+ basic_machine=mips-unknown
-+ else
-+ basic_machine=mips-mips
-+ fi
- ;;
- romp)
- basic_machine=romp-ibm
-@@ -615,6 +680,8 @@
- if [ x"$os" != x"" ]
- then
- case $os in
-+ # First match some system type aliases
-+ # that might get confused with valid system types.
- # -solaris* is a basic system type, with this one exception.
- -solaris1 | -solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
-@@ -622,28 +689,37 @@
- -solaris)
- os=-solaris2
- ;;
-- -unixware* | svr4*)
-+ -svr4*)
- os=-sysv4
- ;;
-+ -unixware*)
-+ os=-sysv4.2uw
-+ ;;
- -gnu/linux*)
-- os=`echo $os | sed -e 's|gnu/linux|linux|'`
-+ os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
- # First accept the basic system types.
- # The portable systems comes first.
- # Each alternative MUST END IN A *, to match a version number.
- # -sysv* is not here because it comes later, after sysvr4.
- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-- | -vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[345]* \
-+ | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
-- | -amigados* | -msdos* | -newsos* | -unicos* | -aos* \
-- | -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \
-- | -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \
-- | -hiux* | -386bsd* | -netbsd* | -freebsd* | -riscix* \
-+ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-+ | -aos* \
-+ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
-+ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-+ | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
-- | -udi* | -eabi* | -lites* )
-+ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-+ | -cygwin32* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-+ | -mingw32* | -linux-gnu* | -uxpv*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
-+ -linux*)
-+ os=`echo $os | sed -e 's|linux|linux-gnu|'`
-+ ;;
- -sunos5*)
- os=`echo $os | sed -e 's|sunos5|solaris2|'`
- ;;
-@@ -668,6 +744,9 @@
- -ctix* | -uts*)
- os=-sysv
- ;;
-+ -ns2 )
-+ os=-nextstep2
-+ ;;
- # Preserve the version number of sinix5.
- -sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
-@@ -761,7 +840,7 @@
- os=-sysv
- ;;
- *-cbm)
-- os=-amigados
-+ os=-amigaos
- ;;
- *-dg)
- os=-dgux
-@@ -775,6 +854,9 @@
- m88k-omron*)
- os=-luna
- ;;
-+ *-next )
-+ os=-nextstep
-+ ;;
- *-sequent)
- os=-ptx
- ;;
-@@ -808,6 +890,9 @@
- *-masscomp)
- os=-rtu
- ;;
-+ f301-fujitsu)
-+ os=-uxpv
-+ ;;
- *)
- os=-none
- ;;
-@@ -826,9 +911,6 @@
- -sunos*)
- vendor=sun
- ;;
-- -lynxos*)
-- vendor=lynx
-- ;;
- -aix*)
- vendor=ibm
- ;;
-@@ -856,8 +938,11 @@
- -ptx*)
- vendor=sequent
- ;;
-- -vxworks*)
-+ -vxsim* | -vxworks*)
- vendor=wrs
-+ ;;
-+ -aux*)
-+ vendor=apple
- ;;
- esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
-diff -Nru at-3.1.8/daemon.c at-3.1.8.new/daemon.c
---- at-3.1.8/daemon.c Wed Mar 12 20:34:41 1997
-+++ at-3.1.8.new/daemon.c Sun Mar 28 19:46:41 1999
-@@ -72,7 +72,7 @@
- va_list args;
-
- va_start(args, fmt);
-- vsprintf(buf, fmt, args);
-+ vsnprintf(buf, sizeof(buf), fmt, args);
- va_end(args);
-
- if (daemon_debug) {
-@@ -90,7 +90,7 @@
- va_list args;
-
- va_start(args, fmt);
-- vsprintf(buf, fmt, args);
-+ vsnprintf(buf, sizeof(buf), fmt, args);
- va_end(args);
-
- if (daemon_debug) {
-@@ -127,6 +127,7 @@
- }
- }
- old_umask = umask(S_IWGRP | S_IWOTH);
-+ (void) setsid();
-
- PRIV_START
-
-diff -Nru at-3.1.8/lex.yy.c at-3.1.8.new/lex.yy.c
---- at-3.1.8/lex.yy.c Sun Sep 28 22:00:37 1997
-+++ at-3.1.8.new/lex.yy.c Sun Mar 28 19:46:41 1999
-@@ -126,6 +126,7 @@
- { \
- /* Undo effects of setting up yytext. */ \
- *yy_cp = yy_hold_char; \
-+ YY_RESTORE_YY_MORE_OFFSET \
- yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
- YY_DO_BEFORE_ACTION; /* set up yytext again */ \
- } \
-@@ -235,7 +236,7 @@
- #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
-
- YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
--YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *str ));
-+YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
- YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
-
- static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
-@@ -456,6 +457,7 @@
- #define REJECT reject_used_but_not_detected
- #define yymore() yymore_used_but_not_detected
- #define YY_MORE_ADJ 0
-+#define YY_RESTORE_YY_MORE_OFFSET
- char *yytext;
- #line 1 "parsetime.l"
- #define INITIAL 0
-@@ -491,7 +493,7 @@
- result = 1; \
- } \
- } while(0)
--#line 495 "lex.yy.c"
-+#line 497 "lex.yy.c"
-
- /* Macros after this point can all be overridden by user definitions in
- * section 1.
-@@ -513,6 +515,10 @@
- static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
- #endif
-
-+#ifdef YY_NEED_STRLEN
-+static int yy_flex_strlen YY_PROTO(( yyconst char * ));
-+#endif
-+
- #ifndef YY_NO_INPUT
- #ifdef __cplusplus
- static int yyinput YY_PROTO(( void ));
-@@ -641,7 +647,7 @@
- #line 36 "parsetime.l"
-
-
--#line 645 "lex.yy.c"
-+#line 651 "lex.yy.c"
-
- if ( yy_init )
- {
-@@ -919,7 +925,7 @@
- #line 77 "parsetime.l"
- ECHO;
- YY_BREAK
--#line 923 "lex.yy.c"
-+#line 929 "lex.yy.c"
- case YY_STATE_EOF(INITIAL):
- yyterminate();
-
-@@ -930,6 +936,7 @@
-
- /* Undo the effects of YY_DO_BEFORE_ACTION. */
- *yy_cp = yy_hold_char;
-+ YY_RESTORE_YY_MORE_OFFSET
-
- if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
- {
-@@ -1075,7 +1082,7 @@
- { /* Don't try to fill the buffer, so this is an EOF. */
- if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
- {
-- /* We matched a singled characater, the EOB, so
-+ /* We matched a single character, the EOB, so
- * treat this as a final EOF.
- */
- return EOB_ACT_END_OF_FILE;
-@@ -1102,7 +1109,7 @@
- /* don't do the read, it's not guaranteed to return an EOF,
- * just force an EOF
- */
-- yy_n_chars = 0;
-+ yy_current_buffer->yy_n_chars = yy_n_chars = 0;
-
- else
- {
-@@ -1157,6 +1164,8 @@
- /* Read in more data. */
- YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
- yy_n_chars, num_to_read );
-+
-+ yy_current_buffer->yy_n_chars = yy_n_chars;
- }
-
- if ( yy_n_chars == 0 )
-@@ -1281,7 +1290,8 @@
-
- yy_cp += (int) (dest - source);
- yy_bp += (int) (dest - source);
-- yy_n_chars = yy_current_buffer->yy_buf_size;
-+ yy_current_buffer->yy_n_chars =
-+ yy_n_chars = yy_current_buffer->yy_buf_size;
-
- if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
- YY_FATAL_ERROR( "flex scanner push-back overflow" );
-@@ -1319,19 +1329,31 @@
-
- else
- { /* need more input */
-- yytext_ptr = yy_c_buf_p;
-+ int offset = yy_c_buf_p - yytext_ptr;
- ++yy_c_buf_p;
-
- switch ( yy_get_next_buffer() )
- {
-+ case EOB_ACT_LAST_MATCH:
-+ /* This happens because yy_g_n_b()
-+ * sees that we've accumulated a
-+ * token and flags that we need to
-+ * try matching the token before
-+ * proceeding. But for input(),
-+ * there's no matching to consider.
-+ * So convert the EOB_ACT_LAST_MATCH
-+ * to EOB_ACT_END_OF_FILE.
-+ */
-+
-+ /* Reset buffer status. */
-+ yyrestart( yyin );
-+
-+ /* fall through */
-+
- case EOB_ACT_END_OF_FILE:
- {
- if ( yywrap() )
-- {
-- yy_c_buf_p =
-- yytext_ptr + YY_MORE_ADJ;
- return EOF;
-- }
-
- if ( ! yy_did_buffer_switch_on_eof )
- YY_NEW_FILE;
-@@ -1343,17 +1365,8 @@
- }
-
- case EOB_ACT_CONTINUE_SCAN:
-- yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
-+ yy_c_buf_p = yytext_ptr + offset;
- break;
--
-- case EOB_ACT_LAST_MATCH:
--#ifdef __cplusplus
-- YY_FATAL_ERROR(
-- "unexpected last match in yyinput()" );
--#else
-- YY_FATAL_ERROR(
-- "unexpected last match in input()" );
--#endif
- }
- }
- }
-@@ -1517,6 +1530,9 @@
- #endif
-
- {
-+ if ( ! b )
-+ return;
-+
- b->yy_n_chars = 0;
-
- /* We always need two end-of-buffer characters. The first causes
-@@ -1576,17 +1592,17 @@
-
- #ifndef YY_NO_SCAN_STRING
- #ifdef YY_USE_PROTOS
--YY_BUFFER_STATE yy_scan_string( yyconst char *str )
-+YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
- #else
--YY_BUFFER_STATE yy_scan_string( str )
--yyconst char *str;
-+YY_BUFFER_STATE yy_scan_string( yy_str )
-+yyconst char *yy_str;
- #endif
- {
- int len;
-- for ( len = 0; str[len]; ++len )
-+ for ( len = 0; yy_str[len]; ++len )
- ;
-
-- return yy_scan_bytes( str, len );
-+ return yy_scan_bytes( yy_str, len );
- }
- #endif
-
-@@ -1707,7 +1723,7 @@
- { \
- /* Undo effects of setting up yytext. */ \
- yytext[yyleng] = yy_hold_char; \
-- yy_c_buf_p = yytext + n - YY_MORE_ADJ; \
-+ yy_c_buf_p = yytext + n; \
- yy_hold_char = *yy_c_buf_p; \
- *yy_c_buf_p = '\0'; \
- yyleng = n; \
-@@ -1730,6 +1746,22 @@
- register int i;
- for ( i = 0; i < n; ++i )
- s1[i] = s2[i];
-+ }
-+#endif
-+
-+#ifdef YY_NEED_STRLEN
-+#ifdef YY_USE_PROTOS
-+static int yy_flex_strlen( yyconst char *s )
-+#else
-+static int yy_flex_strlen( s )
-+yyconst char *s;
-+#endif
-+ {
-+ register int n;
-+ for ( n = 0; s[n]; ++n )
-+ ;
-+
-+ return n;
- }
- #endif
-
-diff -Nru at-3.1.8/panic.c at-3.1.8.new/panic.c
---- at-3.1.8/panic.c Sun Sep 28 22:00:37 1997
-+++ at-3.1.8.new/panic.c Sun Mar 28 19:46:41 1999
-@@ -41,6 +41,7 @@
- /* Local headers */
-
- #include "panic.h"
-+#include "privs.h"
- #include "at.h"
-
- /* File scope variables */
-@@ -72,12 +73,15 @@
- va_list args;
-
- va_start(args, fmt);
-- vsprintf(buf, fmt, args);
-+ vsnprintf(buf, sizeof(buf), fmt, args);
- va_end(args);
-
- perror(buf);
-- if (fcreated)
-+ if (fcreated) {
-+ PRIV_START
- unlink(atfile);
-+ PRIV_END
-+ }
-
- exit(EXIT_FAILURE);
- }
-@@ -88,7 +92,7 @@
- /* Print usage and exit.
- */
- fprintf(stderr, "Usage: at [-V] [-q x] [-f file] [-m] time\n"
-- " atq [-V] [-q x] [-v]\n"
-+ " atq [-V] [-q x]\n"
- " atrm [-V] [-q x] job ...\n"
- " batch [-V] [-f file] [-m]\n");
- exit(EXIT_FAILURE);
-diff -Nru at-3.1.8/parsetime.y at-3.1.8.new/parsetime.y
---- at-3.1.8/parsetime.y Sun Sep 28 20:21:29 1997
-+++ at-3.1.8.new/parsetime.y Sun Mar 28 19:46:41 1999
-@@ -11,6 +11,9 @@
- static int isgmt;
- static int time_only;
-
-+extern int yyerror(char *s);
-+extern int yylex();
-+
- int add_date(int number, int period);
- %}
-
-@@ -181,6 +184,15 @@
- ;
-
- am_pm : AM
-+ {
-+ if (exectm.tm_hour > 12) {
-+ yyerror("Hour too large for AM");
-+ YYERROR;
-+ }
-+ else if (exectm.tm_hour == 12) {
-+ exectm.tm_hour = 0;
-+ }
-+ }
- | PM
- {
- if (exectm.tm_hour > 12) {
-@@ -258,13 +270,13 @@
- ;
-
-
--day_of_week : SUN { $$ = 0; }
-- | MON { $$ = 1; }
-- | TUE { $$ = 2; }
-- | WED { $$ = 3; }
-- | THU { $$ = 4; }
-- | FRI { $$ = 5; }
-- | SAT { $$ = 6; }
-+day_of_week : MON { $$ = 0; }
-+ | TUE { $$ = 1; }
-+ | WED { $$ = 2; }
-+ | THU { $$ = 3; }
-+ | FRI { $$ = 4; }
-+ | SAT { $$ = 5; }
-+ | SUN { $$ = 6; }
- ;
-
- inc_number : INT
-diff -Nru at-3.1.8/y.tab.c at-3.1.8.new/y.tab.c
---- at-3.1.8/y.tab.c Sun Sep 28 20:21:31 1997
-+++ at-3.1.8.new/y.tab.c Sun Mar 28 19:46:41 1999
-@@ -1,5 +1,6 @@
-
--/* A Bison parser, made from parsetime.y with Bison version GNU Bison version 1.22
-+/* A Bison parser, made from parsetime.y
-+ by GNU Bison version 1.25
- */
-
- #define YYBISON 1 /* Identify Bison output. */
-@@ -55,30 +56,16 @@
- static int isgmt;
- static int time_only;
-
-+extern int yyerror(char *s);
-+extern int yylex();
-+
- int add_date(int number, int period);
-
--#line 17 "parsetime.y"
-+#line 20 "parsetime.y"
- typedef union {
- char * charval;
- int intval;
- } YYSTYPE;
--
--#ifndef YYLTYPE
--typedef
-- struct yyltype
-- {
-- int timestamp;
-- int first_line;
-- int first_column;
-- int last_line;
-- int last_column;
-- char *text;
-- }
-- yyltype;
--
--#define YYLTYPE yyltype
--#endif
--
- #include <stdio.h>
-
- #ifndef __cplusplus
-@@ -158,9 +145,9 @@
- 0, 55, 0, 3, 0, 5, 0, 6, 0, 26,
- 0, 27, 0, 28, 0, 29, 0, 30, 0, 31,
- 0, 32, 0, 33, 0, 34, 0, 35, 0, 36,
-- 0, 37, 0, 3, 0, 3, 0, 3, 0, 10,
-- 0, 11, 0, 12, 0, 13, 0, 14, 0, 15,
-- 0, 16, 0, 3, 0, 44, 0, 45, 0, 41,
-+ 0, 37, 0, 3, 0, 3, 0, 3, 0, 11,
-+ 0, 12, 0, 13, 0, 14, 0, 15, 0, 16,
-+ 0, 10, 0, 3, 0, 44, 0, 45, 0, 41,
- 0, 46, 0, 39, 0
- };
-
-@@ -168,24 +155,28 @@
-
- #if YYDEBUG != 0
- static const short yyrline[] = { 0,
-- 39, 43, 44, 45, 46, 47, 48, 51, 52, 53,
-- 56, 59, 60, 61, 62, 63, 64, 65, 66, 67,
-- 72, 78, 85, 86, 87, 91, 92, 96, 97, 98,
-- 99, 100, 101, 104, 108, 112, 118, 124, 125, 126,
-- 127, 128, 129, 132, 157, 170, 173, 183, 184, 197,
-- 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
-- 208, 211, 225, 238, 261, 262, 263, 264, 265, 266,
-- 267, 270, 280, 281, 282, 283, 284
-+ 42, 46, 47, 48, 49, 50, 51, 54, 55, 56,
-+ 59, 62, 63, 64, 65, 66, 67, 68, 69, 70,
-+ 75, 81, 88, 89, 90, 94, 95, 99, 100, 101,
-+ 102, 103, 104, 107, 111, 115, 121, 127, 128, 129,
-+ 130, 131, 132, 135, 160, 173, 176, 186, 187, 200,
-+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
-+ 211, 214, 228, 241, 264, 265, 266, 267, 268, 269,
-+ 270, 273, 283, 284, 285, 286, 287
- };
-+#endif
-
--static const char * const yytname[] = { "$","error","$illegal.","INT","NOW",
-+
-+#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)
-+
-+static const char * const yytname[] = { "$","error","$undefined.","INT","NOW",
- "AM","PM","NOON","MIDNIGHT","TEATIME","SUN","MON","TUE","WED","THU","FRI","SAT",
- "TODAY","TOMORROW","NEXT","MINUTE","HOUR","DAY","WEEK","MONTH","YEAR","JAN",
- "FEB","MAR","APR","MAY","JUN","JUL","AUG","SEP","OCT","NOV","DEC","WORD","','",
--"'-'","'.'","'/'","'+'","':'","'\\''","'h'","timespec","nowspec","now","time",
-+"'-'","'.'","'/'","'+'","':'","'''","'h'","timespec","nowspec","now","time",
- "date","increment","decrement","inc_period","hr24clock_hr_min","timezone_name",
- "hr24clock_hour","minute","am_pm","month_name","month_number","day_number","year_number",
--"day_of_week","inc_number","time_sep",""
-+"day_of_week","inc_number","time_sep", NULL
- };
- #endif
-
-@@ -213,8 +204,8 @@
-
- static const short yydefact[] = { 0,
- 44, 11, 20, 21, 22, 7, 8, 1, 12, 0,
-- 0, 0, 0, 9, 10, 63, 65, 66, 67, 68,
-- 69, 70, 71, 26, 27, 50, 51, 52, 53, 54,
-+ 0, 0, 0, 9, 10, 63, 71, 65, 66, 67,
-+ 68, 69, 70, 26, 27, 50, 51, 52, 53, 54,
- 55, 56, 57, 58, 59, 60, 61, 2, 3, 5,
- 0, 0, 0, 0, 25, 45, 13, 48, 49, 77,
- 75, 73, 74, 76, 16, 0, 38, 39, 40, 41,
-@@ -283,14 +274,14 @@
- -1, 41
- };
- /* -*-C-*- Note some compilers choke on comments on `#line' lines. */
--#line 3 "/usr/lib/bison.simple"
-+#line 3 "/usr/share/misc/bison.simple"
-
- /* Skeleton output parser for bison,
-- Copyright (C) 1984, 1989, 1990 Bob Corbett and Richard Stallman
-+ Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 1, or (at your option)
-+ the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
-@@ -300,8 +291,12 @@
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
-- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
-+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-
-+/* As a special exception, when this file is copied by Bison into a
-+ Bison output file, you may use that output file without restriction.
-+ This special exception was added by the Free Software Foundation
-+ in version 1.24 of Bison. */
-
- #ifndef alloca
- #ifdef __GNUC__
-@@ -375,10 +370,18 @@
-
- #ifdef YYPURE
- #ifdef YYLSP_NEEDED
-+#ifdef YYLEX_PARAM
-+#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM)
-+#else
- #define YYLEX yylex(&yylval, &yylloc)
-+#endif
-+#else /* not YYLSP_NEEDED */
-+#ifdef YYLEX_PARAM
-+#define YYLEX yylex(&yylval, YYLEX_PARAM)
- #else
- #define YYLEX yylex(&yylval)
- #endif
-+#endif /* not YYLSP_NEEDED */
- #endif
-
- /* If nonreentrant, generate the variables here */
-@@ -426,16 +429,16 @@
- #endif
- \f
- #if __GNUC__ > 1 /* GNU C and GNU C++ define this. */
--#define __yy_bcopy(FROM,TO,COUNT) __builtin_memcpy(TO,FROM,COUNT)
-+#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)
- #else /* not GNU C or C++ */
- #ifndef __cplusplus
-
- /* This is the most reliable way to avoid incompatibilities
- in available built-in functions on various systems. */
- static void
--__yy_bcopy (from, to, count)
-- char *from;
-+__yy_memcpy (to, from, count)
- char *to;
-+ char *from;
- int count;
- {
- register char *f = from;
-@@ -451,7 +454,7 @@
- /* This is the most reliable way to avoid incompatibilities
- in available built-in functions on various systems. */
- static void
--__yy_bcopy (char *from, char *to, int count)
-+__yy_memcpy (char *to, char *from, int count)
- {
- register char *f = from;
- register char *t = to;
-@@ -464,9 +467,30 @@
- #endif
- #endif
- \f
--#line 184 "/usr/lib/bison.simple"
-+#line 196 "/usr/share/misc/bison.simple"
-+
-+/* The user can define YYPARSE_PARAM as the name of an argument to be passed
-+ into yyparse. The argument should have type void *.
-+ It should actually point to an object.
-+ Grammar actions can access the variable by casting it
-+ to the proper pointer type. */
-+
-+#ifdef YYPARSE_PARAM
-+#ifdef __cplusplus
-+#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
-+#define YYPARSE_PARAM_DECL
-+#else /* not __cplusplus */
-+#define YYPARSE_PARAM_ARG YYPARSE_PARAM
-+#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
-+#endif /* not __cplusplus */
-+#else /* not YYPARSE_PARAM */
-+#define YYPARSE_PARAM_ARG
-+#define YYPARSE_PARAM_DECL
-+#endif /* not YYPARSE_PARAM */
-+
- int
--yyparse()
-+yyparse(YYPARSE_PARAM_ARG)
-+ YYPARSE_PARAM_DECL
- {
- register int yystate;
- register int yyn;
-@@ -582,12 +606,12 @@
- if (yystacksize > YYMAXDEPTH)
- yystacksize = YYMAXDEPTH;
- yyss = (short *) alloca (yystacksize * sizeof (*yyssp));
-- __yy_bcopy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp));
-+ __yy_memcpy ((char *)yyss, (char *)yyss1, size * sizeof (*yyssp));
- yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp));
-- __yy_bcopy ((char *)yyvs1, (char *)yyvs, size * sizeof (*yyvsp));
-+ __yy_memcpy ((char *)yyvs, (char *)yyvs1, size * sizeof (*yyvsp));
- #ifdef YYLSP_NEEDED
- yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp));
-- __yy_bcopy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp));
-+ __yy_memcpy ((char *)yyls, (char *)yyls1, size * sizeof (*yylsp));
- #endif
- #endif /* no yyoverflow */
-
-@@ -748,20 +772,20 @@
- switch (yyn) {
-
- case 1:
--#line 40 "parsetime.y"
-+#line 43 "parsetime.y"
- {
- time_only = 1;
- ;
- break;}
- case 20:
--#line 68 "parsetime.y"
-+#line 71 "parsetime.y"
- {
- exectm.tm_hour = 12;
- exectm.tm_min = 0;
- ;
- break;}
- case 21:
--#line 73 "parsetime.y"
-+#line 76 "parsetime.y"
- {
- exectm.tm_hour = 0;
- exectm.tm_min = 0;
-@@ -769,74 +793,74 @@
- ;
- break;}
- case 22:
--#line 79 "parsetime.y"
-+#line 82 "parsetime.y"
- {
- exectm.tm_hour = 16;
- exectm.tm_min = 0;
- ;
- break;}
- case 25:
--#line 88 "parsetime.y"
-+#line 91 "parsetime.y"
- {
- add_date ((7 + yyvsp[0].intval - exectm.tm_wday) %7 + 1, DAY);
- ;
- break;}
- case 27:
--#line 93 "parsetime.y"
-+#line 96 "parsetime.y"
- {
- add_date(1, DAY);
- ;
- break;}
- case 34:
--#line 105 "parsetime.y"
-+#line 108 "parsetime.y"
- {
- add_date(yyvsp[-1].intval, yyvsp[0].intval);
- ;
- break;}
- case 35:
--#line 109 "parsetime.y"
-+#line 112 "parsetime.y"
- {
- add_date(1, yyvsp[0].intval);
- ;
- break;}
- case 36:
--#line 113 "parsetime.y"
-+#line 116 "parsetime.y"
- {
- add_date ((6 + yyvsp[0].intval - exectm.tm_wday) %7 +1, DAY);
- ;
- break;}
- case 37:
--#line 119 "parsetime.y"
-+#line 122 "parsetime.y"
- {
- add_date(-yyvsp[-1].intval, yyvsp[0].intval);
- ;
- break;}
- case 38:
--#line 124 "parsetime.y"
-+#line 127 "parsetime.y"
- { yyval.intval = MINUTE ; ;
- break;}
- case 39:
--#line 125 "parsetime.y"
-+#line 128 "parsetime.y"
- { yyval.intval = HOUR ; ;
- break;}
- case 40:
--#line 126 "parsetime.y"
-+#line 129 "parsetime.y"
- { yyval.intval = DAY ; ;
- break;}
- case 41:
--#line 127 "parsetime.y"
-+#line 130 "parsetime.y"
- { yyval.intval = WEEK ; ;
- break;}
- case 42:
--#line 128 "parsetime.y"
-+#line 131 "parsetime.y"
- { yyval.intval = MONTH ; ;
- break;}
- case 43:
--#line 129 "parsetime.y"
-+#line 132 "parsetime.y"
- { yyval.intval = YEAR ; ;
- break;}
- case 44:
--#line 133 "parsetime.y"
-+#line 136 "parsetime.y"
- {
- exectm.tm_min = -1;
- exectm.tm_hour = -1;
-@@ -861,7 +885,7 @@
- ;
- break;}
- case 45:
--#line 158 "parsetime.y"
-+#line 161 "parsetime.y"
- {
- if (strcasecmp(yyvsp[0].charval,"utc") == 0) {
- isgmt = 1;
-@@ -874,7 +898,7 @@
- ;
- break;}
- case 47:
--#line 174 "parsetime.y"
-+#line 177 "parsetime.y"
- {
- if (sscanf(yyvsp[0].charval, "%d", &exectm.tm_min) != 1) {
- yyerror("Error in minute");
-@@ -884,7 +908,7 @@
- ;
- break;}
- case 49:
--#line 185 "parsetime.y"
-+#line 188 "parsetime.y"
- {
- if (exectm.tm_hour > 12) {
- yyerror("Hour too large for PM");
-@@ -896,55 +920,55 @@
- ;
- break;}
- case 50:
--#line 197 "parsetime.y"
-+#line 200 "parsetime.y"
- { exectm.tm_mon = 0; ;
- break;}
- case 51:
--#line 198 "parsetime.y"
-+#line 201 "parsetime.y"
- { exectm.tm_mon = 1; ;
- break;}
- case 52:
--#line 199 "parsetime.y"
-+#line 202 "parsetime.y"
- { exectm.tm_mon = 2; ;
- break;}
- case 53:
--#line 200 "parsetime.y"
-+#line 203 "parsetime.y"
- { exectm.tm_mon = 3; ;
- break;}
- case 54:
--#line 201 "parsetime.y"
-+#line 204 "parsetime.y"
- { exectm.tm_mon = 4; ;
- break;}
- case 55:
--#line 202 "parsetime.y"
-+#line 205 "parsetime.y"
- { exectm.tm_mon = 5; ;
- break;}
- case 56:
--#line 203 "parsetime.y"
-+#line 206 "parsetime.y"
- { exectm.tm_mon = 6; ;
- break;}
- case 57:
--#line 204 "parsetime.y"
-+#line 207 "parsetime.y"
- { exectm.tm_mon = 7; ;
- break;}
- case 58:
--#line 205 "parsetime.y"
-+#line 208 "parsetime.y"
- { exectm.tm_mon = 8; ;
- break;}
- case 59:
--#line 206 "parsetime.y"
-+#line 209 "parsetime.y"
- { exectm.tm_mon = 9; ;
- break;}
- case 60:
--#line 207 "parsetime.y"
-+#line 210 "parsetime.y"
- { exectm.tm_mon =10; ;
- break;}
- case 61:
--#line 208 "parsetime.y"
-+#line 211 "parsetime.y"
- { exectm.tm_mon =11; ;
- break;}
- case 62:
--#line 212 "parsetime.y"
-+#line 215 "parsetime.y"
- {
- {
- int mnum = -1;
-@@ -960,7 +984,7 @@
- ;
- break;}
- case 63:
--#line 226 "parsetime.y"
-+#line 229 "parsetime.y"
- {
- exectm.tm_mday = -1;
- sscanf(yyvsp[0].charval, "%d", &exectm.tm_mday);
-@@ -973,7 +997,7 @@
- ;
- break;}
- case 64:
--#line 239 "parsetime.y"
-+#line 242 "parsetime.y"
- {
- {
- int ynum;
-@@ -995,35 +1019,35 @@
- ;
- break;}
- case 65:
--#line 261 "parsetime.y"
-+#line 264 "parsetime.y"
- { yyval.intval = 0; ;
- break;}
- case 66:
--#line 262 "parsetime.y"
-+#line 265 "parsetime.y"
- { yyval.intval = 1; ;
- break;}
- case 67:
--#line 263 "parsetime.y"
-+#line 266 "parsetime.y"
- { yyval.intval = 2; ;
- break;}
- case 68:
--#line 264 "parsetime.y"
-+#line 267 "parsetime.y"
- { yyval.intval = 3; ;
- break;}
- case 69:
--#line 265 "parsetime.y"
-+#line 268 "parsetime.y"
- { yyval.intval = 4; ;
- break;}
- case 70:
--#line 266 "parsetime.y"
-+#line 269 "parsetime.y"
- { yyval.intval = 5; ;
- break;}
- case 71:
--#line 267 "parsetime.y"
-+#line 270 "parsetime.y"
- { yyval.intval = 6; ;
- break;}
- case 72:
--#line 271 "parsetime.y"
-+#line 274 "parsetime.y"
- {
- if (sscanf(yyvsp[0].charval, "%d", &yyval.intval) != 1) {
- yyerror("Unknown increment");
-@@ -1034,7 +1058,7 @@
- break;}
- }
- /* the action file gets copied in in place of this dollarsign */
--#line 465 "/usr/lib/bison.simple"
-+#line 498 "/usr/share/misc/bison.simple"
- \f
- yyvsp -= yylen;
- yyssp -= yylen;
-@@ -1230,7 +1254,7 @@
- yystate = yyn;
- goto yynewstate;
- }
--#line 287 "parsetime.y"
-+#line 290 "parsetime.y"
-
-
-