diff mbox series

[meta-oe,PATCHv2,2/3] appstream: add recipe

Message ID 20221223031104.13517-2-f_l_k@t-online.de
State Under Review
Headers show
Series [meta-oe,PATCHv2,1/3] xdg-desktop-portal-gnome: add recipe | expand

Commit Message

Markus Volk Dec. 23, 2022, 3:11 a.m. UTC
Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 .../appstream/0001-fix-crosscompile.patch     | 43 +++++++++++++++++++
 .../appstream/appstream_0.15.5.bb             | 33 ++++++++++++++
 2 files changed, 76 insertions(+)
 create mode 100644 meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch
 create mode 100644 meta-oe/recipes-support/appstream/appstream_0.15.5.bb

Comments

Khem Raj Dec. 23, 2022, 6:11 p.m. UTC | #1
appstream  fails to configure here qemux86-64/glibc

https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/2265/steps/14/logs/stdio


On Thu, Dec 22, 2022 at 7:11 PM Markus Volk <f_l_k@t-online.de> wrote:
>
> Signed-off-by: Markus Volk <f_l_k@t-online.de>
> ---
>  .../appstream/0001-fix-crosscompile.patch     | 43 +++++++++++++++++++
>  .../appstream/appstream_0.15.5.bb             | 33 ++++++++++++++
>  2 files changed, 76 insertions(+)
>  create mode 100644 meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch
>  create mode 100644 meta-oe/recipes-support/appstream/appstream_0.15.5.bb
>
> diff --git a/meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch b/meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch
> new file mode 100644
> index 000000000..3cf039259
> --- /dev/null
> +++ b/meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch
> @@ -0,0 +1,43 @@
> +From 6ab00a4279823829a9b82dc9e4d055da4de88c6e Mon Sep 17 00:00:00 2001
> +From: Markus Volk <f_l_k@t-online.de>
> +Date: Mon, 12 Dec 2022 15:42:42 +0100
> +Subject: [PATCH] fix crosscompile
> +
> +Signed-off-by: Markus Volk <f_l_k@t-online.de>
> +
> +Upstream-Status: Inappropriate [oe-specific]
> +---
> + data/meson.build  | 2 +-
> + meson.build       | 2 +-
> + tools/meson.build | 9 +++++++++
> + 3 files changed, 11 insertions(+), 2 deletions(-)
> +
> +diff --git a/data/meson.build b/data/meson.build
> +index aea0cb25..1a085fc9 100644
> +--- a/data/meson.build
> ++++ b/data/meson.build
> +@@ -14,7 +14,7 @@ install_data('its/metainfo.loc',
> + metainfo_with_relinfo = custom_target('gen-output',
> +     input : ['../NEWS', 'org.freedesktop.appstream.cli.metainfo.xml'],
> +     output : ['nol10n_withrelinfo_org.freedesktop.appstream.cli.metainfo.xml'],
> +-    command : [ascli_exe, 'news-to-metainfo', '--limit=6', '@INPUT0@', '@INPUT1@', '@OUTPUT@']
> ++    command : ['/usr/bin/appstreamcli', 'news-to-metainfo', '--limit=6', '@INPUT0@', '@INPUT1@', '@OUTPUT@']
> + )
> +
> + metainfo_i18n = i18n.itstool_join(
> +diff --git a/meson.build b/meson.build
> +index fd0e3373..2f273ada 100644
> +--- a/meson.build
> ++++ b/meson.build
> +@@ -124,7 +124,7 @@ if get_option ('gir')
> +     dependency('gobject-introspection-1.0', version: '>=1.56')
> + endif
> +
> +-stemmer_inc_dirs = include_directories(['/usr/include'])
> ++stemmer_inc_dirs = include_directories([''])
> + if get_option('stemming')
> +     stemmer_lib = cc.find_library('stemmer', required: true)
> +     if not cc.has_header('libstemmer.h')
> +--
> +2.34.1
> +
> diff --git a/meta-oe/recipes-support/appstream/appstream_0.15.5.bb b/meta-oe/recipes-support/appstream/appstream_0.15.5.bb
> new file mode 100644
> index 000000000..f9f04526f
> --- /dev/null
> +++ b/meta-oe/recipes-support/appstream/appstream_0.15.5.bb
> @@ -0,0 +1,33 @@
> +SUMMARY = "AppStream is a collaborative effort for making machine-readable software metadata easily available."
> +HOMEPAGE = "https://github.com/ximion/appstream"
> +LICENSE = "LGPL-2.1-only"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=435ed639f84d4585d93824e7da3d85da"
> +
> +DEPENDS = " \
> +    curl-native \
> +    curl \
> +    docbook-xml-dtd4-native \
> +    gperf-native \
> +    glib-2.0 \
> +    libyaml \
> +    libstemmer \
> +    libxml2 \
> +    libxmlb \
> +    libxslt-native \
> +    itstool-native \
> +    docbook-xsl-stylesheets-native \
> +    python3-pygments-native \
> +"
> +
> +inherit meson gobject-introspection gettext gtk-doc pkgconfig vala
> +
> +GIR_MESON_OPTION = ""
> +SRC_URI = " \
> +    https://www.freedesktop.org/software/appstream/releases/AppStream-${PV}.tar.xz \
> +    file://0001-fix-crosscompile.patch \
> +"
> +
> +SRC_URI[sha256sum] = "cb15ed62cc2729683879a2dbf98c0a3267ea2b4d57bba6bc55e70a25500e04c2"
> +S = "${WORKDIR}/AppStream-${PV}"
> +
> +FILES:${PN} += "${datadir}"
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#100194): https://lists.openembedded.org/g/openembedded-devel/message/100194
> Mute This Topic: https://lists.openembedded.org/mt/95838953/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Khem Raj Dec. 23, 2022, 6:14 p.m. UTC | #2
| ../AppStream-0.15.5/data/meson.build:14:0: ERROR: Program
'/usr/bin/appstreamcli' not found or not executable

It seems it needs appstream-native perhaps..

On Fri, Dec 23, 2022 at 10:11 AM Khem Raj <raj.khem@gmail.com> wrote:
>
> appstream  fails to configure here qemux86-64/glibc
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/2265/steps/14/logs/stdio
>
>
> On Thu, Dec 22, 2022 at 7:11 PM Markus Volk <f_l_k@t-online.de> wrote:
> >
> > Signed-off-by: Markus Volk <f_l_k@t-online.de>
> > ---
> >  .../appstream/0001-fix-crosscompile.patch     | 43 +++++++++++++++++++
> >  .../appstream/appstream_0.15.5.bb             | 33 ++++++++++++++
> >  2 files changed, 76 insertions(+)
> >  create mode 100644 meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch
> >  create mode 100644 meta-oe/recipes-support/appstream/appstream_0.15.5.bb
> >
> > diff --git a/meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch b/meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch
> > new file mode 100644
> > index 000000000..3cf039259
> > --- /dev/null
> > +++ b/meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch
> > @@ -0,0 +1,43 @@
> > +From 6ab00a4279823829a9b82dc9e4d055da4de88c6e Mon Sep 17 00:00:00 2001
> > +From: Markus Volk <f_l_k@t-online.de>
> > +Date: Mon, 12 Dec 2022 15:42:42 +0100
> > +Subject: [PATCH] fix crosscompile
> > +
> > +Signed-off-by: Markus Volk <f_l_k@t-online.de>
> > +
> > +Upstream-Status: Inappropriate [oe-specific]
> > +---
> > + data/meson.build  | 2 +-
> > + meson.build       | 2 +-
> > + tools/meson.build | 9 +++++++++
> > + 3 files changed, 11 insertions(+), 2 deletions(-)
> > +
> > +diff --git a/data/meson.build b/data/meson.build
> > +index aea0cb25..1a085fc9 100644
> > +--- a/data/meson.build
> > ++++ b/data/meson.build
> > +@@ -14,7 +14,7 @@ install_data('its/metainfo.loc',
> > + metainfo_with_relinfo = custom_target('gen-output',
> > +     input : ['../NEWS', 'org.freedesktop.appstream.cli.metainfo.xml'],
> > +     output : ['nol10n_withrelinfo_org.freedesktop.appstream.cli.metainfo.xml'],
> > +-    command : [ascli_exe, 'news-to-metainfo', '--limit=6', '@INPUT0@', '@INPUT1@', '@OUTPUT@']
> > ++    command : ['/usr/bin/appstreamcli', 'news-to-metainfo', '--limit=6', '@INPUT0@', '@INPUT1@', '@OUTPUT@']
> > + )
> > +
> > + metainfo_i18n = i18n.itstool_join(
> > +diff --git a/meson.build b/meson.build
> > +index fd0e3373..2f273ada 100644
> > +--- a/meson.build
> > ++++ b/meson.build
> > +@@ -124,7 +124,7 @@ if get_option ('gir')
> > +     dependency('gobject-introspection-1.0', version: '>=1.56')
> > + endif
> > +
> > +-stemmer_inc_dirs = include_directories(['/usr/include'])
> > ++stemmer_inc_dirs = include_directories([''])
> > + if get_option('stemming')
> > +     stemmer_lib = cc.find_library('stemmer', required: true)
> > +     if not cc.has_header('libstemmer.h')
> > +--
> > +2.34.1
> > +
> > diff --git a/meta-oe/recipes-support/appstream/appstream_0.15.5.bb b/meta-oe/recipes-support/appstream/appstream_0.15.5.bb
> > new file mode 100644
> > index 000000000..f9f04526f
> > --- /dev/null
> > +++ b/meta-oe/recipes-support/appstream/appstream_0.15.5.bb
> > @@ -0,0 +1,33 @@
> > +SUMMARY = "AppStream is a collaborative effort for making machine-readable software metadata easily available."
> > +HOMEPAGE = "https://github.com/ximion/appstream"
> > +LICENSE = "LGPL-2.1-only"
> > +LIC_FILES_CHKSUM = "file://COPYING;md5=435ed639f84d4585d93824e7da3d85da"
> > +
> > +DEPENDS = " \
> > +    curl-native \
> > +    curl \
> > +    docbook-xml-dtd4-native \
> > +    gperf-native \
> > +    glib-2.0 \
> > +    libyaml \
> > +    libstemmer \
> > +    libxml2 \
> > +    libxmlb \
> > +    libxslt-native \
> > +    itstool-native \
> > +    docbook-xsl-stylesheets-native \
> > +    python3-pygments-native \
> > +"
> > +
> > +inherit meson gobject-introspection gettext gtk-doc pkgconfig vala
> > +
> > +GIR_MESON_OPTION = ""
> > +SRC_URI = " \
> > +    https://www.freedesktop.org/software/appstream/releases/AppStream-${PV}.tar.xz \
> > +    file://0001-fix-crosscompile.patch \
> > +"
> > +
> > +SRC_URI[sha256sum] = "cb15ed62cc2729683879a2dbf98c0a3267ea2b4d57bba6bc55e70a25500e04c2"
> > +S = "${WORKDIR}/AppStream-${PV}"
> > +
> > +FILES:${PN} += "${datadir}"
> > --
> > 2.34.1
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#100194): https://lists.openembedded.org/g/openembedded-devel/message/100194
> > Mute This Topic: https://lists.openembedded.org/mt/95838953/1997914
> > Group Owner: openembedded-devel+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
Markus Volk Dec. 23, 2022, 8:29 p.m. UTC | #3
On Fri, Dec 23 2022 at 10:14:25 AM -0800, Khem Raj <raj.khem@gmail.com> 
wrote:
> It seems it needs appstream-native perhaps..

appstreamcli is created for the target and then this binary (created in 
${B}) is used as build dependency and thus fails cross-compilation. I 
patched it to use /usr/bin/appstreamcli for the native task, thinking 
that this binary will be available in almost all distributions. But it 
seems that it is missing at least for you.

Kind of a similar issue like crosscompiling gobject introspection
diff mbox series

Patch

diff --git a/meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch b/meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch
new file mode 100644
index 000000000..3cf039259
--- /dev/null
+++ b/meta-oe/recipes-support/appstream/appstream/0001-fix-crosscompile.patch
@@ -0,0 +1,43 @@ 
+From 6ab00a4279823829a9b82dc9e4d055da4de88c6e Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Mon, 12 Dec 2022 15:42:42 +0100
+Subject: [PATCH] fix crosscompile
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+
+Upstream-Status: Inappropriate [oe-specific]
+---
+ data/meson.build  | 2 +-
+ meson.build       | 2 +-
+ tools/meson.build | 9 +++++++++
+ 3 files changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index aea0cb25..1a085fc9 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -14,7 +14,7 @@ install_data('its/metainfo.loc',
+ metainfo_with_relinfo = custom_target('gen-output',
+     input : ['../NEWS', 'org.freedesktop.appstream.cli.metainfo.xml'],
+     output : ['nol10n_withrelinfo_org.freedesktop.appstream.cli.metainfo.xml'],
+-    command : [ascli_exe, 'news-to-metainfo', '--limit=6', '@INPUT0@', '@INPUT1@', '@OUTPUT@']
++    command : ['/usr/bin/appstreamcli', 'news-to-metainfo', '--limit=6', '@INPUT0@', '@INPUT1@', '@OUTPUT@']
+ )
+ 
+ metainfo_i18n = i18n.itstool_join(
+diff --git a/meson.build b/meson.build
+index fd0e3373..2f273ada 100644
+--- a/meson.build
++++ b/meson.build
+@@ -124,7 +124,7 @@ if get_option ('gir')
+     dependency('gobject-introspection-1.0', version: '>=1.56')
+ endif
+ 
+-stemmer_inc_dirs = include_directories(['/usr/include'])
++stemmer_inc_dirs = include_directories([''])
+ if get_option('stemming')
+     stemmer_lib = cc.find_library('stemmer', required: true)
+     if not cc.has_header('libstemmer.h')
+-- 
+2.34.1
+
diff --git a/meta-oe/recipes-support/appstream/appstream_0.15.5.bb b/meta-oe/recipes-support/appstream/appstream_0.15.5.bb
new file mode 100644
index 000000000..f9f04526f
--- /dev/null
+++ b/meta-oe/recipes-support/appstream/appstream_0.15.5.bb
@@ -0,0 +1,33 @@ 
+SUMMARY = "AppStream is a collaborative effort for making machine-readable software metadata easily available."
+HOMEPAGE = "https://github.com/ximion/appstream"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=435ed639f84d4585d93824e7da3d85da"
+
+DEPENDS = " \
+    curl-native \
+    curl \
+    docbook-xml-dtd4-native \
+    gperf-native \
+    glib-2.0 \
+    libyaml \
+    libstemmer \
+    libxml2 \
+    libxmlb \
+    libxslt-native \
+    itstool-native \
+    docbook-xsl-stylesheets-native \
+    python3-pygments-native \
+"
+
+inherit meson gobject-introspection gettext gtk-doc pkgconfig vala
+
+GIR_MESON_OPTION = ""
+SRC_URI = " \
+    https://www.freedesktop.org/software/appstream/releases/AppStream-${PV}.tar.xz \
+    file://0001-fix-crosscompile.patch \
+"
+
+SRC_URI[sha256sum] = "cb15ed62cc2729683879a2dbf98c0a3267ea2b4d57bba6bc55e70a25500e04c2"
+S = "${WORKDIR}/AppStream-${PV}"
+
+FILES:${PN} += "${datadir}"