Skip to contentSkip to conversation

glibc 2.3.1

DISCUSSION Ulrich Drepper 2 participants 2 messages Oct 11, 2002 – Jan 4, 2003

lore
Share & tools
lore
#0 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I've uploaded

glibc-2.3.1.tar.bz2
glibc-2.3-2.3.1.diff.bz2
glibc-2.3.1pre2-2.3.1.diff.bz2
glibc-linuxthreads-2.3.1.tar.bz2

to

ftp://sources.redhat.com/pub/glibc/releases/

The files will soon also be available at

ftp://ftp.gnu.org/pub/gnu/glibc/

and the mirrors worldwide.

This releases is mainly meant to introduce some changes which work around problems some programs have which use very small stack sizes and still expect all libc functions to be usable. Beside this change only very few, mostly non-code, changes are included. Every user of glibc 2.3 should upgrade.

As usual, compiling glibc is nothing for the faint hearted. It is complicated and demanding and can potentially ruin your entire installation. Better wait for your distribution maker to provide you with binaries. People who nevertheless compile glibc on their own have to read the documentation, FAQ, and the announcement for the 2.3 release:

http://sources.redhat.com/ml/libc-alpha/2002-10/msg00048.html

- --
- --------------. ,-. 444 Castro Street
Ulrich Drepper \ ,-----------------' \ Mountain View, CA 94041 USA
Red Hat --' drepper at redhat.com ---------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQE9pnJO2ijCOnn/RHQRAuYNAJ4+0tsi9Iq55RB7iPpndhnSTPFB1QCfZD8y l14J4/l63KWOZbwKG375hTs=
=YIW3
-----END PGP SIGNATURE-----

#1 lore raw

Re: glibc 2.3.1 [PATCH] sysdeps/i386/i486/bits/string.h

This is a trivial patch for the inlined i386 strings' header. Without it, say, X11 can't be compiled with -D__USE_STRING_INLINES - a problems will be caused by XtNewString and X11's own bzero. These problems are cured by the first and the second chunks of the patch, correspondingly.

So, please, apply this.

i386/i486/bits/string.h renamed from i386/i486/bits/string.h.orig +4 -4
@@ -40,10 +40,10 @@
 
 /* The macros are used in some of the optimized implementations below.  */
 #define __STRING_SMALL_GET16(src, idx) \
-  (((src)[idx + 1] << 8) | (src)[idx])
+  ((((char*)(src))[idx + 1] << 8) | ((char*)(src))[idx])
 #define __STRING_SMALL_GET32(src, idx) \
-  ((((src)[idx + 3] << 8 | (src)[idx + 2]) << 8				      \
-    | (src)[idx + 1]) << 8 | (src)[idx])
+  (((((char*)(src))[idx + 3] << 8 | ((char*)(src))[idx + 2]) << 8	      \
+    | ((char*)(src))[idx + 1]) << 8 | ((char*)(src))[idx])
 
 
 /* Copy N bytes of SRC to DEST.  */
@@ -229,7 +229,7 @@ memcmp (__const void *__s1, __const void
 	assignments using immediate operands.  But this uses to much	      \
 	memory (7, instead of 4 bytes).  So we force the value in a	      \
 	registers.  */							      \
-     if (n == 3 || n >= 5)						      \
+     if ((n) == 3 || (n) >= 5)						      \
        __asm__ __volatile__ ("" : "=r" (__c) : "0" (__c));		      \
 									      \
      /* This `switch' statement will be removed at compile-time.  */	      \