Changed in V3:

There is a failure to build core-image-minimal while
IMAGE_INSTALL_append = " busybox-udhcpd"
...
NOTE: Runtime target 'busybox-udhcpd' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['busybox-udhcpd']
ERROR: Required build target 'core-image-minimal' has no buildable providers. Missing or unbuildable dependency chain was: ['core-image-minimal', 'busybox-udhcpd']
...

Treat these as dynamic packages could fix this issue.

//Hongxu

On 12/29/2014 06:45 PM, Hongxu Jia wrote:
While building busybox with QA package-missing checking enabled,
there was warning:
...
WARNING: QA Issue: package busybox-mdev not generated, but listed in PACKAGES
WARNING: QA Issue: package busybox-httpd not generated, but listed in PACKAGES
...

The config in ${B}/.config decides to generate busybox-mdev, busybox-hwclock,
busybox-udhcpd, busybox-httpd, busybox-udhcpc, busybox-syslog or not. Files
are copied if the packages generated. Set PACKAGES in do_package according
to the existance of these files, so we could dynamicly generate these packages
according to the configuration.

Signed-off-by: Hongxu Jia <hongxu....@windriver.com>
---
  meta/recipes-core/busybox/busybox.inc | 20 +++++++++++++++++++-
  1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-core/busybox/busybox.inc 
b/meta/recipes-core/busybox/busybox.inc
index 0769d92..7b23190 100644
--- a/meta/recipes-core/busybox/busybox.inc
+++ b/meta/recipes-core/busybox/busybox.inc
@@ -19,7 +19,7 @@ export EXTRA_CFLAGS = "${CFLAGS}"
  export EXTRA_LDFLAGS = "${LDFLAGS}"
  export EXTRA_OEMAKE += "'LD=${CCLD}'"
-PACKAGES =+ "${PN}-httpd ${PN}-udhcpd ${PN}-udhcpc ${PN}-syslog ${PN}-mdev ${PN}-hwclock"
+PACKAGES_DYNAMIC += "^${PN}-(udhcpd|hwclock|mdev|httpd|syslog|udhcpc)"
FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
  FILES_${PN}-syslog = "${sysconfdir}/init.d/syslog* 
${sysconfdir}/syslog-startup.conf* ${sysconfdir}/syslog.conf* 
${systemd_unitdir}/system/syslog.service ${sysconfdir}/default/busybox-syslog"
@@ -317,6 +317,24 @@ python () {
  }
python do_package_prepend () {
+    if os.path.exists(d.expand("${D}${sysconfdir}/udhcpc.d")):
+        d.prependVar('PACKAGES', d.expand('${PN}-udhcpc '))
+
+    if os.path.exists(d.expand("${D}${sysconfdir}/init.d/syslog.${BPN}")):
+        d.prependVar('PACKAGES', d.expand('${PN}-syslog '))
+
+    if os.path.exists(d.expand("${D}${sysconfdir}/init.d/busybox-httpd")):
+        d.prependVar('PACKAGES', d.expand('${PN}-httpd '))
+
+    if os.path.exists(d.expand("${D}${sysconfdir}/init.d/hwclock.sh")):
+        d.prependVar('PACKAGES', d.expand('${PN}-hwclock '))
+
+    if os.path.exists(d.expand("${D}${sysconfdir}/init.d/busybox-udhcpd")):
+        d.prependVar('PACKAGES', d.expand('${PN}-udhcpd '))
+
+    if os.path.exists(d.expand("${D}${sysconfdir}/init.d/mdev")):
+        d.prependVar('PACKAGES', d.expand('${PN}-mdev '))
+
      # We need to load the full set of busybox provides from the 
/etc/busybox.links
      # Use this to see the update-alternatives with the right information

--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to