Openembedded Devel Discussions
 help / color / mirror / Atom feed
From: Martin Jansa <martin.jansa@gmail.com>
To: Adrian Freihofer <adrian.freihofer@gmail.com>
Cc: openembedded-devel@lists.openembedded.org
Subject: Re: [meta-oe][PATCH] networkmanager: Warning Fix
Date: Fri, 22 Jan 2016 18:28:52 +0100	[thread overview]
Message-ID: <20160122172852.GB2617@jama> (raw)
In-Reply-To: <1453482312.2577.256.camel@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 7688 bytes --]

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@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@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@lists.openembedded.org
> > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > > > > 
> > 

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 188 bytes --]

      reply	other threads:[~2016-01-22 17:27 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-21  9:21 [meta-oe][PATCH] networkmanager: Warning Fix Li Xin
2016-01-22  8:07 ` Adrian Freihofer
2016-01-22  8:26   ` Martin Jansa
2016-01-22 14:54     ` Adrian Freihofer
2016-01-22 15:26       ` Martin Jansa
2016-01-22 17:05         ` Adrian Freihofer
2016-01-22 17:28           ` Martin Jansa [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160122172852.GB2617@jama \
    --to=martin.jansa@gmail.com \
    --cc=adrian.freihofer@gmail.com \
    --cc=openembedded-devel@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox