diff options
author | Ned Ludd <solar@gentoo.org> | 2004-06-17 15:57:43 +0000 |
---|---|---|
committer | Ned Ludd <solar@gentoo.org> | 2004-06-17 15:57:43 +0000 |
commit | 24d05c5d31ebf899db23b057a27a1636ff2d4f1a (patch) | |
tree | 11ed30f6ef3984e3418f923371796ee550abf562 /dev-util | |
parent | fixed SRC_URI (diff) | |
download | historical-24d05c5d31ebf899db23b057a27a1636ff2d4f1a.tar.gz historical-24d05c5d31ebf899db23b057a27a1636ff2d4f1a.tar.bz2 historical-24d05c5d31ebf899db23b057a27a1636ff2d4f1a.zip |
added patch from bug 54068 to make valgrind pic aware
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/valgrind/ChangeLog | 114 | ||||
-rw-r--r-- | dev-util/valgrind/Manifest | 7 | ||||
-rw-r--r-- | dev-util/valgrind/files/digest-valgrind-2.1.1-r1 | 1 | ||||
-rw-r--r-- | dev-util/valgrind/files/valgrind-2.1.1-pic.patch | 259 | ||||
-rw-r--r-- | dev-util/valgrind/valgrind-2.1.1-r1.ebuild | 46 |
5 files changed, 317 insertions, 110 deletions
diff --git a/dev-util/valgrind/ChangeLog b/dev-util/valgrind/ChangeLog index bb36c1d25118..8397b0346a2b 100644 --- a/dev-util/valgrind/ChangeLog +++ b/dev-util/valgrind/ChangeLog @@ -1,112 +1,10 @@ # ChangeLog for dev-util/valgrind -# Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/valgrind/ChangeLog,v 1.27 2004/05/18 00:46:25 caleb Exp $ +# Copyright 2000-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/valgrind/ChangeLog,v 1.28 2004/06/17 15:57:43 solar Exp $ -*valgrind-2.1.0 (17 May 2004) +*valgrind-2.1.1-r1 (17 Jun 2004) - 17 May 2004; Caleb Tennis <caleb@gentoo.org> +valgrind-2.1.0.ebuild: - Readd 2.1.0 as it had ppc in it - - 15 May 2004; Caleb Tennis <caleb@gentoo.org> : - Add nostrip as a restriction (see bug #49147) - - 01 May 2004; David Holm <dholm@gentoo.org> valgrind-2.1.0.ebuild: - Added experimental ppc version. - - 27 Apr 2004; Aron Griffis <agriffis@gentoo.org> valgrind-2.0.0.ebuild: - Add inherit eutils - -*valgrind-2.1.1 (05 Apr 2004) - - 05 Apr 2004; root <root@gentoo.org> valgrind-2.1.1.ebuild: - New version - fixes nptl problems. - - 04 Mar 2004; Michael Sterrett <mr_bones_@gentoo.org> valgrind-2.0.0.ebuild, - valgrind-2.1.0.ebuild: - filter-flags into src_compile; tidy - - 27 Dec 2003; Caleb Tennis <caleb@gentoo.org> valgrind-1.9.6.ebuild: - remove old version - - 17 Dec 2003; Brandon Hale <tseng@gentoo.org> valgrind-2.1.0.ebuild: - Keyworded inital commit to ~x86 - -*valgrind-2.1.0 (17 Dec 2003) - - 17 Dec 2003; Caleb Tennis <caleb@gentoo.org> valgrind-2.1.0.ebuild: - Version bump - - 14 Nov 2003; Caleb Tennis <caleb@gentoo.org> valgrind-2.0.0.ebuild: - Get rid of patch - -*valgrind-2.0.0 (13 Nov 2003) - - 13 Nov 2003; Caleb Tennis <caleb@gentoo.org> valgrind-2.0.0.ebuild, - valgrind-2.0_pre20031012.ebuild: - Version bump, remove prerelease, mark as stable. - - 05 Nov 2003; Caleb Tennis <caleb@gentoo.org> valgrind-1.0.4-r1.ebuild, - valgrind-1.0.4.ebuild, valgrind-1.9.3.ebuild, - valgrind-2.0_pre20030725.ebuild: - Remove stale versions - -*valgrind-2.0_pre20031012 (17 Oct 2003) - - 17 Oct 2003; <solar@gentoo.org> valgrind-2.0_pre20031012.ebuild: - version bump, thank markgilbert@hotpop.com for reporting this via bugzilla. - Somebody running kernel 2.6 will need to test and see if we still need to add - the files/valgrind-configure.in-2.6.diff - - 15 Aug 2003; <solar@gentoo.org> valgrind-2.0_pre20030725.ebuild: - Added a configure.in patch for 2.6 - -*valgrind-2.0_pre20030725 (09 Aug 2003) - - 09 Aug 2003; <solar@gentoo.org> metadata.xml, - valgrind-2.0_pre20030725.ebuild: - version bump Bug 24640, added a metadata.xml herd=no-herd - - 13 Jun 2003; <msterret@gentoo.org> valgrind-1.9.6.ebuild: - Add FAQ.txt per Bug 22744 - -*valgrind-1.9.6 (12 May 2003) - - 12 May 2003; Matthew Kennedy <mkennedy@gentoo.org> valgrind-1.9.6.ebuild: - minor version bump - -*valgrind-1.9.3 (09 Feb 2003) - - 06 Apr 2003; Dan Armak <danarmak@gentoo.org> valgrind-1.9.3.ebuild: - Add stable x86 keyword. - - 09 Feb 2003; Bruce A. Locke <blocke@gentoo.org> valgrind-1.9.3.ebuild: - Version bump to 1.9.3 - -*valgrind-1.0.4-r1 (02 Jan 2003) - - 02 Jan 2003; Dan Armak <danarmak@gentoo.org> ChangeLog : - - Add a patch for support of call tree tracing, from the kcachegrind - site. Please test. Closes several bugs. - - 06 Dec 2002; Rodney Rees <manson@gentoo.org> : changed sparc ~sparc keywords - -*valgrind-1.0.4 (23 Oct 2002) - - 06 Nov 2002; Bruce A. Locke <blocke@shivan.org> valgrind-1.0.4.ebuild: - Marking as stable (no one has complained and it seems to work fine) - - 23 Oct 2002; Bruce A. Locke <blocke@shivan.org> valgrind-1.0.4.ebuild: - Version bump with gcc 3.1+ fixes mentioned on the upstream website. - -*valgrind-1.0.3 (29 Sep 2002) - - 29 Sep 2002; Bruce A. Locke <blocke@shivan.org> valgrind-1.0.3.ebuild: - Version bump and possible upstream gcc 3.2 fix - -*valgrind-1.0.0 (03 Aug 2002) - - 03 Aug 2002; Bruce A. Locke <blocke@shivan.org> valgrind-1.0.0.ebuild, files/digest-valgrind-1.0.0: - Initial ebuild based on contribution from mattam@netcourrier.com - (Matthieu Sozeau) and vapier@netzero.com (SpanKY) + 17 Jun 2004; <solar@gentoo.org> valgrind-2.1.1-r1.ebuild, + files/valgrind-2.1.1-pic.patch: + added patch from bug 54068 to make valgrind pic aware diff --git a/dev-util/valgrind/Manifest b/dev-util/valgrind/Manifest index 17dd5d7ddbbb..c98de20c4382 100644 --- a/dev-util/valgrind/Manifest +++ b/dev-util/valgrind/Manifest @@ -1,9 +1,12 @@ +MD5 fb2ef442bc62ab127e4422577e135fb1 ChangeLog 400 MD5 aaf060111c210539477044114583ffbb valgrind-2.0.0.ebuild 1178 MD5 a564468f683b7bd0520abe72f013e687 valgrind-2.1.0.ebuild 1023 -MD5 86ed88cf05fbd180372314d2ebb0a05a ChangeLog 3752 MD5 be715e961077ad35a6b2b5dc751d4885 valgrind-2.1.1.ebuild 931 MD5 f4b910c589410d7ec055b9bda08a32b1 metadata.xml 1001 -MD5 95845f5c26fd00027163547288c17e54 files/valgrind-configure.in-2.6.diff 336 +MD5 c51fc4c97e31568d5ab3c61ff2458205 valgrind-2.1.1-r1.ebuild 1141 MD5 286d10f4514e8a85360ce6ba5654ae93 files/digest-valgrind-2.0.0 67 MD5 be207583952b71dd60064b03aed099b9 files/digest-valgrind-2.1.0 67 MD5 f50184c09d0376e66b1b79d0b45e94c2 files/digest-valgrind-2.1.1 67 +MD5 95845f5c26fd00027163547288c17e54 files/valgrind-configure.in-2.6.diff 336 +MD5 f50184c09d0376e66b1b79d0b45e94c2 files/digest-valgrind-2.1.1-r1 67 +MD5 1ba26123d6543d9b4faa808595fbb5b8 files/valgrind-2.1.1-pic.patch 8338 diff --git a/dev-util/valgrind/files/digest-valgrind-2.1.1-r1 b/dev-util/valgrind/files/digest-valgrind-2.1.1-r1 new file mode 100644 index 000000000000..97e55a36aa84 --- /dev/null +++ b/dev-util/valgrind/files/digest-valgrind-2.1.1-r1 @@ -0,0 +1 @@ +MD5 0010c3e8f054ecc633151c62044b646d valgrind-2.1.1.tar.bz2 923532 diff --git a/dev-util/valgrind/files/valgrind-2.1.1-pic.patch b/dev-util/valgrind/files/valgrind-2.1.1-pic.patch new file mode 100644 index 000000000000..d598f5523103 --- /dev/null +++ b/dev-util/valgrind/files/valgrind-2.1.1-pic.patch @@ -0,0 +1,259 @@ +Index: cachegrind/cg_main.c +=================================================================== +RCS file: /home/kde/valgrind/cachegrind/cg_main.c,v +retrieving revision 1.65 +diff -u -u -w -r1.65 cg_main.c +--- cachegrind/cg_main.c 15 Mar 2004 16:43:57 -0000 1.65 ++++ cachegrind/cg_main.c 16 Jun 2004 18:20:54 -0000 +@@ -1177,15 +1177,6 @@ + * them. + */ + +-static __inline__ void cpuid(Int n, UInt *a, UInt *b, UInt *c, UInt *d) +-{ +- __asm__ __volatile__ ( +- "cpuid" +- : "=a" (*a), "=b" (*b), "=c" (*c), "=d" (*d) /* output */ +- : "0" (n) /* input */ +- ); +-} +- + static void micro_ops_warn(Int actual_size, Int used_size, Int line_size) + { + VG_(message)(Vg_DebugMsg, +@@ -1214,7 +1205,7 @@ + return -1; + } + +- cpuid(2, (Int*)&info[0], (Int*)&info[4], ++ VG_(cpuid)(2, (Int*)&info[0], (Int*)&info[4], + (Int*)&info[8], (Int*)&info[12]); + trials = info[0] - 1; /* AL register - bits 0..7 of %eax */ + info[0] = 0x0; /* reset AL */ +@@ -1358,10 +1349,10 @@ + Int AMD_cache_info(cache_t* I1c, cache_t* D1c, cache_t* L2c) + { + UInt ext_level; +- Int dummy, model; +- Int I1i, D1i, L2i; ++ UInt dummy, model; ++ UInt I1i, D1i, L2i; + +- cpuid(0x80000000, &ext_level, &dummy, &dummy, &dummy); ++ VG_(cpuid)(0x80000000, &ext_level, &dummy, &dummy, &dummy); + + if (0 == (ext_level & 0x80000000) || ext_level < 0x80000006) { + VG_(message)(Vg_UserMsg, +@@ -1370,10 +1361,10 @@ + return -1; + } + +- cpuid(0x80000005, &dummy, &dummy, &D1i, &I1i); +- cpuid(0x80000006, &dummy, &dummy, &L2i, &dummy); ++ VG_(cpuid)(0x80000005, &dummy, &dummy, &D1i, &I1i); ++ VG_(cpuid)(0x80000006, &dummy, &dummy, &L2i, &dummy); + +- cpuid(0x1, &model, &dummy, &dummy, &dummy); ++ VG_(cpuid)(0x1, &model, &dummy, &dummy, &dummy); + /*VG_(message)(Vg_UserMsg,"CPU model %04x",model);*/ + + /* Check for Duron bug */ +@@ -1426,7 +1417,7 @@ + /* Trap for illegal instruction, in case it's a really old processor that + * doesn't support CPUID. */ + if (__builtin_setjmp(cpuid_jmpbuf) == 0) { +- cpuid(0, &level, (int*)&vendor_id[0], ++ VG_(cpuid)(0, &level, (int*)&vendor_id[0], + (int*)&vendor_id[8], (int*)&vendor_id[4]); + vendor_id[12] = '\0'; + +Index: coregrind/Makefile.am +=================================================================== +RCS file: /home/kde/valgrind/coregrind/Makefile.am,v +retrieving revision 1.71 +diff -u -u -w -r1.71 Makefile.am +--- coregrind/Makefile.am 16 Apr 2004 23:02:28 -0000 1.71 ++++ coregrind/Makefile.am 16 Jun 2004 18:20:55 -0000 +@@ -75,7 +75,8 @@ + vg_toolint.c \ + vg_translate.c \ + vg_transtab.c \ +- vg_ldt.c ++ vg_ldt.c \ ++ vg_cpuid.S + stage2_DEPENDENCIES = $(srcdir)/valgrind.vs x86/stage2.lds + stage2_LDFLAGS=-Wl,--export-dynamic -Wl,-e,_ume_entry -g \ + -Wl,-defsym,kickstart_base=0xb8000000 \ +Index: coregrind/vg_cpuid.S +=================================================================== +RCS file: coregrind/vg_cpuid.S +diff -N coregrind/vg_cpuid.S +--- /dev/null 1 Jan 1970 00:00:00 -0000 ++++ coregrind/vg_cpuid.S 16 Jun 2004 18:20:55 -0000 +@@ -0,0 +1,77 @@ ++ ++##--------------------------------------------------------------------## ++##--- Support for determining CPU characteristics. ---## ++##--- vg_cpuid.S ---## ++##--------------------------------------------------------------------## ++ ++/* ++ This file is part of Valgrind, an extensible x86 protected-mode ++ emulator for monitoring program execution on x86-Unixes. ++ ++ Copyright (C) 2000-2004 Julian Seward ++ jseward@acm.org ++ ++ This program is free software; you can redistribute it and/or ++ modify it under the terms of the GNU General Public License as ++ published by the Free Software Foundation; either version 2 of the ++ License, or (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, but ++ WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA ++ 02111-1307, USA. ++ ++ The GNU General Public License is contained in the file COPYING. ++*/ ++ ++#include "vg_constants.h" ++#include "vg_unistd.h" ++ ++/* ++ int VG_(cpuid)(UInt eax, ++ UInt *eax_ret, UInt *ebx_ret, UInt *ecx_ret, UInt *edx_ret) ++ */ ++.globl VG_(cpuid) ++VG_(cpuid): ++ pushl %ebp ++ movl %esp, %ebp ++ pushl %eax ++ pushl %ebx ++ pushl %ecx ++ pushl %edx ++ pushl %esi ++ movl 8(%ebp), %eax ++ cpuid ++ movl 12(%ebp), %esi ++ testl %esi, %esi ++ jz 1f ++ movl %eax, (%esi) ++1: ++ movl 16(%ebp), %esi ++ testl %esi, %esi ++ jz 2f ++ movl %ebx, (%esi) ++2: ++ movl 20(%ebp), %esi ++ testl %esi, %esi ++ jz 3f ++ movl %ecx, (%esi) ++3: ++ movl 24(%ebp), %esi ++ testl %esi, %esi ++ jz 4f ++ movl %edx, (%esi) ++4: ++ popl %esi ++ popl %edx ++ popl %ecx ++ popl %ebx ++ popl %eax ++ movl %ebp, %esp ++ popl %ebp ++ ret +Index: coregrind/vg_to_ucode.c +=================================================================== +RCS file: /home/kde/valgrind/coregrind/vg_to_ucode.c,v +retrieving revision 1.138 +diff -u -u -w -r1.138 vg_to_ucode.c +--- coregrind/vg_to_ucode.c 2 Jun 2004 14:48:16 -0000 1.138 ++++ coregrind/vg_to_ucode.c 16 Jun 2004 18:20:57 -0000 +@@ -95,29 +95,6 @@ + return flag_is_changeable(EFlagID); + } + +-static inline UInt cpuid_eax(UInt eax) +-{ +- asm("cpuid" : "=a" (eax) : "0" (eax) : "bx", "cx", "dx"); +- return eax; +-} +- +-static inline void cpuid(UInt eax, +- UInt *eax_ret, UInt *ebx_ret, UInt *ecx_ret, UInt *edx_ret) +-{ +- UInt ebx, ecx, edx; +- +- asm("cpuid" : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx) : "0" (eax)); +- +- if (eax_ret) +- *eax_ret = eax; +- if (ebx_ret) +- *ebx_ret = ebx; +- if (ecx_ret) +- *ecx_ret = ecx; +- if (edx_ret) +- *edx_ret = edx; +-} +- + static void get_cpu_features(void) + { + Char vendorstr[13]; +@@ -130,7 +107,7 @@ + + cpu_features[VG_INT_FEAT] |= (1 << (VG_X86_FEAT_CPUID%32)); + +- cpuid(0, &cpuid_level, (UInt *)&vendorstr[0], (UInt *)&vendorstr[8], (UInt *)&vendorstr[4]); ++ VG_(cpuid)(0, &cpuid_level, (UInt *)&vendorstr[0], (UInt *)&vendorstr[8], (UInt *)&vendorstr[4]); + vendorstr[12] = '\0'; + + for(i = 0; i < sizeof(cpu_vendors)/sizeof(*cpu_vendors); i++) +@@ -140,12 +117,12 @@ + } + + if (cpuid_level >= 1) +- cpuid(1, NULL, NULL, &cpu_features[VG_EXT_FEAT], &cpu_features[VG_X86_FEAT]); ++ VG_(cpuid)(1, NULL, NULL, &cpu_features[VG_EXT_FEAT], &cpu_features[VG_X86_FEAT]); + + switch(cpu_vendor) { + case VG_CPU_VENDOR_AMD: + /* get AMD-specific flags */ +- cpuid(0x80000001, NULL, NULL, NULL, &cpu_features[VG_AMD_FEAT]); ++ VG_(cpuid)(0x80000001, NULL, NULL, NULL, &cpu_features[VG_AMD_FEAT]); + break; + + default: +@@ -259,7 +236,7 @@ + if (cpuid_level == -2) + get_cpu_features(); /* for cpu_vendor */ + +- cpuid(op, &eax, &ebx, &ecx, &edx); ++ VG_(cpuid)(op, &eax, &ebx, &ecx, &edx); + + /* Common mangling */ + switch(op) { +Index: include/vg_skin.h.base +=================================================================== +RCS file: /home/kde/valgrind/include/vg_skin.h.base,v +retrieving revision 1.18 +diff -u -u -w -r1.18 vg_skin.h.base +--- include/vg_skin.h.base 13 Jun 2004 09:55:21 -0000 1.18 ++++ include/vg_skin.h.base 16 Jun 2004 18:20:57 -0000 +@@ -585,6 +585,10 @@ + /* other, randomly useful functions */ + extern UInt VG_(read_millisecond_timer) ( void ); + ++extern void VG_(cpuid) ( UInt eax, ++ UInt *eax_ret, UInt *ebx_ret, ++ UInt *ecx_ret, UInt *edx_ret ); ++ + /*====================================================================*/ + /*=== UCode definition ===*/ + /*====================================================================*/ + diff --git a/dev-util/valgrind/valgrind-2.1.1-r1.ebuild b/dev-util/valgrind/valgrind-2.1.1-r1.ebuild new file mode 100644 index 000000000000..34e0cfafdeb2 --- /dev/null +++ b/dev-util/valgrind/valgrind-2.1.1-r1.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2004 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/valgrind/valgrind-2.1.1-r1.ebuild,v 1.1 2004/06/17 15:57:43 solar Exp $ + +inherit flag-o-matic eutils +RESTRICT="nostrip" + +DESCRIPTION="An open-source memory debugger for x86-GNU/Linux" +HOMEPAGE="http://valgrind.kde.org" +SRC_URI="http://developer.kde.org/~sewardj/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~x86 -sparc -ppc -alpha" +IUSE="X" + +DEPEND="virtual/glibc + sys-devel/autoconf + sys-devel/automake + X? ( virtual/x11 )" + +src_unpack() { + unpack ${A} + cd ${S} + # add pic aware cpuid patch from cvs. Bug #54068 + epatch ${FILESDIR}/${PN}-2.1.1-pic.patch + einfo "Running aclocal/automake" + aclocal && automake +} + +src_compile() { + local myconf + + #filter-flags -fPIC + + use X && myconf="--with-x" || myconf="--with-x=no" + # note: it does not appear safe to play with CFLAGS + econf ${myconf} || die + emake || die +} + +src_install() { + einstall docdir="${D}/usr/share/doc/${PF}" || die + dodoc ACKNOWLEDGEMENTS AUTHORS INSTALL NEWS \ + PATCHES_APPLIED README* TODO ChangeLog FAQ.txt +} |