[oe] [meta-browser] host leaking wayland-scanner?

Ulrich Ölmann u.oelmann at pengutronix.de
Wed Jun 26 12:29:11 UTC 2019


Hi developers of meta-browser,

while building meta-browser's latest chromium-ozone-wayland recipe (my
meta-browser's current state is [1], integrated into a customer's thud
based Yocto-BSP) I faced the following problem (excerpt from log.do_com-
pile)

  [9109/37430] python ../../third_party/wayland/wayland_scanner_wrapper.py third_party/wayland-protocols/src/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml --src-root ../../ --root-gen-dir gen --cmd /usr/bin/wayland-scanner
  FAILED: gen/third_party/wayland-protocols/src/unstable/linux-dmabuf/linux-dmabuf-unstable-v1-protocol.c gen/third_party/wayland-protocols/src/unstable/linux-dmabuf/linux-dmabuf-unstable-v1-client-protocol.h gen/third_party/wayland-protocols/src/unstable/linux-dmabuf/linux-dmabuf-unstable-v1-server-protocol.h
  python ../../third_party/wayland/wayland_scanner_wrapper.py third_party/wayland-protocols/src/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml --src-root ../../ --root-gen-dir gen --cmd /usr/bin/wayland-scanner
  Traceback (most recent call last):
    File "../../third_party/wayland/wayland_scanner_wrapper.py", line 48, in <module>
      main(sys.argv)
    File "../../third_party/wayland/wayland_scanner_wrapper.py", line 40, in main
      generate_code(cmd, "code", protocol_path, out_base_name + "-protocol.c")
    File "../../third_party/wayland/wayland_scanner_wrapper.py", line 18, in generate_code
      ret = subprocess.call([wayland_scanner_cmd, code_type, path_in, path_out])
    File "<UNDISCLOSED_PATH>/build/YOCTO.BSP/tmp/work/cortexa9hf-neon-pmc-linux-gnueabi/chromium-ozone-wayland/75.0.3770.100-r0/recipe-sysroot-native/usr/lib/python2.7/subprocess.py", line 172, in call
      return Popen(*popenargs, **kwargs).wait()
    File "<UNDISCLOSED_PATH>/build/YOCTO.BSP/tmp/work/cortexa9hf-neon-pmc-linux-gnueabi/chromium-ozone-wayland/75.0.3770.100-r0/recipe-sysroot-native/usr/lib/python2.7/subprocess.py", line 394, in __init__
      errread, errwrite)
    File "<UNDISCLOSED_PATH>/build/YOCTO.BSP/tmp/work/cortexa9hf-neon-pmc-linux-gnueabi/chromium-ozone-wayland/75.0.3770.100-r0/recipe-sysroot-native/usr/lib/python2.7/subprocess.py", line 1047, in _execute_child
      raise child_exception
  OSError: [Errno 2] No such file or directory

which seems to come from my build host not providing '/usr/bin/wayland-
scanner' and which suggests that we have a host tool leakage here. This
all originally results from Chromium's commit [2], particularly [3].

Unfortunately up to now I am not familiar with Google's build tool 'GN'
(see [4]), so I can't present a solution straightaway. But I would like
to start working on a patch now, hence my questions are:

  - did anyone notice the same issue?
  - is my analysis correct that [3] has to be patched somehow and the
    recipe [5] lacks a dependency on wayland-native?

Best regards
Ulrich


P.S.: Sending this message a second time as I have not been subscribed
to the oe-devel list before so that the original mail got rejected.


[1] e0d1e299d691 ("chromium: fix "pure virtual method called" problem.")
[2] https://chromium.googlesource.com/chromium/src/+/a64f758399d26a1c80ab0d3dfecee3abf0714305
    a64f758399d2 ("Run wayland-scanner as part of build")
[3] https://chromium.googlesource.com/chromium/src/+/a64f758399d26a1c80ab0d3dfecee3abf0714305/third_party/wayland/features.gni#12
[4] https://gn.googlesource.com/gn/
[5] https://github.com/OSSystems/meta-browser/blob/master/recipes-browser/chromium/chromium-ozone-wayland_75.0.3770.100.bb
-- 
Pengutronix e.K.                           | Ulrich Ölmann               |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |


More information about the Openembedded-devel mailing list