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

Martin Jansa martin.jansa at gmail.com
Fri Jan 22 17:28:52 UTC 2016


On Fri, Jan 22, 2016 at 06:05:12PM +0100, Adrian Freihofer wrote:
> 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:

Can you check if your do_configure enabled nmtui? log.do_configure or
config.log should help. If it doesn't enable it for you then it will
explain why you don't see the warning (maybe it needs some additional
dependency + libnewt). I haven't looked at the mnetworkmanager sources
at all..

> DEPENDS="libnewt"

Ah I didn't notice that it's already in DEPENDS.

> 
> and then add
> 
> PACKAGECONFIG[libnewt] = "--with-nmtui=yes,--with-nmtui=no,libnewt"

If nmtui is the only part of networkmanager which is using libnewt then
yes I agree it should be removed from DEPENDS and moved only to
PACKAGECONFIG.

> 
> 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
> > > > > 
> > 

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20160122/c7b99937/attachment-0002.sig>


More information about the Openembedded-devel mailing list