This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Missing ChangeLog entries
- To: GNU C Library <libc-alpha at sourceware dot cygnus dot com>
- Subject: Missing ChangeLog entries
- From: "H . J . Lu" <hjl at valinux dot com>
- Date: Sun, 3 Dec 2000 11:36:26 -0800
This patch has been checked into CVS. But the associated ChangeLog
entries seem missing. Could someone please double check it and make
sure ChangeLog entries are up to date?
Thanks.
--
H.J. Lu (hjl@valinux.com)
---
2000-12-01 H.J. Lu <hjl@gnu.org>
* nss/getXXbyYY_r.c: Fix verioned symbol handling.
* nss/getXXent_r.c: Likewise.
* sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
2000-11-30 H.J. Lu <hjl@gnu.org>
* scripts/abi-versions.awk (oldest_abi): New variable.
Handle the oldest ABI supported.
* Makerules ($(common-objpfx)abi-versions.h): Set oldest_abi
for scripts/abi-versions.awk.
* configure.in: Add --with-oldest-abi=ABI.
* configure: Rebuild.
* config.make.in (oldest-abi): New.
* config.h.in (GLIBC_OLDEST_ABI): New.
* csu/version.c (banner): Support GLIBC_OLDEST_ABI.
Index: scripts/abi-versions.awk
===================================================================
RCS file: /work/cvs/gnu/glibc/scripts/abi-versions.awk,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 abi-versions.awk
--- scripts/abi-versions.awk 2000/05/21 21:11:25 1.1.1.1
+++ scripts/abi-versions.awk 2000/12/01 00:43:14
@@ -1,6 +1,9 @@
# Script to generate <abi-versions.h> header file from Versions.all list.
# See include/shlib-compat.h comments for explanation.
+# This script expects the following variables to be defined:
+# oldest_abi the oldest ABI supported
+
BEGIN {
print "/* This file is automatically generated by abi-versions.awk.";
print " It defines symbols used by shlib-compat.h, which see. */";
@@ -12,6 +15,7 @@ NF == 2 && $2 == "{" {
gsub(/[^A-Za-z0-9_ ]/, "_"); libid = $1;
printf "\n/* start %s */\n", thislib;
n = 0;
+ start = 0;
next;
}
$1 == "}" {
@@ -36,6 +40,10 @@ $2 == "=" {
printf "#define ABI_%s_%s\t%d\t/* support %s */\n", libid, versid, ++n, vers;
printf "#define VERSION_%s_%s\t%s\n", libid, versid, vers;
+ if ("GLIBC_" oldest_abi == vers)
+ start = 1;
+ if (start == 0 && oldest_abi != "default")
+ --n;
next;
}
Index: Makerules
===================================================================
RCS file: /work/cvs/gnu/glibc/Makerules,v
retrieving revision 1.1.1.7
diff -u -p -r1.1.1.7 Makerules
--- Makerules 2000/07/29 16:19:49 1.1.1.7
+++ Makerules 2000/12/01 00:35:49
@@ -135,7 +135,7 @@ ifndef avoid-generated
before-compile := $(common-objpfx)abi-versions.h $(before-compile)
$(common-objpfx)abi-versions.h: $(..)scripts/abi-versions.awk \
$(common-objpfx)Versions.all
- LC_ALL=C $(AWK) -f $^ > $@T
+ LC_ALL=C $(AWK) -v oldest_abi=$(oldest-abi) -f $^ > $@T
mv -f $@T $@
endif # avoid-generated
endif # $(versioning) = yes
Index: configure.in
===================================================================
RCS file: /work/cvs/gnu/glibc/configure.in,v
retrieving revision 1.1.1.17
diff -u -p -r1.1.1.17 configure.in
--- configure.in 2000/11/21 02:14:47 1.1.1.17
+++ configure.in 2000/12/01 00:04:11
@@ -80,6 +80,17 @@ AC_ARG_WITH(headers, dnl
[default=compiler default]],
sysheaders=$withval, sysheaders='')
+AC_ARG_WITH(oldest-abi, dnl
+[ --with-oldest-abi=ABI the oldest ABI supported [e.g. 2.2]
+ [default=glibc default]],
+ oldest_abi=$withval, oldest_abi='')
+if test ! -z "$oldest_abi"; then
+ AC_DEFINE_UNQUOTED(GLIBC_OLDEST_ABI, "$oldest_abi")
+else
+ oldest_abi=default
+fi
+AC_SUBST(oldest_abi)
+
AC_ARG_ENABLE(libio, dnl
[ --enable-libio build in GNU libio instead of GNU stdio],
[if test $enableval = yes; then
Index: config.make.in
===================================================================
RCS file: /work/cvs/gnu/glibc/config.make.in,v
retrieving revision 1.1.1.6
diff -u -p -r1.1.1.6 config.make.in
--- config.make.in 2000/11/21 02:14:47 1.1.1.6
+++ config.make.in 2000/11/30 23:56:00
@@ -45,6 +45,7 @@ with-cvs = @with_cvs@
old-glibc-headers = @old_glibc_headers@
versioning = @VERSIONING@
+oldest-abi = @oldest_abi@
no-whole-archive = @no_whole_archive@
exceptions = @exceptions@
have_doors = @linux_doors@
Index: config.h.in
===================================================================
RCS file: /work/cvs/gnu/glibc/config.h.in,v
retrieving revision 1.1.1.4
diff -u -p -r1.1.1.4 config.h.in
--- config.h.in 2000/10/19 02:39:00 1.1.1.4
+++ config.h.in 2000/11/30 23:41:50
@@ -56,6 +56,9 @@
/* Define if versioning of the library is wanted. */
#undef DO_VERSIONING
+/* Defined to the oldest ABI we support, like 2.1. */
+#undef GLIBC_OLDEST_ABI
+
/* Define if static NSS modules are wanted. */
#undef DO_STATIC_NSS
Index: csu/version.c
===================================================================
RCS file: /work/cvs/gnu/glibc/csu/version.c,v
retrieving revision 1.1.1.2
diff -u -p -r1.1.1.2 version.c
--- csu/version.c 2000/11/21 02:14:48 1.1.1.2
+++ csu/version.c 2000/12/01 00:47:31
@@ -30,6 +30,9 @@ There is NO warranty; not even for MERCH
PARTICULAR PURPOSE.\n\
Compiled by GNU CC version "__VERSION__".\n"
#include "version-info.h"
+#ifdef GLIBC_OLDEST_ABI
+"The oldest ABI supported: " GLIBC_OLDEST_ABI ".\n"
+#endif
"Report bugs using the `glibcbug' script to <bugs@gnu.org>.\n";
#include <unistd.h>
Index: ./nss/getXXbyYY_r.c
===================================================================
RCS file: /work/cvs/gnu/glibc/nss/getXXbyYY_r.c,v
retrieving revision 1.1.1.2
diff -u -p -r1.1.1.2 getXXbyYY_r.c
--- ./nss/getXXbyYY_r.c 2000/08/31 16:48:40 1.1.1.2
+++ ./nss/getXXbyYY_r.c 2000/12/01 17:35:03
@@ -239,12 +239,9 @@ OLD (REENTRANT_NAME) (ADD_PARAMS, LOOKUP
#define do_symbol_version(real, name, version) \
compat_symbol (libc, real, name, version)
do_symbol_version (OLD (REENTRANT_NAME), REENTRANT_NAME, GLIBC_2_0);
+#endif
#define do_default_symbol_version(real, name, version) \
versioned_symbol (libc, real, name, version)
do_default_symbol_version (INTERNAL (REENTRANT_NAME),
REENTRANT_NAME, GLIBC_2_1_2);
-#else
-#define do_weak_alias(n1, n2) weak_alias (n1, n2)
-do_weak_alias (INTERNAL (REENTRANT_NAME), REENTRANT_NAME)
-#endif
Index: ./nss/getXXent_r.c
===================================================================
RCS file: /work/cvs/gnu/glibc/nss/getXXent_r.c,v
retrieving revision 1.1.1.2
diff -u -p -r1.1.1.2 getXXent_r.c
--- ./nss/getXXent_r.c 2000/07/18 00:28:46 1.1.1.2
+++ ./nss/getXXent_r.c 2000/12/01 17:35:21
@@ -317,12 +317,9 @@ OLD (REENTRANT_GETNAME) (LOOKUP_TYPE *re
#define do_symbol_version(real, name, version) \
compat_symbol (libc, real, name, version)
do_symbol_version (OLD (REENTRANT_GETNAME), REENTRANT_GETNAME, GLIBC_2_0);
+#endif
#define do_default_symbol_version(real, name, version) \
versioned_symbol (libc, real, name, version)
do_default_symbol_version (INTERNAL (REENTRANT_GETNAME),
REENTRANT_GETNAME, GLIBC_2_1_2);
-#else
-#define do_weak_alias(n1, n2) weak_alias (n1, n2)
-do_weak_alias (INTERNAL (REENTRANT_GETNAME), REENTRANT_GETNAME)
-#endif
Index: ./sysdeps/unix/sysv/linux/i386/chown.c
===================================================================
RCS file: /work/cvs/gnu/glibc/sysdeps/unix/sysv/linux/i386/chown.c,v
retrieving revision 1.1.1.2
diff -u -p -r1.1.1.2 chown.c
--- ./sysdeps/unix/sysv/linux/i386/chown.c 2000/07/12 18:52:10 1.1.1.2
+++ ./sysdeps/unix/sysv/linux/i386/chown.c 2000/12/01 17:39:45
@@ -145,23 +145,15 @@ __chown_is_lchown (const char *file, uid
strong_alias (__chown_is_lchown, _chown_is_lchown)
compat_symbol (libc, __chown_is_lchown, __chown, GLIBC_2_0);
compat_symbol (libc, _chown_is_lchown, chown, GLIBC_2_0);
+#endif
-# ifdef __NR_lchown
+#ifdef __NR_lchown
strong_alias (__real_chown, _real_chown)
versioned_symbol (libc, __real_chown, __chown, GLIBC_2_1);
versioned_symbol (libc, _real_chown, chown, GLIBC_2_1);
-# else
+#else
strong_alias (__chown_is_lchown, __chown_is_lchown21)
strong_alias (__chown_is_lchown, _chown_is_lchown21)
versioned_symbol (libc, __chown_is_lchown21, __chown, GLIBC_2_1);
versioned_symbol (libc, _chown_is_lchown21, chown, GLIBC_2_1);
-# endif
-#else
-# ifdef __NR_lchown
-strong_alias (__real_chown, __chown)
-weak_alias (__real_chown, chown)
-# else
-strong_alias (__chown_is_lchown, __chown)
-weak_alias (__chown_is_lchown, chown)
-# endif
#endif