summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/valgrind
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/valgrind')
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch22
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-Use-portable-syntax-for-pushsection-directive-in-inl.patch31
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch9
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch8
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch15
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch24
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-memcheck-vgtests-remove-fullpath-after-flags.patch9
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch9
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch9
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-tests-arm-Use-O-instead-of-O0.patch10
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-valgrind-filter_xml_frames-do-not-filter-usr.patch9
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0003-correct-include-directive-path-for-config.h.patch9
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch257
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch23
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/avoid-neon-for-targets-which-don-t-support-it.patch7
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/fixed-perl-path.patch5
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/remove-for-aarch6432
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/remove-for-all29
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch8
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch6
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch6
-rw-r--r--meta/recipes-devtools/valgrind/valgrind_3.23.0.bb274
-rw-r--r--meta/recipes-devtools/valgrind/valgrind_3.25.1.bb116
23 files changed, 231 insertions, 696 deletions
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch b/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch
deleted file mode 100644
index 832a1c3d6e..0000000000
--- a/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch
+++ /dev/null
@@ -1,22 +0,0 @@
1From 5eebdefd2251803e7d21081745018fcb16b2ba71 Mon Sep 17 00:00:00 2001
2From: Randy MacLeod <Randy.MacLeod@windriver.com>
3Date: Wed, 8 May 2019 20:16:52 -0400
4Subject: [PATCH] Return a valid exit_code from vg_regtest
5
6Upstream-Status: Pending
7
8Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
9---
10 tests/vg_regtest.in | 1 +
11 1 file changed, 1 insertion(+)
12
13--- a/tests/vg_regtest.in
14+++ b/tests/vg_regtest.in
15@@ -401,6 +401,7 @@ sub mysystem($)
16 exit 1;
17 }
18 }
19+ return $exit_code;
20 }
21 # if $keepunfiltered, copies $1 to $1.unfiltered.out
22 # renames $0 tp $1
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-Use-portable-syntax-for-pushsection-directive-in-inl.patch b/meta/recipes-devtools/valgrind/valgrind/0001-Use-portable-syntax-for-pushsection-directive-in-inl.patch
new file mode 100644
index 0000000000..b59c544223
--- /dev/null
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-Use-portable-syntax-for-pushsection-directive-in-inl.patch
@@ -0,0 +1,31 @@
1From 2089383a0e3a50f527337ea05188b3e302069888 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 14 May 2025 09:29:33 -0700
4Subject: [PATCH] Use portable syntax for pushsection directive in inline
5 assembly
6
7'@' does not work with clang inline assembler, but '%' works with both
8gcc and clang. Therefore use '%' to make it more portable
9
10Fixes
11<inline asm>:1:41: error: expected '%<type>' or "<type>"
12
13Upstream-Status: Submitted [https://bugs.kde.org/show_bug.cgi?id=504222]
14Signed-off-by: Khem Raj <raj.khem@gmail.com>
15---
16 coregrind/vg_preloaded.c | 2 +-
17 1 file changed, 1 insertion(+), 1 deletion(-)
18
19diff --git a/coregrind/vg_preloaded.c b/coregrind/vg_preloaded.c
20index 5bec51d..e4c2dbc 100644
21--- a/coregrind/vg_preloaded.c
22+++ b/coregrind/vg_preloaded.c
23@@ -55,7 +55,7 @@
24 /* Note: The "MS" section flags are to remove duplicates. */
25 #define DEFINE_GDB_PY_SCRIPT(script_name) \
26 asm("\
27-.pushsection \".debug_gdb_scripts\", \"MS\",@progbits,1\n\
28+.pushsection \".debug_gdb_scripts\", \"MS\",%progbits,1\n\
29 .byte 1 /* Python */\n\
30 .asciz \"" script_name "\"\n\
31 .popsection \n\
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch b/meta/recipes-devtools/valgrind/valgrind/0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch
index 63a1a58c04..3c8bec82b3 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch
@@ -1,4 +1,4 @@
1From b17b6d7d3a65c14f91f090f3f4f9898d6fa3a9e4 Mon Sep 17 00:00:00 2001 1From 5a776e61af5ab7f0cfd10cde55c796189686916f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 10 May 2024 16:27:34 -0700 3Date: Fri, 10 May 2024 16:27:34 -0700
4Subject: [PATCH] configure: Drop setting mcpu=cortex-a8 on arm 4Subject: [PATCH] configure: Drop setting mcpu=cortex-a8 on arm
@@ -16,10 +16,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
16 1 file changed, 2 insertions(+), 2 deletions(-) 16 1 file changed, 2 insertions(+), 2 deletions(-)
17 17
18diff --git a/configure.ac b/configure.ac 18diff --git a/configure.ac b/configure.ac
19index 39d8b6d..d61b3a6 100755 19index 2dfbd1c..b42fdd4 100755
20--- a/configure.ac 20--- a/configure.ac
21+++ b/configure.ac 21+++ b/configure.ac
22@@ -275,13 +275,13 @@ case "${host_cpu}" in 22@@ -251,13 +251,13 @@ case "${host_cpu}" in
23 23
24 armv8*) 24 armv8*)
25 AC_MSG_RESULT([ok (${host_cpu})]) 25 AC_MSG_RESULT([ok (${host_cpu})])
@@ -35,6 +35,3 @@ index 39d8b6d..d61b3a6 100755
35 ARCH_MAX="arm" 35 ARCH_MAX="arm"
36 ;; 36 ;;
37 37
38--
392.45.0
40
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch b/meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch
index eba569c884..fbd799eeea 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch
@@ -1,4 +1,4 @@
1From 99fc6fe9b66becac3c94068129e84217330a71a6 Mon Sep 17 00:00:00 2001 1From 4f674f458b1f0675abdc0ced01239e99bfa40de8 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 13 Jan 2022 18:26:02 -0800 3Date: Thu, 13 Jan 2022 18:26:02 -0800
4Subject: [PATCH] docs: Disable manual validation 4Subject: [PATCH] docs: Disable manual validation
@@ -18,10 +18,12 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
18 docs/Makefile.am | 2 +- 18 docs/Makefile.am | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-) 19 1 file changed, 1 insertion(+), 1 deletion(-)
20 20
21diff --git a/docs/Makefile.am b/docs/Makefile.am
22index 68a3da5..9833d5c 100644
21--- a/docs/Makefile.am 23--- a/docs/Makefile.am
22+++ b/docs/Makefile.am 24+++ b/docs/Makefile.am
23@@ -194,7 +194,7 @@ valid-manpages: $(MANPAGES_XML_FILES) 25@@ -202,7 +202,7 @@ valid-manpages: $(MANPAGES_XML_FILES)
24 touch $@; \ 26 fi \
25 fi 27 fi
26 28
27-check-local: valid-manual valid-manpages 29-check-local: valid-manual valid-manpages
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch b/meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch
index 7996fa6e8f..f8d1e87ba9 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch
@@ -1,4 +1,4 @@
1From 715cf122388f3527afa5649cebf9f1522c240693 Mon Sep 17 00:00:00 2001 1From c878aaacadf8ec723be882f9335cb33240df13d6 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 20 Apr 2017 10:11:16 -0700 3Date: Thu, 20 Apr 2017 10:11:16 -0700
4Subject: [PATCH] makefiles: Drop setting -mcpu to cortex-a8 on arm 4Subject: [PATCH] makefiles: Drop setting -mcpu to cortex-a8 on arm
@@ -14,14 +14,15 @@ Upstream-Status: Submitted [https://bugs.kde.org/show_bug.cgi?id=454346]
14 14
15Signed-off-by: Khem Raj <raj.khem@gmail.com> 15Signed-off-by: Khem Raj <raj.khem@gmail.com>
16--- 16---
17 Makefile.all.am | 6 +++---
18 helgrind/tests/Makefile.am | 6 +++--- 17 helgrind/tests/Makefile.am | 6 +++---
19 none/tests/arm/Makefile.am | 18 +++++++++--------- 18 none/tests/arm/Makefile.am | 18 +++++++++---------
20 3 files changed, 15 insertions(+), 15 deletions(-) 19 2 files changed, 12 insertions(+), 12 deletions(-)
21 20
21diff --git a/helgrind/tests/Makefile.am b/helgrind/tests/Makefile.am
22index 7adc5c6..cac23c9 100755
22--- a/helgrind/tests/Makefile.am 23--- a/helgrind/tests/Makefile.am
23+++ b/helgrind/tests/Makefile.am 24+++ b/helgrind/tests/Makefile.am
24@@ -223,9 +223,9 @@ if ! VGCONF_PLATFORMS_INCLUDE_X86_DARWIN 25@@ -226,9 +226,9 @@ if ! VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
25 endif 26 endif
26 27
27 if VGCONF_PLATFORMS_INCLUDE_ARM_LINUX 28 if VGCONF_PLATFORMS_INCLUDE_ARM_LINUX
@@ -34,9 +35,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
34 else 35 else
35 annotate_hbefore_CFLAGS = $(AM_CFLAGS) 36 annotate_hbefore_CFLAGS = $(AM_CFLAGS)
36 tc07_hbl1_CFLAGS = $(AM_CFLAGS) 37 tc07_hbl1_CFLAGS = $(AM_CFLAGS)
38diff --git a/none/tests/arm/Makefile.am b/none/tests/arm/Makefile.am
39index 41a5a03..a76981e 100644
37--- a/none/tests/arm/Makefile.am 40--- a/none/tests/arm/Makefile.am
38+++ b/none/tests/arm/Makefile.am 41+++ b/none/tests/arm/Makefile.am
39@@ -56,10 +56,10 @@ allexec_CFLAGS = $(AM_CFLAGS) @FLAG_W_N 42@@ -56,10 +56,10 @@ allexec_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_NONNULL@
40 # need special helping w.r.t -mfpu and -mfloat-abi, though. 43 # need special helping w.r.t -mfpu and -mfloat-abi, though.
41 # Also force -O0 since -O takes hundreds of MB of memory 44 # Also force -O0 since -O takes hundreds of MB of memory
42 # for v6intThumb.c. 45 # for v6intThumb.c.
@@ -50,7 +53,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
50 53
51 v8crypto_a_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -marm -march=armv8-a 54 v8crypto_a_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -marm -march=armv8-a
52 v8crypto_t_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -mthumb -march=armv8-a 55 v8crypto_t_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -mthumb -march=armv8-a
53@@ -74,23 +74,23 @@ v8memory_t_CFLAGS = $(AM_CFLAGS) -g -O0 56@@ -74,23 +74,23 @@ v8memory_t_CFLAGS = $(AM_CFLAGS) -g -O0 \
54 57
55 vcvt_fixed_float_VFP_CFLAGS = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 -mfpu=neon 58 vcvt_fixed_float_VFP_CFLAGS = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 -mfpu=neon
56 59
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch b/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch
index 29a9e95a90..200b2602cb 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch
@@ -1,4 +1,4 @@
1From 5d411fd147d652e9d7bb259f4048693c6e4742aa Mon Sep 17 00:00:00 2001 1From 3a51ed107f67732910dec12279a9279e158afbe7 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 9 Mar 2020 16:30:19 -0700 3Date: Mon, 9 Mar 2020 16:30:19 -0700
4Subject: [PATCH] memcheck/tests: Fix timerfd syscall test 4Subject: [PATCH] memcheck/tests: Fix timerfd syscall test
@@ -10,14 +10,16 @@ have the implementation or syscall is not defined
10Upstream-Status: Submitted [https://sourceforge.net/p/valgrind/mailman/message/36943897/] 10Upstream-Status: Submitted [https://sourceforge.net/p/valgrind/mailman/message/36943897/]
11Signed-off-by: Khem Raj <raj.khem@gmail.com> 11Signed-off-by: Khem Raj <raj.khem@gmail.com>
12--- 12---
13 config.h.in | 9 +++++++++ 13 config.h.in | 3 +++
14 configure.ac | 3 +++ 14 configure.ac | 1 +
15 memcheck/tests/linux/timerfd-syscall.c | 10 ++++++++-- 15 memcheck/tests/linux/timerfd-syscall.c | 14 +++++++++++---
16 5 files changed, 32 insertions(+), 2 deletions(-) 16 3 files changed, 15 insertions(+), 3 deletions(-)
17 17
18diff --git a/config.h.in b/config.h.in
19index 00db1a6..23fd77a 100644
18--- a/config.h.in 20--- a/config.h.in
19+++ b/config.h.in 21+++ b/config.h.in
20@@ -424,6 +424,9 @@ 22@@ -409,6 +409,9 @@
21 /* Define to 1 if you have the <sys/sysnvl.h> header file. */ 23 /* Define to 1 if you have the <sys/sysnvl.h> header file. */
22 #undef HAVE_SYS_SYSNVL_H 24 #undef HAVE_SYS_SYSNVL_H
23 25
@@ -27,9 +29,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
27 /* Define to 1 if you have the <sys/time.h> header file. */ 29 /* Define to 1 if you have the <sys/time.h> header file. */
28 #undef HAVE_SYS_TIME_H 30 #undef HAVE_SYS_TIME_H
29 31
32diff --git a/configure.ac b/configure.ac
33index b42fdd4..ec95146 100755
30--- a/configure.ac 34--- a/configure.ac
31+++ b/configure.ac 35+++ b/configure.ac
32@@ -4881,6 +4881,7 @@ AC_CHECK_HEADERS([ \ 36@@ -4892,6 +4892,7 @@ AC_CHECK_HEADERS([ \
33 sys/syscall.h \ 37 sys/syscall.h \
34 sys/sysnvl.h \ 38 sys/sysnvl.h \
35 sys/time.h \ 39 sys/time.h \
@@ -37,6 +41,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
37 sys/types.h \ 41 sys/types.h \
38 ]) 42 ])
39 43
44diff --git a/memcheck/tests/linux/timerfd-syscall.c b/memcheck/tests/linux/timerfd-syscall.c
45index 61d75b5..1ba888a 100644
40--- a/memcheck/tests/linux/timerfd-syscall.c 46--- a/memcheck/tests/linux/timerfd-syscall.c
41+++ b/memcheck/tests/linux/timerfd-syscall.c 47+++ b/memcheck/tests/linux/timerfd-syscall.c
42@@ -42,6 +42,9 @@ 48@@ -42,6 +42,9 @@
@@ -80,7 +86,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
80 86
81 87
82 /* Definitions from include/linux/timerfd.h */ 88 /* Definitions from include/linux/timerfd.h */
83@@ -124,6 +130,7 @@ void set_timespec(struct timespec *tmr, 89@@ -124,6 +130,7 @@ void set_timespec(struct timespec *tmr, unsigned long long ustime)
84 tmr->tv_nsec = (long) (1000ULL * (ustime % 1000000ULL)); 90 tmr->tv_nsec = (long) (1000ULL * (ustime % 1000000ULL));
85 } 91 }
86 92
@@ -88,7 +94,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
88 int timerfd_create(int clockid, int flags) 94 int timerfd_create(int clockid, int flags)
89 { 95 {
90 return syscall(__NR_timerfd_create, clockid, flags); 96 return syscall(__NR_timerfd_create, clockid, flags);
91@@ -139,6 +146,7 @@ int timerfd_gettime(int ufc, struct itim 97@@ -139,6 +146,7 @@ int timerfd_gettime(int ufc, struct itimerspec *otmr)
92 { 98 {
93 return syscall(__NR_timerfd_gettime, ufc, otmr); 99 return syscall(__NR_timerfd_gettime, ufc, otmr);
94 } 100 }
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-vgtests-remove-fullpath-after-flags.patch b/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-vgtests-remove-fullpath-after-flags.patch
index dce8b52ba3..9a3596cac1 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-vgtests-remove-fullpath-after-flags.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-vgtests-remove-fullpath-after-flags.patch
@@ -1,4 +1,4 @@
1From 3ff82dcb844f98dbf67c69f11f6516bc234725a9 Mon Sep 17 00:00:00 2001 1From b703b0d11adc9147a7d97817bd771ac40b8c4d39 Mon Sep 17 00:00:00 2001
2From: Stacy Gaikovaia <Stacy.Gaikovaia@windriver.com> 2From: Stacy Gaikovaia <Stacy.Gaikovaia@windriver.com>
3Date: Wed, 16 Sep 2020 13:45:07 -0400 3Date: Wed, 16 Sep 2020 13:45:07 -0400
4Subject: [PATCH] memcheck vgtests remove fullpath-after flags 4Subject: [PATCH] memcheck vgtests remove fullpath-after flags
@@ -20,7 +20,7 @@ Signed-off-by: Stacy Gaikovaia <Stacy.Gaikovaia@windriver.com>
20 2 files changed, 2 insertions(+), 2 deletions(-) 20 2 files changed, 2 insertions(+), 2 deletions(-)
21 21
22diff --git a/memcheck/tests/badfree3.vgtest b/memcheck/tests/badfree3.vgtest 22diff --git a/memcheck/tests/badfree3.vgtest b/memcheck/tests/badfree3.vgtest
23index 3dfc5fd8a..4ee03f00a 100644 23index 3dfc5fd..4ee03f0 100644
24--- a/memcheck/tests/badfree3.vgtest 24--- a/memcheck/tests/badfree3.vgtest
25+++ b/memcheck/tests/badfree3.vgtest 25+++ b/memcheck/tests/badfree3.vgtest
26@@ -1,3 +1,3 @@ 26@@ -1,3 +1,3 @@
@@ -29,7 +29,7 @@ index 3dfc5fd8a..4ee03f00a 100644
29+vgopts: -q 29+vgopts: -q
30 stderr_filter_args: badfree.c 30 stderr_filter_args: badfree.c
31diff --git a/memcheck/tests/varinfo5.vgtest b/memcheck/tests/varinfo5.vgtest 31diff --git a/memcheck/tests/varinfo5.vgtest b/memcheck/tests/varinfo5.vgtest
32index 063d00dce..79c4a72a4 100644 32index 063d00d..79c4a72 100644
33--- a/memcheck/tests/varinfo5.vgtest 33--- a/memcheck/tests/varinfo5.vgtest
34+++ b/memcheck/tests/varinfo5.vgtest 34+++ b/memcheck/tests/varinfo5.vgtest
35@@ -1,3 +1,3 @@ 35@@ -1,3 +1,3 @@
@@ -37,6 +37,3 @@ index 063d00dce..79c4a72a4 100644
37-vgopts: --fullpath-after=memcheck/ --fullpath-after=coregrind/ --read-var-info=yes --read-inline-info=yes -q 37-vgopts: --fullpath-after=memcheck/ --fullpath-after=coregrind/ --read-var-info=yes --read-inline-info=yes -q
38+vgopts: --read-var-info=yes --read-inline-info=yes -q 38+vgopts: --read-var-info=yes --read-inline-info=yes -q
39 stderr_filter: filter_varinfo3 39 stderr_filter: filter_varinfo3
40--
412.25.1
42
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch b/meta/recipes-devtools/valgrind/valgrind/0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch
index e421ac6c80..7deca99202 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch
@@ -1,4 +1,4 @@
1From f405297d3382cd98391d02f397e2387da1f42879 Mon Sep 17 00:00:00 2001 1From bbb5e8a6fc5eec178f8077ab006ab42c009528d4 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Fri, 24 Jan 2020 17:55:39 +0100 3Date: Fri, 24 Jan 2020 17:55:39 +0100
4Subject: [PATCH] none/tests/fdleak_cmsg.stderr.exp: adjust /tmp paths 4Subject: [PATCH] none/tests/fdleak_cmsg.stderr.exp: adjust /tmp paths
@@ -13,13 +13,13 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
13 1 file changed, 2 insertions(+), 2 deletions(-) 13 1 file changed, 2 insertions(+), 2 deletions(-)
14 14
15diff --git a/none/tests/fdleak_cmsg.stderr.exp b/none/tests/fdleak_cmsg.stderr.exp 15diff --git a/none/tests/fdleak_cmsg.stderr.exp b/none/tests/fdleak_cmsg.stderr.exp
16index 6e5a797b9..0ede1ab18 100644 16index 6b3b53f..45e7e2f 100644
17--- a/none/tests/fdleak_cmsg.stderr.exp 17--- a/none/tests/fdleak_cmsg.stderr.exp
18+++ b/none/tests/fdleak_cmsg.stderr.exp 18+++ b/none/tests/fdleak_cmsg.stderr.exp
19@@ -25,10 +25,10 @@ Open file descriptor ...: /dev/null 19@@ -25,10 +25,10 @@ Open file descriptor ...: /dev/null
20 20
21 21
22 FILE DESCRIPTORS: 6 open (3 std) at exit. 22 FILE DESCRIPTORS: 6 open (3 inherited) at exit.
23-Open file descriptor ...: /tmp/data2 23-Open file descriptor ...: /tmp/data2
24+Open file descriptor ...: ... 24+Open file descriptor ...: ...
25 ... 25 ...
@@ -29,6 +29,3 @@ index 6e5a797b9..0ede1ab18 100644
29 ... 29 ...
30 30
31 Open AF_UNIX socket ...: <unknown> 31 Open AF_UNIX socket ...: <unknown>
32--
332.17.1
34
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch b/meta/recipes-devtools/valgrind/valgrind/0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch
index 27366153f7..efa6c2c895 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch
@@ -1,7 +1,7 @@
1From 64ad2744acfb4fa40b1c114633a053f87125a203 Mon Sep 17 00:00:00 2001 1From c287382a1f3dd9f2db3df54dde54b4b266791bb9 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 10 Jun 2017 00:46:39 -0700 3Date: Sat, 10 Jun 2017 00:46:39 -0700
4Subject: [PATCH 1/6] sigqueue: Rename _sifields to __si_fields on musl 4Subject: [PATCH] sigqueue: Rename _sifields to __si_fields on musl
5 5
6Upstream-Status: Pending 6Upstream-Status: Pending
7 7
@@ -11,7 +11,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
11 1 file changed, 5 insertions(+) 11 1 file changed, 5 insertions(+)
12 12
13diff --git a/memcheck/tests/linux/sigqueue.c b/memcheck/tests/linux/sigqueue.c 13diff --git a/memcheck/tests/linux/sigqueue.c b/memcheck/tests/linux/sigqueue.c
14index d18bd72..acb7cba 100644 14index 4b6fb0f..d37fe93 100644
15--- a/memcheck/tests/linux/sigqueue.c 15--- a/memcheck/tests/linux/sigqueue.c
16+++ b/memcheck/tests/linux/sigqueue.c 16+++ b/memcheck/tests/linux/sigqueue.c
17@@ -8,6 +8,11 @@ 17@@ -8,6 +8,11 @@
@@ -26,6 +26,3 @@ index d18bd72..acb7cba 100644
26 int main(int argc, char **argv) 26 int main(int argc, char **argv)
27 { 27 {
28 siginfo_t *si; 28 siginfo_t *si;
29--
302.13.1
31
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-tests-arm-Use-O-instead-of-O0.patch b/meta/recipes-devtools/valgrind/valgrind/0001-tests-arm-Use-O-instead-of-O0.patch
index 2d28bcb6c4..3eea195579 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-tests-arm-Use-O-instead-of-O0.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-tests-arm-Use-O-instead-of-O0.patch
@@ -1,4 +1,4 @@
1From 8e907753625faba3284925983ef8e83f8491aa76 Mon Sep 17 00:00:00 2001 1From 8087ae8dcc46f3f81af58ed9b7176761b988ee61 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 10 May 2024 17:44:47 -0700 3Date: Fri, 10 May 2024 17:44:47 -0700
4Subject: [PATCH] tests/arm: Use -O instead of -O0 4Subject: [PATCH] tests/arm: Use -O instead of -O0
@@ -15,12 +15,14 @@ we have enough of it on build host.
15Upstream-Status: Inappropriate [WORKAROUND] 15Upstream-Status: Inappropriate [WORKAROUND]
16Signed-off-by: Khem Raj <raj.khem@gmail.com> 16Signed-off-by: Khem Raj <raj.khem@gmail.com>
17--- 17---
18 none/tests/arm/Makefile.am | 2 +- 18 none/tests/arm/Makefile.am | 4 ++--
19 1 file changed, 1 insertion(+), 1 deletion(-) 19 1 file changed, 2 insertions(+), 2 deletions(-)
20 20
21diff --git a/none/tests/arm/Makefile.am b/none/tests/arm/Makefile.am
22index a76981e..a198f73 100644
21--- a/none/tests/arm/Makefile.am 23--- a/none/tests/arm/Makefile.am
22+++ b/none/tests/arm/Makefile.am 24+++ b/none/tests/arm/Makefile.am
23@@ -57,9 +57,9 @@ allexec_CFLAGS = $(AM_CFLAGS) @FLAG_W_N 25@@ -57,9 +57,9 @@ allexec_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_NONNULL@
24 # Also force -O0 since -O takes hundreds of MB of memory 26 # Also force -O0 since -O takes hundreds of MB of memory
25 # for v6intThumb.c. 27 # for v6intThumb.c.
26 v6intARM_CFLAGS = $(AM_CFLAGS) -g -O0 -marm 28 v6intARM_CFLAGS = $(AM_CFLAGS) -g -O0 -marm
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-filter_xml_frames-do-not-filter-usr.patch b/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-filter_xml_frames-do-not-filter-usr.patch
index bf0f0ded21..c64c2afd3f 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-filter_xml_frames-do-not-filter-usr.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-filter_xml_frames-do-not-filter-usr.patch
@@ -1,7 +1,7 @@
1From d1dea3c2bcf1e22baab39e2c0b8ca59db8a5bc37 Mon Sep 17 00:00:00 2001 1From f8fbebcf69e4a8bf2122b7c55f2ce372377af1bc Mon Sep 17 00:00:00 2001
2From: Randy MacLeod <Randy.MacLeod@windriver.com> 2From: Randy MacLeod <Randy.MacLeod@windriver.com>
3Date: Mon, 13 May 2019 17:12:21 -0400 3Date: Mon, 13 May 2019 17:12:21 -0400
4Subject: [PATCH 1/2] valgrind: filter_xml_frames: do not filter /usr 4Subject: [PATCH] valgrind: filter_xml_frames: do not filter /usr
5 5
6filter_xml_frames is intended to filter system paths under 6filter_xml_frames is intended to filter system paths under
7'/usr' that vary from platform to platform. In the ptest case 7'/usr' that vary from platform to platform. In the ptest case
@@ -21,7 +21,7 @@ Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
21 1 file changed, 2 insertions(+), 1 deletion(-) 21 1 file changed, 2 insertions(+), 1 deletion(-)
22 22
23diff --git a/tests/filter_xml_frames b/tests/filter_xml_frames 23diff --git a/tests/filter_xml_frames b/tests/filter_xml_frames
24index f1fa3f070..04fbc82de 100755 24index f1fa3f0..04fbc82 100755
25--- a/tests/filter_xml_frames 25--- a/tests/filter_xml_frames
26+++ b/tests/filter_xml_frames 26+++ b/tests/filter_xml_frames
27@@ -47,7 +47,8 @@ while (my $line = <>) 27@@ -47,7 +47,8 @@ while (my $line = <>)
@@ -34,6 +34,3 @@ index f1fa3f070..04fbc82de 100755
34 } 34 }
35 } 35 }
36 36
37--
382.17.0
39
diff --git a/meta/recipes-devtools/valgrind/valgrind/0003-correct-include-directive-path-for-config.h.patch b/meta/recipes-devtools/valgrind/valgrind/0003-correct-include-directive-path-for-config.h.patch
index c2965c40df..3acb5a28f4 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0003-correct-include-directive-path-for-config.h.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0003-correct-include-directive-path-for-config.h.patch
@@ -1,7 +1,7 @@
1From ecbdea7bd8b08205f1bc3f6b72d4b4a80f313fcb Mon Sep 17 00:00:00 2001 1From de4d7e478515b63f049b211266d9b946c15cc0b9 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 10 Jun 2017 01:03:17 -0700 3Date: Sat, 10 Jun 2017 01:03:17 -0700
4Subject: [PATCH 3/6] correct include directive path for config.h 4Subject: [PATCH] correct include directive path for config.h
5 5
6when building out of source tree, it can not find 6when building out of source tree, it can not find
7the generated config.h otherwise 7the generated config.h otherwise
@@ -15,7 +15,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
15 2 files changed, 2 insertions(+), 2 deletions(-) 15 2 files changed, 2 insertions(+), 2 deletions(-)
16 16
17diff --git a/memcheck/tests/linux/syscalls-2007.c b/memcheck/tests/linux/syscalls-2007.c 17diff --git a/memcheck/tests/linux/syscalls-2007.c b/memcheck/tests/linux/syscalls-2007.c
18index b61c6d5..cc3fd62 100644 18index b91df82..c15c3eb 100644
19--- a/memcheck/tests/linux/syscalls-2007.c 19--- a/memcheck/tests/linux/syscalls-2007.c
20+++ b/memcheck/tests/linux/syscalls-2007.c 20+++ b/memcheck/tests/linux/syscalls-2007.c
21@@ -10,7 +10,7 @@ 21@@ -10,7 +10,7 @@
@@ -40,6 +40,3 @@ index 1143722..21e758b 100644
40 #include <stdio.h> 40 #include <stdio.h>
41 #if defined(HAVE_SYS_KLOG_H) 41 #if defined(HAVE_SYS_KLOG_H)
42 #include <sys/klog.h> 42 #include <sys/klog.h>
43--
442.13.1
45
diff --git a/meta/recipes-devtools/valgrind/valgrind/0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch b/meta/recipes-devtools/valgrind/valgrind/0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch
deleted file mode 100644
index fea3b00f62..0000000000
--- a/meta/recipes-devtools/valgrind/valgrind/0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch
+++ /dev/null
@@ -1,257 +0,0 @@
1From e244a72c6f8803550f37e81f72bbae039651013b Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Tue, 15 Dec 2015 15:50:44 +0200
4Subject: [PATCH] Modify vg_test wrapper to support PTEST formats
5
6Change the valgrind regression test script vg_regtest to
7support the yocto ptest stdout reporting format. The commit adds
8'--yocto-ptest' as an optional argument to vg_regtest, which alters
9the output to use the ptest infrastructure reporting format:
10 "[PASS|SKIP|FAIL]: testname"
11instead of valgrind's internal test reporting format. Without the added
12option, --yocto-ptest, the valgrind regression test output is unchanged.
13
14Enforce 30 seconds limit for the test.
15This resume execution of the remaining tests when valgrind hangs.
16
17Upstream-Status: Inappropriate [oe-core specific]
18
19Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
20Signed-off-by: Tudor Florea <tudor.florea@enea.com>
21Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
22
23Increase time limit to 90 s.
24(double of the expected time of drd/tests/std_list on qemuarm64)
25
26Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
27---
28 tests/vg_regtest.in | 75 +++++++++++++++++++++++++++++++++------------
29 1 file changed, 55 insertions(+), 20 deletions(-)
30
31diff --git a/tests/vg_regtest.in b/tests/vg_regtest.in
32index ad18800..e4bd8cb 100755
33--- a/tests/vg_regtest.in
34+++ b/tests/vg_regtest.in
35@@ -47,6 +47,7 @@
36 # --loop-till-fail: loops on the test(s) till one fail, then exit
37 # This is useful to obtain detailed trace or --keep-unfiltered
38 # output of a non deterministic test failure
39+# --yocto-ptest: output in yocto ptest format
40 #
41 # The easiest way is to run all tests in valgrind/ with (assuming you installed
42 # in $PREFIX):
43@@ -139,7 +140,7 @@ my $usage="\n"
44 . "Usage:\n"
45 . " vg_regtest [--all, --valgrind, --valgrind-lib, --keep-unfiltered\n"
46 . " --outer-valgrind, --outer-tool, --outer-args\n"
47- . " --loop-till-fail]\n"
48+ . " --loop-till-fail, --yocto-ptest]\n"
49 . " Use EXTRA_REGTEST_OPTS to supply extra args for all tests\n"
50 . "\n";
51
52@@ -187,6 +188,7 @@ my $run_outer_args = "";
53 my $valgrind_lib = "$tests_dir/.in_place";
54 my $keepunfiltered = 0;
55 my $looptillfail = 0;
56+my $yoctoptest = 0;
57
58 # default filter is the one named "filter_stderr" in the test's directory
59 my $default_stderr_filter = "filter_stderr";
60@@ -245,6 +247,8 @@ sub process_command_line()
61 $keepunfiltered = 1;
62 } elsif ($arg =~ /^--loop-till-fail$/) {
63 $looptillfail = 1;
64+ } elsif ($arg =~ /^--yocto-ptest$/) {
65+ $yoctoptest = 1;
66 } else {
67 die $usage;
68 }
69@@ -376,13 +380,28 @@ sub read_vgtest_file($)
70 #----------------------------------------------------------------------------
71 # Since most of the program time is spent in system() calls, need this to
72 # propagate a Ctrl-C enabling us to quit.
73-sub mysystem($)
74+# Enforce 90 seconds limit for the test.
75+# This resume execution of the remaining tests if valgrind hangs.
76+sub mysystem($)
77 {
78- my $exit_code = system($_[0]);
79- ($exit_code == 2) and exit 1; # 2 is SIGINT
80- return $exit_code;
81+ my $exit_code=0;
82+ eval {
83+ local $SIG{'ALRM'} = sub { die "timed out\n" };
84+ alarm(90);
85+ $exit_code = system($_[0]);
86+ alarm (0);
87+ ($exit_code == 2) and die "SIGINT\n"; # 2 is SIGINT
88+ };
89+ if ($@) {
90+ if ($@ eq "timed out\n") {
91+ print "timed out\n";
92+ return 1;
93+ }
94+ if ($@ eq "SIGINT\n") {
95+ exit 1;
96+ }
97+ }
98 }
99-
100 # if $keepunfiltered, copies $1 to $1.unfiltered.out
101 # renames $0 tp $1
102 sub filtered_rename($$)
103@@ -430,23 +449,25 @@ sub do_diffs($$$$)
104 # A match; remove .out and any previously created .diff files.
105 unlink("$name.$mid.out");
106 unlink(<$name.$mid.diff*>);
107- return;
108+ return 0;
109 }
110 }
111 }
112 # If we reach here, none of the .exp files matched.
113- print "*** $name failed ($mid) ***\n";
114+ print "*** $name failed ($mid) ***\n" if ($yoctoptest == 0) ;
115 push(@failures, sprintf("%-40s ($mid)", "$fullname"));
116 $num_failures{$mid}++;
117 if ($looptillfail == 1) {
118 print "Failure encountered, stopping to loop\n";
119 exit 1
120 }
121+ return 1;
122 }
123
124 sub do_one_test($$)
125 {
126 my ($dir, $vgtest) = @_;
127+ my $diffStatus = 0;
128 $vgtest =~ /^(.*)\.vgtest/;
129 my $name = $1;
130 my $fullname = "$dir/$name";
131@@ -465,7 +486,11 @@ sub do_one_test($$)
132 } elsif (256 == $prereq_res) {
133 # Nb: weird Perl-ism -- exit code of '1' is seen by Perl as 256...
134 # Prereq failed, skip.
135- printf("%-16s (skipping, prereq failed: $prereq)\n", "$name:");
136+ if ($yoctoptest == 0) {
137+ printf("%-16s (skipping, prereq failed: $prereq)\n", "$name:");
138+ } else {
139+ printf("SKIP: $fullname\n");
140+ }
141 return;
142 } else {
143 # Bad prereq; abort.
144@@ -483,7 +508,7 @@ sub do_one_test($$)
145 }
146 # If there is a progB, let's start it in background:
147 printf("%-16s valgrind $extraopts $vgopts $prog $args (progB: $progB $argsB)\n",
148- "$name:");
149+ "$name:") if ($yoctoptest == 0);
150 # progB.done used to detect child has finished. See below.
151 # Note: redirection of stdout and stderr is before $progB to allow argsB
152 # to e.g. redirect stdoutB to stderrB
153@@ -499,7 +524,8 @@ sub do_one_test($$)
154 . "touch progB.done) &");
155 }
156 } else {
157- printf("%-16s valgrind $extraopts $vgopts $prog $args\n", "$name:");
158+ printf("%-16s valgrind $extraopts $vgopts $prog $args\n", "$name:")
159+ if ($yoctoptest == 0);
160 }
161
162 # Collect environment variables, if any.
163@@ -540,7 +566,7 @@ sub do_one_test($$)
164 # Find all the .stdout.exp files. If none, use /dev/null.
165 my @stdout_exps = <$name.stdout.exp*>;
166 @stdout_exps = ( "/dev/null" ) if (0 == scalar @stdout_exps);
167- do_diffs($fullname, $name, "stdout", \@stdout_exps);
168+ $diffStatus |= do_diffs($fullname, $name, "stdout", \@stdout_exps);
169
170 # Filter stderr
171 $stderr_filter_args = $name if (! defined $stderr_filter_args);
172@@ -549,7 +575,7 @@ sub do_one_test($$)
173 # Find all the .stderr.exp files. At least one must exist.
174 my @stderr_exps = <$name.stderr.exp*>;
175 (0 != scalar @stderr_exps) or die "Could not find `$name.stderr.exp*'\n";
176- do_diffs($fullname, $name, "stderr", \@stderr_exps);
177+ $diffStatus |= do_diffs($fullname, $name, "stderr", \@stderr_exps);
178
179 if (defined $progB) {
180 # wait for the child to be finished
181@@ -573,7 +599,7 @@ sub do_one_test($$)
182 # Find all the .stdoutB.exp files. If none, use /dev/null.
183 my @stdoutB_exps = <$name.stdoutB.exp*>;
184 @stdoutB_exps = ( "/dev/null" ) if (0 == scalar @stdoutB_exps);
185- do_diffs($fullname, $name, "stdoutB", \@stdoutB_exps);
186+ $diffStatus |= do_diffs($fullname, $name, "stdoutB", \@stdoutB_exps);
187
188 # Filter stderr
189 $stderrB_filter_args = $name if (! defined $stderrB_filter_args);
190@@ -582,7 +608,7 @@ sub do_one_test($$)
191 # Find all the .stderrB.exp files. At least one must exist.
192 my @stderrB_exps = <$name.stderrB.exp*>;
193 (0 != scalar @stderrB_exps) or die "Could not find `$name.stderrB.exp*'\n";
194- do_diffs($fullname, $name, "stderrB", \@stderrB_exps);
195+ $diffStatus |= do_diffs($fullname, $name, "stderrB", \@stderrB_exps);
196 }
197
198 # Maybe do post-test check
199@@ -594,7 +620,7 @@ sub do_one_test($$)
200 # Find all the .post.exp files. If none, use /dev/null.
201 my @post_exps = <$name.post.exp*>;
202 @post_exps = ( "/dev/null" ) if (0 == scalar @post_exps);
203- do_diffs($fullname, $name, "post", \@post_exps);
204+ $diffStatus |= do_diffs($fullname, $name, "post", \@post_exps);
205 }
206 }
207
208@@ -603,6 +629,13 @@ sub do_one_test($$)
209 print("(cleanup operation failed: $cleanup)\n");
210 }
211
212+ if ($yoctoptest == 1) {
213+ if ($diffStatus == 0) {
214+ print("PASS: $fullname\n");
215+ } else {
216+ print("FAIL: $fullname\n");
217+ }
218+ }
219 $num_tests_done++;
220 }
221
222@@ -643,7 +676,7 @@ sub test_one_dir($$)
223
224 my $tests_start_time = time;
225 if ($found_tests) {
226- print "-- Running tests in $full_dir $dashes\n";
227+ print "-- Running tests in $full_dir $dashes\n" if ($yoctoptest == 0);
228 }
229 foreach my $f (@fs) {
230 if (-d $f) {
231@@ -657,7 +690,7 @@ sub test_one_dir($$)
232 my $end_time = "(in $tests_cost_time sec)";
233 my $end_dashes = "-" x (50 - (length $full_dir)
234 - (length $end_time) - 1);
235- print "-- Finished tests in $full_dir $end_time $end_dashes\n";
236+ print "-- Finished tests in $full_dir $dashes\n" if ($yoctoptest == 0);
237 }
238
239 chdir("..");
240@@ -683,10 +716,12 @@ sub summarise_results
241 $num_failures{"stdout"}, plural($num_failures{"stdout"}),
242 $num_failures{"stderrB"}, plural($num_failures{"stderrB"}),
243 $num_failures{"stdoutB"}, plural($num_failures{"stdoutB"}),
244- $num_failures{"post"}, plural($num_failures{"post"}));
245+ $num_failures{"post"}, plural($num_failures{"post"}))
246+ if ($yoctoptest == 0);
247
248 foreach my $failure (@failures) {
249- print "$failure\n";
250+ print "$failure\n"
251+ if ($yoctoptest == 0);
252 }
253 print "\n";
254 }
255--
2562.30.2
257
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
index 65de427d36..109caf76ab 100644
--- 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
@@ -1,4 +1,4 @@
1From 0bf4b0ac18d1ea41b32ad781d214b295ca1998f3 Mon Sep 17 00:00:00 2001 1From 85bff993087cd7367ffc35de525c2bf6162398d2 Mon Sep 17 00:00:00 2001
2From: Aneesh Bansal <aneesh.bansal@freescale.com> 2From: Aneesh Bansal <aneesh.bansal@freescale.com>
3Date: Mon, 21 Nov 2011 17:31:39 +0530 3Date: Mon, 21 Nov 2011 17:31:39 +0530
4Subject: [PATCH] Added support for PPC instructions mfatbu, mfatbl. 4Subject: [PATCH] Added support for PPC instructions mfatbu, mfatbl.
@@ -11,15 +11,16 @@ Upstream-Status: Submitted [https://bugs.kde.org/show_bug.cgi?id=289836]
11 11
12Signed-off-by: Aneesh Bansal <aneesh.bansal@freescale.com> 12Signed-off-by: Aneesh Bansal <aneesh.bansal@freescale.com>
13--- 13---
14 VEX/priv/guest_ppc_defs.h | 2 ++
15 VEX/priv/guest_ppc_helpers.c | 18 ++++++++++++++++++
16 VEX/priv/guest_ppc_toIR.c | 22 ++++++++++++++++++++++
17 3 files changed, 42 insertions(+)
14 18
15 VEX/priv/guest_ppc_defs.h | 2 ++ 19diff --git a/VEX/priv/guest_ppc_defs.h b/VEX/priv/guest_ppc_defs.h
16 VEX/priv/guest_ppc_helpers.c | 18 ++++++++++++++++++ 20index 220fbf1..cd259f3 100644
17 VEX/priv/guest_ppc_toIR.c | 22 ++++++++++++++++++++++
18 3 files changed, 42 insertions(+), 0 deletions(-)
19
20--- a/VEX/priv/guest_ppc_defs.h 21--- a/VEX/priv/guest_ppc_defs.h
21+++ b/VEX/priv/guest_ppc_defs.h 22+++ b/VEX/priv/guest_ppc_defs.h
22@@ -233,6 +233,8 @@ extern UInt ppc32g_dirtyhelper_MFSPR_268 23@@ -233,6 +233,8 @@ extern UInt ppc32g_dirtyhelper_MFSPR_268_269 ( UInt );
23 24
24 extern UInt ppc32g_dirtyhelper_MFSPR_287 ( void ); 25 extern UInt ppc32g_dirtyhelper_MFSPR_287 ( void );
25 26
@@ -28,9 +29,11 @@ Signed-off-by: Aneesh Bansal <aneesh.bansal@freescale.com>
28 extern void ppc32g_dirtyhelper_LVS ( VexGuestPPC32State* gst, 29 extern void ppc32g_dirtyhelper_LVS ( VexGuestPPC32State* gst,
29 UInt vD_idx, UInt sh, 30 UInt vD_idx, UInt sh,
30 UInt shift_right ); 31 UInt shift_right );
32diff --git a/VEX/priv/guest_ppc_helpers.c b/VEX/priv/guest_ppc_helpers.c
33index 2611e52..72c349b 100644
31--- a/VEX/priv/guest_ppc_helpers.c 34--- a/VEX/priv/guest_ppc_helpers.c
32+++ b/VEX/priv/guest_ppc_helpers.c 35+++ b/VEX/priv/guest_ppc_helpers.c
33@@ -118,6 +118,24 @@ UInt ppc32g_dirtyhelper_MFSPR_287 ( void 36@@ -118,6 +118,24 @@ UInt ppc32g_dirtyhelper_MFSPR_287 ( void )
34 # endif 37 # endif
35 } 38 }
36 39
@@ -55,9 +58,11 @@ Signed-off-by: Aneesh Bansal <aneesh.bansal@freescale.com>
55 58
56 /* CALLED FROM GENERATED CODE */ 59 /* CALLED FROM GENERATED CODE */
57 /* DIRTY HELPER (reads guest state, writes guest mem) */ 60 /* DIRTY HELPER (reads guest state, writes guest mem) */
61diff --git a/VEX/priv/guest_ppc_toIR.c b/VEX/priv/guest_ppc_toIR.c
62index 18716dd..b2e72a0 100644
58--- a/VEX/priv/guest_ppc_toIR.c 63--- a/VEX/priv/guest_ppc_toIR.c
59+++ b/VEX/priv/guest_ppc_toIR.c 64+++ b/VEX/priv/guest_ppc_toIR.c
60@@ -11875,6 +11875,28 @@ static Bool dis_proc_ctl ( const VexAbiI 65@@ -11875,6 +11875,28 @@ static Bool dis_proc_ctl ( const VexAbiInfo* vbi, UInt prefix, UInt theInstr )
61 break; 66 break;
62 } 67 }
63 68
diff --git a/meta/recipes-devtools/valgrind/valgrind/avoid-neon-for-targets-which-don-t-support-it.patch b/meta/recipes-devtools/valgrind/valgrind/avoid-neon-for-targets-which-don-t-support-it.patch
index 82b8344279..1597b3a021 100644
--- a/meta/recipes-devtools/valgrind/valgrind/avoid-neon-for-targets-which-don-t-support-it.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/avoid-neon-for-targets-which-don-t-support-it.patch
@@ -1,4 +1,4 @@
1From 8facc29c3c56e6cf9cfef70986cf73876044a3fb Mon Sep 17 00:00:00 2001 1From 596372bc9b4d31bc9811881cfa747d99a8c25141 Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com> 2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Tue, 19 Jan 2016 16:42:36 -0800 3Date: Tue, 19 Jan 2016 16:42:36 -0800
4Subject: [PATCH] avoid neon for targets which don't support it 4Subject: [PATCH] avoid neon for targets which don't support it
@@ -16,7 +16,7 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
16 1 file changed, 1 insertion(+), 1 deletion(-) 16 1 file changed, 1 insertion(+), 1 deletion(-)
17 17
18diff --git a/memcheck/tests/sh-mem-random.c b/memcheck/tests/sh-mem-random.c 18diff --git a/memcheck/tests/sh-mem-random.c b/memcheck/tests/sh-mem-random.c
19index ae82248..816e139 100644 19index 0e01684..e41957e 100644
20--- a/memcheck/tests/sh-mem-random.c 20--- a/memcheck/tests/sh-mem-random.c
21+++ b/memcheck/tests/sh-mem-random.c 21+++ b/memcheck/tests/sh-mem-random.c
22@@ -191,7 +191,7 @@ void do_test_at ( U1* arr ) 22@@ -191,7 +191,7 @@ void do_test_at ( U1* arr )
@@ -28,6 +28,3 @@ index ae82248..816e139 100644
28 /* On arm32, many compilers generate a 64-bit float move 28 /* On arm32, many compilers generate a 64-bit float move
29 using two 32 bit integer registers, which completely 29 using two 32 bit integer registers, which completely
30 defeats this test. Hence force a 64-bit NEON load and 30 defeats this test. Hence force a 64-bit NEON load and
31--
321.9.1
33
diff --git a/meta/recipes-devtools/valgrind/valgrind/fixed-perl-path.patch b/meta/recipes-devtools/valgrind/valgrind/fixed-perl-path.patch
index b9804e7451..6bfc6035ed 100644
--- a/meta/recipes-devtools/valgrind/valgrind/fixed-perl-path.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/fixed-perl-path.patch
@@ -1,4 +1,4 @@
1From beaa5b64c60d501fa9cd59fdc563e5f5bccf6882 Mon Sep 17 00:00:00 2001 1From 408f9b39ca4f5709b668f13829a94c4cae855006 Mon Sep 17 00:00:00 2001
2From: Qing He <qing.he@intel.com> 2From: Qing He <qing.he@intel.com>
3Date: Tue, 31 Aug 2010 22:51:58 +0800 3Date: Tue, 31 Aug 2010 22:51:58 +0800
4Subject: [PATCH] valgrind: fix perl scripts 4Subject: [PATCH] valgrind: fix perl scripts
@@ -17,7 +17,6 @@ a better fix would need:
17Upstream-Status: Inappropriate [configuration] 17Upstream-Status: Inappropriate [configuration]
18 18
19Signed-off-by: Maxin B. John <maxin.john@intel.com> 19Signed-off-by: Maxin B. John <maxin.john@intel.com>
20
21--- 20---
22 massif/ms_print.in | 2 +- 21 massif/ms_print.in | 2 +-
23 perf/vg_perf.in | 2 +- 22 perf/vg_perf.in | 2 +-
@@ -45,7 +44,7 @@ index 90ee1d2..c585096 100644
45 ##--- Valgrind performance testing script vg_perf ---## 44 ##--- Valgrind performance testing script vg_perf ---##
46 ##--------------------------------------------------------------------## 45 ##--------------------------------------------------------------------##
47diff --git a/tests/vg_regtest.in b/tests/vg_regtest.in 46diff --git a/tests/vg_regtest.in b/tests/vg_regtest.in
48index 7152765..ad18800 100755 47index 3471322..49e1114 100755
49--- a/tests/vg_regtest.in 48--- a/tests/vg_regtest.in
50+++ b/tests/vg_regtest.in 49+++ b/tests/vg_regtest.in
51@@ -1,4 +1,4 @@ 50@@ -1,4 +1,4 @@
diff --git a/meta/recipes-devtools/valgrind/valgrind/remove-for-aarch64 b/meta/recipes-devtools/valgrind/valgrind/remove-for-aarch64
deleted file mode 100644
index 5bfba1c8d3..0000000000
--- a/meta/recipes-devtools/valgrind/valgrind/remove-for-aarch64
+++ /dev/null
@@ -1,32 +0,0 @@
1drd/tests/annotate_sem
2gdbserver_tests/hgtls
3helgrind/tests/hg05_race2
4helgrind/tests/tc20_verifywrap
5memcheck/tests/dw4
6memcheck/tests/varinfo1
7memcheck/tests/varinfo2
8memcheck/tests/varinfo3
9memcheck/tests/varinfo4
10memcheck/tests/varinfo5
11memcheck/tests/varinfo6
12memcheck/tests/varinforestrict
13memcheck/tests/atomic_incs
14memcheck/tests/bug464969_d_demangle
15memcheck/tests/cxx17_aligned_new
16memcheck/tests/demangle
17memcheck/tests/long_namespace_xml
18memcheck/tests/mismatches
19memcheck/tests/mismatches_xml
20memcheck/tests/new_aligned_delete_default
21memcheck/tests/new_delete_mismatch_size
22memcheck/tests/new_nothrow
23memcheck/tests/realloc_size_zero_mismatch
24memcheck/tests/sized_aligned_new_delete_args
25memcheck/tests/sized_aligned_new_delete_misaligned1
26memcheck/tests/sized_aligned_new_delete_misaligned1_xml
27memcheck/tests/sized_aligned_new_delete_misaligned2
28memcheck/tests/sized_aligned_new_delete_misaligned2_xml
29memcheck/tests/sized_aligned_new_delete_misaligned3
30memcheck/tests/sized_aligned_new_delete_misaligned3_xml
31memcheck/tests/sized_delete
32none/tests/bigcode
diff --git a/meta/recipes-devtools/valgrind/valgrind/remove-for-all b/meta/recipes-devtools/valgrind/valgrind/remove-for-all
deleted file mode 100644
index 8435a6d41d..0000000000
--- a/meta/recipes-devtools/valgrind/valgrind/remove-for-all
+++ /dev/null
@@ -1,29 +0,0 @@
1cachegrind/tests/wrap5
2drd/tests/boost_thread
3none/tests/amd64/fb_test_amd64
4none/tests/tls
5gdbserver_tests/hginfo
6gdbserver_tests/mcinvokeRU
7memcheck/tests/linux/dlclose_leak-no-keep
8memcheck/tests/linux/dlclose_leak
9memcheck/tests/linux/timerfd-syscall
10memcheck/tests/supp_unknown
11memcheck/tests/wrap1
12memcheck/tests/wrap2
13memcheck/tests/wrap3
14memcheck/tests/wrap4
15memcheck/tests/wrap5
16memcheck/tests/wrap6
17memcheck/tests/wrap7
18memcheck/tests/wrap8
19helgrind/tests/tls_threads
20helgrind/tests/pth_mempcpy_false_races
21drd/tests/bar_bad
22drd/tests/bar_bad_xml
23drd/tests/pth_barrier_thr_cr
24drd/tests/std_thread2
25drd/tests/thread_name_xml
26massif/tests/deep-D
27massif/tests/bug469146
28massif/tests/new-cpp
29massif/tests/overloaded-new
diff --git a/meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch b/meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch
index 3ab339d215..19690e5ebb 100644
--- a/meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch
@@ -1,7 +1,7 @@
1From 8154d38bac5cdb3675cfdaf562ab9da01988b263 Mon Sep 17 00:00:00 2001 1From 8c92089741d809cfd18354f1b4df18cd28398a20 Mon Sep 17 00:00:00 2001
2From: Yi Fan Yu <yifan.yu@windriver.com> 2From: Yi Fan Yu <yifan.yu@windriver.com>
3Date: Wed, 17 Mar 2021 12:16:31 -0400 3Date: Wed, 17 Mar 2021 12:16:31 -0400
4Subject: [PATCH 19/20] remove s390x_vec_op_t 4Subject: [PATCH] remove s390x_vec_op_t
5 5
6s390x_vec_op_t is not needed anywhere, only elements of enum are accessed 6s390x_vec_op_t is not needed anywhere, only elements of enum are accessed
7removing it ensures that valgrind can be built with -fno-common option 7removing it ensures that valgrind can be built with -fno-common option
@@ -17,9 +17,11 @@ Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
17 VEX/priv/guest_s390_defs.h | 2 +- 17 VEX/priv/guest_s390_defs.h | 2 +-
18 1 file changed, 1 insertion(+), 1 deletion(-) 18 1 file changed, 1 insertion(+), 1 deletion(-)
19 19
20diff --git a/VEX/priv/guest_s390_defs.h b/VEX/priv/guest_s390_defs.h
21index 29efa01..3a8f0a0 100644
20--- a/VEX/priv/guest_s390_defs.h 22--- a/VEX/priv/guest_s390_defs.h
21+++ b/VEX/priv/guest_s390_defs.h 23+++ b/VEX/priv/guest_s390_defs.h
22@@ -284,7 +284,7 @@ typedef enum { 24@@ -285,7 +285,7 @@ typedef enum {
23 S390_VEC_OP_VCLFNL, 25 S390_VEC_OP_VCLFNL,
24 S390_VEC_OP_VCRNF, 26 S390_VEC_OP_VCRNF,
25 S390_VEC_OP_LAST // supposed to be the last element in enum 27 S390_VEC_OP_LAST // supposed to be the last element in enum
diff --git a/meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch b/meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch
index afca874d02..0c18a63c2b 100644
--- a/meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch
@@ -1,4 +1,4 @@
1From d134dafc2f11e0d247420a0ba360bcdef77b4093 Mon Sep 17 00:00:00 2001 1From a5cd00f1c2d78e2a15f4a0c595f5ac10ca4c3290 Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com> 2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Tue, 19 Jan 2016 16:00:00 -0800 3Date: Tue, 19 Jan 2016 16:00:00 -0800
4Subject: [PATCH] use appropriate -march/-mcpu/-mfpu for ARM test apps 4Subject: [PATCH] use appropriate -march/-mcpu/-mfpu for ARM test apps
@@ -22,9 +22,11 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
22 none/tests/arm/Makefile.am | 6 ++++-- 22 none/tests/arm/Makefile.am | 6 ++++--
23 1 file changed, 4 insertions(+), 2 deletions(-) 23 1 file changed, 4 insertions(+), 2 deletions(-)
24 24
25diff --git a/none/tests/arm/Makefile.am b/none/tests/arm/Makefile.am
26index 79b957c..41a5a03 100644
25--- a/none/tests/arm/Makefile.am 27--- a/none/tests/arm/Makefile.am
26+++ b/none/tests/arm/Makefile.am 28+++ b/none/tests/arm/Makefile.am
27@@ -87,8 +87,10 @@ neon64_CFLAGS = $(AM_CFLAGS) -g -O0 29@@ -87,8 +87,10 @@ neon64_CFLAGS = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 \
28 -mfpu=neon \ 30 -mfpu=neon \
29 -mthumb 31 -mthumb
30 32
diff --git a/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch b/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch
index 0895473fc0..ca7f721d9c 100644
--- a/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch
@@ -1,4 +1,4 @@
1From 005bd11809a1ce65e9f2c28e884354a4741650b9 Mon Sep 17 00:00:00 2001 1From b407514aa1a4fd3667b30527260e271da34ce4a7 Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com> 2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Tue, 13 Dec 2016 11:29:55 +0800 3Date: Tue, 13 Dec 2016 11:29:55 +0800
4Subject: [PATCH] make ld-XXX.so strlen intercept optional 4Subject: [PATCH] make ld-XXX.so strlen intercept optional
@@ -16,9 +16,11 @@ Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
16 coregrind/m_redir.c | 13 ++++++++++++- 16 coregrind/m_redir.c | 13 ++++++++++++-
17 1 file changed, 12 insertions(+), 1 deletion(-) 17 1 file changed, 12 insertions(+), 1 deletion(-)
18 18
19diff --git a/coregrind/m_redir.c b/coregrind/m_redir.c
20index 63172b9..1b5bf95 100644
19--- a/coregrind/m_redir.c 21--- a/coregrind/m_redir.c
20+++ b/coregrind/m_redir.c 22+++ b/coregrind/m_redir.c
21@@ -1307,7 +1307,18 @@ static void add_hardwired_spec (const H 23@@ -1321,7 +1321,18 @@ static void add_hardwired_spec (const HChar* sopatt, const HChar* fnpatt,
22 spec->to_addr = to_addr; 24 spec->to_addr = to_addr;
23 spec->isWrap = False; 25 spec->isWrap = False;
24 spec->isGlobal = False; 26 spec->isGlobal = False;
diff --git a/meta/recipes-devtools/valgrind/valgrind_3.23.0.bb b/meta/recipes-devtools/valgrind/valgrind_3.23.0.bb
deleted file mode 100644
index ad9e26cb6b..0000000000
--- a/meta/recipes-devtools/valgrind/valgrind_3.23.0.bb
+++ /dev/null
@@ -1,274 +0,0 @@
1SUMMARY = "Valgrind memory debugger and instrumentation framework"
2HOMEPAGE = "http://valgrind.org/"
3DESCRIPTION = "Valgrind is an instrumentation framework for building dynamic analysis tools. There are Valgrind tools that can automatically detect many memory management and threading bugs, and profile your programs in detail."
4BUGTRACKER = "http://valgrind.org/support/bug_reports.html"
5LICENSE = "GPL-2.0-only & GPL-2.0-or-later & BSD-3-Clause"
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
7 file://include/pub_tool_basics.h;beginline=6;endline=29;md5=41c410e8d3f305aee7aaa666b2e4f366 \
8 file://include/valgrind.h;beginline=1;endline=56;md5=ad3b317f3286b6b704575d9efe6ca5df \
9 file://COPYING.DOCS;md5=24ea4c7092233849b4394699333b5c56"
10
11DEPENDS = " \
12 ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'boost', '', d)} \
13 "
14
15SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
16 file://fixed-perl-path.patch \
17 file://Added-support-for-PPC-instructions-mfatbu-mfatbl.patch \
18 file://run-ptest \
19 file://remove-for-aarch64 \
20 file://remove-for-all \
21 file://taskset_nondeterministic_tests \
22 file://0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch \
23 file://use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch \
24 file://avoid-neon-for-targets-which-don-t-support-it.patch \
25 file://0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch \
26 file://valgrind-make-ld-XXX.so-strlen-intercept-optional.patch \
27 file://0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch \
28 file://0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch \
29 file://0003-correct-include-directive-path-for-config.h.patch \
30 file://0001-Return-a-valid-exit_code-from-vg_regtest.patch \
31 file://0001-valgrind-filter_xml_frames-do-not-filter-usr.patch \
32 file://0001-memcheck-vgtests-remove-fullpath-after-flags.patch \
33 file://s390x_vec_op_t.patch \
34 file://0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch \
35 file://0001-memcheck-tests-Fix-timerfd-syscall-test.patch \
36 file://0001-docs-Disable-manual-validation.patch \
37 file://0001-tests-arm-Use-O-instead-of-O0.patch \
38 "
39SRC_URI[sha256sum] = "c5c34a3380457b9b75606df890102e7df2c702b9420c2ebef9540f8b5d56264d"
40UPSTREAM_CHECK_REGEX = "valgrind-(?P<pver>\d+(\.\d+)+)\.tar"
41
42COMPATIBLE_HOST = '(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64).*-linux'
43
44# patch 0001-memcheck-vgtests-remove-fullpath-after-flags.patch removes relative path
45# argument. Change expected stderr files accordingly.
46do_patch:append() {
47 bb.build.exec_func('do_sed_paths', d)
48}
49
50do_sed_paths() {
51 sed -i -e 's|tests/||' ${S}/memcheck/tests/badfree3.stderr.exp
52 sed -i -e 's|tests/||' ${S}/memcheck/tests/varinfo5.stderr.exp
53}
54
55# valgrind supports armv7 and above
56COMPATIBLE_HOST:armv4 = 'null'
57COMPATIBLE_HOST:armv5 = 'null'
58COMPATIBLE_HOST:armv6 = 'null'
59
60# valgrind fails with powerpc soft-float
61COMPATIBLE_HOST:powerpc = "${@bb.utils.contains('TARGET_FPU', 'soft', 'null', '.*-linux', d)}"
62
63# X32 isn't supported by valgrind at this time
64COMPATIBLE_HOST:linux-gnux32 = 'null'
65COMPATIBLE_HOST:linux-muslx32 = 'null'
66
67# Disable for some MIPS variants
68COMPATIBLE_HOST:mipsarchr6 = 'null'
69COMPATIBLE_HOST:linux-gnun32 = 'null'
70
71# Disable for powerpc64 with musl
72COMPATIBLE_HOST:libc-musl:powerpc64 = 'null'
73
74# brokenseip is unfortunately required by ptests to pass
75inherit autotools-brokensep ptest multilib_header
76
77EXTRA_OECONF = "--enable-tls --without-mpicc"
78EXTRA_OECONF += "${@['--enable-only32bit','--enable-only64bit'][d.getVar('SITEINFO_BITS') != '32']}"
79
80# valgrind checks host_cpu "armv7*)", so we need to over-ride the autotools.bbclass default --host option
81EXTRA_OECONF:append:arm = " --host=armv7${HOST_VENDOR}-${HOST_OS}"
82
83EXTRA_OEMAKE = "-w"
84
85CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'"
86
87# valgrind likes to control its own optimisation flags. It generally defaults
88# to -O2 but uses -O0 for some specific test apps etc. Passing our own flags
89# (via CFLAGS) means we interfere with that. Only pass DEBUG_FLAGS to it
90# which fixes build path issue in DWARF.
91SELECTED_OPTIMIZATION = "${DEBUG_FLAGS}"
92
93# Split out various helper scripts to separate packages to avoid the
94# main package depending on perl and python.
95PACKAGES =+ "${PN}-cachegrind ${PN}-massif ${PN}-callgrind"
96
97FILES:${PN}-cachegrind = "${bindir}/cg_*"
98FILES:${PN}-massif = "${bindir}/ms_*"
99FILES:${PN}-callgrind = "${bindir}/callgrind_*"
100
101RDEPENDS:${PN}-cachegrind = "${PN} python3-core"
102RDEPENDS:${PN}-massif = "${PN} perl"
103RDEPENDS:${PN}-callgrind = "${PN} perl"
104
105do_configure:prepend () {
106 rm -rf ${S}/config.h
107 sed -i -e 's:$(abs_top_builddir):$(pkglibdir)/ptest:g' ${S}/none/tests/Makefile.am
108 sed -i -e 's:$(top_builddir):$(pkglibdir)/ptest:g' ${S}/memcheck/tests/Makefile.am
109}
110
111do_install:append () {
112 install -m 644 ${B}/default.supp ${D}/${libexecdir}/valgrind/
113 oe_multilib_header valgrind/config.h
114}
115
116VALGRINDARCH ?= "${TARGET_ARCH}"
117VALGRINDARCH:aarch64 = "arm64"
118VALGRINDARCH:x86-64 = "amd64"
119VALGRINDARCH:x86 = "x86"
120VALGRINDARCH:mips = "mips32"
121VALGRINDARCH:mipsel = "mips32"
122VALGRINDARCH:mips64el = "mips64"
123VALGRINDARCH:powerpc = "ppc"
124VALGRINDARCH:powerpc64 = "ppc64"
125VALGRINDARCH:powerpc64le = "ppc64le"
126
127INHIBIT_PACKAGE_STRIP_FILES = "${PKGD}${libexecdir}/valgrind/vgpreload_memcheck-${VALGRINDARCH}-linux.so"
128
129# valgrind needs debug information for ld.so at runtime in order to
130# redirect functions like strlen.
131RRECOMMENDS:${PN} += "${TCLIBC}-dbg"
132
133RDEPENDS:${PN}-ptest += " bash coreutils curl file \
134 gdb \
135 ${TCLIBC}-src gcc-runtime-dbg \
136 libgomp \
137 perl \
138 perl-module-file-basename perl-module-file-glob perl-module-getopt-long \
139 perl-module-overloading perl-module-cwd perl-module-ipc-open3 \
140 perl-module-carp perl-module-symbol \
141 procps \
142 python3-compile \
143 sed \
144 util-linux-taskset \
145 ${PN}-dbg ${PN}-src \
146 ${PN}-cachegrind ${PN}-massif ${PN}-callgrind \
147"
148RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-utils glibc-gconv-utf-32"
149
150# One of the tests contains a bogus interpreter path on purpose.
151# Skip file dependency check
152SKIP_FILEDEPS:${PN}-ptest = '1'
153INSANE_SKIP:${PN}-ptest = "debug-deps"
154
155do_compile_ptest() {
156 oe_runmake check
157}
158
159
160do_install_ptest() {
161 chmod +x ${B}/tests/vg_regtest
162
163 # The test application binaries are not automatically installed.
164 # Grab them from the build directory.
165 #
166 # The regression tests require scripts and data files that are not
167 # copied to the build directory. They must be copied from the
168 # source directory.
169 saved_dir=$PWD
170 for parent_dir in ${S} ${B} ; do
171 cd $parent_dir
172
173 subdirs=" \
174 .in_place \
175 cachegrind/tests \
176 callgrind/tests \
177 dhat/tests \
178 drd/tests \
179 gdbserver_tests \
180 helgrind/tests \
181 lackey/tests \
182 massif/tests \
183 memcheck/tests \
184 none/tests \
185 tests \
186 exp-bbv/tests \
187 "
188 # Get the vg test scripts, filters, and expected files
189 for dir in $subdirs ; do
190 find $dir | cpio -pvdu ${D}${PTEST_PATH}
191 done
192 cd $saved_dir
193 done
194
195 # The scripts reference config.h so add it to the top ptest dir.
196 cp ${B}/config.h ${D}${PTEST_PATH}
197 install -D ${UNPACKDIR}/remove-for-aarch64 ${D}${PTEST_PATH}
198 install -D ${UNPACKDIR}/remove-for-all ${D}${PTEST_PATH}
199 install -D ${UNPACKDIR}/taskset_nondeterministic_tests ${D}${PTEST_PATH}
200
201 # Add an executable need by none/tests/bigcode
202 mkdir ${D}${PTEST_PATH}/perf
203 cp ${B}/perf/bigcode ${D}${PTEST_PATH}/perf
204
205 # Add an executable needed by memcheck/tests/vcpu_bz2
206 cp ${B}/perf/bz2 ${D}${PTEST_PATH}/perf
207
208 # Make the ptest dir look like the top level valgrind src dir
209 # This is checked by the gdbserver_tests/make_local_links script
210 mkdir ${D}${PTEST_PATH}/coregrind
211 cp ${B}/coregrind/vgdb ${D}${PTEST_PATH}/coregrind
212
213 # Add an executable needed by massif tests
214 cp ${B}/massif/ms_print ${D}${PTEST_PATH}/massif/ms_print
215
216 find ${D}${PTEST_PATH} \
217 \( \
218 -name "Makefile*" \
219 -o -name "*.o" \
220 \) \
221 -exec rm {} \;
222
223 sed -i s:\.\./\.\./callgrind/callgrind_annotate:${bindir}/callgrind_annotate: ${D}${PTEST_PATH}/callgrind/tests/ann1.vgtest
224 sed -i s:\.\./\.\./callgrind/callgrind_annotate:${bindir}/callgrind_annotate: ${D}${PTEST_PATH}/callgrind/tests/ann2.vgtest
225
226 # point the expanded @abs_top_builddir@ of the host to PTEST_PATH
227 sed -i s:${S}:${PTEST_PATH}:g \
228 ${D}${PTEST_PATH}/memcheck/tests/linux/debuginfod-check.vgtest
229
230 # handle multilib
231 sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest
232 sed -i s:@libexecdir@:${libexecdir}:g ${D}${PTEST_PATH}/run-ptest
233 sed -i s:@bindir@:${bindir}:g ${D}${PTEST_PATH}/run-ptest
234
235 # enable cachegrind ptests
236 ln -s ${bindir}/cg_annotate ${D}/${PTEST_PATH}/cachegrind/cg_annotate
237 ln -s ${bindir}/cg_diff ${D}/${PTEST_PATH}/cachegrind/cg_diff
238 ln -s ${bindir}/cg_merge ${D}/${PTEST_PATH}/cachegrind/cg_merge
239
240 # This test fails on the host as well, using both 3.15 and git master (as of Jan 24 2020)
241 # https://bugs.kde.org/show_bug.cgi?id=402833
242 rm ${D}${PTEST_PATH}/memcheck/tests/overlap.vgtest
243
244 # This is known failure see https://bugs.kde.org/show_bug.cgi?id=435732
245 rm ${D}${PTEST_PATH}/memcheck/tests/leak_cpp_interior.vgtest
246
247 # https://bugs.kde.org/show_bug.cgi?id=445743
248 rm ${D}${PTEST_PATH}/drd/tests/pth_mutex_signal
249
250 # As the binary isn't stripped or debug-splitted, the source file isn't fetched
251 # via dwarfsrcfiles either, so it needs to be installed manually.
252 mkdir -p ${D}${TARGET_DBGSRC_DIR}/none/tests/
253 install ${S}/none/tests/tls.c ${D}${TARGET_DBGSRC_DIR}/none/tests/
254}
255
256do_install_ptest:append:x86-64 () {
257 # https://bugs.kde.org/show_bug.cgi?id=463456
258 rm ${D}${PTEST_PATH}/memcheck/tests/origin6-fp.vgtest
259 # https://bugs.kde.org/show_bug.cgi?id=463458
260 rm ${D}${PTEST_PATH}/memcheck/tests/vcpu_fnfns.vgtest
261 # https://bugs.kde.org/show_bug.cgi?id=463463
262 rm ${D}${PTEST_PATH}/none/tests/amd64/fma.vgtest
263}
264
265# avoid stripping some generated binaries otherwise some of the tests will fail
266# run-strip-reloc.sh, run-strip-strmerge.sh and so on will fail
267INHIBIT_PACKAGE_STRIP_FILES += "\
268 ${PKGD}${PTEST_PATH}/none/tests/tls \
269 ${PKGD}${PTEST_PATH}/none/tests/tls.so \
270 ${PKGD}${PTEST_PATH}/none/tests/tls2.so \
271 ${PKGD}${PTEST_PATH}/helgrind/tests/tc09_bad_unlock \
272 ${PKGD}${PTEST_PATH}/memcheck/tests/manuel1 \
273 ${PKGD}${PTEST_PATH}/drd/tests/pth_detached3 \
274"
diff --git a/meta/recipes-devtools/valgrind/valgrind_3.25.1.bb b/meta/recipes-devtools/valgrind/valgrind_3.25.1.bb
new file mode 100644
index 0000000000..a8b0be5767
--- /dev/null
+++ b/meta/recipes-devtools/valgrind/valgrind_3.25.1.bb
@@ -0,0 +1,116 @@
1SUMMARY = "Valgrind memory debugger and instrumentation framework"
2HOMEPAGE = "http://valgrind.org/"
3DESCRIPTION = "Valgrind is an instrumentation framework for building dynamic analysis tools. There are Valgrind tools that can automatically detect many memory management and threading bugs, and profile your programs in detail."
4BUGTRACKER = "http://valgrind.org/support/bug_reports.html"
5LICENSE = "GPL-2.0-only & GPL-2.0-or-later & BSD-3-Clause"
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
7 file://include/pub_tool_basics.h;beginline=6;endline=29;md5=41c410e8d3f305aee7aaa666b2e4f366 \
8 file://include/valgrind.h;beginline=1;endline=56;md5=ad3b317f3286b6b704575d9efe6ca5df \
9 file://COPYING.DOCS;md5=24ea4c7092233849b4394699333b5c56"
10
11SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
12 file://fixed-perl-path.patch \
13 file://Added-support-for-PPC-instructions-mfatbu-mfatbl.patch \
14 file://use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch \
15 file://avoid-neon-for-targets-which-don-t-support-it.patch \
16 file://0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch \
17 file://valgrind-make-ld-XXX.so-strlen-intercept-optional.patch \
18 file://0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch \
19 file://0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch \
20 file://0003-correct-include-directive-path-for-config.h.patch \
21 file://0001-valgrind-filter_xml_frames-do-not-filter-usr.patch \
22 file://0001-memcheck-vgtests-remove-fullpath-after-flags.patch \
23 file://s390x_vec_op_t.patch \
24 file://0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch \
25 file://0001-memcheck-tests-Fix-timerfd-syscall-test.patch \
26 file://0001-docs-Disable-manual-validation.patch \
27 file://0001-tests-arm-Use-O-instead-of-O0.patch \
28 file://0001-Use-portable-syntax-for-pushsection-directive-in-inl.patch \
29 "
30SRC_URI[sha256sum] = "61deb8d0727b45c268efdc1b3b6c9e679cd97cbf5ee4b28d1dead7c8b7a271af"
31UPSTREAM_CHECK_REGEX = "valgrind-(?P<pver>\d+(\.\d+)+)\.tar"
32
33COMPATIBLE_HOST = '(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64|riscv64).*-linux'
34
35# valgrind supports armv7 and above
36COMPATIBLE_HOST:armv4 = 'null'
37COMPATIBLE_HOST:armv5 = 'null'
38COMPATIBLE_HOST:armv6 = 'null'
39
40# valgrind fails with powerpc soft-float
41COMPATIBLE_HOST:powerpc = "${@bb.utils.contains('TARGET_FPU', 'soft', 'null', '.*-linux', d)}"
42
43# X32 isn't supported by valgrind at this time
44COMPATIBLE_HOST:linux-gnux32 = 'null'
45COMPATIBLE_HOST:linux-muslx32 = 'null'
46
47# Disable for some MIPS variants
48COMPATIBLE_HOST:mipsarchr6 = 'null'
49COMPATIBLE_HOST:linux-gnun32 = 'null'
50
51# Disable for powerpc64 with musl
52COMPATIBLE_HOST:libc-musl:powerpc64 = 'null'
53
54inherit autotools-brokensep multilib_header
55
56EXTRA_OECONF = "--enable-tls --without-mpicc"
57EXTRA_OECONF += "${@['--enable-only32bit','--enable-only64bit'][d.getVar('SITEINFO_BITS') != '32']}"
58
59# valgrind checks host_cpu "armv7*)", so we need to over-ride the autotools.bbclass default --host option
60EXTRA_OECONF:append:arm = " --host=armv7${HOST_VENDOR}-${HOST_OS}"
61
62EXTRA_OEMAKE = "-w"
63
64CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'"
65
66# valgrind likes to control its own optimisation flags. It generally defaults
67# to -O2 but uses -O0 for some specific test apps etc. Passing our own flags
68# (via CFLAGS) means we interfere with that. Only pass DEBUG_FLAGS to it
69# which fixes build path issue in DWARF.
70SELECTED_OPTIMIZATION = "${DEBUG_LEVELFLAG}"
71
72# Split out various helper scripts to separate packages to avoid the
73# main package depending on perl and python.
74PACKAGES =+ "${PN}-cachegrind ${PN}-massif ${PN}-callgrind"
75
76FILES:${PN}-cachegrind = "${bindir}/cg_*"
77FILES:${PN}-massif = "${bindir}/ms_*"
78FILES:${PN}-callgrind = "${bindir}/callgrind_*"
79
80RDEPENDS:${PN}-cachegrind = "${PN} python3-core"
81RDEPENDS:${PN}-massif = "${PN} perl"
82RDEPENDS:${PN}-callgrind = "${PN} perl"
83
84do_configure:prepend () {
85 rm -rf ${S}/config.h
86}
87
88do_install:append () {
89 install -m 644 ${B}/default.supp ${D}/${libexecdir}/valgrind/
90 oe_multilib_header valgrind/config.h
91}
92
93VALGRINDARCH ?= "${TARGET_ARCH}"
94VALGRINDARCH:aarch64 = "arm64"
95VALGRINDARCH:x86-64 = "amd64"
96VALGRINDARCH:x86 = "x86"
97VALGRINDARCH:mips = "mips32"
98VALGRINDARCH:mipsel = "mips32"
99VALGRINDARCH:mips64el = "mips64"
100VALGRINDARCH:powerpc = "ppc"
101VALGRINDARCH:powerpc64 = "ppc64"
102VALGRINDARCH:powerpc64le = "ppc64le"
103
104INHIBIT_PACKAGE_STRIP_FILES = "${PKGD}${libexecdir}/valgrind/vgpreload_memcheck-${VALGRINDARCH}-linux.so"
105
106# valgrind needs debug information for ld.so at runtime in order to
107# redirect functions like strlen.
108RRECOMMENDS:${PN} += "${TCLIBC}-dbg"
109
110# Valgrind needs intrinsics which are not provided by clang
111# m_signals.c:2213:7: error: __builtin_longjmp is not supported for the current target
112# 2213 | VG_MINIMAL_LONGJMP(tst->sched_jmpbuf);
113# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
114#
115# It needs something like - https://bugs.kde.org/show_bug.cgi?id=369723
116TOOLCHAIN:riscv64 = "gcc"