[oe] [meta-oe][PATCH] networkmanager: Warning Fix

Adrian Freihofer adrian.freihofer at gmail.com
Fri Jan 22 17:05:12 UTC 2016


Thank you for the explanation. I did everything as you suggested.

I aggree with you, that we should add the PACKAGEOPTION[nmtui] (I prefer nmtui over libnewt, because the user wants to have nmtui, not
liwnewt). I tried it and is exactly as you said. An empty package is properly handled by bitbake.

The second point, which was the reason for the patch, at least according its subject, I still can't follow. I verified that my bitbake has
the right configuration (default jethro) to display this warning and then I did the recompilation as you suggested. There is no warning on
my system. I still cannot understand why there should be a change in the dependencies if we have:

DEPENDS="libnewt"

and then add

PACKAGECONFIG[libnewt] = "--with-nmtui=yes,--with-nmtui=no,libnewt"

In both cases libnewt is a build dependency.

According to my understandig the patch should be renamed to
"networkmanager: make libnewt build dep optional"

and it should look like:


diff --git a/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.0.10.bb b/meta-oe/recipes-
connectivity/networkmanager/networkmanager_1.0.10.bb
index b47a8c8..8bdfba3 100644
--- a/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.0.10.bb
+++ b/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.0.10.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=cbbffd568227ada506640fe950a4823b \
                     file://docs/api/html/license.html;md5=51d7fb67bde992e58533a8481cee070b \
 "
 
-DEPENDS = "libnl dbus dbus-glib libgudev util-linux libndp libnewt"
+DEPENDS = "libnl dbus dbus-glib libgudev util-linux libndp"
 
 inherit gnomebase gettext systemd bluetooth
 
@@ -32,7 +32,6 @@ EXTRA_OECONF = " \
     --disable-more-warnings \
     --with-iptables=${sbindir}/iptables \
     --with-tests \
-    --with-nmtui=yes \
 "
 
 PACKAGECONFIG ??= "nss ifupdown netconfig dhclient dnsmasq \
@@ -59,6 +58,7 @@ PACKAGECONFIG[gnutls] = "--with-crypto=gnutls,,gnutls libgcrypt"
 PACKAGECONFIG[wifi] = "--enable-wifi=yes,--enable-wifi=no,wireless-tools,wpa-supplicant wireless-tools"
 PACKAGECONFIG[ifupdown] = "--enable-ifupdown,--disable-ifupdown"
 PACKAGECONFIG[netconfig] = "--with-netconfig=yes,--with-netconfig=no"
+PACKAGECONFIG[nmtui] = "--with-nmtui=yes,--with-nmtui=no,libnewt"
 
 PACKAGES =+ "libnmutil libnmglib libnmglib-vpn ${PN}-tests ${PN}-bash-completion \
   ${PN}-nmtui ${PN}-nmtui-doc \



Do you agree? May I send the patch again with git send-email?

Thank you and regards,
Adrian



On Fri, 2016-01-22 at 16:26 +0100, Martin Jansa wrote:
> On Fri, Jan 22, 2016 at 03:54:48PM +0100, Adrian Freihofer wrote:
> > Hi Martin,
> > 
> > Thank you for the response. But it is confusing to me...
> > Networkmanager is always built with nmtui enabled, and we split it into package networkmanager-nmtui:
> > EXTRA_OECONF = \
> >     ...
> >     --with-nmtui=yes \
> > "
> > PACKAGES =+ "... ${PN}-nmtui"
> > FILES_${PN}-nmtui = " ...
> > 
> > I guess an additional package option for --with-nmtui does not fit. Either we have a compile time option or a package split.
> 
> It does fit, you can still have deterministic build time dependencies
> and options and then optionally create separate package if it isn't
> empty.
> 
> > Regarding rdepends:
> > Since libnewt is already listed as a build dependency pkgconfig automatically creates the correct rdepends:
> >  - libnewt is a runntime dependency of networkmanager-nmtui
> >  - networkmanager itself does not rdepend on it.
> > This is exatly what I expect. There is no need to force rdepends at all.
> 
> 3rd parameter is build time dependency not runtime dependency.
> 
> The whole QA warning is about something being autodetected from sysroot
> without having the build time dependency, and the QA check is using
> runtime dependencies to check it -> so yes, the runtime dependency is
> there in ${PN}-nmtui package, but build time dependency isn't.
> 
> > Again: I'm on jethro and I cannot see this warning.
> > What are we going to fix with this patch?
> 
> Try:
> 
> bitbake libnewt && bitbake -c cleansstate networkmanager && bitbake networkmanager
> 
> it can autodetect (and QA warn) only about dependencies which happened
> to be built before the recipe.
> 
> > On Fri, 2016-01-22 at 09:26 +0100, Martin Jansa wrote:
> > > It is correct approach to fix it.
> > > 
> > > This isn't:
> > > RDEPENDS_${PN}-nmtui += "libnewt"
> > > 
> > > On Fri, Jan 22, 2016 at 9:07 AM, Adrian Freihofer <
> > > adrian.freihofer at gmail.com> wrote:
> > > 
> > > > Hi
> > > > 
> > > > This is not the right approach to fix this warning.
> > > > Please try something like this:
> > > > RDEPENDS_${PN}-nmtui += "libnewt"
> > > > 
> > > > Notes:
> > > > - I never saw this warning.
> > > > - I would expect that pkgconfig does this automatically.
> > > > 
> > > > Regards,
> > > > Adrian
> > > > 
> > > > On Thu, 2016-01-21 at 12:21 +0300, Li Xin wrote:
> > > > > WARNING: QA Issue: networkmanager rdepends on libnewt, but it isn't a
> > > > build dependency? [build-deps]
> > > > > 
> > > > > Signed-off-by: Li Xin <lixin.fnst at cn.fujitsu.com>
> > > > > ---
> > > > >  meta-oe/recipes-connectivity/networkmanager/networkmanager_1.0.6.bb |
> > > > 1 +
> > > > >  1 file changed, 1 insertion(+)
> > > > > 
> > > > > diff --git a/meta-oe/recipes-connectivity/networkmanager/
> > > > networkmanager_1.0.6.bb b/meta-oe/recipes-
> > > > > connectivity/networkmanager/networkmanager_1.0.6.bb
> > > > > index 1ddb66f..72b4e46 100644
> > > > > --- a/meta-oe/recipes-connectivity/networkmanager/
> > > > networkmanager_1.0.6.bb
> > > > > +++ b/meta-oe/recipes-connectivity/networkmanager/
> > > > networkmanager_1.0.6.bb
> > > > > @@ -56,6 +56,7 @@ PACKAGECONFIG[wifi] =
> > > > "--enable-wifi=yes,--enable-wifi=no,wireless-tools,wpa-sup
> > > > >  PACKAGECONFIG[ifupdown] = "--enable-ifupdown,--disable-ifupdown"
> > > > >  PACKAGECONFIG[netconfig] = "--with-netconfig=yes,--with-netconfig=no"
> > > > >  PACKAGECONFIG[qt4-x11-free] = "--enable-qt,--disable-qt,qt4-x11-free"
> > > > > +PACKAGECONFIG[libnewt] = "--with-nmtui=yes,--with-nmtui=no,libnewt"
> > > > > 
> > > > >  PACKAGES =+ "libnmutil libnmglib libnmglib-vpn ${PN}-tests
> > > > ${PN}-bash-completion \
> > > > >    ${PN}-nmtui ${PN}-nmtui-doc \
> > > > > --
> > > > > 1.8.4.2
> > > > > 
> > > > > 
> > > > > 
> > > > --
> > > > _______________________________________________
> > > > Openembedded-devel mailing list
> > > > Openembedded-devel at lists.openembedded.org
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > > > 
> 



More information about the Openembedded-devel mailing list