diff options
-rw-r--r-- | abs/extra/valgrind/PKGBUILD | 45 | ||||
-rw-r--r-- | abs/extra/valgrind/glibc-patch-version.patch | 52 | ||||
-rw-r--r-- | abs/extra/valgrind/valgrind-3.6.1-glibc-2.14.patch | 67 |
3 files changed, 164 insertions, 0 deletions
diff --git a/abs/extra/valgrind/PKGBUILD b/abs/extra/valgrind/PKGBUILD new file mode 100644 index 0000000..0ac6fd4 --- /dev/null +++ b/abs/extra/valgrind/PKGBUILD @@ -0,0 +1,45 @@ +# $Id$ +# Maintainer: Dan McGee <dan@archlinux.org> +# Maintainer: Allan McRae <allan@archlinux.org> + +pkgname=valgrind +pkgver=3.6.1 +pkgrel=2 +pkgdesc="A tool to help find memory-management problems in programs" +arch=('i686' 'x86_64') +license=('GPL') +url="http://valgrind.org/" +depends=('glibc>=2.14' 'glibc<2.15' 'perl') +makedepends=('gdb') +options=('!emptydirs') +source=(http://valgrind.org/downloads/${pkgname}-${pkgver}.tar.bz2 + valgrind-3.6.1-glibc-2.14.patch + glibc-patch-version.patch) +md5sums=('2c3aa122498baecc9d69194057ca88f5' + '560032ce5d27ef0c7c1af32c3fd45833' + 'b657f0ebdde3d9aefc9fd16f9e653702') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + # make sure our CFLAGS are respected + sed -i -e 's:^CFLAGS="-Wno-long-long":CFLAGS="$CFLAGS -Wno-long-long":' configure.in + + # glibc-2.14 compatibility + patch -Np1 -i ${srcdir}/valgrind-3.6.1-glibc-2.14.patch + + # prevent need to rebuild with glibc patch level version bumps + patch -Np1 -i ${srcdir}/glibc-patch-version.patch + + if [ "${CARCH}" = "x86_64" ]; then + ./configure --prefix=/usr --mandir=/usr/share/man --enable-only64bit + else + ./configure --prefix=/usr --mandir=/usr/share/man + fi + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install +} diff --git a/abs/extra/valgrind/glibc-patch-version.patch b/abs/extra/valgrind/glibc-patch-version.patch new file mode 100644 index 0000000..2c6830a --- /dev/null +++ b/abs/extra/valgrind/glibc-patch-version.patch @@ -0,0 +1,52 @@ +Saves having to rebuild valgrind on glibc-x.x.* patch level releases + +diff -Naur valgrind-3.5.0-old//glibc-2.X.supp.in valgrind-3.5.0/glibc-2.X.supp.in +--- valgrind-3.5.0-old//glibc-2.X.supp.in 2009-08-19 23:37:48.000000000 +1000 ++++ valgrind-3.5.0/glibc-2.X.supp.in 2010-05-22 19:43:08.088007038 +1000 +@@ -168,9 +168,9 @@ + Memcheck:Param + socketcall.sendto(msg) + fun:__sendto_nocancel +- obj:/*libc-@GLIBC_VERSION@.so +- obj:/*libc-@GLIBC_VERSION@.so +- obj:/*libc-@GLIBC_VERSION@.so ++ obj:/*libc-@GLIBC_VERSION@*.so ++ obj:/*libc-@GLIBC_VERSION@*.so ++ obj:/*libc-@GLIBC_VERSION@*.so + } + { + glibc24-64bit-padding-1c +@@ -180,7 +180,7 @@ + fun:__nscd_get_map_ref + fun:nscd_get*_r + fun:*nscd* +- obj:/*libc-@GLIBC_VERSION@.so ++ obj:/*libc-@GLIBC_VERSION@*.so + } + + +@@ -199,18 +199,18 @@ + Memcheck:Param + socketcall.sendto(msg) + fun:send +- obj:/*libc-@GLIBC_VERSION@.so +- obj:/*libc-@GLIBC_VERSION@.so +- obj:/*libc-@GLIBC_VERSION@.so ++ obj:/*libc-@GLIBC_VERSION@*.so ++ obj:/*libc-@GLIBC_VERSION@*.so ++ obj:/*libc-@GLIBC_VERSION@*.so + } + { + X11-64bit-padding-4b + Memcheck:Param + socketcall.send(msg) + fun:send +- obj:/*libc-@GLIBC_VERSION@.so +- obj:/*libc-@GLIBC_VERSION@.so +- obj:/*libc-@GLIBC_VERSION@.so ++ obj:/*libc-@GLIBC_VERSION@*.so ++ obj:/*libc-@GLIBC_VERSION@*.so ++ obj:/*libc-@GLIBC_VERSION@*.so + } + + ##----------------------------------------------------------------------## diff --git a/abs/extra/valgrind/valgrind-3.6.1-glibc-2.14.patch b/abs/extra/valgrind/valgrind-3.6.1-glibc-2.14.patch new file mode 100644 index 0000000..7fd2170 --- /dev/null +++ b/abs/extra/valgrind/valgrind-3.6.1-glibc-2.14.patch @@ -0,0 +1,67 @@ +--- valgrind/configure.in.jj 2010-10-21 03:14:02.000000000 +0200 ++++ valgrind/configure.in 2010-11-05 17:09:18.674455299 +0100 +@@ -749,6 +759,13 @@ case "${GLIBC_VERSION}" in + DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" + DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" + ;; ++ 2.14) ++ AC_MSG_RESULT(2.14 family) ++ AC_DEFINE([GLIBC_2_14], 1, [Define to 1 if you're using glibc 2.14.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}" ++ ;; + 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]) +@@ -762,7 +779,7 @@ case "${GLIBC_VERSION}" in + + *) + AC_MSG_RESULT([unsupported version ${GLIBC_VERSION}]) +- AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.13]) ++ AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.14]) + AC_MSG_ERROR([or AIX 5.1 or 5.2 or 5.3 GLIBC_VERSION]) + AC_MSG_ERROR([or Darwin libc]) + ;; +--- valgrind/config.h.in.jj 2010-10-20 22:20:49.000000000 +0200 ++++ valgrind/config.h.in 2010-11-05 17:08:33.863454886 +0100 +@@ -33,6 +33,9 @@ + /* Define to 1 if you're using glibc 2.13.x */ + #undef GLIBC_2_13 + ++/* Define to 1 if you're using glibc 2.14.x */ ++#undef GLIBC_2_14 ++ + /* Define to 1 if you're using glibc 2.2.x */ + #undef GLIBC_2_2 + +--- valgrind/configure.jj 2010-10-21 03:16:18.000000000 +0200 ++++ valgrind/configure 2010-11-05 17:09:39.163455396 +0100 +@@ -6367,6 +6389,18 @@ $as_echo "#define GLIBC_2_13 1" >>confde + DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" + DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" + ;; ++ 2.14) ++ echo "$as_me:$LINENO: result: 2.14 family" >&5 ++echo "${ECHO_T}2.14 family" >&6 ++ ++cat >>confdefs.h <<\_ACEOF ++#define GLIBC_2_14 1 ++_ACEOF ++ ++ 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}" ++ ;; + aix5) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: AIX 5.1 or 5.2 or 5.3" >&5 + $as_echo "AIX 5.1 or 5.2 or 5.3" >&6; } +@@ -6387,7 +6421,7 @@ $as_echo "#define DARWIN_LIBC 1" >>confd + *) + { $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.13" "$LINENO" 5 ++ as_fn_error "Valgrind requires glibc version 2.2 - 2.14" "$LINENO" 5 + as_fn_error "or AIX 5.1 or 5.2 or 5.3 GLIBC_VERSION" "$LINENO" 5 + as_fn_error "or Darwin libc" "$LINENO" 5 + ;; |