[OE-core] [PATCH v2] valgrind: Enable valgrind for armv7

Samuel Stirtzel s.stirtzel at googlemail.com
Wed May 23 13:43:44 UTC 2012


2012/5/23 Samuel Stirtzel <s.stirtzel at googlemail.com>:
> 2012/5/23 Koen Kooi <koen at dominion.thruhere.net>:
>>
>> Op 23 mei 2012, om 14:46 heeft Samuel Stirtzel het volgende geschreven:
>>
>>> Valgrind supports the armv7 architecture, this patch allows armv7 users to build and use Valgrind
>>>
>>> This patch was run-tested on a Gumstix Overo (armv7a cortex-a8)
>>> * The test consisted of running valgrinds memcheck (memory leakage detection),
>>> * and callgrind (profiling) on a Qt 4 application
>>>
>>> Signed-off-by: Samuel Stirtzel <s.stirtzel at googlemail.com>
>>> ---
>>> meta/recipes-devtools/valgrind/valgrind_3.7.0.bb |    3 +++
>>> 1 files changed, 3 insertions(+), 0 deletions(-)
>>>
>>> diff --git a/meta/recipes-devtools/valgrind/valgrind_3.7.0.bb b/meta/recipes-devtools/valgrind/valgrind_3.7.0.bb
>>> index d7c7b24..0998f72 100644
>>> --- a/meta/recipes-devtools/valgrind/valgrind_3.7.0.bb
>>> +++ b/meta/recipes-devtools/valgrind/valgrind_3.7.0.bb
>>> @@ -23,13 +23,16 @@ SRC_URI[md5sum] = "a855fda56edf05614f099dca316d1775"
>>> SRC_URI[sha256sum] = "5d62c0330f1481fe2c593249192fa68ff454c19c34343978cc9ce91aa324cbf6"
>>>
>>> COMPATIBLE_HOST = '(i.86|x86_64|powerpc|powerpc64).*-linux'
>>> +COMPATIBLE_HOST_armv7a = 'arm.*-linux'
>>>
>>> inherit autotools
>>>
>>> EXTRA_OECONF = "--enable-tls"
>>> +EXTRA_OECONF_armv7a = "--enable-tls -host=armv7-none-linux-gnueabi"
>>
>> we should already be passing --host through autotools.bbclass. Does the configure have a special check? I've seen a few projects that insist on the -none- TARGET_VENDOR for no good reason :(
>
> At some extend yes, the configuration checks the host, the default
> string passed is "arm" but the configure.in checks for:
>
> case "${host_cpu}" in
> ...
>     armv7*)
>        AC_MSG_RESULT([ok (${host_cpu})])
>        ARCH_MAX="arm"
>
>
> So if we use the default from autotools it won't work.
> I've seen the arch in some examples on the net, do you prefer -host=armv7?

Seems to be a more "intelligent" check:
"checking host system type... Invalid configuration `armv7': machine
`armv7' not recognized"

>
>>
>>> EXTRA_OEMAKE = "-w"
>>> PARALLEL_MAKE = ""
>>>
>>> FILES_${PN}-dbg += "${libdir}/${PN}/*/.debug/*"
>>> RRECOMMENDS_${PN}_powerpc += "${TCLIBC}-dbg"
>>> RRECOMMENDS_${PN}_powerpc64 += "${TCLIBC}-dbg"
>>> +RRECOMMENDS_${PN}_armv7a += "libc6-dbg"
>>
>>
>> ${TCLIBC}-dbg ?

v3 coming soon, it looked odd because of angstrom.inc: ${TCLIBC} ?= "eglibc",
but it seems alright with ${TCLIBC}-dbg pointing to libc6-dbg

-- 
Regards
Samuel




More information about the Openembedded-core mailing list