From owner-p4-projects@FreeBSD.ORG Tue Mar 1 04:45:46 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0EF2216A4D0; Tue, 1 Mar 2005 04:45:46 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C585316A4CE for ; Tue, 1 Mar 2005 04:45:45 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 05DBF43D1F for ; Tue, 1 Mar 2005 04:45:45 +0000 (GMT) (envelope-from davidxu@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j214jiV8099210 for ; Tue, 1 Mar 2005 04:45:45 GMT (envelope-from davidxu@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j214jiq8099207 for perforce@freebsd.org; Tue, 1 Mar 2005 04:45:44 GMT (envelope-from davidxu@freebsd.org) Date: Tue, 1 Mar 2005 04:45:44 GMT Message-Id: <200503010445.j214jiq8099207@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to davidxu@freebsd.org using -f From: David Xu To: Perforce Change Reviews Subject: PERFORCE change 72176 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Mar 2005 04:45:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=72176 Change 72176 by davidxu@davidxu_celeron on 2005/03/01 04:45:15 IFC Affected files ... .. //depot/projects/davidxu_thread/src/Makefile#6 integrate .. //depot/projects/davidxu_thread/src/Makefile.inc1#8 integrate .. //depot/projects/davidxu_thread/src/bin/csh/config.h#3 integrate .. //depot/projects/davidxu_thread/src/etc/mtree/BSD.include.dist#4 integrate .. //depot/projects/davidxu_thread/src/include/Makefile#4 integrate .. //depot/projects/davidxu_thread/src/include/nl_types.h#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/compat-43/getwd.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/big5.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/collate.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/collate.h#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/collcmp.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/euc.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/gb18030.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/gb2312.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/gbk.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/mblocal.h#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/mskanji.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/none.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/runetype.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/setrunelocale.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/table.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/locale/utf8.c#3 integrate .. //depot/projects/davidxu_thread/src/lib/libc/nls/C.msg#1 branch .. //depot/projects/davidxu_thread/src/lib/libc/nls/Makefile.inc#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/nls/catclose.3#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/nls/catgets.3#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/nls/catopen.3#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/nls/msgcat.c#3 integrate .. //depot/projects/davidxu_thread/src/lib/libc/nls/msgcat.h#3 delete .. //depot/projects/davidxu_thread/src/lib/libc/nls/ru_RU.KOI8-R.msg#1 branch .. //depot/projects/davidxu_thread/src/lib/libc/stdlib/malloc.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/string/strerror.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libc/string/strsignal.c#2 integrate .. //depot/projects/davidxu_thread/src/lib/libutil/login.conf.5#3 integrate .. //depot/projects/davidxu_thread/src/libexec/rtld-elf/map_object.c#2 integrate .. //depot/projects/davidxu_thread/src/libexec/rtld-elf/rtld.c#3 integrate .. //depot/projects/davidxu_thread/src/libexec/rtld-elf/rtld.h#2 integrate .. //depot/projects/davidxu_thread/src/sbin/devfs/devfs.8#2 integrate .. //depot/projects/davidxu_thread/src/sbin/devfs/rule.c#2 integrate .. //depot/projects/davidxu_thread/src/sbin/geom/class/concat/geom_concat.c#3 integrate .. //depot/projects/davidxu_thread/src/sbin/geom/class/label/geom_label.c#3 integrate .. //depot/projects/davidxu_thread/src/sbin/geom/class/mirror/geom_mirror.c#4 integrate .. //depot/projects/davidxu_thread/src/sbin/geom/class/raid3/geom_raid3.c#3 integrate .. //depot/projects/davidxu_thread/src/sbin/geom/class/shsec/geom_shsec.c#3 integrate .. //depot/projects/davidxu_thread/src/sbin/geom/class/shsec/gshsec.8#3 integrate .. //depot/projects/davidxu_thread/src/sbin/geom/class/stripe/geom_stripe.c#3 integrate .. //depot/projects/davidxu_thread/src/sbin/geom/core/geom.8#4 integrate .. //depot/projects/davidxu_thread/src/sbin/geom/core/geom.c#3 integrate .. //depot/projects/davidxu_thread/src/share/man/man4/twa.4#2 integrate .. //depot/projects/davidxu_thread/src/share/man/man4/twe.4#3 integrate .. //depot/projects/davidxu_thread/src/share/man/man9/namei.9#2 integrate .. //depot/projects/davidxu_thread/src/share/mk/bsd.info.mk#4 integrate .. //depot/projects/davidxu_thread/src/share/mk/bsd.nls.mk#2 integrate .. //depot/projects/davidxu_thread/src/sys/amd64/amd64/mp_watchdog.c#2 integrate .. //depot/projects/davidxu_thread/src/sys/amd64/conf/NOTES#4 integrate .. //depot/projects/davidxu_thread/src/sys/conf/files#6 integrate .. //depot/projects/davidxu_thread/src/sys/conf/majors#3 integrate .. //depot/projects/davidxu_thread/src/sys/contrib/dev/hptmv/i386-elf.raid.o.uu#2 integrate .. //depot/projects/davidxu_thread/src/sys/contrib/ipfilter/netinet/mlfk_ipl.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/acpica/acpi_pcibvar.h#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/acpica/acpiio.h#2 integrate .. //depot/projects/davidxu_thread/src/sys/dev/acpica/acpivar.h#5 integrate .. //depot/projects/davidxu_thread/src/sys/dev/ata/atapi-tape.c#2 integrate .. //depot/projects/davidxu_thread/src/sys/dev/cardbus/cardbus.c#4 integrate .. //depot/projects/davidxu_thread/src/sys/dev/cp/if_cp.c#5 integrate .. //depot/projects/davidxu_thread/src/sys/dev/ctau/if_ct.c#5 integrate .. //depot/projects/davidxu_thread/src/sys/dev/fdc/fdc.c#5 integrate .. //depot/projects/davidxu_thread/src/sys/dev/fxp/if_fxp.c#5 integrate .. //depot/projects/davidxu_thread/src/sys/dev/null/null.c#2 integrate .. //depot/projects/davidxu_thread/src/sys/dev/pci/pci.c#5 integrate .. //depot/projects/davidxu_thread/src/sys/dev/pci/pci_private.h#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/pci/pci_user.c#2 integrate .. //depot/projects/davidxu_thread/src/sys/dev/sound/isa/mss.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/sound/pcm/dsp.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/sound/pcm/mixer.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/sound/pcm/sndstat.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/sound/pcm/sound.h#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/syscons/syscons.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/syscons/sysmouse.c#2 integrate .. //depot/projects/davidxu_thread/src/sys/dev/tga/tga_pci.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/dev/zs/zs_sbus.c#2 delete .. //depot/projects/davidxu_thread/src/sys/fs/msdosfs/msdosfs_vnops.c#4 integrate .. //depot/projects/davidxu_thread/src/sys/geom/concat/g_concat.c#2 integrate .. //depot/projects/davidxu_thread/src/sys/geom/concat/g_concat.h#2 integrate .. //depot/projects/davidxu_thread/src/sys/geom/label/g_label.c#2 integrate .. //depot/projects/davidxu_thread/src/sys/geom/label/g_label.h#2 integrate .. //depot/projects/davidxu_thread/src/sys/geom/mirror/g_mirror.c#5 integrate .. //depot/projects/davidxu_thread/src/sys/geom/mirror/g_mirror.h#5 integrate .. //depot/projects/davidxu_thread/src/sys/geom/raid3/g_raid3.c#7 integrate .. //depot/projects/davidxu_thread/src/sys/geom/raid3/g_raid3.h#4 integrate .. //depot/projects/davidxu_thread/src/sys/geom/shsec/g_shsec.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/geom/shsec/g_shsec.h#3 integrate .. //depot/projects/davidxu_thread/src/sys/geom/stripe/g_stripe.c#4 integrate .. //depot/projects/davidxu_thread/src/sys/geom/stripe/g_stripe.h#3 integrate .. //depot/projects/davidxu_thread/src/sys/gnu/ext2fs/ext2_alloc.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/gnu/ext2fs/ext2_vnops.c#5 integrate .. //depot/projects/davidxu_thread/src/sys/i386/conf/NOTES#5 integrate .. //depot/projects/davidxu_thread/src/sys/i386/i386/mp_watchdog.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/isa/vga_isa.c#2 integrate .. //depot/projects/davidxu_thread/src/sys/kern/kern_conf.c#4 integrate .. //depot/projects/davidxu_thread/src/sys/kern/subr_bus.c#5 integrate .. //depot/projects/davidxu_thread/src/sys/kern/subr_log.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/kern/tty_cons.c#4 integrate .. //depot/projects/davidxu_thread/src/sys/kern/tty_pty.c#4 integrate .. //depot/projects/davidxu_thread/src/sys/kern/tty_tty.c#2 integrate .. //depot/projects/davidxu_thread/src/sys/netinet/tcp_sack.c#4 integrate .. //depot/projects/davidxu_thread/src/sys/netinet6/icmp6.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/netinet6/ip6_output.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/opencrypto/cryptodev.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/pc98/pc98/pc98gdc.c#3 integrate .. //depot/projects/davidxu_thread/src/sys/pci/agp_ali.c#4 integrate .. //depot/projects/davidxu_thread/src/sys/powerpc/powerpc/machdep.c#5 integrate .. //depot/projects/davidxu_thread/src/sys/sparc64/conf/GENERIC#3 integrate .. //depot/projects/davidxu_thread/src/sys/sparc64/conf/NOTES#3 integrate .. //depot/projects/davidxu_thread/src/sys/sys/param.h#5 integrate .. //depot/projects/davidxu_thread/src/sys/ufs/ufs/ufs_vnops.c#5 integrate .. //depot/projects/davidxu_thread/src/tools/build/Makefile#3 integrate .. //depot/projects/davidxu_thread/src/usr.bin/calendar/calendars/calendar.freebsd#6 integrate .. //depot/projects/davidxu_thread/src/usr.bin/colldef/parse.y#2 integrate .. //depot/projects/davidxu_thread/src/usr.bin/ee/nls/pl_PL.ISO8859-2/ee.msg#2 integrate .. //depot/projects/davidxu_thread/src/usr.bin/gencat/Makefile#2 integrate .. //depot/projects/davidxu_thread/src/usr.bin/gencat/gencat.c#3 integrate .. //depot/projects/davidxu_thread/src/usr.bin/gencat/gencat.h#2 delete .. //depot/projects/davidxu_thread/src/usr.bin/gencat/genlib.c#2 delete .. //depot/projects/davidxu_thread/src/usr.sbin/jail/jail.8#3 integrate .. //depot/projects/davidxu_thread/src/usr.sbin/powerd/powerd.8#2 integrate Differences ... ==== //depot/projects/davidxu_thread/src/Makefile#6 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.316 2005/02/26 22:02:18 ru Exp $ +# $FreeBSD: src/Makefile,v 1.317 2005/02/27 12:11:34 ru Exp $ # # The user-driven targets are: # @@ -63,7 +63,8 @@ # completely subject to change without notice. # TGTS= all all-man buildenv buildkernel buildworld checkdpadd clean \ - cleandepend cleandir depend distribute distributeworld everything \ + cleandepend cleandir depend distribute distributeworld \ + distribution everything \ hierarchy install installcheck installkernel installkernel.debug\ reinstallkernel reinstallkernel.debug installworld \ kernel-toolchain libraries lint maninstall \ ==== //depot/projects/davidxu_thread/src/Makefile.inc1#8 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.479 2005/02/27 11:22:57 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.484 2005/02/27 20:31:12 ru Exp $ # # Make command line options: # -DNO_DYNAMICROOT do not link /bin and /sbin dynamically @@ -546,6 +546,9 @@ @echo "--------------------------------------------------------------" ${_+_}cd ${.CURDIR}; ${MAKE} -f Makefile.inc1 distribute +distribution: + cd ${.CURDIR}/etc; ${CROSSENV} PATH=${TMPPATH} ${MAKE} distribution + # # buildkernel and installkernel # @@ -591,7 +594,7 @@ # buildkernel: .if empty(BUILDKERNELS) - @echo "ERROR: Missing kernel configuration file(s) (${KERNCONF})."; + @echo "ERROR: Missing kernel configuration file(s) (${KERNCONF})."; \ false .endif .if defined(KERNWARN) @@ -673,7 +676,7 @@ installkernel installkernel.debug \ reinstallkernel reinstallkernel.debug: ${SPECIAL_INSTALLCHECKS} .if empty(INSTALLKERNEL) - @echo "ERROR: No kernel \"${KERNCONF}\" to install." + @echo "ERROR: No kernel \"${KERNCONF}\" to install."; \ false .endif @echo "--------------------------------------------------------------" @@ -738,6 +741,10 @@ # legacy: Build compatibility shims for the next three targets # legacy: +.if ${BOOTSTRAPPING} < 503000 + @echo "ERROR: Source upgrades from versions prior to 5.3 not supported."; \ + false +.endif .for _tool in tools/build ${_+_}@${ECHODIR} "===> ${_tool} (obj,includes,depend,all,install)"; \ cd ${.CURDIR}/${_tool}; \ @@ -768,6 +775,14 @@ _cap_mkdb= usr.bin/cap_mkdb .endif +.if ${BOOTSTRAPPING} < 600018 +_colldef= usr.bin/colldef +.endif + +.if ${BOOTSTRAPPING} < 600017 +_gencat= usr.bin/gencat +.endif + .if ${BOOTSTRAPPING} < 600016 _mklocale= usr.bin/mklocale .endif @@ -784,7 +799,8 @@ ${_groff} \ gnu/usr.bin/texinfo \ ${_cap_mkdb} \ - usr.bin/colldef \ + ${_colldef} \ + ${_gencat} \ usr.bin/lorder \ usr.bin/makewhatis \ ${_mklocale} \ ==== //depot/projects/davidxu_thread/src/bin/csh/config.h#3 (text+ko) ==== @@ -7,7 +7,7 @@ * Edit this to match your system type. */ -/* $FreeBSD: src/bin/csh/config.h,v 1.9 2005/02/01 08:48:15 phantom Exp $ */ +/* $FreeBSD: src/bin/csh/config.h,v 1.10 2005/02/27 18:18:32 phantom Exp $ */ #ifndef _h_config #define _h_config @@ -130,7 +130,7 @@ /* we want to use the system malloc when we install as /bin/csh */ #define SYSMALLOC #define BSD_STYLE_COLORLS -/* Use LC_MESSAGES locale category used to open the message catalog */ +/* Use LC_MESSAGES locale category to open the message catalog */ #define MCLoadBySet NL_CAT_LOCALE #endif ==== //depot/projects/davidxu_thread/src/etc/mtree/BSD.include.dist#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.include.dist,v 1.97 2005/02/06 15:17:21 phk Exp $ +# $FreeBSD: src/etc/mtree/BSD.include.dist,v 1.98 2005/02/28 02:20:03 njl Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -30,6 +30,8 @@ crypto .. dev + acpica + .. an .. bktr ==== //depot/projects/davidxu_thread/src/include/Makefile#4 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 1/4/94 -# $FreeBSD: src/include/Makefile,v 1.233 2005/02/26 21:47:54 ru Exp $ +# $FreeBSD: src/include/Makefile,v 1.234 2005/02/28 02:20:03 njl Exp $ # # Doing a "make install" builds /usr/include. @@ -36,7 +36,8 @@ pccard posix4 sys vm LSUBDIRS= cam/scsi \ - dev/an dev/bktr dev/firewire dev/ic dev/iicbus ${_dev_ieee488} dev/ofw \ + dev/acpica dev/an dev/bktr dev/firewire \ + dev/ic dev/iicbus ${_dev_ieee488} dev/ofw \ dev/pbio dev/ppbus dev/smbus dev/usb dev/wi dev/utopia \ fs/devfs fs/fdescfs fs/fifofs fs/msdosfs fs/ntfs fs/nullfs \ fs/nwfs fs/portalfs fs/procfs fs/smbfs fs/udf fs/umapfs \ ==== //depot/projects/davidxu_thread/src/include/nl_types.h#2 (text+ko) ==== @@ -1,46 +1,94 @@ +/* $NetBSD: nl_types.h,v 1.9 2000/10/03 19:53:32 sommerfeld Exp $ */ + /*- - * Copyright 1990, by Alfalfa Software Incorporated, Cambridge, Massachusetts. + * Copyright (c) 1996 The NetBSD Foundation, Inc. + * All rights reserved. * - * All Rights Reserved + * This code is derived from software contributed to The NetBSD Foundation + * by J.T. Conklin. * - * Permission to use, copy, modify, and distribute this software and its - * documentation for any purpose and without fee is hereby granted, - * provided that the above copyright notice appear in all copies and that - * both that copyright notice and this permission notice appear in - * supporting documentation, and that Alfalfa's name not be used in - * advertising or publicity pertaining to distribution of the software - * without specific, written prior permission. + * 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 NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. * - * ALPHALPHA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING - * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL - * ALPHALPHA BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR - * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, - * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, - * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS - * SOFTWARE. + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. 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 FOUNDATION 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. * - * If you make any modifications, bugfixes or other changes to this software - * we'd appreciate it if you could send a copy to us so we can keep things - * up-to-date. Many thanks. - * Kee Hinckley - * Alfalfa Software, Inc. - * 267 Allston St., #3 - * Cambridge, MA 02139 USA - * nazgul@alfalfa.com - * - * $FreeBSD: src/include/nl_types.h,v 1.10 2002/09/24 17:28:12 mike Exp $ + * $FreeBSD: src/include/nl_types.h,v 1.11 2005/02/27 16:20:53 phantom Exp $ */ #ifndef _NL_TYPES_H_ #define _NL_TYPES_H_ #include -#include +#include + +#ifdef _NLS_PRIVATE +/* + * MESSAGE CATALOG FILE FORMAT. + * + * The NetBSD/FreeBSD message catalog format is similar to the format used by + * Svr4 systems. The differences are: + * * fixed byte order (big endian) + * * fixed data field sizes + * + * A message catalog contains four data types: a catalog header, one + * or more set headers, one or more message headers, and one or more + * text strings. + */ + +#define _NLS_MAGIC 0xff88ff89 + +struct _nls_cat_hdr { + int32_t __magic; + int32_t __nsets; + int32_t __mem; + int32_t __msg_hdr_offset; + int32_t __msg_txt_offset; +} ; + +struct _nls_set_hdr { + int32_t __setno; /* set number: 0 < x <= NL_SETMAX */ + int32_t __nmsgs; /* number of messages in the set */ + int32_t __index; /* index of first msg_hdr in msg_hdr table */ +} ; + +struct _nls_msg_hdr { + int32_t __msgno; /* msg number: 0 < x <= NL_MSGMAX */ + int32_t __msglen; + int32_t __offset; +} ; + +#endif /* _NLS_PRIVATE */ #define NL_SETD 0 #define NL_CAT_LOCALE 1 -typedef void *nl_catd; +typedef struct __nl_cat_d { + void *__data; + int __size; +} *nl_catd; #ifndef _NL_ITEM_DECLARED typedef __nl_item nl_item; @@ -48,9 +96,10 @@ #endif __BEGIN_DECLS -nl_catd catopen(__const char *, int); -char *catgets(nl_catd, int, int, __const char *); +nl_catd catopen(const char *, int); +char *catgets(nl_catd, int, int, const char *) + __attribute__((__format_arg__(4))); int catclose(nl_catd); __END_DECLS -#endif /* !_NL_TYPES_H_ */ +#endif /* _NL_TYPES_H_ */ ==== //depot/projects/davidxu_thread/src/lib/libc/compat-43/getwd.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ static char sccsid[] = "@(#)getwd.c 8.1 (Berkeley) 6/2/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/compat-43/getwd.c,v 1.3 2002/03/22 21:51:56 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/compat-43/getwd.c,v 1.5 2005/02/27 18:39:02 phantom Exp $"); #include #include @@ -44,13 +44,12 @@ #include char * -getwd(buf) - char *buf; +getwd(char *buf) { char *p; if ( (p = getcwd(buf, MAXPATHLEN)) ) return(p); - (void)strcpy(buf, strerror(errno)); + (void)strerror_r(errno, buf, MAXPATHLEN); return((char *)NULL); } ==== //depot/projects/davidxu_thread/src/lib/libc/locale/big5.c#2 (text+ko) ==== @@ -38,9 +38,10 @@ #if defined(LIBC_SCCS) && !defined(lint) static char sccsid[] = "@(#)big5.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ -#include -__FBSDID("$FreeBSD: src/lib/libc/locale/big5.c,v 1.16 2004/05/17 11:16:14 tjr Exp $"); +#include +__FBSDID("$FreeBSD: src/lib/libc/locale/big5.c,v 1.17 2005/02/27 15:11:09 phantom Exp $"); +#include #include #include #include @@ -48,11 +49,11 @@ #include #include "mblocal.h" -int _BIG5_init(_RuneLocale *); -size_t _BIG5_mbrtowc(wchar_t * __restrict, const char * __restrict, size_t, - mbstate_t * __restrict); -int _BIG5_mbsinit(const mbstate_t *); -size_t _BIG5_wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict); +static size_t _BIG5_mbrtowc(wchar_t * __restrict, const char * __restrict, + size_t, mbstate_t * __restrict); +static int _BIG5_mbsinit(const mbstate_t *); +static size_t _BIG5_wcrtomb(char * __restrict, wchar_t, + mbstate_t * __restrict); typedef struct { wchar_t ch; @@ -70,7 +71,7 @@ return (0); } -int +static int _BIG5_mbsinit(const mbstate_t *ps) { @@ -85,7 +86,7 @@ return ((c >= 0xa1 && c <= 0xfe) ? 2 : 1); } -size_t +static size_t _BIG5_mbrtowc(wchar_t * __restrict pwc, const char * __restrict s, size_t n, mbstate_t * __restrict ps) { @@ -146,7 +147,7 @@ } } -size_t +static size_t _BIG5_wcrtomb(char * __restrict s, wchar_t wc, mbstate_t * __restrict ps) { _BIG5State *bs; ==== //depot/projects/davidxu_thread/src/lib/libc/locale/collate.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/collate.c,v 1.33 2004/09/22 16:56:48 stefanf Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/collate.c,v 1.35 2005/02/27 20:31:13 ru Exp $"); #include "namespace.h" #include @@ -99,7 +99,7 @@ chains = -1; if (strcmp(strbuf, COLLATE_VERSION) == 0) chains = 0; - else if (strcmp(strbuf, COLLATE_VERSION1_1) == 0) + else if (strcmp(strbuf, COLLATE_VERSION1_2) == 0) chains = 1; if (chains < 0) { (void)fclose(fp); @@ -172,10 +172,21 @@ if (__collate_char_pri_table_ptr != NULL) free(__collate_char_pri_table_ptr); __collate_char_pri_table_ptr = TMP_char_pri_table; + for (i = 0; i < UCHAR_MAX + 1; i++) { + __collate_char_pri_table[i].prim = + ntohl(__collate_char_pri_table[i].prim); + __collate_char_pri_table[i].sec = + ntohl(__collate_char_pri_table[i].sec); + } if (__collate_chain_pri_table != NULL) free(__collate_chain_pri_table); __collate_chain_pri_table = TMP_chain_pri_table; - + for (i = 0; i < chains; i++) { + __collate_chain_pri_table[i].prim = + ntohl(__collate_chain_pri_table[i].prim); + __collate_chain_pri_table[i].sec = + ntohl(__collate_chain_pri_table[i].sec); + } __collate_substitute_nontrivial = 0; for (i = 0; i < UCHAR_MAX + 1; i++) { if (__collate_substitute_table[i][0] != i || @@ -190,8 +201,7 @@ } u_char * -__collate_substitute(s) - const u_char *s; +__collate_substitute(const u_char *s) { int dest_len, len, nlen; int delta = strlen(s); @@ -218,9 +228,7 @@ } void -__collate_lookup(t, len, prim, sec) - const u_char *t; - int *len, *prim, *sec; +__collate_lookup(const u_char *t, int *len, int *prim, int *sec) { struct __collate_st_chain_pri *p2; @@ -240,8 +248,7 @@ } u_char * -__collate_strdup(s) - u_char *s; +__collate_strdup(u_char *s) { u_char *t = strdup(s); ==== //depot/projects/davidxu_thread/src/lib/libc/locale/collate.h#2 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libc/locale/collate.h,v 1.14 2002/08/30 20:26:02 ache Exp $ + * $FreeBSD: src/lib/libc/locale/collate.h,v 1.15 2005/02/27 20:31:13 ru Exp $ */ #ifndef _COLLATE_H_ @@ -37,7 +37,7 @@ #define STR_LEN 10 #define TABLE_SIZE 100 #define COLLATE_VERSION "1.0\n" -#define COLLATE_VERSION1_1 "1.1\n" +#define COLLATE_VERSION1_2 "1.2\n" struct __collate_st_char_pri { int prim, sec; ==== //depot/projects/davidxu_thread/src/lib/libc/locale/collcmp.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/collcmp.c,v 1.17 2003/08/03 19:28:23 ache Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/collcmp.c,v 1.18 2005/02/27 14:54:23 phantom Exp $"); #include #include "collate.h" @@ -34,8 +34,7 @@ * Compare two characters using collate */ -int __collate_range_cmp(c1, c2) - int c1, c2; +int __collate_range_cmp(int c1, int c2) { static char s1[2], s2[2]; ==== //depot/projects/davidxu_thread/src/lib/libc/locale/euc.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ static char sccsid[] = "@(#)euc.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/euc.c,v 1.20 2004/06/23 07:01:43 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/euc.c,v 1.21 2005/02/27 15:11:09 phantom Exp $"); #include #include @@ -49,11 +49,11 @@ #include #include "mblocal.h" -int _EUC_init(_RuneLocale *); -size_t _EUC_mbrtowc(wchar_t * __restrict, const char * __restrict, size_t, - mbstate_t * __restrict); -int _EUC_mbsinit(const mbstate_t *); -size_t _EUC_wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict); +static size_t _EUC_mbrtowc(wchar_t * __restrict, const char * __restrict, + size_t, mbstate_t * __restrict); +static int _EUC_mbsinit(const mbstate_t *); +static size_t _EUC_wcrtomb(char * __restrict, wchar_t, + mbstate_t * __restrict); typedef struct { int count[4]; @@ -119,7 +119,7 @@ return (0); } -int +static int _EUC_mbsinit(const mbstate_t *ps) { @@ -136,11 +136,12 @@ static __inline int _euc_set(u_int c) { + c &= 0xff; return ((c & 0x80) ? c == _SS3 ? 3 : c == _SS2 ? 2 : 1 : 0); } -size_t +static size_t _EUC_mbrtowc(wchar_t * __restrict pwc, const char * __restrict s, size_t n, mbstate_t * __restrict ps) { @@ -213,7 +214,7 @@ return (wc == L'\0' ? 0 : s - os); } -size_t +static size_t _EUC_wcrtomb(char * __restrict s, wchar_t wc, mbstate_t * __restrict ps) { _EucState *es; ==== //depot/projects/davidxu_thread/src/lib/libc/locale/gb18030.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/gb18030.c,v 1.6 2004/05/12 14:09:04 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/gb18030.c,v 1.7 2005/02/27 15:11:09 phantom Exp $"); #include #include @@ -39,11 +39,11 @@ #include #include "mblocal.h" -int _GB18030_init(_RuneLocale *); -size_t _GB18030_mbrtowc(wchar_t * __restrict, const char * __restrict, size_t, - mbstate_t * __restrict); -int _GB18030_mbsinit(const mbstate_t *); -size_t _GB18030_wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict); +static size_t _GB18030_mbrtowc(wchar_t * __restrict, const char * __restrict, + size_t, mbstate_t * __restrict); +static int _GB18030_mbsinit(const mbstate_t *); +static size_t _GB18030_wcrtomb(char * __restrict, wchar_t, + mbstate_t * __restrict); typedef struct { int count; @@ -63,14 +63,14 @@ return (0); } -int +static int _GB18030_mbsinit(const mbstate_t *ps) { return (ps == NULL || ((const _GB18030State *)ps)->count == 0); } -size_t +static size_t _GB18030_mbrtowc(wchar_t * __restrict pwc, const char * __restrict s, size_t n, mbstate_t * __restrict ps) { @@ -154,7 +154,7 @@ return ((size_t)-1); } -size_t +static size_t _GB18030_wcrtomb(char * __restrict s, wchar_t wc, mbstate_t * __restrict ps) { _GB18030State *gs; ==== //depot/projects/davidxu_thread/src/lib/libc/locale/gb2312.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/gb2312.c,v 1.8 2004/05/12 14:09:04 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/gb2312.c,v 1.9 2005/02/27 15:11:09 phantom Exp $"); #include #include @@ -35,11 +35,11 @@ #include #include "mblocal.h" -int _GB2312_init(_RuneLocale *); -size_t _GB2312_mbrtowc(wchar_t * __restrict, const char * __restrict, size_t, - mbstate_t * __restrict); -int _GB2312_mbsinit(const mbstate_t *); -size_t _GB2312_wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict); +static size_t _GB2312_mbrtowc(wchar_t * __restrict, const char * __restrict, + size_t, mbstate_t * __restrict); +static int _GB2312_mbsinit(const mbstate_t *); +static size_t _GB2312_wcrtomb(char * __restrict, wchar_t, + mbstate_t * __restrict); typedef struct { int count; @@ -58,7 +58,7 @@ return (0); } -int +static int _GB2312_mbsinit(const mbstate_t *ps) { @@ -88,7 +88,7 @@ return (1); } -size_t +static size_t _GB2312_mbrtowc(wchar_t * __restrict pwc, const char * __restrict s, size_t n, mbstate_t * __restrict ps) { @@ -129,7 +129,7 @@ return (wc == L'\0' ? 0 : len - ocount); } -size_t +static size_t _GB2312_wcrtomb(char * __restrict s, wchar_t wc, mbstate_t * __restrict ps) { _GB2312State *gs; ==== //depot/projects/davidxu_thread/src/lib/libc/locale/gbk.c#2 (text+ko) ==== @@ -35,9 +35,10 @@ * SUCH DAMAGE. */ -#include -__FBSDID("$FreeBSD: src/lib/libc/locale/gbk.c,v 1.11 2004/05/17 11:16:14 tjr Exp $"); +#include +__FBSDID("$FreeBSD: src/lib/libc/locale/gbk.c,v 1.12 2005/02/27 15:11:09 phantom Exp $"); +#include #include #include #include @@ -45,11 +46,11 @@ #include #include "mblocal.h" -int _GBK_init(_RuneLocale *); -size_t _GBK_mbrtowc(wchar_t * __restrict, const char * __restrict, size_t, - mbstate_t * __restrict); -int _GBK_mbsinit(const mbstate_t *); -size_t _GBK_wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict); +static size_t _GBK_mbrtowc(wchar_t * __restrict, const char * __restrict, + size_t, mbstate_t * __restrict); +static int _GBK_mbsinit(const mbstate_t *); +static size_t _GBK_wcrtomb(char * __restrict, wchar_t, + mbstate_t * __restrict); typedef struct { wchar_t ch; @@ -67,7 +68,7 @@ return (0); } -int +static int _GBK_mbsinit(const mbstate_t *ps) { @@ -82,7 +83,7 @@ return ((c >= 0x81 && c <= 0xfe) ? 2 : 1); } -size_t +static size_t _GBK_mbrtowc(wchar_t * __restrict pwc, const char * __restrict s, size_t n, mbstate_t * __restrict ps) { @@ -143,7 +144,7 @@ } } -size_t +static size_t _GBK_wcrtomb(char * __restrict s, wchar_t wc, mbstate_t * __restrict ps) { _GBKState *gs; ==== //depot/projects/davidxu_thread/src/lib/libc/locale/mblocal.h#2 (text+ko) ==== @@ -23,13 +23,25 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libc/locale/mblocal.h,v 1.4 2004/10/17 06:51:50 tjr Exp $ + * $FreeBSD: src/lib/libc/locale/mblocal.h,v 1.5 2005/02/27 15:11:09 phantom Exp $ */ #ifndef _MBLOCAL_H_ #define _MBLOCAL_H_ /* + * Rune initialization function prototypes. + */ +int _none_init(_RuneLocale *); +int _UTF8_init(_RuneLocale *); +int _EUC_init(_RuneLocale *); +int _GB18030_init(_RuneLocale *); +int _GB2312_init(_RuneLocale *); +int _GBK_init(_RuneLocale *); +int _BIG5_init(_RuneLocale *); +int _MSKanji_init(_RuneLocale *); + +/* * Conversion function pointers for current encoding. */ extern size_t (*__mbrtowc)(wchar_t * __restrict, const char * __restrict, @@ -41,19 +53,6 @@ extern size_t (*__wcsnrtombs)(char * __restrict, const wchar_t ** __restrict, size_t, size_t, mbstate_t * __restrict); -/* - * Conversion functions for "NONE"/C/POSIX encoding. - */ -extern size_t _none_mbrtowc(wchar_t * __restrict, const char * __restrict, - size_t, mbstate_t * __restrict); -extern int _none_mbsinit(const mbstate_t *); -extern size_t _none_mbsnrtowcs(wchar_t * __restrict, const char ** __restrict, - size_t, size_t, mbstate_t * __restrict); -extern size_t _none_wcrtomb(char * __restrict, wchar_t, - mbstate_t * __restrict); -extern size_t _none_wcsnrtombs(char * __restrict, const wchar_t ** __restrict, - size_t, size_t, mbstate_t * __restrict); - extern size_t __mbsnrtowcs_std(wchar_t * __restrict, const char ** __restrict, size_t, size_t, mbstate_t * __restrict); extern size_t __wcsnrtombs_std(char * __restrict, const wchar_t ** __restrict, ==== //depot/projects/davidxu_thread/src/lib/libc/locale/mskanji.c#2 (text+ko) ==== @@ -36,9 +36,10 @@ #if defined(LIBC_SCCS) && !defined(lint) static char sccsid[] = "@(#)mskanji.c 1.0 (Phase One) 5/5/95"; #endif /* LIBC_SCCS and not lint */ -#include -__FBSDID("$FreeBSD: src/lib/libc/locale/mskanji.c,v 1.16 2004/05/14 15:40:47 tjr Exp $"); +#include +__FBSDID("$FreeBSD: src/lib/libc/locale/mskanji.c,v 1.17 2005/02/27 15:11:09 phantom Exp $"); +#include #include #include #include @@ -46,11 +47,11 @@ #include #include "mblocal.h" -int _MSKanji_init(_RuneLocale *); -size_t _MSKanji_mbrtowc(wchar_t * __restrict, const char * __restrict, size_t, - mbstate_t * __restrict); -int _MSKanji_mbsinit(const mbstate_t *); -size_t _MSKanji_wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict); +static size_t _MSKanji_mbrtowc(wchar_t * __restrict, const char * __restrict, + size_t, mbstate_t * __restrict); +static int _MSKanji_mbsinit(const mbstate_t *); +static size_t _MSKanji_wcrtomb(char * __restrict, wchar_t, + mbstate_t * __restrict); typedef struct { wchar_t ch; @@ -68,14 +69,14 @@ return (0); } -int +static int _MSKanji_mbsinit(const mbstate_t *ps) { return (ps == NULL || ((const _MSKanjiState *)ps)->ch == 0); } -size_t +static size_t _MSKanji_mbrtowc(wchar_t * __restrict pwc, const char * __restrict s, size_t n, mbstate_t * __restrict ps) { @@ -133,7 +134,7 @@ } } -size_t +static size_t _MSKanji_wcrtomb(char * __restrict s, wchar_t wc, mbstate_t * __restrict ps) { _MSKanjiState *ms; ==== //depot/projects/davidxu_thread/src/lib/libc/locale/none.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ static char sccsid[] = "@(#)none.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/none.c,v 1.12 2004/07/21 10:54:57 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/none.c,v 1.13 2005/02/27 15:11:09 phantom Exp $"); #include #include @@ -51,16 +51,16 @@ #include #include "mblocal.h" -int _none_init(_RuneLocale *); -size_t _none_mbrtowc(wchar_t * __restrict, const char * __restrict, size_t, - mbstate_t * __restrict); -int _none_mbsinit(const mbstate_t *); -size_t _none_mbsnrtowcs(wchar_t * __restrict dst, - const char ** __restrict src, size_t nms, size_t len, - mbstate_t * __restrict ps __unused); -size_t _none_wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict); -size_t _none_wcsnrtombs(char * __restrict, const wchar_t ** __restrict, - size_t, size_t, mbstate_t * __restrict); >>> TRUNCATED FOR MAIL (1000 lines) <<<