[yocto] Building BlueZ from git in Yocto
Alan Martinovic
alan.martinovic at senic.com
Wed Mar 21 08:47:48 PDT 2018
When you say "tagged as backports" are you referring to the Upstream-Status?
So this is a backport patch:
Upstream-Status: Accepted
[https://git.kernel.org/pub/scm/bluetooth/bluez.git/commit/?id=76255f73
2d68aef2b90d36d9c7be51a9e1739ce7]
but these two aren't yet or never will be:
Upstream-Status: Submitted
Upstream-Status: Denied
On Wed, Mar 21, 2018 at 4:39 PM, Burton, Ross <ross.burton at intel.com> wrote:
> If you look at the patch headers, you'll see that none of them are
> tagged as backports.
>
> Ross
>
> On 21 March 2018 at 15:35, Alan Martinovic <alan.martinovic at senic.com> wrote:
>> Hey Ross, thanks for the clarification.
>>
>> The issues reoccurred because I modified the recipe not to include any patches,
>> falsely assuming that all of them were BlueZ backports and none is actually
>> a Yocto specific change.
>>
>> On Wed, Mar 21, 2018 at 4:23 PM, Burton, Ross <ross.burton at intel.com> wrote:
>>> On 21 March 2018 at 15:15, Alan Martinovic <alan.martinovic at senic.com>
>>> wrote:
>>>>
>>>>
>>>> Building it with Yocto results in the mentioned error:
>>>>
>>>> | ../git/src/genbuiltin hostname wiimote autopair policy a2dp avrcp
>>>> network input hog gap scanparam deviceinfo battery > src/builtin.h
>>>> | ../git/obexd/src/genbuiltin filesystem bluetooth opp ftp irmc pbap mas
>>>> mns > obexd/src/builtin.h
>>>> | /bin/bash: obexd/src/builtin.h: No such file or directory
>>>> | Makefile:9431: recipe for target 'obexd/src/builtin.h' failed
>>>> | make: *** [obexd/src/builtin.h] Error 1
>>>> | make: *** Waiting for unfinished jobs....
>>>> | ERROR: oe_runmake failed
>>>> | WARNING: exit code 1 from a shell command.
>>>>
>>>>
>>>> It seems that for some reason in Yocto, make can't redirect into
>>>> `obexd/src/builtin.h` while
>>>> it does so successfully for native build.
>>>
>>>
>>> Yocto will be doing an out-of-tree build with high parallelism, neither of
>>> which you are likely doing yourself.
>>>
>>> The hint is "no such file or directory" for a file it is writing *to*. This
>>> means the parent doesn't exist, in this case obexd/src/.
>>>
>>> This is a typical race in out-of-tree and parallel builds, where genbuiltin
>>> is racing against other commands to create the directory. The fix is to
>>> ensure that whatever rule calls genbuiltin actually does a mkdir first.
>>>
>>> We have a fix for this already in oe-core:
>>>
>>> http://git.openembedded.org/openembedded-core/tree/meta/recipes-connectivity/bluez5/bluez5/out-of-tree.patch
>>>
>>> So I imagine you're using an old release of Yocto. I sent this patch to the
>>> linux-bluetooth list in April 2016 but it was either moderated away or
>>> missed.
>>>
>>> Ross
More information about the yocto
mailing list