Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Aug 2003 23:41:56 -0700 (PDT)
From:      Marcel Moolenaar <marcel@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 37259 for review
Message-ID:  <200308310641.h7V6fuYt011912@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=37259

Change 37259 by marcel@marcel_nfs on 2003/08/30 23:41:47

	IFC @37254

Affected files ...

.. //depot/projects/ia64/Makefile#32 integrate
.. //depot/projects/ia64/Makefile.inc1#80 integrate
.. //depot/projects/ia64/UPDATING#50 integrate
.. //depot/projects/ia64/bin/sh/arith.h#3 integrate
.. //depot/projects/ia64/bin/sh/arith.y#4 integrate
.. //depot/projects/ia64/bin/sh/arith_lex.l#4 integrate
.. //depot/projects/ia64/bin/sh/shell.h#4 integrate
.. //depot/projects/ia64/contrib/gnu-sort/ABOUT-NLS#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/ChangeLog#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/FREEBSD-upgrade#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/NEWS#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/README#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/README-alpha#2 delete
.. //depot/projects/ia64/contrib/gnu-sort/THANKS#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/lib/getopt.c#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/lib/getopt.h#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/lib/getopt1.c#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/lib/gettext.h#1 branch
.. //depot/projects/ia64/contrib/gnu-sort/lib/hard-locale.c#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/lib/xmalloc.c#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/man/sort.1#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/src/sort.c#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/src/sys2.h#2 integrate
.. //depot/projects/ia64/contrib/gnu-sort/src/system.h#2 integrate
.. //depot/projects/ia64/etc/rc.d/Makefile#21 integrate
.. //depot/projects/ia64/etc/rc.d/localdaemons#4 delete
.. //depot/projects/ia64/etc/rc.d/network1#12 delete
.. //depot/projects/ia64/etc/rc.d/network2#5 delete
.. //depot/projects/ia64/etc/rc.d/network3#6 delete
.. //depot/projects/ia64/gnu/usr.bin/Makefile#22 integrate
.. //depot/projects/ia64/gnu/usr.bin/sort/Makefile#5 integrate
.. //depot/projects/ia64/gnu/usr.bin/sort/config.h#6 integrate
.. //depot/projects/ia64/gnu/usr.bin/sort/libintl.h#2 delete
.. //depot/projects/ia64/lib/Makefile#37 integrate
.. //depot/projects/ia64/lib/libc/posix1e/mac.c#6 integrate
.. //depot/projects/ia64/lib/libc/sys/read.2#5 integrate
.. //depot/projects/ia64/lib/libdisk/disk.c#20 integrate
.. //depot/projects/ia64/lib/libfetch/ftp.c#13 integrate
.. //depot/projects/ia64/lib/libmp/libmp.3#2 integrate
.. //depot/projects/ia64/lib/libncurses/Makefile#17 integrate
.. //depot/projects/ia64/lib/libpthread/thread/thr_concurrency.c#7 integrate
.. //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#32 integrate
.. //depot/projects/ia64/lib/libpthread/thread/thr_private.h#21 integrate
.. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml#26 integrate
.. //depot/projects/ia64/sbin/Makefile#31 integrate
.. //depot/projects/ia64/sbin/fsdb/fsdb.8#7 integrate
.. //depot/projects/ia64/share/man/man4/man4.i386/vx.4#2 integrate
.. //depot/projects/ia64/share/man/man5/make.conf.5#39 integrate
.. //depot/projects/ia64/sys/alpha/alpha/pmap.c#40 integrate
.. //depot/projects/ia64/sys/alpha/alpha/vm_machdep.c#26 integrate
.. //depot/projects/ia64/sys/amd64/acpica/OsdEnvironment.c#4 integrate
.. //depot/projects/ia64/sys/amd64/acpica/acpi_machdep.c#3 integrate
.. //depot/projects/ia64/sys/amd64/acpica/acpi_wakeup.c#3 integrate
.. //depot/projects/ia64/sys/amd64/amd64/vm_machdep.c#10 integrate
.. //depot/projects/ia64/sys/amd64/pci/pci_bus.c#4 integrate
.. //depot/projects/ia64/sys/conf/files#96 integrate
.. //depot/projects/ia64/sys/ddb/db_ps.c#22 integrate
.. //depot/projects/ia64/sys/dev/acpica/Osd/OsdHardware.c#10 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpi.c#37 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpi_cpu.c#9 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpi_lid.c#8 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpi_powerres.c#7 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpi_resource.c#9 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpi_thermal.c#11 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpi_timer.c#15 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpica_support.c#8 delete
.. //depot/projects/ia64/sys/dev/acpica/acpica_support.h#2 delete
.. //depot/projects/ia64/sys/dev/acpica/acpiio.h#4 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpivar.h#19 integrate
.. //depot/projects/ia64/sys/dev/ata/ata-lowlevel.c#4 integrate
.. //depot/projects/ia64/sys/dev/ata/ata-queue.c#3 integrate
.. //depot/projects/ia64/sys/dev/ep/if_ep.c#12 integrate
.. //depot/projects/ia64/sys/dev/ep/if_ep_isa.c#7 integrate
.. //depot/projects/ia64/sys/dev/ep/if_ep_pccard.c#10 integrate
.. //depot/projects/ia64/sys/dev/exca/exca.c#10 integrate
.. //depot/projects/ia64/sys/dev/firewire/sbp.c#42 integrate
.. //depot/projects/ia64/sys/dev/ichsmb/ichsmb_pci.c#7 integrate
.. //depot/projects/ia64/sys/dev/pccard/pccardvar.h#11 integrate
.. //depot/projects/ia64/sys/dev/pci/pci.c#29 integrate
.. //depot/projects/ia64/sys/dev/pci/pcireg.h#5 integrate
.. //depot/projects/ia64/sys/dev/puc/puc_pci.c#3 integrate
.. //depot/projects/ia64/sys/dev/sound/pci/es137x.c#7 integrate
.. //depot/projects/ia64/sys/dev/sound/pci/ich.c#18 integrate
.. //depot/projects/ia64/sys/dev/sound/pcm/ac97.c#21 integrate
.. //depot/projects/ia64/sys/geom/geom.h#35 integrate
.. //depot/projects/ia64/sys/geom/geom_dev.c#41 integrate
.. //depot/projects/ia64/sys/i386/acpica/OsdEnvironment.c#7 integrate
.. //depot/projects/ia64/sys/i386/acpica/acpi_machdep.c#11 integrate
.. //depot/projects/ia64/sys/i386/acpica/acpi_wakecode.S#3 integrate
.. //depot/projects/ia64/sys/i386/acpica/acpi_wakeup.c#19 integrate
.. //depot/projects/ia64/sys/i386/i386/vm_machdep.c#29 integrate
.. //depot/projects/ia64/sys/i386/pci/pci_bus.c#19 integrate
.. //depot/projects/ia64/sys/ia64/acpica/OsdEnvironment.c#7 integrate
.. //depot/projects/ia64/sys/ia64/acpica/acpi_machdep.c#2 integrate
.. //depot/projects/ia64/sys/ia64/acpica/acpi_wakeup.c#2 integrate
.. //depot/projects/ia64/sys/ia64/ia64/vm_machdep.c#35 integrate
.. //depot/projects/ia64/sys/kern/uipc_syscalls.c#39 integrate
.. //depot/projects/ia64/sys/kern/vfs_bio.c#57 integrate
.. //depot/projects/ia64/sys/kern/vfs_cluster.c#25 integrate
.. //depot/projects/ia64/sys/modules/Makefile#60 integrate
.. //depot/projects/ia64/sys/modules/acpi/Makefile#13 integrate
.. //depot/projects/ia64/sys/modules/pst/Makefile#1 branch
.. //depot/projects/ia64/sys/net/if_ethersubr.c#33 integrate
.. //depot/projects/ia64/sys/netatalk/aarp.c#8 integrate
.. //depot/projects/ia64/sys/netatalk/ddp_output.c#5 integrate
.. //depot/projects/ia64/sys/netinet/igmp.c#10 integrate
.. //depot/projects/ia64/sys/pc98/pc98/sio.c#26 integrate
.. //depot/projects/ia64/sys/pccard/i82365.h#6 integrate
.. //depot/projects/ia64/sys/pccard/pcic.c#15 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/vm_machdep.c#24 integrate
.. //depot/projects/ia64/sys/sparc64/sparc64/vm_machdep.c#29 integrate
.. //depot/projects/ia64/sys/sys/buf.h#25 integrate
.. //depot/projects/ia64/sys/sys/mac.h#19 integrate
.. //depot/projects/ia64/sys/ufs/ffs/ffs_softdep.c#28 integrate
.. //depot/projects/ia64/sys/vm/swap_pager.c#40 integrate
.. //depot/projects/ia64/sys/vm/vm_map.c#63 integrate
.. //depot/projects/ia64/sys/vm/vm_map.h#26 integrate
.. //depot/projects/ia64/sys/vm/vm_page.c#53 integrate
.. //depot/projects/ia64/sys/vm/vm_pageout.c#45 integrate
.. //depot/projects/ia64/sys/vm/vnode_pager.c#38 integrate
.. //depot/projects/ia64/usr.bin/Makefile#52 integrate
.. //depot/projects/ia64/usr.sbin/Makefile#49 integrate

Differences ...

==== //depot/projects/ia64/Makefile#32 (text+ko) ====

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/Makefile,v 1.288 2003/08/28 04:03:13 marcel Exp $
+# $FreeBSD: src/Makefile,v 1.289 2003/08/30 13:33:41 ru Exp $
 #
 # The user-driven targets are:
 #
@@ -69,6 +69,7 @@
 
 BITGTS=	files includes
 BITGTS:=${BITGTS} ${BITGTS:S/^/build/} ${BITGTS:S/^/install/}
+TGTS+=	${BITGTS}
 
 .ORDER: buildworld installworld
 .ORDER: buildworld distributeworld
@@ -93,7 +94,7 @@
 # for all targets.
 #
 .if defined(ALWAYS_CHECK_MAKE)
-${TGTS} ${BITGTS}: upgrade_checks
+${TGTS}: upgrade_checks
 .else
 buildworld: upgrade_checks
 .endif
@@ -102,7 +103,7 @@
 # Handle the user-driven targets, using the source relative mk files.
 #
 
-${TGTS} ${BITGTS}:
+${TGTS}:
 	@cd ${.CURDIR}; \
 		${_MAKE} ${.TARGET}
 

==== //depot/projects/ia64/Makefile.inc1#80 (text+ko) ====

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/Makefile.inc1,v 1.386 2003/08/27 04:49:43 imp Exp $
+# $FreeBSD: src/Makefile.inc1,v 1.388 2003/08/30 13:48:16 ru Exp $
 #
 # Make command line options:
 #	-DNO_KERBEROS Do not build Heimdal (Kerberos 5)
@@ -388,13 +388,6 @@
 		false; \
 	fi
 .endif
-.if ${TARGET_ARCH} == ${MACHINE_ARCH} && !defined(DISTDIR) && \
-    (!defined(DESTDIR) || empty(DESTDIR) || ${DESTDIR} == "/")
-	@echo "Checking to see if your booted kernel is fresh enough.."
-	@${.OBJDIR}/bin/sh/sh -c \
-	    'echo "Testing installed kernel for new sigaction(2) syscall"'
-	@echo "Seems ok.."
-.endif
 
 #
 # distributeworld
@@ -765,7 +758,7 @@
 
 .if (!defined(NO_RESCUE) || \
     defined(RELEASEDIR)) && \
-    ( ${TARGET_ARCH} != ${MACHINE_ARCH} || ${BOOTSTRAPPING} < 501101 )
+    (${TARGET_ARCH} != ${MACHINE_ARCH} || ${BOOTSTRAPPING} < 501101)
 _crunchide=	usr.sbin/crunch/crunchide
 .endif
 

==== //depot/projects/ia64/UPDATING#50 (text+ko) ====

@@ -17,6 +17,17 @@
 	developers choose to disable these features on build machines
 	to maximize performance.
 
+20030829:
+	The following rc.d scripts have been removed and should be
+	deleted from your installation: atm2.sh atm3.sh devdb
+	localdaemons network1 network2 network3. Depending on when
+	you last updated world and used mergemaster(8) you may or
+	may not have problems during the rc boot sequence. The simplest
+	solution is an 'rm -rf /etc/rc.d/*' and then 'mergemaster -i'.
+	The atm2.sh atm3.sh and devdb scripts were removed some time
+	ago, so depending on when you installed -CURRENT these scripts
+	may or may not exist on your system.
+
 20030824:
 	ATAng has been committed. You need to build world as sys/ata.h 
 	has changed, and userland atacontrol depends on it.
@@ -1345,4 +1356,4 @@
 Contact Warner Losh if you have any questions about your use of
 this document.
 
-$FreeBSD: src/UPDATING,v 1.264 2003/08/24 16:46:03 sos Exp $
+$FreeBSD: src/UPDATING,v 1.265 2003/08/29 13:25:08 mtm Exp $

==== //depot/projects/ia64/bin/sh/arith.h#3 (text+ko) ====

@@ -31,8 +31,9 @@
  * SUCH DAMAGE.
  *
  *	@(#)arith.h	1.1 (Berkeley) 5/4/95
- * $FreeBSD: src/bin/sh/arith.h,v 1.6 2002/02/02 06:50:45 imp Exp $
+ * $FreeBSD: src/bin/sh/arith.h,v 1.7 2003/08/30 12:31:44 schweikh Exp $
  */
 
+int arith_assign(char *, arith_t);
 int arith(char *);
 int expcmd(int , char **);

==== //depot/projects/ia64/bin/sh/arith.y#4 (text+ko) ====

@@ -1,5 +1,65 @@
-%token ARITH_NUM ARITH_LPAREN ARITH_RPAREN
+%{
+/*-
+ * Copyright (c) 1993
+ *	The Regents of the University of California.  All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Kenneth Almquist.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *	This product includes software developed by the University of
+ *	California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#ifndef lint
+#if 0
+static char sccsid[] = "@(#)arith.y	8.3 (Berkeley) 5/4/95";
+#endif
+#endif /* not lint */
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD: src/bin/sh/arith.y,v 1.15 2003/08/30 12:31:44 schweikh Exp $");
+
+#include <limits.h>
+#include "shell.h"
+#include "var.h"
+%}
+%union {
+	arith_t l_value;
+	char* s_value;
+}
+%token <l_value> ARITH_NUM ARITH_LPAREN ARITH_RPAREN
+%token <s_value> ARITH_VAR
 
+%type <l_value>	expr
+%right ARITH_ASSIGN
+%right ARITH_ADDASSIGN ARITH_SUBASSIGN
+%right ARITH_MULASSIGN ARITH_DIVASSIGN ARITH_REMASSIGN
+%right ARITH_RSHASSIGN ARITH_LSHASSIGN
+%right ARITH_BANDASSIGN ARITH_BXORASSIGN ARITH_BORASSIGN
 %left ARITH_OR
 %left ARITH_AND
 %left ARITH_BOR
@@ -18,7 +78,6 @@
 		}
 	;
 
-
 expr:	ARITH_LPAREN expr ARITH_RPAREN = { $$ = $2; }
 	| expr ARITH_OR expr	= { $$ = $1 ? $1 : $3 ? $3 : 0; }
 	| expr ARITH_AND expr	= { $$ = $1 ? ( $3 ? $3 : 0 ) : 0; }
@@ -51,57 +110,122 @@
 	| ARITH_SUB expr %prec ARITH_UNARYMINUS = { $$ = -($2); }
 	| ARITH_ADD expr %prec ARITH_UNARYPLUS = { $$ = $2; }
 	| ARITH_NUM
+	| ARITH_VAR 	{
+				char *p;
+				arith_t arith_val;
+				char *str_val;
+
+				if (lookupvar($1) == NULL)
+					setvarsafe($1, "0", 0);
+				str_val = lookupvar($1);
+				arith_val = strtoarith_t(str_val, &p, 0);
+				/*
+				 * Conversion is successful only in case
+				 * we've converted _all_ characters.
+				 */
+				if (*p != '\0')
+					yyerror("variable conversion error");
+				$$ = arith_val;
+			}
+	| ARITH_VAR ARITH_ASSIGN expr {
+						if (arith_assign($1, $3) != 1)
+							yyerror("variable assignment error");
+						$$ = $3;
+					}
+	| ARITH_VAR ARITH_ADDASSIGN expr {
+						arith_t value;
+
+						value = atoarith_t(lookupvar($1)) + $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
+	| ARITH_VAR ARITH_SUBASSIGN expr {
+						arith_t value;
+
+						value = atoarith_t(lookupvar($1)) - $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
+	| ARITH_VAR ARITH_MULASSIGN expr {
+						arith_t value;
+
+						value = atoarith_t(lookupvar($1)) * $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
+	| ARITH_VAR ARITH_DIVASSIGN expr {
+						arith_t value;
+
+						if ($3 == 0)
+							yyerror("division by zero");
+
+						value = atoarith_t(lookupvar($1)) / $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
+	| ARITH_VAR ARITH_REMASSIGN expr {
+						arith_t value;
+
+						if ($3 == 0)
+							yyerror("division by zero");
+
+						value = atoarith_t(lookupvar($1)) % $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
+	| ARITH_VAR ARITH_RSHASSIGN expr {
+						arith_t value;
+
+						value = atoarith_t(lookupvar($1)) >> $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
+	| ARITH_VAR ARITH_LSHASSIGN expr {
+						arith_t value;
+
+						value = atoarith_t(lookupvar($1)) << $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
+	| ARITH_VAR ARITH_BANDASSIGN expr {
+						arith_t value;
+
+						value = atoarith_t(lookupvar($1)) & $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
+	| ARITH_VAR ARITH_BXORASSIGN expr {
+						arith_t value;
+
+						value = atoarith_t(lookupvar($1)) ^ $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
+	| ARITH_VAR ARITH_BORASSIGN expr {
+						arith_t value;
+
+						value = atoarith_t(lookupvar($1)) | $3;
+						if (arith_assign($1, value) != 0)
+							yyerror("variable assignment error");
+						$$ = value;
+					}
 	;
 %%
-/*-
- * Copyright (c) 1993
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Kenneth Almquist.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *	This product includes software developed by the University of
- *	California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef lint
-#if 0
-static char sccsid[] = "@(#)arith.y	8.3 (Berkeley) 5/4/95";
-#endif
-#endif /* not lint */
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/sh/arith.y,v 1.14 2003/05/01 16:58:56 obrien Exp $");
-
-#include "shell.h"
 #include "error.h"
 #include "output.h"
 #include "memalloc.h"
 
+#define lstrlen(var) (3 + (2 + CHAR_BIT * sizeof((var))) / 3)
+
 char *arith_buf, *arith_startbuf;
 extern void arith_lex_reset();
 
@@ -109,6 +233,18 @@
 int yyparse(void);
 
 int
+arith_assign(char *name, arith_t value) {
+	char *str;
+	int ret;
+
+	str = (char *)ckmalloc(lstrlen(value));
+	sprintf(str, ARITH_FORMAT_STR, value);
+	ret = setvarsafe(name, str, 0);
+	free(str);
+	return ret;
+}
+
+int
 arith(char *s)
 {
 	long result;

==== //depot/projects/ia64/bin/sh/arith_lex.l#4 (text+ko) ====

@@ -41,12 +41,14 @@
 #endif
 #endif /* not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/sh/arith_lex.l,v 1.18 2003/05/01 16:58:56 obrien Exp $");
+__FBSDID("$FreeBSD: src/bin/sh/arith_lex.l,v 1.19 2003/08/30 12:31:44 schweikh Exp $");
 
+#include "shell.h"
 #include "y.tab.h"
 #include "error.h"
+#include "var.h"
+#include "memalloc.h"
 
-extern int yylval;
 extern char *arith_buf, *arith_startbuf;
 #undef YY_INPUT
 #define YY_INPUT(buf,result,max) \
@@ -56,7 +58,36 @@
 
 %%
 [ \t\n]	{ ; }
-[0-9]+	{ yylval = atol(yytext); return(ARITH_NUM); }
+
+0x[a-fA-F0-9]+	{
+		yylval.l_value = strtoarith_t(yytext, NULL, 16);
+		return(ARITH_NUM);
+		}
+
+0[0-7]+	{
+		yylval.l_value = strtoarith_t(yytext, NULL, 8);
+		return(ARITH_NUM);
+		}
+
+[0-9]+		{
+		yylval.l_value = strtoarith_t(yytext, NULL, 10);
+		return(ARITH_NUM);
+		}
+
+
+[A-Za-z][A-Za-z0-9_]*	{
+			/*
+			 * If variable doesn't exist, we should  initialize
+			 * it to zero.
+			 */
+			char *temp;
+			if (lookupvar(yytext) == NULL)
+				setvarsafe(yytext, "0", 0);
+			temp = (char *)ckmalloc(strlen(yytext) + 1);
+			yylval.s_value = strcpy(temp, yytext);
+
+			return(ARITH_VAR);
+		}
 "("	{ return(ARITH_LPAREN); }
 ")"	{ return(ARITH_RPAREN); }
 "||"	{ return(ARITH_OR); }
@@ -79,6 +110,17 @@
 "-"	{ return(ARITH_SUB); }
 "~"	{ return(ARITH_BNOT); }
 "!"	{ return(ARITH_NOT); }
+"="	{ return(ARITH_ASSIGN); }
+"+="	{ return(ARITH_ADDASSIGN); }
+"-="	{ return(ARITH_SUBASSIGN); }
+"*="	{ return(ARITH_MULASSIGN); }
+"/="	{ return(ARITH_DIVASSIGN); }
+"%="	{ return(ARITH_REMASSIGN); }
+">>="	{ return(ARITH_RSHASSIGN); }
+"<<="	{ return(ARITH_LSHASSIGN); }
+"&="	{ return(ARITH_BANDASSIGN); }
+"^="	{ return(ARITH_BXORASSIGN); }
+"|="	{ return(ARITH_BORASSIGN); }
 .	{ error("arith: syntax error: \"%s\"\n", arith_startbuf); }
 %%
 

==== //depot/projects/ia64/bin/sh/shell.h#4 (text+ko) ====

@@ -34,7 +34,7 @@
  * SUCH DAMAGE.
  *
  *	@(#)shell.h	8.2 (Berkeley) 5/4/95
- * $FreeBSD: src/bin/sh/shell.h,v 1.14 2002/07/19 08:09:04 tjr Exp $
+ * $FreeBSD: src/bin/sh/shell.h,v 1.15 2003/08/30 12:31:44 schweikh Exp $
  */
 
 /*
@@ -51,6 +51,14 @@
 #define JOBS 1
 /* #define DEBUG 1 */
 
+/*
+ * Type of used arithmetics. SUSv3 requires us to have at least signed long.
+ */
+typedef long arith_t;
+#define strtoarith_t(nptr, endptr, base)	strtol(nptr, endptr, base)
+#define atoarith_t(arg)				strtol(arg, NULL, 0)
+#define ARITH_FORMAT_STR					"%ld"
+
 typedef void *pointer;
 #define STATIC  static
 #define MKINIT	/* empty */

==== //depot/projects/ia64/contrib/gnu-sort/ABOUT-NLS#2 (text+ko) ====

@@ -171,190 +171,229 @@
 ==================
 
    Languages are not equally supported in all packages.  The following
-matrix shows the current state of internationalization, as of January
+matrix shows the current state of internationalization, as of July
 2002.  The matrix shows, in regard of each package, for which languages
 PO files have been submitted to translation coordination, with a
 translation percentage of at least 50%.
 
-     Ready PO files    bg ca cs da de el en eo es et fi fr
-                     +-------------------------------------+
-     a2ps            |          [] []             []    [] |
-     bash            |             []       [] []       [] |
-     bfd             |                         []       [] |
-     binutils        |                         []       [] |
-     bison           |             []             []    [] |
-     clisp           |             []    []    []       [] |
-     cpio            |          [] []          []       [] |
-     diffutils       |       [] [] []       [] []       [] |
-     enscript        |             []                   [] |
-     error           |                         []       [] |
-     fetchmail       |       () [] []          []       () |
-     fileutils       |          [] []          [] []    [] |
-     findutils       |          [] []          [] []    [] |
-     flex            |          []             []       [] |
-     gas             |                                  [] |
-     gawk            |                         []       [] |
-     gcal            |    []                            [] |
-     gcc             |                         []       [] |
-     gettext         |    []    [] []          []       [] |
-     gnupg           |             [] []    [] [] []    [] |
-     gprof           |                         []       [] |
-     grep            |       []    []       [] [] []    [] |
-     hello           |          [] [] []    [] [] [] [] [] |
-     id-utils        |          [] []                   [] |
-     indent          |             []       []    []    [] |
-     jpilot          |       () [] []                   [] |
-     jwhois          |                         []       [] |
-     kbd             |                                  [] |
-     ld              |                         []       [] |
-     libc            |    [] [] [] [] []       []       [] |
-     lilypond        |          []                      [] |
-     lynx            |       [] [] []             []       |
-     m4              |       [] [] [] []                [] |
-     make            |          [] []          []       [] |
-     mysecretdiary   |             []                   [] |
-     nano            |    [] () [] []          []       [] |
-     nano_1_0        |    [] () [] []          []       [] |
-     opcodes         |          []             []       [] |
-     parted          |    []    [] []                   [] |
-     ptx             |          [] []          [] []    [] |
-     python          |                                     |
-     recode          |          [] [] []    [] []       [] |
-     sed             |       [] [] [] []    [] [] []    [] |
-     sh-utils        |    [] [] [] [] []       [] []    [] |
-     sharutils       |       [] [] [] []       []       [] |
-     sketch          |             ()          []       () |
-     soundtracker    |             []          []       [] |
-     sp              |                                     |
-     tar             |       [] [] []          [] []    [] |
-     texinfo         |       [] [] []       []          [] |
-     textutils       |          [] []          []       [] |
-     util-linux      |       [] []             []       [] |
-     wdiff           |          [] []          [] []    [] |
-     wget            |    [] [] [] [] []       [] []    [] |
-                     +-------------------------------------+
-                       bg ca cs da de el en eo es et fi fr
-                        0  8 12 31 36  9  1  9 37 15  1 49
+     Ready PO files    be bg ca cs da de el en eo es et fi fr
+                     +----------------------------------------+
+     a2ps            |             [] []             []    [] |
+     bash            |                []       [] []       [] |
+     bfd             |                            []       [] |
+     binutils        |                            []       [] |
+     bison           |                []          [] []    [] |
+     clisp           |                []    []    []       [] |
+     clisp           |                                        |
+     clisplow        |                                        |
+     cpio            |             [] []          []       [] |
+     darkstat        |             ()                         |
+     diffutils       |          [] [] []       [] []       [] |
+     enscript        |                []                   [] |
+     error           |                []          []       [] |
+     fetchmail       |       [] () [] []          []       () |
+     fileutils       |             [] []          [] []    [] |
+     findutils       |             [] []       [] [] []    [] |
+     flex            |       []    [] []          []       [] |
+     gas             |                            []       [] |
+     gawk            |                []          []       [] |
+     gcal            |       []                            [] |
+     gcc             |                            []       [] |
+     gettext         |       []    [] []          []       [] |
+     gnupg           |       []       [] []    [] [] []    [] |
+     gprof           |                            []       [] |
+     gpsdrive        |             () ()    ()    ()       () |
+     grep            |    [] []       [] []       [] []    [] |
+     gretl           |                            []          |
+     gthumb          |                ()          ()       () |
+     hello           |       []    [] [] []    [] [] [] [] [] |
+     id-utils        |             [] []                   [] |
+     indent          |       []       []       []    []    [] |
+     jpilot          |          () [] []                   [] |
+     jwhois          |                            []       [] |
+     kbd             |                []          []       [] |
+     ld              |                            []       [] |
+     libc            |       [] [] [] [] []       []       [] |
+     libiconv        |       []       []       [] []          |
+     lifelines       |                ()                   () |
+     lilypond        |             []             []       [] |
+     lingoteach      |                         []          [] |
+     lingoteach_lessons|                ()          ()          |
+     lynx            |       [] [] [] []             []       |
+     m4              |          [] [] [] []                [] |
+     make            |             [] []          []       [] |
+     man-db          |       [] () () []          ()       () |
+     mysecretdiary   |                []          []       [] |
+     nano            |       [] () [] []          []       [] |
+     nano_1_0        |       [] () [] []          []       [] |
+     opcodes         |             []             []       [] |
+     parted          |       []    [] []          []       [] |
+     ptx             |             [] []       [] [] [] [] [] |
+     python          |                                        |
+     recode          |             [] [] []    [] []       [] |
+     sed             |       [] [] [] [] []    [] [] []    [] |
+     sh-utils        |                []          [] []    [] |
+     sharutils       |          [] [] [] []       []       [] |
+     sketch          |                ()          []       () |
+     soundtracker    |                []          []       [] |
+     sp              |                []                      |
+     tar             |          [] [] []          [] []    [] |
+     texinfo         |          [] [] []       []          [] |
+     textutils       |       []    [] []          []       [] |
+     util-linux      |          [] [] []          [] []    [] |
+     vorbis-tools    |                                     [] |
+     wastesedge      |                                        |
+     wdiff           |       []    [] []          [] []    [] |
+     wget            |    [] [] [] [] [] []       [] [] [] [] |
+                     +----------------------------------------+
+                       be bg ca cs da de el en eo es et fi fr
+                        0  2 19 10 30 44  9  1 12 45 16  3 53
      
                        gl he hr hu id it ja ko lv nb nl nn
                      +-------------------------------------+
      a2ps            |                ()    ()       []    |
-     bash            |                                     |
+     bash            |          []                         |
      bfd             |                   []                |
      binutils        |                   []                |
-     bison           |                   []                |
+     bison           |       []       [] []          []    |
      clisp           |                               []    |
-     cpio            | []                   []       []    |
-     diffutils       | [] []                               |
-     enscript        |                               []    |
+     clisp           |                                     |
+     clisplow        |                                     |
+     cpio            | []       []          []       []    |
+     darkstat        |       ()                            |
+     diffutils       | [] []    [] []    []                |
+     enscript        |       []                      []    |
      error           |          []                         |
-     fetchmail       |                                     |
-     fileutils       |                [] []                |
-     findutils       | []          [] [] [] []       []    |
+     fetchmail       |                   []                |
+     fileutils       |          []    [] []                |
+     findutils       | []    [] [] [] [] [] []       []    |
      flex            |                      []             |
      gas             |                                     |
      gawk            |    []                               |
      gcal            |                                     |
      gcc             |                   []                |
-     gettext         |                      []             |
-     gnupg           | []             [] []                |
+     gettext         |                   [] []             |
+     gnupg           | []          [] [] []                |
      gprof           |                                     |
-     grep            | []             []                   |
-     hello           | []       []    [] [] [] [] [] [] [] |
-     id-utils        |                               []    |
-     indent          | []                []          []    |
+     gpsdrive        |          []    ()             ()    |
+     grep            | [] [] [] [] [] [] []                |
+     gretl           |                                     |
+     gthumb          |                () ()                |
+     hello           | [] [] [] [] [] [] [] [] [] [] [] [] |
+     id-utils        |          []                   []    |
+     indent          | []       []       []          []    |
      jpilot          |                   ()          ()    |
-     jwhois          |                                     |
+     jwhois          |          [] []                      |
      kbd             |                                     |
      ld              |                                     |
      libc            | []                [] []    []       |
+     libiconv        | []    [] []                         |
+     lifelines       |                                     |
      lilypond        |                   []          []    |
-     lynx            |                   []          []    |
+     lingoteach      |          []                         |
+     lingoteach_lessons|                                     |
+     lynx            |          []    [] []          []    |
      m4              | []          []    []          []    |
-     make            | []                [] []       []    |
-     mysecretdiary   |                                     |
-     nano            | []          [] [] ()          () [] |
-     nano_1_0        | []          [] [] ()          () [] |
-     opcodes         |                                     |
+     make            | [] [] []          [] []       []    |
+     man-db          |                () ()                |
+     mysecretdiary   |             []                      |
+     nano            | []          [] []          [] [] [] |
+     nano_1_0        | []          [] []          []    [] |
+     opcodes         |             []                []    |
      parted          | []                []             [] |
-     ptx             | []          []             [] []    |
+     ptx             | []       [] []             [] []    |
      python          |                                     |
      recode          | [] []          []                   |
-     sed             | [] []       [] [] [] []       []    |
-     sh-utils        | []             [] []       [] []    |
+     sed             | [] [] []    [] [] [] []       []    |
+     sh-utils        |                [] []       []       |
      sharutils       | []                []          []    |
      sketch          |                ()                   |
-     soundtracker    | []                                  |
+     soundtracker    | []    []                            |
      sp              |                                     |
-     tar             |                [] []       []       |
+     tar             | []    []       [] []       []       |
      texinfo         |    [] []          []                |
-     textutils       |                      []    []       |
+     textutils       | []                   []    []       |
      util-linux      |                () []                |
-     wdiff           |                                     |
-     wget            | [] []    []       []          []    |
+     vorbis-tools    |                                     |
+     wastesedge      |                                     |
+     wdiff           | []       [] []                      |
+     wget            | [] [] [] []       []          []    |
                      +-------------------------------------+
                        gl he hr hu id it ja ko lv nb nl nn
-                       20  6  1  3  6 11 22  9  1  6 17  4
+                       23  9 12 18 14 13 26  9  1  8 19  4
      
-                       no pl pt pt_BR ru sk sl sv tr uk zh
-                     +-------------------------------------+
-     a2ps            | () () ()       []    [] [] ()       |  8
-     bash            |                                     |  4
-     bfd             |                         [] []       |  5
-     binutils        |                            []       |  4
-     bison           |                []       [] []       |  7
-     clisp           |                                     |  5
-     cpio            |    []     []   []       []          | 11
-     diffutils       |                []       [] []       | 11
-     enscript        |           []   []       []          |  6
-     error           |                   []       []       |  5
-     fetchmail       |    ()     ()                        |  3
-     fileutils       |                []    [] [] []       | 11
-     findutils       |    []     []   []    [] [] []       | 17
-     flex            |                []       []          |  6
-     gas             |                            []       |  2
-     gawk            |                         [] []       |  5
-     gcal            |                         []          |  3
-     gcc             |                            []       |  4
-     gettext         |                   [] [] [] []       | 10
-     gnupg           |    []                   [] []       | 12
-     gprof           |                         [] []       |  4
-     grep            |    []          []    [] [] []       | 13
-     hello           | [] []          [] []    [] [] []    | 24
-     id-utils        |                []       []          |  6
-     indent          |                [] []    [] []       | 11
-     jpilot          | ()                      ()          |  3
-     jwhois          |                ()       ()          |  2
-     kbd             |                         [] []       |  3
-     ld              |                         [] []       |  4
-     libc            | [] []     []      []    [] []       | 17
-     lilypond        |                         []          |  5
-     lynx            |           []   []       []          |  9
-     m4              |    []          []       []          | 12
-     make            |    []     []   []          []       | 12
-     mysecretdiary   |                         []          |  3
-     nano            | ()             []       []    []    | 12
-     nano_1_0        | ()             []       []    []    | 12
-     opcodes         |                         [] []       |  5
-     parted          |       []  []            []          | 10
-     ptx             | [] [] []       []       [] []       | 15
-     python          |                                     |  0
-     recode          |    []          []    [] []          | 13
-     sed             |           []   [] [] [] [] []       | 21
-     sh-utils        | [] []     []   [] [] [] [] []    [] | 22
-     sharutils       |                []       []          | 11
-     sketch          |                ()                   |  1
-     soundtracker    |                                     |  4
-     sp              |                                     |  0
-     tar             | [] []     []      [] [] [] []       | 16
-     texinfo         |                []       []          | 10
-     textutils       |                      []    []       |  8
-     util-linux      |           []            [] []       |  8
-     wdiff           |                [] []    [] []       |  9
-     wget            |                [] [] [] [] [] []    | 19
-                     +-------------------------------------+
-       35 teams        no pl pt pt_BR ru sk sl sv tr uk zh
-       54 domains       5 12  2  11   25 10 11 39 29  4  1  463
+                       no pl pt pt_BR ru sk sl sv tr uk zh_TW
+                     +----------------------------------------+
+     a2ps            | () () ()  []   []    [] [] []          | 10
+     bash            |           []                           |  6
+     bfd             |                         [] []          |  5
+     binutils        |                         [] []          |  5
+     bison           |                []       [] []          | 11
+     clisp           |                                        |  5
+     clisp           |                                        |  0
+     clisplow        |                                        |  0
+     cpio            |    []     []   []       []             | 12
+     darkstat        |           []                      ()   |  1
+     diffutils       |    []     []   []       [] []     []   | 17
+     enscript        |           []   []       [] []          |  8
+     error           |                   []       []     []   |  7
+     fetchmail       |    ()     ()               []          |  6
+     fileutils       |                []    [] [] []     []   | 13
+     findutils       |    []     []   [] [] [] [] []          | 21
+     flex            |                []       [] []          |  9
+     gas             |                            []          |  3
+     gawk            |                         [] []          |  6
+     gcal            |                         [] []          |  4
+     gcc             |                            []          |  4
+     gettext         |                [] [] [] [] []     []   | 13
+     gnupg           |    []                   [] []          | 14
+     gprof           |                         [] []          |  4
+     gpsdrive        |                   []    [] ()          |  3
+     grep            |    []          []    []    []          | 18
+     gretl           |                                        |  1
+     gthumb          |           ()   ()       []             |  1
+     hello           | [] []          [] []    [] [] []       | 28
+     id-utils        |           []   []       [] []          |  9
+     indent          |           []   [] []    [] []          | 14
+     jpilot          | ()                      () []          |  4
+     jwhois          |           []   ()       () []     []   |  7
+     kbd             |                         [] []          |  5
+     ld              |                         [] []          |  4
+     libc            | [] []     []      []    [] []          | 17
+     libiconv        |           []      []    [] []          | 11
+     lifelines       |                         []             |  1
+     lilypond        |                         []             |  6
+     lingoteach      |           []            []             |  5
+     lingoteach_lessons|                                        |  0
+     lynx            |           []   []       [] []          | 13
+     m4              |    []          []       []             | 12
+     make            |    []     []   []          []          | 14
+     man-db          |                                        |  3
+     mysecretdiary   |           []            [] []          |  7
+     nano            |    []          []       []    []       | 15
+     nano_1_0        |    []          []       []    []       | 14
+     opcodes         |                         [] []          |  7
+     parted          |       []  []            []             | 11
+     ptx             | [] [] []  []   []       [] []          | 19
+     python          |                                        |  0
+     recode          |    []     []   []    [] [] []          | 15
+     sed             |           []   [] [] [] [] []          | 23
+     sh-utils        |                            []          |  8
+     sharutils       |                []       [] []     []   | 13
+     sketch          |           []   ()       []             |  4
+     soundtracker    |                         []             |  6
+     sp              |                                        |  1
+     tar             | [] []     []      [] [] [] []          | 18
+     texinfo         |                []       []             | 10
+     textutils       |                []    [] [] []     []   | 13
+     util-linux      |           []            [] []          | 10
+     vorbis-tools    |                         []             |  2
+     wastesedge      |                                        |  0
+     wdiff           |           []   [] []    [] []          | 14
+     wget            |    []          [] [] [] [] [] []  []   | 24
+                     +----------------------------------------+
+       36 teams        no pl pt pt_BR ru sk sl sv tr uk zh_TW
+       67 domains       4 15  2  24   26 12 10 47 42  4   8    594
 
    Some counters in the preceding matrix are higher than the number of
 visible blocks let us expect.  This is because a few extra PO files are
@@ -367,7 +406,7 @@
 lag between the mere existence a PO file and its wide availability in a
 distribution.
 
-   If January 2002 seems to be old, you may fetch a more recent copy of
+   If July 2002 seems to be old, you may fetch a more recent copy of
 this `ABOUT-NLS' file on most GNU archive sites.  The most up-to-date
 matrix with full percentage details can be found at
 `http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.


>>> TRUNCATED FOR MAIL (1000 lines) <<<



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200308310641.h7V6fuYt011912>