[oe-commits] Robert Yang : bitbake-whatchanged: print what is about to happen

git at git.openembedded.org git at git.openembedded.org
Thu Mar 7 11:14:09 UTC 2013


Module: openembedded-core.git
Branch: master
Commit: 8783fcc23ccbd829ecb0dc59cf71ee44376094cc
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=8783fcc23ccbd829ecb0dc59cf71ee44376094cc

Author: Robert Yang <liezhi.yang at windriver.com>
Date:   Thu Jan 31 16:45:33 2013 +0800

bitbake-whatchanged: print what is about to happen

* Contents:
  - Summary
  - Usage
  - Implementation summary
  - Output
  - TODO

* Summary:
  This is used for printing what is about to happen between the current and last
  builds, for example:

  $ bitbake core-image-sato
  # Edit some recipes
  $ bitbake-whatchanged core-image-sato

  The changes will be printed.

* Usage:
  bitbake-whatchanged [[opts] recipe]

* Implementation summary:
  - Use the "STAMPS_DIR=<path> bitbake -S recipe" to generate the new
    stamps, compare these stamps to the one in the old stamps dir (tmp/stamps),
    so we will get what are changed.

  - When the "-v" (verbose) is not specified:
    > Figure out the newly added tasks
    > Figure out the PV (including PE) and PR changed tasks
    > The left tasks are the ones that the "Dependencies" changed tasks

  - When "-v" is specified:
    > Figure out the newly added tasks
    > Use bb.siggen.compare_sigfiles to figure out the details

* Output, for example (core-image-sato with different git tags)
  and with recipes upgraded):
  - without "-v":
    Figuring out the STAMPS_DIR ...
    Generating the new stamps ... (need several minutes)
    === Newly added tasks: (5 tasks)
      core-image-sato: do_configure do_populate_lic do_install do_rootfs do_compile
      # Note: This is because the "bitbake -S" always generate the sigdata for
      # do_compile, do_rootfs and other task, we may need fix this from "bitbake -S"

    === PV changed: (130 tasks)
      alsa-utils: 1.0.25 -> 1.0.26
      cross-localedef-native: 2.16 -> 2.17
      eglibc-initial: 2.16 -> 2.17
      [snip]

    === Dependencies changed: (3593 tasks)
      busybox: do_package do_package_write do_build do_packagedata do_populate_sysroot do_install do_compile do_package_write_rpm do_configure do_populate_lic
      atk-native: do_compile do_package_write_rpm do_package do_configure do_populate_sysroot do_install do_populate_lic do_patch do_packagedata do_build do_package_write do_unpack
      [snip]

    === Summary: (3728 changed, 1134 unchanged)
    Newly added: 5
    PV changed: 130
    PR changed: 0
    Dependencies changed: 3593

    Removing the newly generated stamps dir ...

  - with "-v":
    === Newly added tasks: (5 tasks)
      core-image-sato: do_configure do_populate_lic do_install do_rootfs do_compile

    === The verbose changes of glib-2.0-native.do_do_install:
    Hash for dependent task virtual:native:glib-2.0_2.34.3.bb.do_compile changed from bab8b8dd95be1b83dcec93f755b1812b to 70f746df7809acaa52de204b0685abb4

    [snip]

    === Summary: (3728 changed, 1134 unchanged)
    Newly added: 5
    Dependencies changed: 3723

    Removing the newly generated stamps dir ...

* TODO
  - It seems that the "bitbake -S core-image-sato" has bugs, it would always
    report errors, but doesn't fatal errors

  - The gcc-cross' stamps are in tmp/stamps/work-shared, but the
    "bitbake -S" doesn't put the stamps in work-shared.

  - The "bitbake -S" always generates the sigdata for image recipe's do_compile,
    do_install and other tasks, we may need fix this from "bitbake -S".

  - Print the ones which can be installed from the sstate.

[YOCTO #1659]

Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
Signed-off-by: Saul Wold <sgw at linux.intel.com>

---

 scripts/bitbake-whatchanged |  339 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 339 insertions(+), 0 deletions(-)

Diff:   http://git.openembedded.org/?p=openembedded-core.git/?a=commitdiff;h=8783fcc23ccbd829ecb0dc59cf71ee44376094cc




More information about the Openembedded-commits mailing list