[OE-core] wrong automatic dependency

Dvorkin Dmitry dvorkin at tibbo.com
Fri Sep 5 09:35:30 UTC 2014


Hi, Eric!

On 05.09.2014 17:13, Eric Bénard wrote:
> Hi Dvorkin,
>
> Le Fri, 05 Sep 2014 16:36:03 +0800,
> Dvorkin Dmitry <dvorkin at tibbo.com> a écrit :
>
>> Hello!
>>
>> I wrote my own recipe for crda.
>> (http://wireless.kernel.org/en/developers/Regulatory/CRDA)
>>
>> Dependencies is:
>> DEPENDS = "libgcrypt libnl"
>> RDEPENDS_${PN} = "udev wireless-regdb"
>>
>> Crda Makefile is using python to rebuild it's database in
>> build/installation step.
>> After installation I have several packages: crda itself, crda-dev,
>> crda-doc, ... etc.
>> In my image I'm using only 'crda' package that doesn't need python.
>>
>> But it seems Yocto detects python and add automatic dependency of python
>> to my image anyway.
>>
>> $ grep "crda" ./*.dot | grep pyt
>> ./task-depends.dot:"crda.do_build" -> "python-dbus.do_package_write_ipk"
>> ./task-depends.dot:"crda.do_build" -> "python.do_package_write_rpm"
>> ./task-depends.dot:"crda.do_build" -> "python.do_package_write_deb"
>> ./task-depends.dot:"crda.do_build" -> "python.do_package_write_ipk"
>> ./task-depends.dot:"crda.do_build" ->
>> "python-pygobject.do_package_write_rpm"
>> ./task-depends.dot:"crda.do_build" ->
>> "python-pygobject.do_package_write_deb"
>> ./task-depends.dot:"crda.do_build" ->
>> "python-pygobject.do_package_write_ipk"
>> ./task-depends.dot:"crda.do_build" -> "python-dbus.do_package_write_rpm"
>> ./task-depends.dot:"crda.do_build" ->
>> "python-dbus.do_package_write_deb"
>>
>> Is there any way to get rid of python dependency in this and only
>> this recipe? it makes my image significally bigger.
> are you sure python is drawn in your image by crda ?
>
> With the existing recipe, I don't get python RDEPENDS in crda :
> http://layers.openembedded.org/layerindex/recipe/4179/
>
> $ cat cortexa9hf-vfp-neon-oe-linux-gnueabi/crda/crda/latest
> PV = 1.1.3
> PR = r0
> RPROVIDES =
> RDEPENDS = eglibc (>= 2.18) libgcrypt (>= 1.5.3) libnl (>= 3.2.22) libnl-genl (>= 3.2.22) udev
> RRECOMMENDS =
> PKGSIZE = 21773
> FILES = /usr/bin/* /usr/sbin/* /usr/lib/crda/* /usr/lib/lib*.so.* /etc /com /var /bin/* /sbin/* /lib/*.so.* /lib/udev/rules.d /usr/lib/udev/rules.d /usr/share/crda /usr/lib/crda/* /usr/share/pixmaps /usr/share/applications /usr/share/idl /usr/share/omf /usr/share/sounds /usr/lib/bonobo/servers /usr/libcrda/regulatory.bin /lib/udev/rules.d/85-regulatory.rules
> FILELIST
> = /lib/udev/rules.d/85-regulatory.rules /sbin/crda /sbin/regdbdump /usr/lib/crda/regulatory.bin
>
> Eric

pretty sure! see my grep on *.dot files. python is installed due to crda.
may be the difference is that I'm using new version of crda (2014.06.00)?
look at my recipe (attached)



-------------- next part --------------
A non-text attachment was scrubbed...
Name: crda.tar.gz
Type: application/gzip
Size: 1050 bytes
Desc: not available
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20140905/ef53bdd8/attachment-0002.bin>
-------------- next part --------------
DESCRIPTION = "Wireless Central Regulatory Domain Agent"
HOMEPAGE = "http://wireless.kernel.org/en/developers/Regulatory/CRDA"
SECTION = "base"
PRIORITY = "optional"
LICENSE = "ISC"
PR = "${AUTOREV}"

SRCREV="${AUTOREV}"

DEPENDS = "libgcrypt libnl"
RDEPENDS_${PN} = "udev wireless-regdb"
INSANE_SKIP_${PN} += "dev-deps"

SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/crda.git;branch=master"
SRC_URI_append = "\
 file://noldconfig.patch \
"

S="${WORKDIR}/git"

CFLAGS =+ "-fPIC -L =/usr/lib -lm -lgcrypt -lgpg-error"
EXTRA_OEMAKE="V=1 REG_BIN=/lib/crda/regulatory.bin RUNTIME_PUBKEY_DIR=/lib/crda/pubkeys/ all_noverify"

do_install() {
 oe_runmake DESTDIR=${D} install
}

SRC_URI[crda.md5sum] = "5fc77af68b3e21736b8ef2f8b061c810"
SRC_URI[crda.sha256sum] = "59b4760da44a8f803caeaaa7fb97e0c6bd3f35f40445b28258e7f14c2fbe13b5"
LIC_FILES_CHKSUM = "file://LICENSE;md5=ef8b69b43141352d821fd66b64ff0ee7"

# NOTE: requires urpmi python-m2crypto


More information about the Openembedded-core mailing list