<div dir="ltr">As waf_do_configure takes care of EXTRA_OECONF, maybe we can only fix <a href="http://gstreamer1.0-plugins-imx_0.13.0.bb">gstreamer1.0-plugins-imx_0.13.0.bb</a> by adding libdir ? <div>It is much a bug fix than a longterm solution, but if any waf version breaks options, it can be a nightmare to handle...</div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-12-12 16:56 GMT+01:00 Stefan Agner <span dir="ltr"><<a href="mailto:stefan@agner.ch" target="_blank">stefan@agner.ch</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On 2017-12-12 16:47, Otavio Salvador wrote:<br>
> On Tue, Dec 12, 2017 at 12:38 PM, Stefan Agner <<a href="mailto:stefan@agner.ch">stefan@agner.ch</a>> wrote:<br>
>> On 2017-12-12 15:13, Burton, Ross wrote:<br>
>><br>
>>> On 12 December 2017 at 14:03, Stefan Agner <<a href="mailto:stefan@agner.ch">stefan@agner.ch</a>> wrote:<br>
>>><br>
>>>> On 2017-12-12 15:00, Burton, Ross wrote:<br>
>>>><br>
>>>>> On 12 December 2017 at 13:27, Stefan Agner <<a href="mailto:stefan@agner.ch">stefan@agner.ch</a>> wrote:<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>
>>>>>> Waf knows prefix, bindir and libdir as default options. Explicitly<br>
>>>>>> pass those three.<br>
>>>>><br>
>>>>> Obviously not.<br>
>>>>><br>
>>>>> ERROR: eglinfo-x11-1.0.0-r0 do_configure: Function failed: do_configure (log file is located at /data/poky-tmp/master/build/<wbr>work/corei7-64-poky-linux/<wbr>eglinfo-x11/1.0.0-r0/temp/log.<wbr>do_configure.17278)<br>
>>>>> ERROR: Logfile of failure stored in: /data/poky-tmp/master/build/<wbr>work/corei7-64-poky-linux/<wbr>eglinfo-x11/1.0.0-r0/temp/log.<wbr>do_configure.17278<br>
>>>>> Log data follows:<br>
>>>>> | DEBUG: Executing shell function do_configure<br>
>>>>> | waf [commands] [options]<br>
>>>>> |<br>
>>>>> | Main commands (example: ./waf build -j4)<br>
>>>>> | build : executes the build<br>
>>>>> | clean : cleans the project<br>
>>>>> | configure: configures the project<br>
>>>>> | dist : makes a tarball for redistributing the sources<br>
>>>>> | distcheck: checks if the project compiles (tarball from 'dist')<br>
>>>>> | distclean: removes the build directory<br>
>>>>> | install : installs the targets on the system<br>
>>>>> | list : lists the targets to execute<br>
>>>>> | step : executes tasks in a step-by-step fashion, for debugging<br>
>>>>> | uninstall: removes the targets installed<br>
>>>>> | update : updates the plugins from the *waflib/extras* directory<br>
>>>>> |<br>
>>>>> | waf: error: no such option: --bindir<br>
>>>>><br>
>>>> Hm, eglinfo seems to come with a old waf version, 1.7.8 to be specific.<br>
>>>><br>
>>>> It seems bindir/libdir got added in 1.8 series:<br>
>>>> <a href="https://github.com/waf-project/waf/blob/waf-1.8/waflib/Options.py" rel="noreferrer" target="_blank">https://github.com/waf-<wbr>project/waf/blob/waf-1.8/<wbr>waflib/Options.py</a><br>
>>>><br>
>>>> Make version specific variables?<br>
>>><br>
>>> That neatly shows where the "clever code" that was breaking libdir earlier is:<br>
>>><br>
>>> <a href="https://github.com/waf-project/waf/commit/823b4cd2dc03d06a81e0ab003606067da03d8745#diff-b44b0c8f383b2fd1b19f2ba039d30237" rel="noreferrer" target="_blank">https://github.com/waf-<wbr>project/waf/commit/<wbr>823b4cd2dc03d06a81e0ab00360606<wbr>7da03d8745#diff-<wbr>b44b0c8f383b2fd1b19f2ba039d302<wbr>37</a><br>
>>><br>
>><br>
>> Yeah that seems to be it.<br>
>><br>
>> That go added in the 1.8.6 dev cycle afaik.<br>
>><br>
>> I am thinking about adding some kind of version autodetection<br>
>><br>
>> WAFMINOR=$(${S}/waf --version | sed -e '1{s/waf [0-9]\.//;s/\.[0-9]*<br>
>> (.*//};q')<br>
>><br>
>> if [ $WAFMINOR -gt "7" ] ...<br>
>><br>
>> Maybe there is a nicer way of doing this?<br>
><br>
> What about we provide a package waf version and replace the binaries<br>
> prior building? So we know what version we'd be using. Kinda<br>
> autoreconf run in autotools class.<br>
<br>
</div></div>Waf seems to be extensible using wscript. I don't know how exactly<br>
wscript depends on waf (version) and whether the API is considered<br>
stable...<br>
<br>
I'd rather prefer not taking chances...<br>
<br>
--<br>
Stefan<br>
<div class="HOEnZb"><div class="h5">--<br>
______________________________<wbr>_________________<br>
Openembedded-core mailing list<br>
<a href="mailto:Openembedded-core@lists.openembedded.org">Openembedded-core@lists.<wbr>openembedded.org</a><br>
<a href="http://lists.openembedded.org/mailman/listinfo/openembedded-core" rel="noreferrer" target="_blank">http://lists.openembedded.org/<wbr>mailman/listinfo/openembedded-<wbr>core</a><br>
</div></div></blockquote></div><br></div>