From 35e1e2257357e7607c08341de205c8ef302a9fdc Mon Sep 17 00:00:00 2001 From: Britney Fransen Date: Wed, 26 Mar 2014 14:16:13 +0000 Subject: valgrind: update to 3.9.0 for glibc 2.18 --- abs/extra/valgrind/PKGBUILD | 22 +++--- abs/extra/valgrind/valgrind-3.7.0-glibc-2.16.patch | 41 ------------ abs/extra/valgrind/valgrind-3.8.1-glibc-2.18.patch | 33 +++++++++ .../valgrind/valgrind-3.8.1-ptrace-build-fix.patch | 78 ++++++++++++++++++++++ abs/extra/valgrind/valgrind-3.8.1-xaddb.patch | 34 ++++++++++ 5 files changed, 155 insertions(+), 53 deletions(-) delete mode 100644 abs/extra/valgrind/valgrind-3.7.0-glibc-2.16.patch create mode 100644 abs/extra/valgrind/valgrind-3.8.1-glibc-2.18.patch create mode 100644 abs/extra/valgrind/valgrind-3.8.1-ptrace-build-fix.patch create mode 100644 abs/extra/valgrind/valgrind-3.8.1-xaddb.patch diff --git a/abs/extra/valgrind/PKGBUILD b/abs/extra/valgrind/PKGBUILD index bf8d65e..1e65355 100644 --- a/abs/extra/valgrind/PKGBUILD +++ b/abs/extra/valgrind/PKGBUILD @@ -1,32 +1,30 @@ -# $Id: PKGBUILD 163013 2012-07-05 13:49:57Z allan $ +# $Id$ # Maintainer: Dan McGee # Maintainer: Allan McRae pkgname=valgrind -pkgver=3.7.0 -pkgrel=3 +pkgver=3.9.0 +pkgrel=1 pkgdesc="A tool to help find memory-management problems in programs" arch=('i686' 'x86_64') license=('GPL') url="http://valgrind.org/" -depends=('glibc>=2.16' 'glibc<2.17' 'perl') +depends=('glibc>=2.18' 'glibc<2.19' 'perl') makedepends=('gdb') -options=('!emptydirs') -source=(http://valgrind.org/downloads/${pkgname}-${pkgver}.tar.bz2 - valgrind-3.7.0-glibc-2.16.patch) -md5sums=('a855fda56edf05614f099dca316d1775' - '8362c9c10b8d7d08d1be628a717cfba7') +options=('staticlibs' '!emptydirs') +source=(http://valgrind.org/downloads/${pkgname}-${pkgver}.tar.bz2) +md5sums=('0947de8112f946b9ce64764af7be6df2') + build() { cd ${srcdir}/${pkgname}-${pkgver} - - patch -Np1 -i ${srcdir}/valgrind-3.7.0-glibc-2.16.patch - if [ "${CARCH}" = "x86_64" ]; then + if [[ ${CARCH} = "x86_64" ]]; then ./configure --prefix=/usr --mandir=/usr/share/man --enable-only64bit else ./configure --prefix=/usr --mandir=/usr/share/man fi + make } diff --git a/abs/extra/valgrind/valgrind-3.7.0-glibc-2.16.patch b/abs/extra/valgrind/valgrind-3.7.0-glibc-2.16.patch deleted file mode 100644 index 4d28ff1..0000000 --- a/abs/extra/valgrind/valgrind-3.7.0-glibc-2.16.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff -Naur valgrind-3.7.0-orig/configure valgrind-3.7.0/configure ---- valgrind-3.7.0-orig/configure 2011-11-05 21:24:39.000000000 +1000 -+++ valgrind-3.7.0/configure 2011-12-27 15:43:54.832120449 +1000 -@@ -6402,6 +6402,28 @@ - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" - ;; -+ 2.15) -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: 2.15 family" >&5 -+$as_echo "2.15 family" >&6; } -+ -+$as_echo "#define GLIBC_2_15 1" >>confdefs.h -+ -+ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -+ ;; -+ -+ 2.16) -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: 2.16 family" >&5 -+$as_echo "2.16 family" >&6; } -+ -+$as_echo "#define GLIBC_2_16 1" >>confdefs.h -+ -+ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -+ ;; -+ - darwin) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: Darwin" >&5 - $as_echo "Darwin" >&6; } -@@ -6422,7 +6433,7 @@ - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported version ${GLIBC_VERSION}" >&5 - $as_echo "unsupported version ${GLIBC_VERSION}" >&6; } -- as_fn_error "Valgrind requires glibc version 2.2 - 2.14" "$LINENO" 5 -+ as_fn_error "Valgrind requires glibc version 2.2 - 2.16" "$LINENO" 5 - as_fn_error "or Darwin libc" "$LINENO" 5 - ;; - esac diff --git a/abs/extra/valgrind/valgrind-3.8.1-glibc-2.18.patch b/abs/extra/valgrind/valgrind-3.8.1-glibc-2.18.patch new file mode 100644 index 0000000..9f471ad --- /dev/null +++ b/abs/extra/valgrind/valgrind-3.8.1-glibc-2.18.patch @@ -0,0 +1,33 @@ +diff -Naur valgrind-3.8.1-orig/configure.in valgrind-3.8.1/configure.in +--- valgrind-3.8.1-orig/configure.in 2013-08-13 22:36:20.201676976 +1000 ++++ valgrind-3.8.1/configure.in 2013-08-13 22:38:18.402750093 +1000 +@@ -906,6 +906,20 @@ + DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" + DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" + ;; ++ 2.17) ++ AC_MSG_RESULT(2.17 family) ++ AC_DEFINE([GLIBC_2_17], 1, [Define to 1 if you're using glibc 2.17.x]) ++ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" ++ ;; ++ 2.18) ++ AC_MSG_RESULT(2.18 family) ++ AC_DEFINE([GLIBC_2_18], 1, [Define to 1 if you're using glibc 2.18.x]) ++ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" ++ ;; + darwin) + AC_MSG_RESULT(Darwin) + AC_DEFINE([DARWIN_LIBC], 1, [Define to 1 if you're using Darwin]) +@@ -919,7 +933,7 @@ + + *) + AC_MSG_RESULT([unsupported version ${GLIBC_VERSION}]) +- AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.16]) ++ AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.18]) + AC_MSG_ERROR([or Darwin libc]) + ;; + esac diff --git a/abs/extra/valgrind/valgrind-3.8.1-ptrace-build-fix.patch b/abs/extra/valgrind/valgrind-3.8.1-ptrace-build-fix.patch new file mode 100644 index 0000000..89af000 --- /dev/null +++ b/abs/extra/valgrind/valgrind-3.8.1-ptrace-build-fix.patch @@ -0,0 +1,78 @@ +Index: coregrind/vgdb.c +=================================================================== +--- coregrind/vgdb.c (revision 13470) ++++ coregrind/vgdb.c (revision 13471) +@@ -100,11 +100,10 @@ + + #if defined(PTRACEINVOKER) + #include + #if defined(VGO_linux) + # include +-# include + #endif + #endif + + + // Outputs information for the user about ptrace not working. + +Index: coregrind/vgdb.c +=================================================================== +--- coregrind/vgdb.c (revision 13481) ++++ coregrind/vgdb.c (revision 13482) +@@ -691,7 +691,7 @@ + // runtime check not yet done. + // 0 : PTRACE_GETREGS runtime check has failed. + // 1 : PTRACE_GETREGS defined and runtime check ok. +-#ifdef PTRACE_GETREGS ++#ifdef HAVE_PTRACE_GETREGS + static int has_working_ptrace_getregs = -1; + #endif + +@@ -702,7 +702,7 @@ + Bool getregs (int pid, void *regs, long regs_bsz) + { + DEBUG(1, "getregs regs_bsz %ld\n", regs_bsz); +-# ifdef PTRACE_GETREGS ++# ifdef HAVE_PTRACE_GETREGS + if (has_working_ptrace_getregs) { + // Platforms having GETREGS + long res; +@@ -773,7 +773,7 @@ + DEBUG(1, "setregs regs_bsz %ld\n", regs_bsz); + // Note : the below is checking for GETREGS, not SETREGS + // as if one is defined and working, the other one should also work. +-# ifdef PTRACE_GETREGS ++# ifdef HAVE_PTRACE_GETREGS + if (has_working_ptrace_getregs) { + // Platforms having SETREGS + long res; +Index: configure.in +=================================================================== +--- configure.in (revision 13481) ++++ configure.in (revision 13482) +@@ -1040,6 +1040,25 @@ + + AM_CONDITIONAL([HAVE_GNU_STPNCPY], [test x$ac_have_gnu_stpncpy = xyes]) + ++# Check for PTRACE_GETREGS ++ ++AC_MSG_CHECKING([for PTRACE_GETREGS]) ++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ++#include ++#include ++#include ++]], [[ ++ void *p; ++ long res = ptrace (PTRACE_GETREGS, 0, p, p); ++]])], [ ++AC_MSG_RESULT([yes]) ++AC_DEFINE([HAVE_PTRACE_GETREGS], 1, ++ [Define to 1 if you have the `PTRACE_GETREGS' ptrace request.]) ++], [ ++AC_MSG_RESULT([no]) ++]) ++ ++ + # Check for CLOCK_MONOTONIC + + AC_MSG_CHECKING([for CLOCK_MONOTONIC]) diff --git a/abs/extra/valgrind/valgrind-3.8.1-xaddb.patch b/abs/extra/valgrind/valgrind-3.8.1-xaddb.patch new file mode 100644 index 0000000..ca5a597 --- /dev/null +++ b/abs/extra/valgrind/valgrind-3.8.1-xaddb.patch @@ -0,0 +1,34 @@ +Index: priv/guest_amd64_toIR.c +=================================================================== +--- VEX/priv/guest_amd64_toIR.c (revision 2580) ++++ VEX/priv/guest_amd64_toIR.c (revision 2581) +@@ -20268,6 +20268,14 @@ + delta = dis_movx_E_G ( vbi, pfx, delta, 2, sz, True ); + return delta; + ++ case 0xC0: { /* XADD Gb,Eb */ ++ Bool decode_OK = False; ++ delta = dis_xadd_G_E ( &decode_OK, vbi, pfx, 1, delta ); ++ if (!decode_OK) ++ goto decode_failure; ++ return delta; ++ } ++ + case 0xC1: { /* XADD Gv,Ev */ + Bool decode_OK = False; + delta = dis_xadd_G_E ( &decode_OK, vbi, pfx, sz, delta ); +@@ -27143,14 +27151,6 @@ + + /* =-=-=-=-=-=-=-=-=- XADD -=-=-=-=-=-=-=-=-=-= */ + +- case 0xC0: { /* XADD Gb,Eb */ +- Bool decode_OK = False; +- delta = dis_xadd_G_E ( &decode_OK, vbi, pfx, 1, delta ); +- if (!decode_OK) +- goto decode_failure; +- break; +- } +- + /* =-=-=-=-=-=-=-=-=- SGDT and SIDT =-=-=-=-=-=-=-=-=-=-= */ + + /* =-=-=-=-=-=-=-=-=- unimp2 =-=-=-=-=-=-=-=-=-=-= */ -- cgit v0.12