<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none"><!--P{margin-top:0;margin-bottom:0;} p
        {margin-top:0;
        margin-bottom:0}--></style>
</head>
<body dir="ltr" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>Hi,</p>
<p><br>
</p>
<p>In case previous mail was omitted.<br>
</p>
<p><br>
</p>
<p>Regards,</p>
<p>Oleksiy<br>
</p>
<div dir="ltr" style="font-size:12pt; color:#000000; background-color:#FFFFFF; font-family:Calibri,Arial,Helvetica,sans-serif">
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b> bitbake-devel-bounces@lists.openembedded.org <bitbake-devel-bounces@lists.openembedded.org> on behalf of Oleksiy Obitotskyi -X (oobitots -
GLOBALLOGIC INC at Cisco) via bitbake-devel <bitbake-devel@lists.openembedded.org><br>
<b>Sent:</b> Tuesday, October 1, 2019 14:23<br>
<b>To:</b> bitbake-devel@lists.openembedded.org<br>
<b>Cc:</b> Taras Kondratiuk (takondra); Ruslan Bilovol -X (rbilovol - GLOBALLOGIC INC at Cisco)<br>
<b>Subject:</b> [bitbake-devel] nativesdk dependencies on shared packages</font>
<div> </div>
</div>
<div>
<p>Hi,</p>
<p><br>
</p>
<p>We have situation when MACHINE value change affect nativesdk packages (thud but the same situation was on krogoth).<br>
<br>
MACHINE="x86" bitbake nativesdk-<package> -> build package and dependencies x86<br>
MACHINE="x86-64" bitbake nativesdk-<package> -> build package and dependencies for x86-64<br>
and finally<br>
MACHINE="x86" bitbake nativesdk-<cpackage> -> a lot of setscene functons executed for nativesdk packages<br>
<br>
MACHINE value affects BASELIB. For x86-64 we override BASELIB = lib64.<br>
For x86 BASELIB = lib. baselib for cross/natviesdk ramains unchanged (lib).<br>
<br>
<span style="font-family:"Courier New",monospace"># $BASELIB</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># set <>/openembedded-core/meta/conf/bitbake.conf:12</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># "lib"</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># pre-expansion value:</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># "lib"</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace">BASELIB="lib"</span><br style="font-family:"Courier New",monospace">
<br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># $BASELIB [2 operations]</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># set <>/openembedded-core/meta/conf/bitbake.conf:12</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># "lib"</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># set <>/x86-64-platforms.inc:22</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># "lib64"</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># pre-expansion value:</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace"># "lib64"</span><br style="font-family:"Courier New",monospace">
<span style="font-family:"Courier New",monospace">BASELIB="lib64"</span><br>
<br>
Tracking dependencies shows that nativesdk-<package> depends on gcc-crosssdk which depend on<br>
shared gcc-source package. And gcc-source tasks hash values (starting from from gcc-source.do_patch) are different for<br>
x86 and x86-64 (due to baselib), so nativesdk-<package> task stamp signature deps part depends on gcc-source tasks hash
</p>
<p>and also become different if we change MACHINE.<br>
</p>
<p><br>
</p>
<p>Technically it can be fixed with tweaking sstate_rundepfilter - but it's not generic solution.<br>
</p>
<p><br>
Is there any way to avoid rebuilding nativesdk packages that depend on shared packages (e.g. gcc-source)?</p>
<p><br>
</p>
<p>Regards,</p>
<p>Oleksiy<br>
</p>
</div>
</div>
</body>
</html>