[OE-core] [PATCH 04/13] wayland: convert to meson build

Alexander Kanavin alex.kanavin at gmail.com
Thu Feb 20 16:38:36 UTC 2020


Thanks for looking into it :)

Alex

On Thu, 20 Feb 2020 at 17:21, Joshua Watt <jpewhacker at gmail.com> wrote:

> On Wed, Feb 19, 2020 at 1:49 PM Alexander Kanavin
> <alex.kanavin at gmail.com> wrote:
> >
> > Replace an autotools-specific .pc adjustment patch with a meson-specific
> one.
>
> This can (and did) break meta-mingw in the autobuilder, but I pushed
> the fix to master-next of meta-mingw
> (
> https://git.yoctoproject.org/cgit/cgit.cgi/meta-mingw/commit/?h=master-next&id=32ccf9d5089694e4a58951ca1a38452f889a27ef
> ),
> so that can be pulled in to try again
>
> >
> > Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
> > ---
> >  ...hardcode-the-path-to-wayland-scanner.patch | 26 +++++++++++++++
> >  ...-the-native-wayland-scanner-directly.patch | 27 ++++++++++++++++
> >  .../wayland/wayland/fixpathinpcfiles.patch    | 32 -------------------
> >  .../wayland/wayland_1.18.0.bb                 | 11 ++++---
> >  4 files changed, 59 insertions(+), 37 deletions(-)
> >  create mode 100644
> meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch
> >  create mode 100644
> meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch
> >  delete mode 100644
> meta/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch
> >
> > diff --git
> a/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch
> b/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch
> > new file mode 100644
> > index 0000000000..2199548bdf
> > --- /dev/null
> > +++
> b/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch
> > @@ -0,0 +1,26 @@
> > +From cbb28635a1079d68e62dbaa1e21791a20dbbbaf4 Mon Sep 17 00:00:00 2001
> > +From: Alexander Kanavin <alex.kanavin at gmail.com>
> > +Date: Mon, 17 Feb 2020 21:46:18 +0100
> > +Subject: [PATCH] Do not hardcode the path to wayland-scanner
> > +
> > +This results in host contamination during builds.
> > +
> > +Upstream-Status: Inappropriate [oe-core specific]
> > +Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
> > +---
> > + src/meson.build | 2 +-
> > + 1 file changed, 1 insertion(+), 1 deletion(-)
> > +
> > +diff --git a/src/meson.build b/src/meson.build
> > +index 294aee0..7e410fa 100644
> > +--- a/src/meson.build
> > ++++ b/src/meson.build
> > +@@ -49,7 +49,7 @@ pkgconfig.generate(
> > +               'datarootdir=' + join_paths('${prefix}',
> get_option('datadir')),
> > +               'pkgdatadir=' + join_paths('${datarootdir}',
> meson.project_name()),
> > +               'bindir=' + join_paths('${prefix}',
> get_option('bindir')),
> > +-              'wayland_scanner=${bindir}/wayland-scanner'
> > ++              'wayland_scanner=wayland-scanner'
> > +       ],
> > +       filebase: 'wayland-scanner'
> > + )
> > diff --git
> a/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch
> b/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch
> > new file mode 100644
> > index 0000000000..f98037a850
> > --- /dev/null
> > +++
> b/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch
> > @@ -0,0 +1,27 @@
> > +From 2582d2653ba80917d7bc47088e1a5f49530fddaa Mon Sep 17 00:00:00 2001
> > +From: Alexander Kanavin <alex.kanavin at gmail.com>
> > +Date: Sun, 16 Feb 2020 16:29:53 +0100
> > +Subject: [PATCH] meson.build: find the native wayland-scanner directly
> in PATH
> > +
> > +Otherwise, meson attempts to use the target pkg-config and fails.
> > +
> > +Upstream-Status: Pending
> > +Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
> > +---
> > + src/meson.build | 3 +--
> > + 1 file changed, 1 insertion(+), 2 deletions(-)
> > +
> > +diff --git a/src/meson.build b/src/meson.build
> > +index 3e8c9bf..294aee0 100644
> > +--- a/src/meson.build
> > ++++ b/src/meson.build
> > +@@ -55,8 +55,7 @@ pkgconfig.generate(
> > + )
> > +
> > + if meson.is_cross_build()
> > +-      scanner_dep = dependency('wayland-scanner', native: true,
> version: '>=1.14.0')
> > +-      wayland_scanner_for_build =
> find_program(scanner_dep.get_pkgconfig_variable('wayland_scanner'))
> > ++      wayland_scanner_for_build = find_program('wayland-scanner')
> > + else
> > +       wayland_scanner_for_build = wayland_scanner
> > + endif
> > diff --git
> a/meta/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch
> b/meta/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch
> > deleted file mode 100644
> > index ad3526d984..0000000000
> > --- a/meta/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch
> > +++ /dev/null
> > @@ -1,32 +0,0 @@
> > -Fix wayland-client and wayland-scanner pc files
> > -
> > -Upstream-Status: Pending
> > -
> > -Signed-off-by: Fabien Lahoudere <fabien.lahoudere at collabora.co.uk>
> > -
> > -Index: wayland-1.14.0/src/wayland-client.pc.in
> > -===================================================================
> > ---- wayland-1.14.0.orig/src/wayland-client.pc.in
> > -+++ wayland-1.14.0/src/wayland-client.pc.in
> > -@@ -1,7 +1,7 @@
> > - prefix=@prefix@
> > - exec_prefix=@exec_prefix@
> > - datarootdir=@datarootdir@
> > --pkgdatadir=@datadir@/@PACKAGE@
> > -+pkgdatadir=${pc_sysrootdir}@datadir@/@PACKAGE@
> > - libdir=@libdir@
> > - includedir=@includedir@
> > -
> > -Index: wayland-1.14.0/src/wayland-scanner.pc.in
> > -===================================================================
> > ---- wayland-1.14.0.orig/src/wayland-scanner.pc.in
> > -+++ wayland-1.14.0/src/wayland-scanner.pc.in
> > -@@ -2,7 +2,7 @@ prefix=@prefix@
> > - exec_prefix=@exec_prefix@
> > - datarootdir=@datarootdir@
> > - pkgdatadir=@datadir@/@PACKAGE@
> > --wayland_scanner=@bindir@/wayland-scanner
> > -+wayland_scanner=wayland-scanner
> > -
> > - Name: Wayland Scanner
> > - Description: Wayland scanner
> > diff --git a/meta/recipes-graphics/wayland/wayland_1.18.0.bb
> b/meta/recipes-graphics/wayland/wayland_1.18.0.bb
> > index 7a3f075552..a702b3f6cc 100644
> > --- a/meta/recipes-graphics/wayland/wayland_1.18.0.bb
> > +++ b/meta/recipes-graphics/wayland/wayland_1.18.0.bb
> > @@ -13,20 +13,21 @@ LIC_FILES_CHKSUM =
> "file://COPYING;md5=b31d8f53b6aaf2b4985d7dd7810a70d1 \
> >  DEPENDS = "expat libffi wayland-native"
> >
> >  SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz
> \
> > -           file://fixpathinpcfiles.patch \
> > +
>  file://0002-meson.build-find-the-native-wayland-scanner-directly.patch \
> > +
>  file://0002-Do-not-hardcode-the-path-to-wayland-scanner.patch \
> >             "
> >  SRC_URI[md5sum] = "23317697b6e3ff2e1ac8c5ba3ed57b65"
> >  SRC_URI[sha256sum] =
> "4675a79f091020817a98fd0484e7208c8762242266967f55a67776936c2e294d"
> >
> >  UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html"
> >
> > -inherit autotools pkgconfig
> > +inherit meson pkgconfig
> >
> >  PACKAGECONFIG ??= "dtd-validation"
> > -PACKAGECONFIG[dtd-validation] =
> "--enable-dtd-validation,--disable-dtd-validation,libxml2,,"
> > +PACKAGECONFIG[dtd-validation] =
> "-Ddtd_validation=true,-Ddtd_validation=false,libxml2,,"
> >
> > -EXTRA_OECONF = "--disable-documentation --with-host-scanner"
> > -EXTRA_OECONF_class-native = "--disable-documentation
> --disable-libraries"
> > +EXTRA_OEMESON = "-Ddocumentation=false"
> > +EXTRA_OEMESON_class-native = "-Ddocumentation=false -Dlibraries=false"
> >
> >  # Wayland installs a M4 macro for other projects to use, which uses the
> target
> >  # pkg-config to find files.  Replace pkg-config with pkg-config-native.
> > --
> > 2.25.0
> >
> > --
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core at lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20200220/1093323c/attachment.html>


More information about the Openembedded-core mailing list