[oe] [meta-browser][PATCH] chromium-wayland: fix compilation problem on non-X11 builds

Herve Jourdain herve.jourdain at neuf.fr
Thu Feb 2 15:33:18 UTC 2017


Hi Jacobo,

OK, I will send those extra patched to the meta-raspberry list tomorrow then.

Cheers,
Herve

> On 2 Feb 2017, at 21:28, Jacobo Aragunde Pérez <jaragunde at igalia.com> wrote:
> 
>> On 02/02/17 13:46, Herve Jourdain wrote:
>> Hi Jacobo,
>> 
>> I'm using "master", and I do have patches for enabling armv7ve. But since
>> they're needed only for raspberrypi, I planned to submit them only for
>> meta-raspberrypi.
>> If you think it could be useful in meta-browser, though, I can submit them there.
>> 
> 
> Oh, I think sending them to meta-rpi would be good enough, thank you!
> I'll keep an eye on it.
> 
> Best regards,
> -- 
> Jacobo Aragunde
> Software Engineer at Igalia
> 
> 
>> -----Original Message-----
>> From: Jacobo Aragunde Pérez [mailto:jaragunde at igalia.com] 
>> Sent: jeudi 2 février 2017 13:30
>> To: openembedded-devel at lists.openembedded.org
>> Cc: otavio at ossystems.com.br; Herve Jourdain <herve.jourdain at neuf.fr>
>> Subject: Re: [meta-browser][PATCH] chromium-wayland: fix compilation problem on non-X11 builds
>> 
>> Thank you all for your reviews. This should be the last patch, it addresses Herve's problem when building on a Raspberry Pi.
>> 
>> Unfortunately, I haven't been able to reproduce his problem myself, but this patch is actually a backport of an upstream patch, so it makes no harm in my opinion.
>> 
>> Another question, are you using krogoth in you rpi build? I found problems with the declared architecture in releases newer than jethro, it is called "armv7ve" and chromium doesn't build because it expects "armv7a". We could use a patch if you have worked around this problem :)
>> 
>> Thanks again,
>> --
>> Jacobo Aragunde
>> Software Engineer at Igalia
>> 
>> 
>>> On 02/02/17 13:17, Jacobo Aragunde Pérez wrote:
>>> Certain build configurations enable a code path that includes
>>> keyboard_code_conversion_xkb.cc, but it eventually fails in non-X11
>>> environments because of a missing patch that is present upstream.
>>> 
>>> This commit adds the missing patch from
>>> https://codereview.chromium.org/2239833003
>>> 
>>> There are two versions of the patch in the code review URL above.
>>> The first version fixes the problem both under the gyp and GN build
>>> systems. That patch was rejected because gyp is considered deprecated
>>> upstream. The second version fixes the problem only on GN and it was
>>> merged upstream. We are picking the first version because our recipes
>>> still use gyp to build.
>>> 
>>> Signed-off-by: Jacobo Aragunde Pérez <jaragunde at igalia.com>
>>> ---
>>> .../chromium/chromium-wayland_53.0.2785.143.bb     |  1 +
>>> .../fix-non-x11-build-when-use_xkbcommon-1.patch   | 51 ++++++++++++++++++++++
>>> 2 files changed, 52 insertions(+)
>>> create mode 100644 recipes-browser/chromium/chromium/chromium-wayland/fix-non-x11-build-when-use_xkbcommon-1.patch
>>> 
>>> diff --git a/recipes-browser/chromium/chromium-wayland_53.0.2785.143.bb b/recipes-browser/chromium/chromium-wayland_53.0.2785.143.bb
>>> index a75918b..ef913a7 100644
>>> --- a/recipes-browser/chromium/chromium-wayland_53.0.2785.143.bb
>>> +++ b/recipes-browser/chromium/chromium-wayland_53.0.2785.143.bb
>>> @@ -13,6 +13,7 @@ SRC_URI += "\
>>>         file://chromium-wayland/0011-Replace-readdir_r-with-readdir.patch \
>>>         file://chromium-wayland/remove-Werror.patch \
>>>         file://chromium-wayland/guard-x11_desktop_handler-inclusion.patch \
>>> +        file://chromium-wayland/fix-non-x11-build-when-use_xkbcommon-1.patch \
>>>         ${@bb.utils.contains('PACKAGECONFIG', 'component-build', 'file://component-build.gypi', '', d)} \
>>>         ${@bb.utils.contains('PACKAGECONFIG', 'ignore-lost-context', 'file://0001-Remove-accelerated-Canvas-support-from-blacklist.patch', '', d)} \
>>> "
>>> diff --git a/recipes-browser/chromium/chromium/chromium-wayland/fix-non-x11-build-when-use_xkbcommon-1.patch b/recipes-browser/chromium/chromium/chromium-wayland/fix-non-x11-build-when-use_xkbcommon-1.patch
>>> new file mode 100644
>>> index 0000000..976ece9
>>> --- /dev/null
>>> +++ b/recipes-browser/chromium/chromium/chromium-wayland/fix-non-x11-build-when-use_xkbcommon-1.patch
>>> @@ -0,0 +1,51 @@
>>> +From: jbriance <jbriance at cisco.com>
>>> +Subject: keycodes: Fix non-X11 build when use_xkbcommon=1
>>> +
>>> +Since M51, ui/events/keycodes/xkb_keysym.h follows X11 path, even if
>>> +use_xkbcommon=1 is set because USE_XKBCOMMON is not defined, leading
>>> +to the following compilation error in this case:
>>> +
>>> +  In file included from ../../ui/events/keycodes/keyboard_code_conversion_xkb.h:12:0,
>>> +                   from ../../ui/events/keycodes/keyboard_code_conversion_xkb.cc:5:
>>> +  ../../ui/events/keycodes/xkb_keysym.h:19:19: fatal error: X11/X.h: No such file or directory
>>> +
>>> +BUG=none
>>> +
>>> +Review-Url: https://codereview.chromium.org/2239833003
>>> +--
>>> +
>>> +Index: ui/events/keycodes/BUILD.gn
>>> +diff --git a/ui/events/keycodes/BUILD.gn b/ui/events/keycodes/BUILD.gn
>>> +index 4f2d47c2497d321332c79d0dd4e9007b50c319c7..716c7ed17cc8049ea65b95a5062e7c6e0adc6e48 100644
>>> +--- a/ui/events/keycodes/BUILD.gn
>>> ++++ b/ui/events/keycodes/BUILD.gn
>>> +@@ -17,6 +17,10 @@ source_set("xkb") {
>>> +     "//base",
>>> +     "//ui/events:dom_keycode_converter",
>>> +   ]
>>> ++
>>> ++  if (use_xkbcommon) {
>>> ++    defines = [ "USE_XKBCOMMON" ]
>>> ++  }
>>> + }
>>> + 
>>> + if (use_x11 || ozone_platform_x11) {
>>> +Index: ui/events/keycodes/events_keycodes.gyp
>>> +diff --git a/ui/events/keycodes/events_keycodes.gyp b/ui/events/keycodes/events_keycodes.gyp
>>> +index b0796b4e2ead8bffe88fb01ed136814be505d967..248e961bad2ad3996ca99624b6c489c7835f6241 100644
>>> +--- a/ui/events/keycodes/events_keycodes.gyp
>>> ++++ b/ui/events/keycodes/events_keycodes.gyp
>>> +@@ -21,6 +21,13 @@
>>> +         'scoped_xkb.h',
>>> +         'xkb_keysym.h',
>>> +       ],
>>> ++      'conditions': [
>>> ++        ['use_xkbcommon==1', {
>>> ++          'defines': [
>>> ++            'USE_XKBCOMMON',
>>> ++          ],
>>> ++        }],
>>> ++      ],
>>> +     },
>>> +   ],
>>> +   'conditions': [
>>> 
>> 
>> 




More information about the Openembedded-devel mailing list