From 5e1c127b706c64800d20527db8f17571a42a96d0 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 19 Nov 2008 23:59:35 +0000 Subject: [PATCH] glibc 2.9 support git-svn-id: svn://svn.valgrind.org/valgrind/branches/VALGRIND_3_3_BRANCH@8791 --- Makefile.am | 2 +- configure.in | 18 +++++++++- glibc-2.9.supp | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 113 insertions(+), 2 deletions(-) create mode 100644 glibc-2.9.supp diff --git a/Makefile.am b/Makefile.am index ccdf02729e..1b4456b2ce 100644 --- a/Makefile.am +++ b/Makefile.am @@ -21,7 +21,7 @@ DIST_SUBDIRS = $(SUBDIRS) SUPP_FILES = \ glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp \ - glibc-2.6.supp glibc-2.7.supp glibc-2.8.supp \ + glibc-2.6.supp glibc-2.7.supp glibc-2.8.supp glibc-2.9.supp \ aix5libc.supp xfree-3.supp xfree-4.supp \ glibc-2.34567-NPTL-helgrind.supp \ glibc-2.2-LinuxThreads-helgrind.supp \ diff --git a/configure.in b/configure.in index 32e9725e98..7549100ddb 100644 --- a/configure.in +++ b/configure.in @@ -479,6 +479,16 @@ AC_EGREP_CPP([GLIBC_28], [ ], libc="2.8") +AC_EGREP_CPP([GLIBC_29], [ +#include +#ifdef __GNU_LIBRARY__ + #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 9) + GLIBC_29 + #endif +#endif +], +libc="2.9") + AC_EGREP_CPP([AIX5_LIBC], [ #include #if defined(_AIXVERSION_510) || defined(_AIXVERSION_520) || defined(_AIXVERSION_530) @@ -535,6 +545,12 @@ case "${libc}" in DEFAULT_SUPP="glibc-2.8.supp ${DEFAULT_SUPP}" DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" ;; + 2.9) + AC_MSG_RESULT(2.9 family) + AC_DEFINE([GLIBC_2_9], 1, [Define to 1 if you're using glibc 2.9.x]) + DEFAULT_SUPP="glibc-2.9.supp ${DEFAULT_SUPP}" + DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" + ;; aix5) AC_MSG_RESULT(AIX 5.1 or 5.2 or 5.3) AC_DEFINE([AIX5_LIBC], 1, [Define to 1 if you're using AIX 5.1 or 5.2 or 5.3]) @@ -543,7 +559,7 @@ case "${libc}" in *) AC_MSG_RESULT(unsupported version) - AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.7]) + AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.9]) AC_MSG_ERROR([or AIX 5.1 or 5.2 or 5.3 libc]) ;; esac diff --git a/glibc-2.9.supp b/glibc-2.9.supp new file mode 100644 index 0000000000..dd25421f57 --- /dev/null +++ b/glibc-2.9.supp @@ -0,0 +1,95 @@ + +# Errors to suppress by default with glibc 2.8.x + +# Format of this file is: +# { +# name_of_suppression +# tool_name:supp_kind +# (optional extra info for some suppression types) +# caller0 name, or /name/of/so/file.so +# caller1 name, or ditto +# (optionally: caller2 name) +# (optionally: caller3 name) +# } +# +# For Memcheck, the supp_kinds are: +# +# Param Value1 Value2 Value4 Value8 Value16 Jump +# Free Addr1 Addr2 Addr4 Addr8 Addr16 +# Cond (previously known as Value0) +# +# and the optional extra info is: +# if Param: name of system call param + +{ + dl-hack3-cond-1 + Memcheck:Cond + obj:/lib*/ld-2.8*.so* + obj:/lib*/ld-2.8*.so* + obj:/lib*/ld-2.8*.so* +} +{ + dl-hack3-cond-2 + Memcheck:Cond + obj:/lib*/ld-2.8*.so* + obj:/lib*/ld-2.8*.so* + obj:/lib*/libc-2.8*.so* +} +{ + dl-hack3-cond-3 + Memcheck:Cond + obj:/lib*/ld-2.8*.so* + obj:/lib*/libc-2.8*.so* + obj:/lib*/libc-2.8*.so* +} +{ + dl-hack3-cond-4 + Memcheck:Cond + obj:/lib*/ld-2.8*.so* + obj:/lib*/ld-2.8*.so* + obj:/lib*/libdl-2.8*.so* +} + +{ + dl-hack4-64bit-addr-1 + Memcheck:Addr8 + obj:/lib*/ld-2.8*.so* + obj:/lib*/ld-2.8*.so* + obj:/lib*/ld-2.8*.so* +} +{ + dl-hack4-64bit-addr-2 + Memcheck:Addr8 + obj:/lib*/ld-2.8*.so* + obj:/lib*/ld-2.8*.so* + obj:/lib*/libc-2.8*.so* +} +{ + dl-hack4-64bit-addr-3 + Memcheck:Addr8 + obj:/lib*/ld-2.8*.so* + obj:/lib*/ld-2.8*.so* + obj:/lib*/libdl-2.8*.so* +} + +{ + dl-hack5-32bit-addr-1 + Memcheck:Addr4 + obj:/lib/ld-2.8*.so + obj:/lib/ld-2.8*.so + obj:/lib/ld-2.8*.so +} +{ + dl-hack5-32bit-addr-3 + Memcheck:Addr4 + obj:/lib/ld-2.8*.so + obj:/lib/ld-2.8*.so + obj:/lib/libdl-2.8*.so* +} +{ + dl-hack5-32bit-addr-4 + Memcheck:Addr4 + obj:/lib/ld-2.8*.so + obj:/lib/libdl-2.8*.so* + obj:/lib/ld-2.8*.so +} -- 2.47.2