Bug 11345

Summary: Support both MUSL and x32 as a build option combination
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Saul Wold <sgw>
Component: coreAssignee: sweeaun <swee.aun.khor>
Status: RESOLVED MOVED QA Contact:
Severity: enhancement    
Priority: Medium CC: meta.mr.watcher, meta.watcher
Version: 2.3   
Target Milestone: 2.4   
Hardware: x86   
OS: Multiple   
Whiteboard: LET
OS type for building Yocto: --- Type of Regression: New (Never tested)
Verified: Documentation change: Yes (doc changes required)

Description Saul Wold 2017-04-12 18:27:08 UTC
Currently we have both MUSL and x32 support, but they are independant, MUSL is working on x32 support and is currently experimental.  We should ensure that the meta-data and bbclasses are prepared for being able to build a combination of both.

A starting point would be to build for MUSL and corei7, then test with changing the DEFAULTTUNE

TCLIBC = "musl"
MACHINE="intel-corei7-64"
#DEFAULTTUNE = "corei7-64-x32"

There will be both infrastructure changes (bbclass) and possible bug fixes to various projects (upstream and recipes).
Comment 1 Rebecca Chang 2017-04-13 23:33:24 UTC
Need to rework on review comments.
Comment 2 sweeaun 2017-05-23 01:27:13 UTC
Started to look into this issue by referred to gnux32 implementation. 

Made some changes on siteinfo.bbclass and insane.bbclass to support muslx32 for infrastructure change such as osinfo and targetinfo.

Do some fixes on openssl, libffi and perl compilations errors. Currently having systemd-boot do_compile error.
Comment 3 sweeaun 2017-10-01 09:21:20 UTC

Able to build core-image-minimal image with muslx32 currently. 
However, there are still couple recipes having compilation error with muslx32 when performed bitbake world. 

Created separate Bugzilla bug to keep track those recipes that failing with muslx32 compilation during bitbake world. 
webkitgtk	 Bug 12118
Boost	         Bug 12119
Gdb     	 Bug 12120
Qat16	         Bug 12121
Systemd-boot	 Bug 12122
acpica  	 Bug 12123