<div dir="ltr">Hi,<div><br></div><div>it might be useful to check if there is ${S}/waf at all before trying to call it.</div><div><br></div><div>There are some recipes like jack and other which inherit waf-samba which inherits waf, but they don&#39;t use waf for configure, strange isn&#39;t it?</div><div><br></div><div>But since this patch, there is new warning for every do_configure task, because there is this prefuncs waf_preconfigure causing:</div><div>WARNING: libldb-1.1.29-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.<br></div><div>WARNING: samba-4.6.7-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.<br></div><div>WARNING: libtalloc-2.1.9-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.<br></div><div>WARNING: jack-1.9.10+gitAUTOINC+2d1d323505-r0 do_configure: Unable to execute waf --version, exit code 1. Assuming waf version without bindir/libdir support.<br></div><div>WARNING: libtevent-0.9.31-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.<br></div><div>WARNING: libtdb-1.3.14-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.<br></div><div><br></div><div>Now when this change is also backported to rocko we should probably fix those recipes to prevent introducing even more warnings to stable release builds.</div><div><br></div><div>Regards,</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jan 2, 2018 at 6:28 PM,  <span dir="ltr">&lt;<a href="mailto:git@git.openembedded.org" target="_blank">git@git.openembedded.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This is an automated email from the git hooks/post-receive script.<br>
<br>
rpurdie pushed a commit to branch master<br>
in repository openembedded-core.<br>
<br>
commit 923f91d8d8606141ce218927bc943f<wbr>4f4f34bcdd<br>
Author: Stefan Agner &lt;<a href="mailto:stefan.agner@toradex.com">stefan.agner@toradex.com</a>&gt;<br>
AuthorDate: Tue Dec 12 17:13:24 2017 +0100<br>
<br>
    waf.bbclass: explicitly pass bindir and libdir if supported<br>
<br>
    On some build hosts distros (e.g. Fedora 26) waf tries to be<br>
    smart about libdir detection and defaults to [EXEC_PREFIX/lib64].<br>
    This obviously is not what we want for 32-bit targets and usually<br>
    fails in the do_package phase:<br>
      WARNING: gstreamer1.0-plugins-imx-0.13.<wbr>0-r0 do_package: QA Issue: gstreamer1.0-plugins-imx: Files/directories were installed but not shipped in any package:<br>
        /usr/lib64/libgstimxcommon.so.<wbr>0<br>
        ...<br>
<br>
    Depending on version, waf knows prefix or prefix, bindir and<br>
    libdir as default options. Explicitly pass the right set of<br>
    arguments.<br>
<br>
    Signed-off-by: Stefan Agner &lt;<a href="mailto:stefan.agner@toradex.com">stefan.agner@toradex.com</a>&gt;<br>
    Signed-off-by: Ross Burton &lt;<a href="mailto:ross.burton@intel.com">ross.burton@intel.com</a>&gt;<br>
---<br>
 meta/classes/waf.bbclass | 17 ++++++++++++++++-<br>
 1 file changed, 16 insertions(+), 1 deletion(-)<br>
<br>
diff --git a/meta/classes/waf.bbclass b/meta/classes/waf.bbclass<br>
index c4698e9..acbda27 100644<br>
--- a/meta/classes/waf.bbclass<br>
+++ b/meta/classes/waf.bbclass<br>
@@ -25,8 +25,23 @@ def get_waf_parallel_make(d):<br>
<br>
     return &quot;&quot;<br>
<br>
+python waf_preconfigure() {<br>
+    from distutils.version import StrictVersion<br>
+    srcsubdir = d.getVar(&#39;S&#39;)<br>
+    wafbin = os.path.join(srcsubdir, &#39;waf&#39;)<br>
+    status, result = oe.utils.getstatusoutput(<wbr>wafbin + &quot; --version&quot;)<br>
+    if status != 0:<br>
+        bb.warn(&quot;Unable to execute waf --version, exit code %d. Assuming waf version without bindir/libdir support.&quot; % status)<br>
+        return<br>
+    version = result.split()[1]<br>
+    if StrictVersion(version) &gt;= StrictVersion(&quot;1.8.7&quot;):<br>
+        d.setVar(&quot;WAF_EXTRA_CONF&quot;, &quot;--bindir=${bindir} --libdir=${libdir}&quot;)<br>
+}<br>
+<br>
+do_configure[prefuncs] += &quot;waf_preconfigure&quot;<br>
+<br>
 waf_do_configure() {<br>
-       ${S}/waf configure --prefix=${prefix} ${EXTRA_OECONF}<br>
+       ${S}/waf configure --prefix=${prefix} ${WAF_EXTRA_CONF} ${EXTRA_OECONF}<br>
 }<br>
<br>
 waf_do_compile()  {<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
To stop receiving notification emails like this one, please contact<br>
the administrator of this repository.<br>
--<br>
______________________________<wbr>_________________<br>
Openembedded-commits mailing list<br>
<a href="mailto:Openembedded-commits@lists.openembedded.org">Openembedded-commits@lists.<wbr>openembedded.org</a><br>
<a href="http://lists.openembedded.org/mailman/listinfo/openembedded-commits" rel="noreferrer" target="_blank">http://lists.openembedded.org/<wbr>mailman/listinfo/openembedded-<wbr>commits</a><br>
</font></span></blockquote></div><br></div></div>