diff options
Diffstat (limited to 'import-layers/yocto-poky/meta/recipes-devtools/valgrind')
-rw-r--r-- | import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/11_mips-link-tool.patch | 37 | ||||
-rw-r--r-- | import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/gcc5-port.patch | 64 | ||||
-rw-r--r-- | import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch | 45 | ||||
-rw-r--r-- | import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind_3.12.0.bb (renamed from import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind_3.11.0.bb) | 7 |
4 files changed, 48 insertions, 105 deletions
diff --git a/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/11_mips-link-tool.patch b/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/11_mips-link-tool.patch deleted file mode 100644 index ecb33b8cb..000000000 --- a/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/11_mips-link-tool.patch +++ /dev/null @@ -1,37 +0,0 @@ -Debian fix for MIPS: mmap(0x400000, 32768) failed in UME with error 22 (Invalid argument) - - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=777704 - -Upstream-Status: Pending - -Signed-off-by: Andre McCurdy <armccurdy@gmail.com> - - -Description: Disable the MIPS linker workarounds when using -Ttext-section -Origin: vendor -Bug-Debian: http://bugs.debian.org/777704 -Author: James Cowgill <james410@cowgill.org.uk> -Last-Update: 2015-04-25 - ---- a/coregrind/link_tool_exe_linux.in -+++ b/coregrind/link_tool_exe_linux.in -@@ -76,12 +76,13 @@ - my $arch = substr($x, 0, index($x, "'")); - - my $extra_args; --if (($arch eq 'mips') || ($arch eq 'mipsel') -- || ($arch eq 'mipsisa32r2el')) { -- $extra_args = "-static -Wl,--section-start=.reginfo=$ala"; --} elsif (($arch eq 'mips64') || ($arch eq 'mips64el') || -- ($arch eq 'mipsisa64el')) { -- $extra_args = "-static -Wl,--section-start=.MIPS.options=$ala"; -+if ($arch =~ /^mips/ && "@FLAG_T_TEXT@" eq '-Ttext') { -+ # We only need to use the special mips options when using -Ttext -+ if ($arch =~ /^mips(64|isa64)/) { -+ $extra_args = "-static -Wl,--section-start=.MIPS.options=$ala"; -+ } else { -+ $extra_args = "-static -Wl,--section-start=.reginfo=$ala"; -+ } - } else { - $extra_args = "-static -Wl,@FLAG_T_TEXT@=$ala"; - } diff --git a/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/gcc5-port.patch b/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/gcc5-port.patch deleted file mode 100644 index 76bc82187..000000000 --- a/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/gcc5-port.patch +++ /dev/null @@ -1,64 +0,0 @@ -backport fix from upstream to fix build errors with gcc 6 - -http://valgrind.10908.n7.nabble.com/Valgrind-r15773-in-trunk-configure-ac-drd-tests-std-thread-cpp-drd-tests-std-thread2-cpp-td56109.html - -../../../valgrind-3.11.0/drd/tests/std_thread.cpp:30:3: error: '_Impl_base' is not a member of 'std::thread' - std::thread::_Impl_base* __t = static_cast<std::thread::_Impl_base*>(__p); - ^~~ -../../../valgrind-3.11.0/drd/tests/std_thread.cpp:30:28: error: '__t' was not declared in this scope - std::thread::_Impl_base* __t = static_cast<std::thread::_Impl_base*>(__p); - ^~~ -../../../valgrind-3.11.0/drd/tests/std_thread.cpp:30:59: error: '_Impl_base' in 'class std::thread' does not name a type - std::thread::_Impl_base* __t = static_cast<std::thread::_Impl_base*>(__p); - ^~~~~~~~~~ - -Signed-off-by: Khem Raj <raj.khem@gmail.com> -Upstream-Status: Backport - -Index: configure.ac -=================================================================== ---- a/configure.ac (revision 15772) -+++ b/configure.ac (revision 15773) -@@ -160,7 +160,7 @@ - icc-1[[3-9]].*) - AC_MSG_RESULT([ok (ICC version ${gcc_version})]) - ;; -- notclang-[[3-9]].*|notclang-[[1-9][0-9]]*) -+ notclang-[[3-9]]|notclang-[[3-9]].*|notclang-[[1-9][0-9]]*) - AC_MSG_RESULT([ok (${gcc_version})]) - ;; - clang-2.9|clang-[[3-9]].*|clang-[[1-9][0-9]]*) -Index: drd/tests/std_thread2.cpp -=================================================================== ---- a/drd/tests/std_thread2.cpp (revision 15772) -+++ b/drd/tests/std_thread2.cpp (revision 15773) -@@ -26,6 +26,7 @@ - return 0; - } - -+#if defined(__GNUC__) && __GNUC__ -0 < 6 - // - // From libstdc++-v3/src/c++11/thread.cc - // -@@ -70,3 +71,4 @@ - } - } - } -+#endif -Index: drd/tests/std_thread.cpp -=================================================================== ---- a/drd/tests/std_thread.cpp (revision 15772) -+++ b/drd/tests/std_thread.cpp (revision 15773) -@@ -21,6 +21,7 @@ - return 0; - } - -+#if defined(__GNUC__) && __GNUC__ -0 < 6 - // - // From libstdc++-v3/src/c++11/thread.cc - // -@@ -65,3 +66,4 @@ - } - } - } -+#endif diff --git a/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch b/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch new file mode 100644 index 000000000..d04297dca --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch @@ -0,0 +1,45 @@ +From 005bd11809a1ce65e9f2c28e884354a4741650b9 Mon Sep 17 00:00:00 2001 +From: Andre McCurdy <armccurdy@gmail.com> +Date: Tue, 13 Dec 2016 11:29:55 +0800 +Subject: [PATCH] make ld-XXX.so strlen intercept optional + +Hack: Depending on how glibc was compiled (e.g. optimised for size or +built with _FORTIFY_SOURCE enabled) the strlen symbol might not be +found in ld-XXX.so. Therefore although we should still try to +intercept it, don't make it mandatory to do so. + +Upstream-Status: Inappropriate + +Signed-off-by: Andre McCurdy <armccurdy@gmail.com> +Signed-off-by: Jackie Huang <jackie.huang@windriver.com> +--- + coregrind/m_redir.c | 13 ++++++++++++- + 1 file changed, 12 insertions(+), 1 deletion(-) + +diff --git a/coregrind/m_redir.c b/coregrind/m_redir.c +index ff35009..d7d6816 100644 +--- a/coregrind/m_redir.c ++++ b/coregrind/m_redir.c +@@ -1275,7 +1275,18 @@ static void add_hardwired_spec (const HChar* sopatt, const HChar* fnpatt, + spec->to_addr = to_addr; + spec->isWrap = False; + spec->isGlobal = False; +- spec->mandatory = mandatory; ++ ++ /* Hack: Depending on how glibc was compiled (e.g. optimised for size or ++ built with _FORTIFY_SOURCE enabled) the strlen symbol might not be found. ++ Therefore although we should still try to intercept it, don't make it ++ mandatory to do so. We over-ride "mandatory" here to avoid the need to ++ patch the many different architecture specific callers to ++ add_hardwired_spec(). */ ++ if (0==VG_(strcmp)("strlen", fnpatt)) ++ spec->mandatory = NULL; ++ else ++ spec->mandatory = mandatory; ++ + /* VARIABLE PARTS */ + spec->mark = False; /* not significant */ + spec->done = False; /* not significant */ +-- +1.9.1 + diff --git a/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind_3.11.0.bb b/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind_3.12.0.bb index 42fd27f53..d82541b84 100644 --- a/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind_3.11.0.bb +++ b/import-layers/yocto-poky/meta/recipes-devtools/valgrind/valgrind_3.12.0.bb @@ -16,20 +16,19 @@ SRC_URI = "http://www.valgrind.org/downloads/valgrind-${PV}.tar.bz2 \ file://fixed-perl-path.patch \ file://Added-support-for-PPC-instructions-mfatbu-mfatbl.patch \ file://run-ptest \ - file://11_mips-link-tool.patch \ file://0002-remove-rpath.patch \ file://0004-Fix-out-of-tree-builds.patch \ file://0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch \ file://0001-Remove-tests-that-fail-to-build-on-some-PPC32-config.patch \ file://use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch \ file://avoid-neon-for-targets-which-don-t-support-it.patch \ - file://gcc5-port.patch \ + file://valgrind-make-ld-XXX.so-strlen-intercept-optional.patch \ " SRC_URI_append_libc-musl = "\ file://0001-fix-build-for-musl-targets.patch \ " -SRC_URI[md5sum] = "4ea62074da73ae82e0162d6550d3f129" -SRC_URI[sha256sum] = "6c396271a8c1ddd5a6fb9abe714ea1e8a86fce85b30ab26b4266aeb4c2413b42" +SRC_URI[md5sum] = "6eb03c0c10ea917013a7622e483d61bb" +SRC_URI[sha256sum] = "67ca4395b2527247780f36148b084f5743a68ab0c850cb43e4a5b4b012cf76a1" COMPATIBLE_HOST = '(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64).*-linux' |