[oe] Another weird case of PACKAGES_DYNAMIC and task deps, it seems

Paul Sokolovsky pmiscml at gmail.com
Fri Jan 4 01:17:51 UTC 2008


Hello openembedded-devel,

  Situation (as reported by Thomas Kunze on IRC):
1. Build from scratch
2. Kernel has been built.
3. Bitbake of initramfs-image.
4. Failure with:

| ERROR: Cannot satisfy the following dependencies for initramfs-module-loop:
|        update-modules update-modules update-modules
| ERROR: Cannot satisfy the following dependencies for initramfs-module-nfs:
|        update-modules

initramfs-module-* doesn't Depends: on update-modules directly, but
they Suggest: some kernel-module-* which in turn Depends: on
update-modules.

5. Manual explicit build of update-modules clears those errors.

   My analysis:

kernel.bbclass has:

DEPENDS += "virtual/${TARGET_PREFIX}depmod-${@get_kernelmajorversion('${PV}')} virtual/${TARGET_PREFIX}gcc${KERNEL_CCSUFFIX} update-modules"

But as we now know, that doesn't mean there will be package written
for update-modules, only that it will be "built".

Then, do_spli_package() kinda should set RDEPENDS for each module, but
I remember we already discussed issue that this doesn't really work
for PACKAGES_DYNAMIC ;-(.

So, any ideas how to at least work this around? I recently hit similar
issue when package_ipk.bbclass tried to execute ipkg-build before it
was staged, and that was fixed in natural way:

do_package_write_ipk[depends] = "ipkg-utils-native:do_populate_staging"

Maybe we could use that as a workaround for kernel.bbclass, so we
don't go packing modules, until update-modules' package is written.
The issue, kernel.bbclass doesn't even define proper task for that,
only a prepender, so I have no idea what to put dependency on.


     Richard, any comments?


-- 
Best regards,
 Paul                          mailto:pmiscml at gmail.com





More information about the Openembedded-devel mailing list