Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH] image.bbclass: Allow to remove do_rootfs -> virtual/kernel:do_packagedata dependency
@ 2015-04-13 21:14 Martin Jansa
  2015-04-20 12:56 ` Richard Purdie
  0 siblings, 1 reply; 3+ messages in thread
From: Martin Jansa @ 2015-04-13 21:14 UTC (permalink / raw)
  To: openembedded-core

* this is causing dependency loops in some cases
  e.g. linux-hp-tenderloin depends on initramfs-android-image, but
    commit 41f0f86ec0a3e0b6f6c9bb4ef71a4215c00bf66c
    Author: Richard Purdie <richard.purdie@linuxfoundation.org>
    Date:   Tue Jan 27 15:24:52 2015 +0000
    Subject: image: Add missing depends on virtual/kernel for depmod data
  adds also dependency between <image>.do_rootfs and virtual/kernel:do_packagedata
  causing this dependency loop:

Dependency loop #1 found:
  Task 78 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_install)
    (dependent Tasks ['linux-hp-tenderloin, do_compile',
                      'pseudo, do_populate_sysroot'])
  Task 88 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package)
    (dependent Tasks ['rpm, do_populate_sysroot',
                      'pseudo, do_populate_sysroot',
                      'linux-hp-tenderloin, do_install',
                      'initramfs-android-image.bb, do_packagedata',
                      'glibc, do_packagedata',
                      'file, do_populate_sysroot',
                      'gcc-runtime, do_packagedata'])
  Task 89 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package_write_ipk)
    (dependent Tasks ['linux-hp-tenderloin, do_package',
                      'opkg-utils, do_populate_sysroot',
                      'linux-hp-tenderloin, do_packagedata',
                      'pseudo, do_populate_sysroot'])
  Task 560 (meta-smartphone/meta-android/recipes-core/images/initramfs-android-image.bb, do_rootfs)
    (dependent Tasks ['bash, do_package_write_ipk',
                      'run-postinsts, do_package_write_ipk',
                      'db, do_package_write_ipk',
                      'update-rc.d, do_populate_sysroot',
                      'android-tools-conf, do_package_write_ipk',
		      'base-passwd, do_package_write_ipk',
                      'initramfs-boot-android, do_package_write_ipk',
		      'expat, do_package_write_ipk',
                      'bzip2, do_packagedata',
		      'glibc-initial, do_packagedata',
                      'openssl, do_package_write_ipk',
                      'bzip2, do_package_write_ipk',
		      'busybox, do_packagedata',
                      'zlib, do_packagedata',
		      'qemuwrapper-cross, do_packagedata',
                      'base-passwd, do_packagedata',
		      'busybox, do_package_write_ipk',
                      'zlib, do_package_write_ipk',
		      'qemuwrapper-cross, do_package_write_ipk',
		      'gcc-runtime, do_package_write_ipk',
		      'gettext, do_packagedata',
		      'initramfs-boot-android, do_packagedata',
		      'gettext, do_package_write_ipk',
		      'libgcc-initial, do_packagedata',
                      'expat, do_packagedata',
                      'gdbm, do_packagedata',
		      'depmodwrapper-cross, do_package_write_ipk',
                      'libgcc-initial, do_package_write_ipk',
                      'glibc-initial, do_package_write_ipk',
                      'linux-libc-headers, do_packagedata',
                      'glibc, do_packagedata',
                      'initramfs-android-image.bb, do_packagedata',
                      'glibc, do_package_write_ipk',
                      'sqlite3, do_packagedata',
                      'initramfs-android-image.bb, do_package_write_ipk',
                      'sqlite3, do_package_write_ipk',
                      'android-tools-conf, do_packagedata',
                      'ncurses, do_packagedata',
                      'openssl, do_packagedata',
                      'android-tools, do_packagedata',
                      'ncurses, do_package_write_ipk',
                      'cryptodev-linux, do_packagedata',
                      'android-tools, do_package_write_ipk',
                      'pseudo, do_populate_sysroot',
                      'cryptodev-linux, do_package_write_ipk',
                      'linux-libc-headers, do_package_write_ipk',
                      'depmodwrapper-cross, do_packagedata',
                      'linux-hp-tenderloin, do_packagedata',
                      'readline, do_package_write_ipk',
                      'opkg-utils, do_packagedata',
                      'linux-hp-tenderloin, do_package_write_ipk',
                      'python, do_packagedata',
                      'gdbm, do_package_write_ipk',
                      'opkg, do_populate_sysroot',
                      'python, do_package_write_ipk',
                      'libtool-cross, do_packagedata',
                      'db, do_packagedata',
                      'libgcc, do_packagedata',
                      'libtool-cross, do_package_write_ipk',
                      'update-rc.d, do_packagedata',
                      'update-rc.d, do_package_write_ipk',
                      'libgcc, do_package_write_ipk',
                      'opkg-utils, do_populate_sysroot',
                      'makedevs, do_populate_sysroot',
                      'readline, do_packagedata',
                      'base-files, do_packagedata',
                      'gcc-runtime, do_packagedata',
                      'opkg-utils, do_package_write_ipk',
                      'base-files, do_package_write_ipk',
                      'ldconfig-native, do_populate_sysroot',
                      'bash, do_packagedata',
                      'run-postinsts, do_packagedata'])
  Task 82 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_compile)
    (dependent Tasks ['initramfs-android-image.bb, do_rootfs',
                      'linux-hp-tenderloin, do_configure'])

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/classes/image.bbclass | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 03cbbf7..3a7f3cf 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -76,10 +76,17 @@ LDCONFIGDEPEND ?= "ldconfig-native:do_populate_sysroot"
 LDCONFIGDEPEND_libc-uclibc = ""
 LDCONFIGDEPEND_libc-musl = ""
 
+# This is needed to have depmod data in PKGDATA_DIR,
+# but if you're building small initramfs image
+# e.g. to include it in your kernel, you probably
+# don't want this dependency, which is causing dependency loop
+KERNELDEPEND ?= "virtual/kernel:do_packagedata"
+
 do_rootfs[depends] += " \
     makedevs-native:do_populate_sysroot virtual/fakeroot-native:do_populate_sysroot ${LDCONFIGDEPEND} \
     virtual/update-alternatives-native:do_populate_sysroot update-rc.d-native:do_populate_sysroot \
-    virtual/kernel:do_packagedata"
+    ${KERNELDEPEND} \
+"
 do_rootfs[recrdeptask] += "do_packagedata"
 
 def command_variables(d):
-- 
2.3.5



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] image.bbclass: Allow to remove do_rootfs -> virtual/kernel:do_packagedata dependency
  2015-04-13 21:14 [PATCH] image.bbclass: Allow to remove do_rootfs -> virtual/kernel:do_packagedata dependency Martin Jansa
@ 2015-04-20 12:56 ` Richard Purdie
  2015-04-20 13:04   ` [PATCHv2] " Martin Jansa
  0 siblings, 1 reply; 3+ messages in thread
From: Richard Purdie @ 2015-04-20 12:56 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembedded-core

On Mon, 2015-04-13 at 23:14 +0200, Martin Jansa wrote:
> * this is causing dependency loops in some cases
>   e.g. linux-hp-tenderloin depends on initramfs-android-image, but
>     commit 41f0f86ec0a3e0b6f6c9bb4ef71a4215c00bf66c
>     Author: Richard Purdie <richard.purdie@linuxfoundation.org>
>     Date:   Tue Jan 27 15:24:52 2015 +0000
>     Subject: image: Add missing depends on virtual/kernel for depmod data
>   adds also dependency between <image>.do_rootfs and virtual/kernel:do_packagedata
>   causing this dependency loop:
> 
> Dependency loop #1 found:
>   Task 78 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_install)
>     (dependent Tasks ['linux-hp-tenderloin, do_compile',
>                       'pseudo, do_populate_sysroot'])
>   Task 88 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package)
>     (dependent Tasks ['rpm, do_populate_sysroot',
>                       'pseudo, do_populate_sysroot',
>                       'linux-hp-tenderloin, do_install',
>                       'initramfs-android-image.bb, do_packagedata',
>                       'glibc, do_packagedata',
>                       'file, do_populate_sysroot',
>                       'gcc-runtime, do_packagedata'])
>   Task 89 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package_write_ipk)
>     (dependent Tasks ['linux-hp-tenderloin, do_package',
>                       'opkg-utils, do_populate_sysroot',
>                       'linux-hp-tenderloin, do_packagedata',
>                       'pseudo, do_populate_sysroot'])
>   Task 560 (meta-smartphone/meta-android/recipes-core/images/initramfs-android-image.bb, do_rootfs)
>     (dependent Tasks ['bash, do_package_write_ipk',
>                       'run-postinsts, do_package_write_ipk',
>                       'db, do_package_write_ipk',
>                       'update-rc.d, do_populate_sysroot',
>                       'android-tools-conf, do_package_write_ipk',
> 		      'base-passwd, do_package_write_ipk',
>                       'initramfs-boot-android, do_package_write_ipk',
> 		      'expat, do_package_write_ipk',
>                       'bzip2, do_packagedata',
> 		      'glibc-initial, do_packagedata',
>                       'openssl, do_package_write_ipk',
>                       'bzip2, do_package_write_ipk',
> 		      'busybox, do_packagedata',
>                       'zlib, do_packagedata',
> 		      'qemuwrapper-cross, do_packagedata',
>                       'base-passwd, do_packagedata',
> 		      'busybox, do_package_write_ipk',
>                       'zlib, do_package_write_ipk',
> 		      'qemuwrapper-cross, do_package_write_ipk',
> 		      'gcc-runtime, do_package_write_ipk',
> 		      'gettext, do_packagedata',
> 		      'initramfs-boot-android, do_packagedata',
> 		      'gettext, do_package_write_ipk',
> 		      'libgcc-initial, do_packagedata',
>                       'expat, do_packagedata',
>                       'gdbm, do_packagedata',
> 		      'depmodwrapper-cross, do_package_write_ipk',
>                       'libgcc-initial, do_package_write_ipk',
>                       'glibc-initial, do_package_write_ipk',
>                       'linux-libc-headers, do_packagedata',
>                       'glibc, do_packagedata',
>                       'initramfs-android-image.bb, do_packagedata',
>                       'glibc, do_package_write_ipk',
>                       'sqlite3, do_packagedata',
>                       'initramfs-android-image.bb, do_package_write_ipk',
>                       'sqlite3, do_package_write_ipk',
>                       'android-tools-conf, do_packagedata',
>                       'ncurses, do_packagedata',
>                       'openssl, do_packagedata',
>                       'android-tools, do_packagedata',
>                       'ncurses, do_package_write_ipk',
>                       'cryptodev-linux, do_packagedata',
>                       'android-tools, do_package_write_ipk',
>                       'pseudo, do_populate_sysroot',
>                       'cryptodev-linux, do_package_write_ipk',
>                       'linux-libc-headers, do_package_write_ipk',
>                       'depmodwrapper-cross, do_packagedata',
>                       'linux-hp-tenderloin, do_packagedata',
>                       'readline, do_package_write_ipk',
>                       'opkg-utils, do_packagedata',
>                       'linux-hp-tenderloin, do_package_write_ipk',
>                       'python, do_packagedata',
>                       'gdbm, do_package_write_ipk',
>                       'opkg, do_populate_sysroot',
>                       'python, do_package_write_ipk',
>                       'libtool-cross, do_packagedata',
>                       'db, do_packagedata',
>                       'libgcc, do_packagedata',
>                       'libtool-cross, do_package_write_ipk',
>                       'update-rc.d, do_packagedata',
>                       'update-rc.d, do_package_write_ipk',
>                       'libgcc, do_package_write_ipk',
>                       'opkg-utils, do_populate_sysroot',
>                       'makedevs, do_populate_sysroot',
>                       'readline, do_packagedata',
>                       'base-files, do_packagedata',
>                       'gcc-runtime, do_packagedata',
>                       'opkg-utils, do_package_write_ipk',
>                       'base-files, do_package_write_ipk',
>                       'ldconfig-native, do_populate_sysroot',
>                       'bash, do_packagedata',
>                       'run-postinsts, do_packagedata'])
>   Task 82 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_compile)
>     (dependent Tasks ['initramfs-android-image.bb, do_rootfs',
>                       'linux-hp-tenderloin, do_configure'])
> 
> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ---
>  meta/classes/image.bbclass | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
> index 03cbbf7..3a7f3cf 100644
> --- a/meta/classes/image.bbclass
> +++ b/meta/classes/image.bbclass
> @@ -76,10 +76,17 @@ LDCONFIGDEPEND ?= "ldconfig-native:do_populate_sysroot"
>  LDCONFIGDEPEND_libc-uclibc = ""
>  LDCONFIGDEPEND_libc-musl = ""
>  
> +# This is needed to have depmod data in PKGDATA_DIR,
> +# but if you're building small initramfs image
> +# e.g. to include it in your kernel, you probably
> +# don't want this dependency, which is causing dependency loop
> +KERNELDEPEND ?= "virtual/kernel:do_packagedata"
> +
>  do_rootfs[depends] += " \
>      makedevs-native:do_populate_sysroot virtual/fakeroot-native:do_populate_sysroot ${LDCONFIGDEPEND} \
>      virtual/update-alternatives-native:do_populate_sysroot update-rc.d-native:do_populate_sysroot \
> -    virtual/kernel:do_packagedata"
> +    ${KERNELDEPEND} \
> +"
>  do_rootfs[recrdeptask] += "do_packagedata"

Can we call this something more specific like KERNELDEPMODDEPEND?

KERNELDEPEND doesn't tell us much about what this is for...

Cheers,

Richard



^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCHv2] image.bbclass: Allow to remove do_rootfs -> virtual/kernel:do_packagedata dependency
  2015-04-20 12:56 ` Richard Purdie
@ 2015-04-20 13:04   ` Martin Jansa
  0 siblings, 0 replies; 3+ messages in thread
From: Martin Jansa @ 2015-04-20 13:04 UTC (permalink / raw)
  To: openembedded-core

* this is causing dependency loops in some cases
  e.g. linux-hp-tenderloin depends on initramfs-android-image, but
    commit 41f0f86ec0a3e0b6f6c9bb4ef71a4215c00bf66c
    Author: Richard Purdie <richard.purdie@linuxfoundation.org>
    Date:   Tue Jan 27 15:24:52 2015 +0000
    Subject: image: Add missing depends on virtual/kernel for depmod data
  adds also dependency between <image>.do_rootfs and virtual/kernel:do_packagedata
  causing this dependency loop:

Dependency loop #1 found:
  Task 78 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_install)
    (dependent Tasks ['linux-hp-tenderloin, do_compile',
                      'pseudo, do_populate_sysroot'])
  Task 88 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package)
    (dependent Tasks ['rpm, do_populate_sysroot',
                      'pseudo, do_populate_sysroot',
                      'linux-hp-tenderloin, do_install',
                      'initramfs-android-image.bb, do_packagedata',
                      'glibc, do_packagedata',
                      'file, do_populate_sysroot',
                      'gcc-runtime, do_packagedata'])
  Task 89 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package_write_ipk)
    (dependent Tasks ['linux-hp-tenderloin, do_package',
                      'opkg-utils, do_populate_sysroot',
                      'linux-hp-tenderloin, do_packagedata',
                      'pseudo, do_populate_sysroot'])
  Task 560 (meta-smartphone/meta-android/recipes-core/images/initramfs-android-image.bb, do_rootfs)
    (dependent Tasks ['bash, do_package_write_ipk',
                      'run-postinsts, do_package_write_ipk',
                      'db, do_package_write_ipk',
                      'update-rc.d, do_populate_sysroot',
                      'android-tools-conf, do_package_write_ipk',
		      'base-passwd, do_package_write_ipk',
                      'initramfs-boot-android, do_package_write_ipk',
		      'expat, do_package_write_ipk',
                      'bzip2, do_packagedata',
		      'glibc-initial, do_packagedata',
                      'openssl, do_package_write_ipk',
                      'bzip2, do_package_write_ipk',
		      'busybox, do_packagedata',
                      'zlib, do_packagedata',
		      'qemuwrapper-cross, do_packagedata',
                      'base-passwd, do_packagedata',
		      'busybox, do_package_write_ipk',
                      'zlib, do_package_write_ipk',
		      'qemuwrapper-cross, do_package_write_ipk',
		      'gcc-runtime, do_package_write_ipk',
		      'gettext, do_packagedata',
		      'initramfs-boot-android, do_packagedata',
		      'gettext, do_package_write_ipk',
		      'libgcc-initial, do_packagedata',
                      'expat, do_packagedata',
                      'gdbm, do_packagedata',
		      'depmodwrapper-cross, do_package_write_ipk',
                      'libgcc-initial, do_package_write_ipk',
                      'glibc-initial, do_package_write_ipk',
                      'linux-libc-headers, do_packagedata',
                      'glibc, do_packagedata',
                      'initramfs-android-image.bb, do_packagedata',
                      'glibc, do_package_write_ipk',
                      'sqlite3, do_packagedata',
                      'initramfs-android-image.bb, do_package_write_ipk',
                      'sqlite3, do_package_write_ipk',
                      'android-tools-conf, do_packagedata',
                      'ncurses, do_packagedata',
                      'openssl, do_packagedata',
                      'android-tools, do_packagedata',
                      'ncurses, do_package_write_ipk',
                      'cryptodev-linux, do_packagedata',
                      'android-tools, do_package_write_ipk',
                      'pseudo, do_populate_sysroot',
                      'cryptodev-linux, do_package_write_ipk',
                      'linux-libc-headers, do_package_write_ipk',
                      'depmodwrapper-cross, do_packagedata',
                      'linux-hp-tenderloin, do_packagedata',
                      'readline, do_package_write_ipk',
                      'opkg-utils, do_packagedata',
                      'linux-hp-tenderloin, do_package_write_ipk',
                      'python, do_packagedata',
                      'gdbm, do_package_write_ipk',
                      'opkg, do_populate_sysroot',
                      'python, do_package_write_ipk',
                      'libtool-cross, do_packagedata',
                      'db, do_packagedata',
                      'libgcc, do_packagedata',
                      'libtool-cross, do_package_write_ipk',
                      'update-rc.d, do_packagedata',
                      'update-rc.d, do_package_write_ipk',
                      'libgcc, do_package_write_ipk',
                      'opkg-utils, do_populate_sysroot',
                      'makedevs, do_populate_sysroot',
                      'readline, do_packagedata',
                      'base-files, do_packagedata',
                      'gcc-runtime, do_packagedata',
                      'opkg-utils, do_package_write_ipk',
                      'base-files, do_package_write_ipk',
                      'ldconfig-native, do_populate_sysroot',
                      'bash, do_packagedata',
                      'run-postinsts, do_packagedata'])
  Task 82 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_compile)
    (dependent Tasks ['initramfs-android-image.bb, do_rootfs',
                      'linux-hp-tenderloin, do_configure'])

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/classes/image.bbclass | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 03cbbf7..dc9bd80 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -76,10 +76,17 @@ LDCONFIGDEPEND ?= "ldconfig-native:do_populate_sysroot"
 LDCONFIGDEPEND_libc-uclibc = ""
 LDCONFIGDEPEND_libc-musl = ""
 
+# This is needed to have depmod data in PKGDATA_DIR,
+# but if you're building small initramfs image
+# e.g. to include it in your kernel, you probably
+# don't want this dependency, which is causing dependency loop
+KERNELDEPMODDEPEND ?= "virtual/kernel:do_packagedata"
+
 do_rootfs[depends] += " \
     makedevs-native:do_populate_sysroot virtual/fakeroot-native:do_populate_sysroot ${LDCONFIGDEPEND} \
     virtual/update-alternatives-native:do_populate_sysroot update-rc.d-native:do_populate_sysroot \
-    virtual/kernel:do_packagedata"
+    ${KERNELDEPMODDEPEND} \
+"
 do_rootfs[recrdeptask] += "do_packagedata"
 
 def command_variables(d):
-- 
2.3.5



^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-04-20 13:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-04-13 21:14 [PATCH] image.bbclass: Allow to remove do_rootfs -> virtual/kernel:do_packagedata dependency Martin Jansa
2015-04-20 12:56 ` Richard Purdie
2015-04-20 13:04   ` [PATCHv2] " Martin Jansa

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox