summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/valgrind
diff options
context:
space:
mode:
authorTudor Florea <tudor.florea@enea.com>2014-10-16 03:05:19 +0200
committerTudor Florea <tudor.florea@enea.com>2014-10-16 03:05:19 +0200
commitc527fd1f14c27855a37f2e8ac5346ce8d940ced2 (patch)
treebb002c1fdf011c41dbd2f0927bed23ecb5f83c97 /meta/recipes-devtools/valgrind
downloadpoky-daisy-140929.tar.gz
initial commit for Enea Linux 4.0-140929daisy-140929
Migrated from the internal git server on the daisy-enea-point-release branch Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Diffstat (limited to 'meta/recipes-devtools/valgrind')
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch96
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/fixed-perl-path.patch53
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/glibc-2.19.patch23
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/sepbuildfix.patch235
-rw-r--r--meta/recipes-devtools/valgrind/valgrind_3.9.0.bb44
5 files changed, 451 insertions, 0 deletions
diff --git a/meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch b/meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch
new file mode 100644
index 0000000000..07774f38a9
--- /dev/null
+++ b/meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch
@@ -0,0 +1,96 @@
1From 0bf4b0ac18d1ea41b32ad781d214b295ca1998f3 Mon Sep 17 00:00:00 2001
2From: Aneesh Bansal <aneesh.bansal@freescale.com>
3Date: Mon, 21 Nov 2011 17:31:39 +0530
4Subject: [PATCH] Added support for PPC instructions mfatbu, mfatbl.
5
6Upstream-Status: Pending
7
8Signed-off-by: Aneesh Bansal <aneesh.bansal@freescale.com>
9---
10Currently Valgrind 3.7.0 does not have support for PPC instructions mfatbu and mfatbl. When we run a USDPAA application with VALGRIND, the following error is given by valgrind :
11dis_proc_ctl(ppc)(mfspr,SPR)(0x20F)
12disInstr(ppc): unhandled instruction: 0x7C0F82A6
13
14
15 VEX/priv/guest_ppc_defs.h | 2 ++
16 VEX/priv/guest_ppc_helpers.c | 18 ++++++++++++++++++
17 VEX/priv/guest_ppc_toIR.c | 22 ++++++++++++++++++++++
18 3 files changed, 42 insertions(+), 0 deletions(-)
19
20diff --git a/VEX/priv/guest_ppc_defs.h b/VEX/priv/guest_ppc_defs.h
21index dd3c62e..11a34aa 100644
22--- a/VEX/priv/guest_ppc_defs.h
23+++ b/VEX/priv/guest_ppc_defs.h
24@@ -146,6 +146,8 @@ extern UInt ppc32g_dirtyhelper_MFSPR_268_269 ( UInt );
25
26 extern UInt ppc32g_dirtyhelper_MFSPR_287 ( void );
27
28+extern UInt ppc32g_dirtyhelper_MFSPR_526_527 ( UInt );
29+
30 extern void ppc32g_dirtyhelper_LVS ( VexGuestPPC32State* gst,
31 UInt vD_idx, UInt sh,
32 UInt shift_right );
33diff --git a/VEX/priv/guest_ppc_helpers.c b/VEX/priv/guest_ppc_helpers.c
34index 11aa428..b49ea3f 100644
35--- a/VEX/priv/guest_ppc_helpers.c
36+++ b/VEX/priv/guest_ppc_helpers.c
37@@ -119,6 +119,24 @@ UInt ppc32g_dirtyhelper_MFSPR_287 ( void )
38 # endif
39 }
40
41+/* CALLED FROM GENERATED CODE */
42+/* DIRTY HELPER (non-referentially transparent) */
43+UInt ppc32g_dirtyhelper_MFSPR_526_527 ( UInt r527 )
44+{
45+# if defined(__powerpc__) || defined(_AIX)
46+ UInt spr;
47+ if (r527) {
48+ __asm__ __volatile__("mfspr %0,527" : "=b"(spr));
49+ } else {
50+ __asm__ __volatile__("mfspr %0,526" : "=b"(spr));
51+ }
52+ return spr;
53+# else
54+ return 0;
55+# endif
56+}
57+
58+
59
60 /* CALLED FROM GENERATED CODE */
61 /* DIRTY HELPER (reads guest state, writes guest mem) */
62diff --git a/VEX/priv/guest_ppc_toIR.c b/VEX/priv/guest_ppc_toIR.c
63index f8d220d..37c8974 100644
64--- a/VEX/priv/guest_ppc_toIR.c
65+++ b/VEX/priv/guest_ppc_toIR.c
66@@ -5657,6 +5657,28 @@ static Bool dis_proc_ctl ( VexAbiInfo* vbi, UInt theInstr )
67 break;
68 }
69
70+
71+ case 526 /* 0x20E */:
72+ case 527 /* 0x20F */: {
73+ UInt arg = SPR==526 ? 0 : 1;
74+ IRTemp val = newTemp(Ity_I32);
75+ IRExpr** args = mkIRExprVec_1( mkU32(arg) );
76+ IRDirty* d = unsafeIRDirty_1_N(
77+ val,
78+ 0/*regparms*/,
79+ "ppc32g_dirtyhelper_MFSPR_526_527",
80+ fnptr_to_fnentry
81+ (vbi, &ppc32g_dirtyhelper_MFSPR_526_527),
82+ args
83+ );
84+ /* execute the dirty call, dumping the result in val. */
85+ stmt( IRStmt_Dirty(d) );
86+ putIReg( rD_addr,
87+ mkWidenFrom32(ty, mkexpr(val), False/*unsigned*/) );
88+ DIP("mfspr r%u,%u", rD_addr, (UInt)SPR);
89+ break;
90+ }
91+
92 default:
93 vex_printf("dis_proc_ctl(ppc)(mfspr,SPR)(0x%x)\n", SPR);
94 return False;
95--
961.7.0.4
diff --git a/meta/recipes-devtools/valgrind/valgrind/fixed-perl-path.patch b/meta/recipes-devtools/valgrind/valgrind/fixed-perl-path.patch
new file mode 100644
index 0000000000..b054d05f7f
--- /dev/null
+++ b/meta/recipes-devtools/valgrind/valgrind/fixed-perl-path.patch
@@ -0,0 +1,53 @@
1this is a temporary patch to workaround cross compilation.
2otherwise @PERL@ will be replaced to perl-native binary,
3this creates unusable scripts and fails FILERDEPENDS mechanism
4(esp. rpm)
5
6a better fix would need:
7 1. configure.ac should differentiate PERL and HOSTPERL
8 2. optionally remove ${STAGING_DIR} in #! line before do_install
9
108/31/2010 - created by Qing He <qing.he@intel.com>
11
12Upstream-Status: Inappropriate [configuration]
13
14diff --git a/cachegrind/cg_annotate.in b/cachegrind/cg_annotate.in
15index 9dc9565..cc4ef05 100644
16--- a/cachegrind/cg_annotate.in
17+++ b/cachegrind/cg_annotate.in
18@@ -1,4 +1,4 @@
19-#! @PERL@
20+#! /usr/bin/perl
21
22 ##--------------------------------------------------------------------##
23 ##--- Cachegrind's annotator. cg_annotate.in ---##
24diff --git a/cachegrind/cg_diff.in b/cachegrind/cg_diff.in
25index 951066e..84c2dde 100644
26--- a/cachegrind/cg_diff.in
27+++ b/cachegrind/cg_diff.in
28@@ -1,4 +1,4 @@
29-#! @PERL@
30+#! /usr/bin/perl
31
32 ##--------------------------------------------------------------------##
33 ##--- Cachegrind's differencer. cg_diff.in ---##
34diff --git a/massif/ms_print.in b/massif/ms_print.in
35index e6ffdbf..fb45906 100755
36--- a/massif/ms_print.in
37+++ b/massif/ms_print.in
38@@ -1,4 +1,4 @@
39-#! @PERL@
40+#! /usr/bin/perl
41
42 ##--------------------------------------------------------------------##
43 ##--- Massif's results printer ms_print.in ---##
44diff --git a/perf/vg_perf.in b/perf/vg_perf.in
45index 2188a31..83ad024 100644
46--- a/perf/vg_perf.in
47+++ b/perf/vg_perf.in
48@@ -1,4 +1,4 @@
49-#! @PERL@
50+#! /usr/bin/perl
51 ##--------------------------------------------------------------------##
52 ##--- Valgrind performance testing script vg_perf ---##
53 ##--------------------------------------------------------------------##
diff --git a/meta/recipes-devtools/valgrind/valgrind/glibc-2.19.patch b/meta/recipes-devtools/valgrind/valgrind/glibc-2.19.patch
new file mode 100644
index 0000000000..7714b997fe
--- /dev/null
+++ b/meta/recipes-devtools/valgrind/valgrind/glibc-2.19.patch
@@ -0,0 +1,23 @@
1Add support for compiling with glibc 2.19
2
3Signed-off-by: Khem Raj <raj.khem@gmail.com>
4
5Upstream-Status: Pending
6Index: valgrind-3.9.0/configure.ac
7===================================================================
8--- valgrind-3.9.0.orig/configure.ac 2014-02-12 09:03:07.879873700 -0800
9+++ valgrind-3.9.0/configure.ac 2014-02-12 09:07:35.099871774 -0800
10@@ -918,6 +918,13 @@
11 DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
12 DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
13 ;;
14+ 2.19)
15+ AC_MSG_RESULT(2.19 family)
16+ AC_DEFINE([GLIBC_2_19], 1, [Define to 1 if you're using glibc 2.19.x])
17+ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
18+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
19+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
20+ ;;
21 darwin)
22 AC_MSG_RESULT(Darwin)
23 AC_DEFINE([DARWIN_LIBC], 1, [Define to 1 if you're using Darwin])
diff --git a/meta/recipes-devtools/valgrind/valgrind/sepbuildfix.patch b/meta/recipes-devtools/valgrind/valgrind/sepbuildfix.patch
new file mode 100644
index 0000000000..5db0ef8a3f
--- /dev/null
+++ b/meta/recipes-devtools/valgrind/valgrind/sepbuildfix.patch
@@ -0,0 +1,235 @@
1Fix out of tree builds. The paths to these files need to be fully specified in
2the out of tree build case. glibc-2.X.supp is a generated file so the full path
3is deliberately not specified in that case.
4
5RP 2013/03/23
6
7Upstream-Status: Pending
8
9Index: valgrind-3.9.0/configure.ac
10===================================================================
11--- valgrind-3.9.0.orig/configure.ac
12+++ valgrind-3.9.0/configure.ac
13@@ -325,26 +325,26 @@ case "${host_os}" in
14 9.*)
15 AC_MSG_RESULT([Darwin 9.x (${kernel}) / Mac OS X 10.5 Leopard])
16 AC_DEFINE([DARWIN_VERS], DARWIN_10_5, [Darwin / Mac OS X version])
17- DEFAULT_SUPP="darwin9.supp ${DEFAULT_SUPP}"
18- DEFAULT_SUPP="darwin9-drd.supp ${DEFAULT_SUPP}"
19+ DEFAULT_SUPP="$srcdir/darwin9.supp ${DEFAULT_SUPP}"
20+ DEFAULT_SUPP="$srcdir/darwin9-drd.supp ${DEFAULT_SUPP}"
21 ;;
22 10.*)
23 AC_MSG_RESULT([Darwin 10.x (${kernel}) / Mac OS X 10.6 Snow Leopard])
24 AC_DEFINE([DARWIN_VERS], DARWIN_10_6, [Darwin / Mac OS X version])
25- DEFAULT_SUPP="darwin10.supp ${DEFAULT_SUPP}"
26- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
27+ DEFAULT_SUPP="$srcdir/darwin10.supp ${DEFAULT_SUPP}"
28+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
29 ;;
30 11.*)
31 AC_MSG_RESULT([Darwin 11.x (${kernel}) / Mac OS X 10.7 Lion])
32 AC_DEFINE([DARWIN_VERS], DARWIN_10_7, [Darwin / Mac OS X version])
33- DEFAULT_SUPP="darwin11.supp ${DEFAULT_SUPP}"
34- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
35+ DEFAULT_SUPP="$srcdir/darwin11.supp ${DEFAULT_SUPP}"
36+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
37 ;;
38 12.*)
39 AC_MSG_RESULT([Darwin 12.x (${kernel}) / Mac OS X 10.8 Mountain Lion])
40 AC_DEFINE([DARWIN_VERS], DARWIN_10_8, [Darwin / Mac OS X version])
41- DEFAULT_SUPP="darwin12.supp ${DEFAULT_SUPP}"
42- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
43+ DEFAULT_SUPP="$srcdir/darwin12.supp ${DEFAULT_SUPP}"
44+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
45 ;;
46 *)
47 AC_MSG_RESULT([unsupported (${kernel})])
48@@ -799,124 +799,124 @@ case "${GLIBC_VERSION}" in
49 2.2)
50 AC_MSG_RESULT(2.2 family)
51 AC_DEFINE([GLIBC_2_2], 1, [Define to 1 if you're using glibc 2.2.x])
52- DEFAULT_SUPP="glibc-2.2.supp ${DEFAULT_SUPP}"
53- DEFAULT_SUPP="glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}"
54- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
55+ DEFAULT_SUPP="$srcdir/glibc-2.2.supp ${DEFAULT_SUPP}"
56+ DEFAULT_SUPP="$srcdir/glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}"
57+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
58 ;;
59
60 2.3)
61 AC_MSG_RESULT(2.3 family)
62 AC_DEFINE([GLIBC_2_3], 1, [Define to 1 if you're using glibc 2.3.x])
63- DEFAULT_SUPP="glibc-2.3.supp ${DEFAULT_SUPP}"
64- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
65- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
66+ DEFAULT_SUPP="$srcdir/glibc-2.3.supp ${DEFAULT_SUPP}"
67+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
68+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
69 ;;
70
71 2.4)
72 AC_MSG_RESULT(2.4 family)
73 AC_DEFINE([GLIBC_2_4], 1, [Define to 1 if you're using glibc 2.4.x])
74- DEFAULT_SUPP="glibc-2.4.supp ${DEFAULT_SUPP}"
75- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
76- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
77+ DEFAULT_SUPP="$srcdir/glibc-2.4.supp ${DEFAULT_SUPP}"
78+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
79+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
80 ;;
81
82 2.5)
83 AC_MSG_RESULT(2.5 family)
84 AC_DEFINE([GLIBC_2_5], 1, [Define to 1 if you're using glibc 2.5.x])
85- DEFAULT_SUPP="glibc-2.5.supp ${DEFAULT_SUPP}"
86- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
87- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
88+ DEFAULT_SUPP="$srcdir/glibc-2.5.supp ${DEFAULT_SUPP}"
89+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
90+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
91 ;;
92 2.6)
93 AC_MSG_RESULT(2.6 family)
94 AC_DEFINE([GLIBC_2_6], 1, [Define to 1 if you're using glibc 2.6.x])
95- DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}"
96- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
97- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
98+ DEFAULT_SUPP="$srcdir/glibc-2.6.supp ${DEFAULT_SUPP}"
99+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
100+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
101 ;;
102 2.7)
103 AC_MSG_RESULT(2.7 family)
104 AC_DEFINE([GLIBC_2_7], 1, [Define to 1 if you're using glibc 2.7.x])
105 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
106- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
107- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
108+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
109+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
110 ;;
111 2.8)
112 AC_MSG_RESULT(2.8 family)
113 AC_DEFINE([GLIBC_2_8], 1, [Define to 1 if you're using glibc 2.8.x])
114 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
115- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
116- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
117+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
118+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
119 ;;
120 2.9)
121 AC_MSG_RESULT(2.9 family)
122 AC_DEFINE([GLIBC_2_9], 1, [Define to 1 if you're using glibc 2.9.x])
123 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
124- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
125- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
126+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
127+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
128 ;;
129 2.10)
130 AC_MSG_RESULT(2.10 family)
131 AC_DEFINE([GLIBC_2_10], 1, [Define to 1 if you're using glibc 2.10.x])
132 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
133- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
134- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
135+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
136+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
137 ;;
138 2.11)
139 AC_MSG_RESULT(2.11 family)
140 AC_DEFINE([GLIBC_2_11], 1, [Define to 1 if you're using glibc 2.11.x])
141 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
142- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
143- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
144+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
145+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
146 ;;
147 2.12)
148 AC_MSG_RESULT(2.12 family)
149 AC_DEFINE([GLIBC_2_12], 1, [Define to 1 if you're using glibc 2.12.x])
150 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
151- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
152- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
153+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
154+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
155 ;;
156 2.13)
157 AC_MSG_RESULT(2.13 family)
158 AC_DEFINE([GLIBC_2_13], 1, [Define to 1 if you're using glibc 2.13.x])
159 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
160- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
161- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
162+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
163+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
164 ;;
165 2.14)
166 AC_MSG_RESULT(2.14 family)
167 AC_DEFINE([GLIBC_2_14], 1, [Define to 1 if you're using glibc 2.14.x])
168 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
169- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
170- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
171+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
172+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
173 ;;
174 2.15)
175 AC_MSG_RESULT(2.15 family)
176 AC_DEFINE([GLIBC_2_15], 1, [Define to 1 if you're using glibc 2.15.x])
177 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
178- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
179- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
180+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
181+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
182 ;;
183 2.16)
184 AC_MSG_RESULT(2.16 family)
185 AC_DEFINE([GLIBC_2_16], 1, [Define to 1 if you're using glibc 2.16.x])
186 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
187- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
188- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
189+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
190+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
191 ;;
192 2.17)
193 AC_MSG_RESULT(2.17 family)
194 AC_DEFINE([GLIBC_2_17], 1, [Define to 1 if you're using glibc 2.17.x])
195 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
196- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
197- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
198+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
199+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
200 ;;
201 2.18)
202 AC_MSG_RESULT(2.18 family)
203 AC_DEFINE([GLIBC_2_18], 1, [Define to 1 if you're using glibc 2.18.x])
204 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
205- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
206- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
207+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
208+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
209 ;;
210 darwin)
211 AC_MSG_RESULT(Darwin)
212@@ -926,7 +926,7 @@ case "${GLIBC_VERSION}" in
213 bionic)
214 AC_MSG_RESULT(Bionic)
215 AC_DEFINE([BIONIC_LIBC], 1, [Define to 1 if you're using Bionic])
216- DEFAULT_SUPP="bionic.supp ${DEFAULT_SUPP}"
217+ DEFAULT_SUPP="$srcdir/bionic.supp ${DEFAULT_SUPP}"
218 ;;
219
220 *)
221@@ -943,11 +943,11 @@ AC_SUBST(GLIBC_VERSION)
222 # attempt to detect whether such libraries are installed on the
223 # build machine (or even if any X facilities are present); just
224 # add the suppressions antidisirregardless.
225-DEFAULT_SUPP="xfree-4.supp ${DEFAULT_SUPP}"
226-DEFAULT_SUPP="xfree-3.supp ${DEFAULT_SUPP}"
227+DEFAULT_SUPP="$srcdir/xfree-4.supp ${DEFAULT_SUPP}"
228+DEFAULT_SUPP="$srcdir/xfree-3.supp ${DEFAULT_SUPP}"
229
230 # Add glibc and X11 suppressions for exp-sgcheck
231-DEFAULT_SUPP="exp-sgcheck.supp ${DEFAULT_SUPP}"
232+DEFAULT_SUPP="$srcdir/exp-sgcheck.supp ${DEFAULT_SUPP}"
233
234
235 #----------------------------------------------------------------------------
diff --git a/meta/recipes-devtools/valgrind/valgrind_3.9.0.bb b/meta/recipes-devtools/valgrind/valgrind_3.9.0.bb
new file mode 100644
index 0000000000..64da1a2808
--- /dev/null
+++ b/meta/recipes-devtools/valgrind/valgrind_3.9.0.bb
@@ -0,0 +1,44 @@
1SUMMARY = "Valgrind memory debugger and instrumentation framework"
2HOMEPAGE = "http://valgrind.org/"
3BUGTRACKER = "http://valgrind.org/support/bug_reports.html"
4LICENSE = "GPLv2 & GPLv2+ & BSD"
5LIC_FILES_CHKSUM = "file://COPYING;md5=c46082167a314d785d012a244748d803 \
6 file://include/pub_tool_basics.h;beginline=1;endline=29;md5=e7071929a50d4b0fc27a3014b315b0f7 \
7 file://include/valgrind.h;beginline=1;endline=56;md5=92df8a1bde56fe2af70931ff55f6622f \
8 file://COPYING.DOCS;md5=8fdeb5abdb235a08e76835f8f3260215"
9
10X11DEPENDS = "virtual/libx11"
11DEPENDS = "${@base_contains('DISTRO_FEATURES', 'x11', '${X11DEPENDS}', '', d)}"
12PR = "r8"
13
14SRC_URI = "http://www.valgrind.org/downloads/valgrind-${PV}.tar.bz2 \
15 file://fixed-perl-path.patch \
16 file://Added-support-for-PPC-instructions-mfatbu-mfatbl.patch \
17 file://sepbuildfix.patch \
18 file://glibc-2.19.patch \
19 "
20
21SRC_URI[md5sum] = "0947de8112f946b9ce64764af7be6df2"
22SRC_URI[sha256sum] = "e6af71a06bc2534541b07743e1d58dc3caf744f38205ca3e5b5a0bdf372ed6f0"
23
24COMPATIBLE_HOST = '(i.86|x86_64|powerpc|powerpc64).*-linux'
25COMPATIBLE_HOST_armv7a = 'arm.*-linux'
26
27inherit autotools
28
29EXTRA_OECONF = "--enable-tls --without-mpicc"
30EXTRA_OECONF_armv7a = "--enable-tls -host=armv7-none-linux-gnueabi --without-mpicc"
31EXTRA_OEMAKE = "-w"
32PARALLEL_MAKE = ""
33
34do_install_append () {
35 install -m 644 ${B}/default.supp ${D}/${libdir}/valgrind/
36}
37
38RDEPENDS_${PN} += "perl"
39
40FILES_${PN}-dbg += "${libdir}/${PN}/*/.debug/*"
41
42# valgrind needs debug information for ld.so at runtime in order to
43# redirect functions like strlen.
44RRECOMMENDS_${PN} += "${TCLIBC}-dbg"