[OE-core] [PATCH] gcc-sanitizers: allow empty for lsan and tsan packages

Kang Kai Kai.Kang at windriver.com
Fri Oct 14 09:02:59 UTC 2016


On 2016年10月13日 22:59, Burton, Ross wrote:
>
> On 13 October 2016 at 15:40, Kang Kai <Kai.Kang at windriver.com 
> <mailto:Kai.Kang at windriver.com>> wrote:
>
>     gcc checks tsan and lsan support in source file
>     gcc/libsanitizer/configure.tgt, it seems only support x86_64. Then
>     tsan and lsan related packages will be empty for other target.
>     For qemuarm project, add in local.conf:
>
>     IMAGE_INSTALL_append = " libtsan"
>
>
> If libtsan is x86-64 only, why not only add it for x86-64 images?  The 
> package not existing on machines it can't be built for is more obvious 
> than existing but being empty.

The real scenario is for x86-64 kernel with x86 rootfs. We created a 
template to enable gcc sanitize support. It just simple adds sanitize 
related packages to image:

LIBX_DEV ?= ""
LIBX_DEV_x86-64 = "liblsan-dev libtsan-dev"

IMAGE_INSTALL += " \
     gcc-sanitizers \
     libasan-dev \
     libubsan-dev \
     ${LIBX_DEV} \
"

When multilib is enabled, it fails for x86-64 kernel with x86 rootfs 
such as lib32-xxx-image on qemux86-64. Var IMAGE_INSTALL will be expand 
with prefix lib32 but lib32-lsan* and lib32-tsan* are empty then cause 
the failures.

Regards,
Kai

>
> Ross


-- 
Regards,
Neil | Kai Kang

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20161014/02afe4f0/attachment-0002.html>


More information about the Openembedded-core mailing list