GNU C Library master sources branch, master, updated. glibc-2.11-264-gbf219bc
drepper@sourceware.org
drepper@sourceware.org
Tue Mar 16 11:48:00 GMT 2010
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via bf219bc6fcd970d67ad76dbf3c96cdcdc951e083 (commit)
from 561470e061b4210385ace824cac6139bccde094c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=bf219bc6fcd970d67ad76dbf3c96cdcdc951e083
commit bf219bc6fcd970d67ad76dbf3c96cdcdc951e083
Author: Ulrich Drepper <drepper@redhat.com>
Date: Tue Mar 16 04:47:33 2010 -0700
Missing files for libc ABI handling.
diff --git a/libc-abis b/libc-abis
new file mode 100644
index 0000000..6e9cce8
--- /dev/null
+++ b/libc-abis
@@ -0,0 +1,44 @@
+# Definition of features which introduce new libc ABI versions. This
+# file is used to create a header file with definitions for the various
+# versions. The static linker will encode in the EI_ABIVERSION field in
+# the e_ident array in the ELF program header the required ABI version.
+# This is not a bitmask. The maximum ABI version required must be
+# encoded.
+#
+# Adding new features should always happen by appending new lines. Never
+# add entries in the middle or where they seem "logical". Once a version
+# is assigned to a feature it must not change again. Since some features
+# are conditionally added this can only ever be done securely without much
+# risk is by adding at the end.
+#
+# The following lines have one of two formats:
+#
+# SYMBOL
+# With just a symbol on the line this is the name of a feature which
+# is architecture independent.
+#
+# SYMBOL PLATFORM
+# Using this form architecture (and platform) dependent features can be
+# specified. The PLATFORM name can use the wildcards available in
+# the Bourne shell's case expression.
+#
+# Note that the same symbol can be used using different platform triples.
+# They don't have to be in the same order relative to other entries. This
+# can happen if the feature is implemented for different architectures
+# at different times.
+#
+# This file is parsed by a script which produces a header file containing
+# a single enum definition. An extra symbol is added as entry zero to
+# specify the default ABI with number 0 and an artificial last entry is
+# added to allow computing the maximum ABI version for the platform.
+#
+# Feature Name Configuration
+# ------------ -------------
+#
+# Unique symbol definitions for C++.
+# Architecture independent, all ELF targets (== all targets)
+UNIQUE
+#
+# Indirect PLT relocations. Architecture dependent.
+IFUNC x86_64-*-linux*
+IFUNC i?86-*-linux*
diff --git a/scripts/gen-libc-abis b/scripts/gen-libc-abis
new file mode 100644
index 0000000..ce9ac5e
--- /dev/null
+++ b/scripts/gen-libc-abis
@@ -0,0 +1,26 @@
+#! /bin/sh
+triple="$1"
+
+printf "#ifndef _LIBC_ABIS_H\n#define _LIBC_ABIS_H 1\n\n"
+printf "enum\n{\n LIBC_ABI_DEFAULT = 0,\n"
+
+while read s t; do
+ if test "$s" = "#" || test -z "$s"; then continue; fi
+ if test -z "$t"; then
+ printf " LIBC_ABI_%s,\n" "$s"
+ features="$features $s"
+ else
+ case "$triple" in
+ $t) printf " LIBC_ABI_%s,\n" "$s"
+ features="$features $s" ;;
+ *) ;;
+ esac
+ fi
+done
+
+printf " LIBC_ABI_MAX\n};\n"
+printf "\n#endif\n"
+
+if test -n "$features"; then
+ printf "#define LIBC_ABIS_STRING \"libc ABIs:%s\\\\n\"\n" "$features"
+fi
-----------------------------------------------------------------------
Summary of changes:
libc-abis | 44 ++++++++++++++++++++++++++++++++++++++++++++
scripts/gen-libc-abis | 26 ++++++++++++++++++++++++++
2 files changed, 70 insertions(+), 0 deletions(-)
create mode 100644 libc-abis
create mode 100644 scripts/gen-libc-abis
hooks/post-receive
--
GNU C Library master sources
More information about the Glibc-cvs
mailing list