Date: Saturday, May 22, 2010 @ 06:20:12 Author: allan Revision: 80795
upgpkg: valgrind 3.5.0-4 glibc-2.12 rebuild, patch for glibc-2.12.x compatibility, build fix for current toolchain Added: valgrind/trunk/glibc-2.12.patch valgrind/trunk/glibc-patch-version.patch valgrind/trunk/valgrind-3.5.0-stat_h.patch Modified: valgrind/trunk/PKGBUILD -----------------------------+ PKGBUILD | 23 +++++++-- glibc-2.12.patch | 99 ++++++++++++++++++++++++++++++++++++++++++ glibc-patch-version.patch | 52 ++++++++++++++++++++++ valgrind-3.5.0-stat_h.patch | 48 ++++++++++++++++++++ 4 files changed, 216 insertions(+), 6 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2010-05-22 10:12:23 UTC (rev 80794) +++ PKGBUILD 2010-05-22 10:20:12 UTC (rev 80795) @@ -4,21 +4,28 @@ pkgname=valgrind pkgver=3.5.0 -pkgrel=3 +pkgrel=4 pkgdesc="A tool to help find memory-management problems in programs" arch=('i686' 'x86_64') license=('GPL') url="http://valgrind.org/" -depends=('glibc>=2.11' 'glibc<2.12' 'perl') +depends=('glibc>=2.12' 'glibc<2.13' 'perl') makedepends=('gdb') -options=(!emptydirs) -source=(http://valgrind.org/downloads/${pkgname}-${pkgver}.tar.bz2 glibc211.diff) +options=('!emptydirs') +source=(http://valgrind.org/downloads/${pkgname}-${pkgver}.tar.bz2 + glibc-patch-version.patch + glibc-2.12.patch + valgrind-3.5.0-stat_h.patch) md5sums=('f03522a4687cf76c676c9494fcc0a517' - 'bb137ce7378b6a2d1ad203418da8b68f') + 'b657f0ebdde3d9aefc9fd16f9e653702' + 'feb92ea98059b4e57239220e4b695f9d' + 'e435a0debedf207b279256eff50c68f6') build() { cd ${srcdir}/${pkgname}-${pkgver} - patch -Np0 -i ${srcdir}/glibc211.diff || return 1 + patch -Np1 -i ${srcdir}/glibc-patch-version.patch || return 1 + patch -Np1 -i ${srcdir}/glibc-2.12.patch || return 1 + patch -Np1 -i ${srcdir}/valgrind-3.5.0-stat_h.patch || return 1 autoreconf # make sure our CFLAGS are respected @@ -30,5 +37,9 @@ ./configure --prefix=/usr --mandir=/usr/share/man || return 1 fi make || return 1 +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} make DESTDIR=${pkgdir} install || return 1 } Added: glibc-2.12.patch =================================================================== --- glibc-2.12.patch (rev 0) +++ glibc-2.12.patch 2010-05-22 10:20:12 UTC (rev 80795) @@ -0,0 +1,99 @@ +diff -Naur valgrind-3.5.0-old//config.h.in valgrind-3.5.0/config.h.in +--- valgrind-3.5.0-old//config.h.in 2009-08-19 23:39:05.000000000 +1000 ++++ valgrind-3.5.0/config.h.in 2010-05-22 19:55:31.065364428 +1000 +@@ -15,6 +15,9 @@ + /* Define to 1 if you're using glibc 2.10.x */ + #undef GLIBC_2_10 + ++/* Define to 1 if you're using glibc 2.12.x */ ++#undef GLIBC_2_12 ++ + /* Define to 1 if you're using glibc 2.2.x */ + #undef GLIBC_2_2 + +diff -Naur valgrind-3.5.0-old//configure valgrind-3.5.0/configure +--- valgrind-3.5.0-old//configure 2009-08-19 23:44:07.000000000 +1000 ++++ valgrind-3.5.0/configure 2010-05-22 20:01:04.822065382 +1000 +@@ -5025,6 +5025,29 @@ + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + ++#include <features.h> ++#ifdef __GNU_LIBRARY__ ++ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 12) ++ GLIBC_212 ++ #endif ++#endif ++ ++_ACEOF ++if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | ++ $EGREP "GLIBC_212" >/dev/null 2>&1; then ++ GLIBC_VERSION="2.12" ++fi ++rm -f conftest* ++ ++ ++cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++ ++ + #include <standards.h> + #if defined(_AIXVERSION_510) || defined(_AIXVERSION_520) || defined(_AIXVERSION_530) + AIX5_LIBC +@@ -5171,6 +5194,18 @@ + _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}" ++ ;; ++ 2.12) ++ echo "$as_me:$LINENO: result: 2.12 family" >&5 ++echo "${ECHO_T}2.12 family" >&6 ++ ++cat >>confdefs.h <<\_ACEOF ++#define GLIBC_2_12 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}" + ;; +diff -Naur valgrind-3.5.0-old//configure.in valgrind-3.5.0/configure.in +--- valgrind-3.5.0-old//configure.in 2009-08-19 23:37:48.000000000 +1000 ++++ valgrind-3.5.0/configure.in 2010-05-22 19:54:43.788423252 +1000 +@@ -656,6 +656,16 @@ + ], + GLIBC_VERSION="2.10") + ++AC_EGREP_CPP([GLIBC_212], [ ++#include <features.h> ++#ifdef __GNU_LIBRARY__ ++ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 12) ++ GLIBC_212 ++ #endif ++#endif ++], ++GLIBC_VERSION="2.12") ++ + AC_EGREP_CPP([AIX5_LIBC], [ + #include <standards.h> + #if defined(_AIXVERSION_510) || defined(_AIXVERSION_520) || defined(_AIXVERSION_530) +@@ -741,6 +751,13 @@ + 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.12) ++ AC_MSG_RESULT(2.12 family) ++ AC_DEFINE([GLIBC_2_12], 1, [Define to 1 if you're using glibc 2.12.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) Added: glibc-patch-version.patch =================================================================== --- glibc-patch-version.patch (rev 0) +++ glibc-patch-version.patch 2010-05-22 10:20:12 UTC (rev 80795) @@ -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:/*li...@glibc_version@.so +- obj:/*li...@glibc_version@.so +- obj:/*li...@glibc_version@.so ++ obj:/*li...@glibc_version@*.so ++ obj:/*li...@glibc_version@*.so ++ obj:/*li...@glibc_version@*.so + } + { + glibc24-64bit-padding-1c +@@ -180,7 +180,7 @@ + fun:__nscd_get_map_ref + fun:nscd_get*_r + fun:*nscd* +- obj:/*li...@glibc_version@.so ++ obj:/*li...@glibc_version@*.so + } + + +@@ -199,18 +199,18 @@ + Memcheck:Param + socketcall.sendto(msg) + fun:send +- obj:/*li...@glibc_version@.so +- obj:/*li...@glibc_version@.so +- obj:/*li...@glibc_version@.so ++ obj:/*li...@glibc_version@*.so ++ obj:/*li...@glibc_version@*.so ++ obj:/*li...@glibc_version@*.so + } + { + X11-64bit-padding-4b + Memcheck:Param + socketcall.send(msg) + fun:send +- obj:/*li...@glibc_version@.so +- obj:/*li...@glibc_version@.so +- obj:/*li...@glibc_version@.so ++ obj:/*li...@glibc_version@*.so ++ obj:/*li...@glibc_version@*.so ++ obj:/*li...@glibc_version@*.so + } + + ##----------------------------------------------------------------------## Added: valgrind-3.5.0-stat_h.patch =================================================================== --- valgrind-3.5.0-stat_h.patch (rev 0) +++ valgrind-3.5.0-stat_h.patch 2010-05-22 10:20:12 UTC (rev 80795) @@ -0,0 +1,48 @@ +--- valgrind/include/vki/vki-amd64-linux.h.jj 2009-08-19 09:37:07.000000000 -0400 ++++ valgrind/include/vki/vki-amd64-linux.h 2010-01-20 04:41:52.662552000 -0500 +@@ -310,6 +310,9 @@ struct vki_stat { + long st_blksize; + long st_blocks; /* Number 512-byte blocks allocated. */ + ++#undef st_atime ++#undef st_mtime ++#undef st_ctime + unsigned long st_atime; + unsigned long st_atime_nsec; + unsigned long st_mtime; +--- valgrind/include/vki/vki-x86-linux.h.jj 2009-08-19 09:37:07.000000000 -0400 ++++ valgrind/include/vki/vki-x86-linux.h 2010-01-20 04:42:19.649995000 -0500 +@@ -348,6 +348,9 @@ struct vki_stat { + unsigned long st_size; + unsigned long st_blksize; + unsigned long st_blocks; ++#undef st_atime ++#undef st_mtime ++#undef st_ctime + unsigned long st_atime; + unsigned long st_atime_nsec; + unsigned long st_mtime; +--- valgrind/include/vki/vki-ppc32-linux.h.jj 2009-08-19 09:37:07.000000000 -0400 ++++ valgrind/include/vki/vki-ppc32-linux.h 2010-01-20 04:42:44.861651000 -0500 +@@ -392,6 +392,9 @@ struct vki_stat { + long st_size; + unsigned long st_blksize; + unsigned long st_blocks; ++#undef st_atime ++#undef st_mtime ++#undef st_ctime + unsigned long st_atime; + unsigned long st_atime_nsec; + unsigned long st_mtime; +--- valgrind/include/vki/vki-ppc64-linux.h.jj 2009-08-19 09:37:07.000000000 -0400 ++++ valgrind/include/vki/vki-ppc64-linux.h 2010-01-20 04:43:05.579922000 -0500 +@@ -428,6 +428,9 @@ struct vki_stat { + long st_size; + unsigned long st_blksize; + unsigned long st_blocks; ++#undef st_atime ++#undef st_mtime ++#undef st_ctime + unsigned long st_atime; + unsigned long st_atime_nsec; + unsigned long st_mtime;