qemu: Fix build when x11 is not in distro features

Message ID 20220309011830.3130440-1-raj.khem@gmail.com
State Accepted, archived
Commit 8c9d0bc4eb2784a3defa047e509d96e0eb521c03
Headers show
Series qemu: Fix build when x11 is not in distro features | expand

Commit Message

Khem Raj March 9, 2022, 1:18 a.m. UTC
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-devtools/qemu/qemu_6.2.0.bb | 2 ++
 1 file changed, 2 insertions(+)

Comments

Alexander Kanavin March 9, 2022, 6:11 a.m. UTC | #1
Why is this issue not seen on autobuilder’s no-x11 job?

Alex

On Wed 9. Mar 2022 at 2.18, Khem Raj <raj.khem@gmail.com> wrote:

> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta/recipes-devtools/qemu/qemu_6.2.0.bb | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/meta/recipes-devtools/qemu/qemu_6.2.0.bb
> b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
> index 062ed32b015..c7eef0a9d5e 100644
> --- a/meta/recipes-devtools/qemu/qemu_6.2.0.bb
> +++ b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
> @@ -6,6 +6,8 @@ DEPENDS = "glib-2.0 zlib pixman bison-native ninja-native
> meson-native"
>
>  DEPENDS:append:libc-musl = " libucontext"
>
> +CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '',
> '-DEGL_NO_X11=1', d)}"
> +
>  RDEPENDS:${PN}:class-target += "bash"
>
>  EXTRA_OECONF:append:class-target = "
> --target-list=${@get_qemu_target_list(d)}"
> --
> 2.35.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#162946):
> https://lists.openembedded.org/g/openembedded-core/message/162946
> Mute This Topic: https://lists.openembedded.org/mt/89652908/1686489
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
Alexander Kanavin March 9, 2022, 6:38 a.m. UTC | #2
Also, what error specifically are you seeing? How is your build set up?

Alex

On Wed 9. Mar 2022 at 7.11, Alexander Kanavin via lists.openembedded.org
<alex.kanavin=gmail.com@lists.openembedded.org> wrote:

> Why is this issue not seen on autobuilder’s no-x11 job?
>
> Alex
>
> On Wed 9. Mar 2022 at 2.18, Khem Raj <raj.khem@gmail.com> wrote:
>
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>>  meta/recipes-devtools/qemu/qemu_6.2.0.bb | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>> b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>> index 062ed32b015..c7eef0a9d5e 100644
>> --- a/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>> +++ b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>> @@ -6,6 +6,8 @@ DEPENDS = "glib-2.0 zlib pixman bison-native ninja-native
>> meson-native"
>>
>>  DEPENDS:append:libc-musl = " libucontext"
>>
>> +CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '',
>> '-DEGL_NO_X11=1', d)}"
>> +
>>  RDEPENDS:${PN}:class-target += "bash"
>>
>>  EXTRA_OECONF:append:class-target = "
>> --target-list=${@get_qemu_target_list(d)}"
>> --
>> 2.35.1
>>
>>
>>
>>
>>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#162947):
> https://lists.openembedded.org/g/openembedded-core/message/162947
> Mute This Topic: https://lists.openembedded.org/mt/89652908/1686489
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
Khem Raj March 9, 2022, 4:37 p.m. UTC | #3
On Tue, Mar 8, 2022 at 10:11 PM Alexander Kanavin
<alex.kanavin@gmail.com> wrote:
>
> Why is this issue not seen on autobuilder’s no-x11 job?
>

perhaps AB's no-x11 job is still using mesa and not an alternative
stack like mali or sgx ddk
if so then here is why

https://git.openembedded.org/openembedded-core/tree/meta/recipes-graphics/mesa/mesa.inc#n30


> Alex
>
> On Wed 9. Mar 2022 at 2.18, Khem Raj <raj.khem@gmail.com> wrote:
>>
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>>  meta/recipes-devtools/qemu/qemu_6.2.0.bb | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/meta/recipes-devtools/qemu/qemu_6.2.0.bb b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>> index 062ed32b015..c7eef0a9d5e 100644
>> --- a/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>> +++ b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>> @@ -6,6 +6,8 @@ DEPENDS = "glib-2.0 zlib pixman bison-native ninja-native meson-native"
>>
>>  DEPENDS:append:libc-musl = " libucontext"
>>
>> +CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1', d)}"
>> +
>>  RDEPENDS:${PN}:class-target += "bash"
>>
>>  EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"
>> --
>> 2.35.1
>>
>>
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Links: You receive all messages sent to this group.
>> View/Reply Online (#162946): https://lists.openembedded.org/g/openembedded-core/message/162946
>> Mute This Topic: https://lists.openembedded.org/mt/89652908/1686489
>> Group Owner: openembedded-core+owner@lists.openembedded.org
>> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
Khem Raj March 9, 2022, 4:46 p.m. UTC | #4
On Tue, Mar 8, 2022 at 10:38 PM Alexander Kanavin
<alex.kanavin@gmail.com> wrote:
>
> Also, what error specifically are you seeing? How is your build set up?
>

There is use of MESA_EGL_NO_X11_HEADERS which is now renamed in newer headers to
EGL_NO_X11 from mesa/khronos headers, however this define is
relatively new and 3D stacks do not have this adopted but apps
like qemu and bunch of others depend on it, I guess they assume mesa.
One can argue that its better to fix the 3D stacks to behave
like mesa but this means every BSP using these stacks will need to
carry such a fix.

https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/include/EGL/eglplatform.h

> Alex
>
> On Wed 9. Mar 2022 at 7.11, Alexander Kanavin via lists.openembedded.org <alex.kanavin=gmail.com@lists.openembedded.org> wrote:
>>
>> Why is this issue not seen on autobuilder’s no-x11 job?
>>
>> Alex
>>
>> On Wed 9. Mar 2022 at 2.18, Khem Raj <raj.khem@gmail.com> wrote:
>>>
>>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>>> ---
>>>  meta/recipes-devtools/qemu/qemu_6.2.0.bb | 2 ++
>>>  1 file changed, 2 insertions(+)
>>>
>>> diff --git a/meta/recipes-devtools/qemu/qemu_6.2.0.bb b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>>> index 062ed32b015..c7eef0a9d5e 100644
>>> --- a/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>>> +++ b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
>>> @@ -6,6 +6,8 @@ DEPENDS = "glib-2.0 zlib pixman bison-native ninja-native meson-native"
>>>
>>>  DEPENDS:append:libc-musl = " libucontext"
>>>
>>> +CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1', d)}"
>>> +
>>>  RDEPENDS:${PN}:class-target += "bash"
>>>
>>>  EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"
>>> --
>>> 2.35.1
>>>
>>>
>>>
>>>
>>
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Links: You receive all messages sent to this group.
>> View/Reply Online (#162947): https://lists.openembedded.org/g/openembedded-core/message/162947
>> Mute This Topic: https://lists.openembedded.org/mt/89652908/1686489
>> Group Owner: openembedded-core+owner@lists.openembedded.org
>> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
Alexander Kanavin March 9, 2022, 4:56 p.m. UTC | #5
Can you add this to the commit message please?

Alex

On Wed, 9 Mar 2022 at 17:47, Khem Raj <raj.khem@gmail.com> wrote:
>
> On Tue, Mar 8, 2022 at 10:38 PM Alexander Kanavin
> <alex.kanavin@gmail.com> wrote:
> >
> > Also, what error specifically are you seeing? How is your build set up?
> >
>
> There is use of MESA_EGL_NO_X11_HEADERS which is now renamed in newer headers to
> EGL_NO_X11 from mesa/khronos headers, however this define is
> relatively new and 3D stacks do not have this adopted but apps
> like qemu and bunch of others depend on it, I guess they assume mesa.
> One can argue that its better to fix the 3D stacks to behave
> like mesa but this means every BSP using these stacks will need to
> carry such a fix.
>
> https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/include/EGL/eglplatform.h
>
> > Alex
> >
> > On Wed 9. Mar 2022 at 7.11, Alexander Kanavin via lists.openembedded.org <alex.kanavin=gmail.com@lists.openembedded.org> wrote:
> >>
> >> Why is this issue not seen on autobuilder’s no-x11 job?
> >>
> >> Alex
> >>
> >> On Wed 9. Mar 2022 at 2.18, Khem Raj <raj.khem@gmail.com> wrote:
> >>>
> >>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> >>> ---
> >>>  meta/recipes-devtools/qemu/qemu_6.2.0.bb | 2 ++
> >>>  1 file changed, 2 insertions(+)
> >>>
> >>> diff --git a/meta/recipes-devtools/qemu/qemu_6.2.0.bb b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
> >>> index 062ed32b015..c7eef0a9d5e 100644
> >>> --- a/meta/recipes-devtools/qemu/qemu_6.2.0.bb
> >>> +++ b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
> >>> @@ -6,6 +6,8 @@ DEPENDS = "glib-2.0 zlib pixman bison-native ninja-native meson-native"
> >>>
> >>>  DEPENDS:append:libc-musl = " libucontext"
> >>>
> >>> +CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1', d)}"
> >>> +
> >>>  RDEPENDS:${PN}:class-target += "bash"
> >>>
> >>>  EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"
> >>> --
> >>> 2.35.1
> >>>
> >>>
> >>>
> >>>
> >>
> >> -=-=-=-=-=-=-=-=-=-=-=-
> >> Links: You receive all messages sent to this group.
> >> View/Reply Online (#162947): https://lists.openembedded.org/g/openembedded-core/message/162947
> >> Mute This Topic: https://lists.openembedded.org/mt/89652908/1686489
> >> Group Owner: openembedded-core+owner@lists.openembedded.org
> >> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com]
> >> -=-=-=-=-=-=-=-=-=-=-=-
> >>

Patch

diff --git a/meta/recipes-devtools/qemu/qemu_6.2.0.bb b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
index 062ed32b015..c7eef0a9d5e 100644
--- a/meta/recipes-devtools/qemu/qemu_6.2.0.bb
+++ b/meta/recipes-devtools/qemu/qemu_6.2.0.bb
@@ -6,6 +6,8 @@  DEPENDS = "glib-2.0 zlib pixman bison-native ninja-native meson-native"
 
 DEPENDS:append:libc-musl = " libucontext"
 
+CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1', d)}"
+
 RDEPENDS:${PN}:class-target += "bash"
 
 EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"