summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog39
-rw-r--r--Makefile.in4
-rwxr-xr-xconfigure2
-rw-r--r--configure.in2
-rw-r--r--intl/Makefile3
-rw-r--r--intl/tst-gettext2.c16
-rw-r--r--intl/tst-gettext2.sh45
-rw-r--r--locale/setlocale.c11
-rw-r--r--localedata/ChangeLog9
-rw-r--r--string/strndup.c2
-rw-r--r--sysdeps/generic/memchr.c17
-rw-r--r--sysdeps/unix/sysv/linux/paths.h6
12 files changed, 129 insertions, 27 deletions
diff --git a/ChangeLog b/ChangeLog
index cee9f01e62..93d2ed116b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,42 @@
+2000-11-15  Ulrich Drepper  <drepper@redhat.com>
+
+	* intl/Makefile: tst-gettext2.sh does not need a third parameter.
+
+	* intl/tst-gettext2.sh: Copy locale data.  Adjust LOCPATH.  Verify
+	output of program.
+
+	* intl/tst-gettext2.c: Set C locale if setting other locale
+	failed.  Use gettext() not _().
+
+	* locale/setlocale.c: Increment _nl_msg_cat_cntr whenever we
+	successfully loaded a new locale.
+
+2000-11-13  Andreas Jaeger  <aj@suse.de>
+
+	* configure.in: Require gcc 2.95 or newer.
+
+2000-11-15  Ulrich Drepper  <drepper@redhat.com>
+
+	* sysdeps/unix/sysv/linux/paths.h: Adjust for FHS.
+	Patch by Arkadiusz Miskiewicz <misiek@pld.ORG.PL>.
+
+2000-11-11  Jim Meyering  <meyering@lucent.com>
+
+	* string/strndup.c (strndup): Cast return value to `char *'.
+
+2000-11-15  Jim Meyering  <meyering@ascend.com>
+
+	* sysdeps/generic/memchr.c: Remove some useless parentheses.
+	[HAVE_STDLIB_H || defined _LIBC]: Include <stdlib.h>.
+	[HAVE_BP_SYM_H || defined _LIBC]: Guard inclusion of bp-sym.h.
+	[! (HAVE_BP_SYM_H || defined _LIBC)] (BP_SYM): Define as no-op.
+	Also #undef __memchr.
+	Use `weak_alias' only if it's defined.
+
+2000-11-10  H.J. Lu  <hjl@gnu.org>
+
+	* Makefile.in (install): Set LANGUAGE=C LC_ALL=C.
+
 2000-11-15  Andreas Jaeger  <aj@suse.de>
 
 	* elf/chroot_canon.c: Include <stdint.h>.
diff --git a/Makefile.in b/Makefile.in
index be34fd3097..ccdfb73c86 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -12,3 +12,7 @@ srcdir = @srcdir@
 
 all .DEFAULT:
 	$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" CVSOPTS="$(CVSOPTS)" -C $(srcdir) objdir=`pwd` $@
+
+install:
+	LANGUAGE=C LC_ALL=C; export LANGUAGE LC_ALL; \
+	$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" CVSOPTS="$(CVSOPTS)" -C $(srcdir) objdir=`pwd` $@
diff --git a/configure b/configure
index 97eab7446b..82e86c4f6b 100755
--- a/configure
+++ b/configure
@@ -1388,7 +1388,7 @@ echo "configure:1388: checking version of $CC" >&5
   ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'`
   case $ac_prog_version in
     '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-    egcs-2.9[1-9].*|egcs-2.90.2[789]|egcs-2.90.[3-9][0-9]|*gcc-2.9[1-9].*|pgcc-2.90.2[789]|pgcc-2.90.[3-9][0-9]|*2.8.[1-9]*|*2.9|*2.9.[0-9]*|2.9[5-9]*|cygnus-2.9[1-9]*|gcc-2.9[5-9]|gcc-2.1[0-9][0-9]|sgicc-*)
+    *gcc-2.9[5-9].*|*2.8.[1-9]*|*2.9|*2.9.[0-9]*|2.9[5-9]*|cygnus-2.9[1-9]*|gcc-2.9[5-9]|gcc-2.1[0-9][0-9]|sgicc-*)
        ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
     *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
 
diff --git a/configure.in b/configure.in
index ae69b470e9..97cc2bafc5 100644
--- a/configure.in
+++ b/configure.in
@@ -515,7 +515,7 @@ fi
 AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
 AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v,
   [version \([egcygnustpi-]*[0-9.]*\)],
-  [egcs-2.9[1-9].*|egcs-2.90.2[789]|egcs-2.90.[3-9][0-9]|*gcc-2.9[1-9].*|pgcc-2.90.2[789]|pgcc-2.90.[3-9][0-9]|*2.8.[1-9]*|*2.9|*2.9.[0-9]*|2.9[5-9]*|cygnus-2.9[1-9]*|gcc-2.9[5-9]|gcc-2.1[0-9][0-9]|sgicc-*],
+  [*gcc-2.9[5-9].*|*2.8.[1-9]*|*2.9|*2.9.[0-9]*|2.9[5-9]*|cygnus-2.9[1-9]*|gcc-2.9[5-9]|gcc-2.1[0-9][0-9]|sgicc-*],
   critic_missing=t)
 AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version,
   [GNU Make[^0-9]*\([0-9][0-9.]*\)],
diff --git a/intl/Makefile b/intl/Makefile
index e2df29cb93..fd24fcfe2a 100644
--- a/intl/Makefile
+++ b/intl/Makefile
@@ -60,8 +60,7 @@ $(objpfx)tst-gettext.out: tst-gettext.sh $(objpfx)tst-gettext
 $(objpfx)tst-translit.out: tst-translit.sh $(objpfx)tst-translit
 	$(SHELL) -e $< $(common-objpfx) $(common-objpfx)intl/
 $(objpfx)tst-gettext2.out: tst-gettext2.sh $(objpfx)tst-gettext2
-	$(SHELL) -e $< $(common-objpfx) $(common-objpfx)intl/ \
-		 $(objpfx)tst-gettext
+	$(SHELL) -e $< $(common-objpfx) $(common-objpfx)intl/
 endif
 endif
 endif
diff --git a/intl/tst-gettext2.c b/intl/tst-gettext2.c
index 0cc4cad84a..1174e8b4cc 100644
--- a/intl/tst-gettext2.c
+++ b/intl/tst-gettext2.c
@@ -24,15 +24,17 @@
 #include <stdlib.h>
 #include <stdio.h>
 
-struct data_t {
+struct data_t
+{
   const char *selection;
   const char *description;
 };
 
 int data_cnt = 2;
 struct data_t strings[] =
-{{"String1", N_("First string for testing.")},
- {"String2", N_("Another string for testing.")}
+{
+  { "String1", N_("First string for testing.") },
+  { "String2", N_("Another string for testing.") }
 };
 
 const int lang_cnt = 3;
@@ -50,18 +52,20 @@ main (void)
   unsetenv ("LC_CTYPE");
   unsetenv ("LANG");
   unsetenv ("OUTPUT_CHARSET");
-  
+
   textdomain ("tstlang");
 
   for (i = 0; i < lang_cnt; ++i)
     {
       int j;
 
-      setlocale (LC_ALL, lang[i]);
+      if (setlocale (LC_ALL, lang[i]) == NULL)
+	setlocale (LC_ALL, "C");
       bindtextdomain ("tstlang", OBJPFX "domaindir");
 
       for (j = 0; j < data_cnt; ++j)
-	printf ("%s - %s\n", strings[j].selection, _(strings[j].description));
+	printf ("%s - %s\n", strings[j].selection,
+		gettext (strings[j].description));
     }
 
   return 0;
diff --git a/intl/tst-gettext2.sh b/intl/tst-gettext2.sh
index 2c1a2e10ca..bb8ce47921 100644
--- a/intl/tst-gettext2.sh
+++ b/intl/tst-gettext2.sh
@@ -20,11 +20,10 @@
 
 common_objpfx=$1
 objpfx=$2
-malloc_trace=$3
 
 GCONV_PATH=${common_objpfx}iconvdata
 export GCONV_PATH
-LOCPATH=${common_objpfx}localedata
+LOCPATH=${objpfx}domaindir
 export LOCPATH
 LC_ALL=C
 export LC_ALL
@@ -32,10 +31,32 @@ export LC_ALL
 # Generate the test data.
 test -d ${objpfx}domaindir || mkdir ${objpfx}domaindir
 # Create the locale directories.
-test -d ${objpfx}domaindir/lang1 || mkdir ${objpfx}domaindir/lang1
-test -d ${objpfx}domaindir/lang2 || mkdir ${objpfx}domaindir/lang2
-test -d ${objpfx}domaindir/lang1/LC_MESSAGES || mkdir ${objpfx}domaindir/lang1/LC_MESSAGES
-test -d ${objpfx}domaindir/lang2/LC_MESSAGES || mkdir ${objpfx}domaindir/lang2/LC_MESSAGES
+test -d ${objpfx}domaindir/lang1 || {
+  mkdir ${objpfx}domaindir/lang1
+  for f in ADDRESS COLLATE CTYPE IDENTIFICATION MEASUREMENT MONETARY NAME NUMERIC PAPER TELEPHONE TIME; do
+    cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_$f \
+       ${objpfx}domaindir/lang1
+  done
+}
+test -d ${objpfx}domaindir/lang2 || {
+  mkdir ${objpfx}domaindir/lang2
+  for f in ADDRESS COLLATE CTYPE IDENTIFICATION MEASUREMENT MONETARY NAME NUMERIC PAPER TELEPHONE TIME; do
+    cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_$f \
+       ${objpfx}domaindir/lang2
+  done
+}
+test -d ${objpfx}domaindir/lang1/LC_MESSAGES || {
+  mkdir ${objpfx}domaindir/lang1/LC_MESSAGES
+  cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+     ${objpfx}domaindir/lang1/LC_MESSAGES
+}
+test -d ${objpfx}domaindir/lang2/LC_MESSAGES || {
+  mkdir ${objpfx}domaindir/lang2/LC_MESSAGES
+  cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+     ${objpfx}domaindir/lang2/LC_MESSAGES
+}
+
+test -f
 
 # Populate them.
 msgfmt -o ${objpfx}domaindir/lang1/LC_MESSAGES/tstlang.mo \
@@ -46,9 +67,15 @@ msgfmt -o ${objpfx}domaindir/lang2/LC_MESSAGES/tstlang.mo \
 
 
 # Now run the test.
-MALLOC_TRACE=$malloc_trace \
 ${common_objpfx}elf/ld.so --library-path $common_objpfx \
-${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir
+${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir &&
+cmp ${objpfx}tst-gettext2.out - <<EOF
+String1 - Lang1: 1st string
+String2 - Lang1: 2nd string
+String1 - Lang2: 1st string
+String2 - Lang2: 2nd string
+String1 - First string for testing.
+String2 - Another string for testing.
+EOF
 
 exit $?
-
diff --git a/locale/setlocale.c b/locale/setlocale.c
index 08f2a034d1..3598eceac4 100644
--- a/locale/setlocale.c
+++ b/locale/setlocale.c
@@ -120,6 +120,9 @@ static const char *_nl_current_names[] =
 /* Lock for protecting global data.  */
 __libc_lock_define_initialized (, __libc_setlocale_lock)
 
+/* Defined in loadmsgcat.c.  */
+extern int _nl_msg_cat_cntr;
+
 
 /* Use this when we come along an error.  */
 #define ERROR_RETURN							      \
@@ -334,6 +337,10 @@ setlocale (int category, const char *locale)
 		setname (category, newnames[category]);
 	      }
 	  setname (LC_ALL, composite);
+
+	  /* We successfully loaded a new locale.  Let the message catalog
+	     functions know about this.  */
+	  ++_nl_msg_cat_cntr;
 	}
 
       /* Critical section left.  */
@@ -384,6 +391,10 @@ setlocale (int category, const char *locale)
 
 	  setname (category, newname[0]);
 	  setname (LC_ALL, composite);
+
+	  /* We successfully loaded a new locale.  Let the message catalog
+	     functions know about this.  */
+	  ++_nl_msg_cat_cntr;
 	}
 
       /* Critical section left.  */
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 1a044b8d89..c2f08bd92d 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,12 @@
+2000-11-15  Ulrich Drepper  <drepper@redhat.com>
+
+	* locales/ko_KR: Changed LC_IDENTIFICATION territory field to
+	Republic of Korea.  Streamlined and extend(include all Hangul
+	syllables) hangul and hanja class definition in LC_CTYPE and
+	hangul portion of LC_COLLATE.  Several changes in LC_TIME.  Added
+	tel_dom_fmt to LC_TELEPHONE.
+	Patch by Jungshik Shin <jshin@pantheon.yale.edu>.
+
 2000-11-09  Ulrich Drepper  <drepper@redhat.com>
 
 	* locales/ko_KR: Fix currency_symbol.
diff --git a/string/strndup.c b/string/strndup.c
index 3f534427b4..1e17925689 100644
--- a/string/strndup.c
+++ b/string/strndup.c
@@ -49,7 +49,7 @@ __strndup (s, n)
     return NULL;
 
   new[len] = '\0';
-  return memcpy (new, s, len);
+  return (char *) memcpy (new, s, len);
 }
 #ifdef weak_alias
 weak_alias (__strndup, strndup)
diff --git a/sysdeps/generic/memchr.c b/sysdeps/generic/memchr.c
index 2950a64379..688e23b810 100644
--- a/sysdeps/generic/memchr.c
+++ b/sysdeps/generic/memchr.c
@@ -31,15 +31,18 @@
 # define __ptr_t char *
 #endif /* C++ or ANSI C.  */
 
-#if defined (_LIBC)
+#if defined _LIBC
 # include <string.h>
 # include <memcopy.h>
-# include <stdlib.h>
 #else
 # define reg_char char
 #endif
 
-#if defined (HAVE_LIMITS_H) || defined (_LIBC)
+#if HAVE_STDLIB_H || defined _LIBC
+# include <stdlib.h>
+#endif
+
+#if HAVE_LIMITS_H || defined _LIBC
 # include <limits.h>
 #endif
 
@@ -50,10 +53,14 @@
 #endif
 
 #include <sys/types.h>
+#if HAVE_BP_SYM_H || defined _LIBC
 #include <bp-sym.h>
+#else
+# define BP_SYM(sym) sym
+#endif
 
 #undef memchr
-
+#undef __memchr
 
 /* Search no more than N bytes of S for C.  */
 __ptr_t
@@ -201,4 +208,6 @@ __memchr (s, c_in, n)
 
   return 0;
 }
+#ifdef weak_alias
 weak_alias (__memchr, BP_SYM (memchr))
+#endif
diff --git a/sysdeps/unix/sysv/linux/paths.h b/sysdeps/unix/sysv/linux/paths.h
index 8d4f6fedf7..fb2c77e99b 100644
--- a/sysdeps/unix/sysv/linux/paths.h
+++ b/sysdeps/unix/sysv/linux/paths.h
@@ -48,18 +48,18 @@
 #define	_PATH_KMEM	"/dev/kmem"
 #define	_PATH_LASTLOG	"/var/log/lastlog"
 #define	_PATH_MAILDIR	"/var/mail"
-#define	_PATH_MAN	"/usr/man"
+#define	_PATH_MAN	"/usr/share/man"
 #define	_PATH_MEM	"/dev/mem"
 #define	_PATH_MNTTAB	"/etc/fstab"
 #define	_PATH_MOUNTED	"/etc/mtab"
 #define	_PATH_NOLOGIN	"/etc/nologin"
-#define	_PATH_PRESERVE	"/var/preserve"
+#define	_PATH_PRESERVE	"/var/lib"
 #define	_PATH_RWHODIR	"/var/spool/rwho"
 #define	_PATH_SENDMAIL	"/usr/sbin/sendmail"
 #define	_PATH_SHADOW	"/etc/shadow"
 #define	_PATH_SHELLS	"/etc/shells"
 #define	_PATH_TTY	"/dev/tty"
-#define	_PATH_UNIX	"/vmlinux"
+#define	_PATH_UNIX	"/boot/vmlinux"
 #define _PATH_UTMP	"/var/run/utmp"
 #define	_PATH_VI	"/usr/bin/vi"
 #define _PATH_WTMP	"/var/log/wtmp"