From 723e4980c0168ec25178b3e15a1eddd9ef81e4ba Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Mon, 24 Nov 2014 21:32:48 +0000
Subject: valgrind: update to 3.10.0

---
 abs/extra/valgrind/PKGBUILD                        | 39 +++++------
 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 ----------
 abs/extra/valgrind/valgrind-3.9.0-glibc-2.20.patch | 37 ++++++++++
 5 files changed, 57 insertions(+), 164 deletions(-)
 delete mode 100644 abs/extra/valgrind/valgrind-3.8.1-glibc-2.18.patch
 delete mode 100644 abs/extra/valgrind/valgrind-3.8.1-ptrace-build-fix.patch
 delete mode 100644 abs/extra/valgrind/valgrind-3.8.1-xaddb.patch
 create mode 100644 abs/extra/valgrind/valgrind-3.9.0-glibc-2.20.patch

diff --git a/abs/extra/valgrind/PKGBUILD b/abs/extra/valgrind/PKGBUILD
index 1e65355..61c9997 100644
--- a/abs/extra/valgrind/PKGBUILD
+++ b/abs/extra/valgrind/PKGBUILD
@@ -3,32 +3,33 @@
 # Maintainer: Allan McRae <allan@archlinux.org>
 
 pkgname=valgrind
-pkgver=3.9.0
+pkgver=3.10.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.18' 'glibc<2.19' 'perl')
-makedepends=('gdb')
+pkgdesc='A tool to help find memory-management problems in programs'
+arch=(i686 x86_64)
+license=(GPL)
+url='http://valgrind.org/'
+depends=('glibc>=2.20' 'glibc<2.21' 'perl')
+makedepends=('gdb' 'openmpi')
+optdepends=('openmpi: MPI support')
 options=('staticlibs' '!emptydirs')
-source=(http://valgrind.org/downloads/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('0947de8112f946b9ce64764af7be6df2')
+source=(http://valgrind.org/downloads/$pkgname-$pkgver.tar.bz2
+        valgrind-3.9.0-glibc-2.20.patch)
+sha1sums=('aec0b8cd042ec36c8cce4f6027b98627ab202f26'
+          '2080c3d44de20857f18b03a93404a8f3d3721f7e')
 
+prepare() {
+  cd $pkgname-$pkgver
+  patch -p1 -i "$srcdir"/valgrind-3.9.0-glibc-2.20.patch
+}
 
 build() {
-  cd ${srcdir}/${pkgname}-${pkgver}
-
-  if [[ ${CARCH} = "x86_64" ]]; then
-    ./configure --prefix=/usr --mandir=/usr/share/man --enable-only64bit
-  else
-    ./configure --prefix=/usr --mandir=/usr/share/man
-  fi
-
+  cd $pkgname-$pkgver
+  ./configure --prefix=/usr --mandir=/usr/share/man --with-mpicc=mpicc
   make
 }
 
 package() {
-  cd ${srcdir}/${pkgname}-${pkgver}
-  make DESTDIR=${pkgdir} install
+  cd $pkgname-$pkgver
+  make DESTDIR="$pkgdir" install
 }
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
deleted file mode 100644
index 9f471ad..0000000
--- a/abs/extra/valgrind/valgrind-3.8.1-glibc-2.18.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-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
deleted file mode 100644
index 89af000..0000000
--- a/abs/extra/valgrind/valgrind-3.8.1-ptrace-build-fix.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-Index: coregrind/vgdb.c
-===================================================================
---- coregrind/vgdb.c	(revision 13470)
-+++ coregrind/vgdb.c	(revision 13471)
-@@ -100,11 +100,10 @@
- 
- #if defined(PTRACEINVOKER)
- #include <sys/user.h>
- #if defined(VGO_linux)
- #  include <sys/prctl.h>
--#  include <linux/ptrace.h>
- #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 <stddef.h>
-+#include <sys/ptrace.h>
-+#include <sys/user.h>
-+]], [[
-+  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
deleted file mode 100644
index ca5a597..0000000
--- a/abs/extra/valgrind/valgrind-3.8.1-xaddb.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-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 =-=-=-=-=-=-=-=-=-=-= */
diff --git a/abs/extra/valgrind/valgrind-3.9.0-glibc-2.20.patch b/abs/extra/valgrind/valgrind-3.9.0-glibc-2.20.patch
new file mode 100644
index 0000000..d9c622e
--- /dev/null
+++ b/abs/extra/valgrind/valgrind-3.9.0-glibc-2.20.patch
@@ -0,0 +1,37 @@
+diff -Naur valgrind-3.9.0-orig/configure valgrind-3.9.0/configure
+--- valgrind-3.9.0-orig/configure	2013-11-01 09:33:32.000000000 +1000
++++ valgrind-3.9.0/configure	2014-02-08 09:28:06.063248544 +1000
+@@ -6689,6 +6689,16 @@
+ 	DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
+ 	DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
+ 	;;
++     2.20)
++	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: 2.20 family" >&5
++$as_echo "2.20 family" >&6; }
++
++$as_echo "#define GLIBC_2_20 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; }
+diff -Naur valgrind-3.9.0-orig/configure.ac valgrind-3.9.0/configure.ac
+--- valgrind-3.9.0-orig/configure.ac	2013-11-01 09:28:16.000000000 +1000
++++ valgrind-3.9.0/configure.ac	2014-02-08 09:27:38.870385366 +1000
+@@ -918,6 +918,13 @@
+ 	DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
+ 	DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
+ 	;;
++     2.20)
++	AC_MSG_RESULT(2.20 family)
++	AC_DEFINE([GLIBC_2_20], 1, [Define to 1 if you're using glibc 2.20.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])
-- 
cgit v0.12