[OE-core] [PATCH 1/6] connman: Upgrade to version 0.75

Xu, Dongxiao dongxiao.xu at intel.com
Tue Jun 21 01:36:06 UTC 2011


Hi Koen,

> -----Original Message-----
> From: openembedded-core-bounces at lists.openembedded.org
> [mailto:openembedded-core-bounces at lists.openembedded.org] On Behalf Of
> Koen Kooi
> Sent: Friday, June 17, 2011 3:15 PM
> To: Patches and discussions about the oe-core layer
> Subject: Re: [OE-core] [PATCH 1/6] connman: Upgrade to version 0.75
> 
> 
> Op 17 jun 2011, om 09:08 heeft Xu, Dongxiao het volgende geschreven:
> >
> >>>>>
> >>>>
> >>>> I would say put ofono as a DISTRO_FEATURE
> >>>
> >>> You don't need to build ofono to have ofono support in connman.
> >>> Angstrom (and hence meta-oe) build with it enabled by default to
> >>> support people who want to use the plugin on their phones. Since
> >>> it's a nicely seperated plugin,
> >
> > Do you mean connman-plugin-ofono could work correctly without the ofono
> recipe?
> > According to my understanding, connman-plugin-ofono controls the telephony
> device by talking with ofonod daemon through dbus mechanism.
> > On another aspect, ofono project has support for different types of modems,
> and I don't think connman-plugin-ofono has the ability.
> > Therefore I think the ofono recipe is needed.
> 
> I'm saying that ofono is not a *build* dependency for the connman-ofono
> plugin.

Yes we don't need ofono to build connman or connman-plugin-ofono, but we need to assign ofono as RDEPENDS of connman-plugin-ofono by the following logic:

python populate_packages_prepend() {
        depmap = dict( wifi="wpa-supplicant", resolvconf="resolvconf", bluetooth="bluez4", ofono="ofono" )
        packages = []
        hook = lambda file,pkg,b,c,d:packages.append((file,pkg))

        plugin_dir = bb.data.expand('${libdir}/connman/plugins/', d)
        plugin_name = bb.data.expand('${PN}-plugin-%s', d)

        do_split_packages(d, plugin_dir, '^(.*).so$', plugin_name, '${PN} plugin for %s', extra_depends='', hook=hook )

        for (file, package) in packages:
                plugintype = package.split( '-' )[-1]
                if plugintype in depmap:
                        bb.note( "Adding rdependency on %s to package %s" % ( depmap[plugintype], package ) )
                        bb.data.setVar("RDEPENDS_%s" % package, depmap[plugintype], d)
}

Since we didn't assign ofono as any direct build/runtime dependency of connman. Therefore we will face a problem that, while doing rootfs, ofono is not built out while connman-plugin-ofono has runtime dependency on it, and it will cause do_rootfs error.

I saw in meta-oe, there are following lines, I understand it as a workaround to handle the late added rdepends.

# we need to define the depends here, the dynamic stuff is too late
DEPENDS  = "libnl wpa-supplicant dbus glib-2.0 ppp busybox dhcp resolvconf bluez4 iptables gnutls ntp"

Therefore I think we also need to add ofono in the DEPENDS line to solve our problem.

Thanks,
Dongxiao


> 
> regards,
> 
> Koen
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core




More information about the Openembedded-core mailing list