diff options
author | Andres Beltran <abeltran@linux.microsoft.com> | 2021-08-30 22:53:03 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-09-01 14:06:18 +0100 |
commit | 157462fc2a5b086ec154a65f91512d340c1e83d5 (patch) | |
tree | a6748476d1476dde0e551c9db331526988dcd776 /meta/classes/buildhistory.bbclass | |
parent | 39b4f7efa9c635a7809dfab79a299d510f425aaf (diff) | |
download | poky-157462fc2a5b086ec154a65f91512d340c1e83d5.tar.gz |
buildhistory: Label packages providing per-file dependencies in depends.dot
Currently, depends.dot includes per-file dependencies but not the packages
providing those files. This makes it hard to obtain all package
dependencies by just looking at depends.dot.
Parse the RPROVIDES and FILERPROVIDES fields from pkgdata to map each of
their values to the package providing the component. Include runtime
packages as dependencies in depends.dot, together with the component
provided by the package as a label.
(From OE-Core rev: 2ba33093017574bbe29eeba699eb90628614d03a)
Signed-off-by: Andres Beltran <abeltran@linux.microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/buildhistory.bbclass')
-rw-r--r-- | meta/classes/buildhistory.bbclass | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass index cdcf99a499..a613306270 100644 --- a/meta/classes/buildhistory.bbclass +++ b/meta/classes/buildhistory.bbclass | |||
@@ -446,7 +446,7 @@ def buildhistory_list_installed(d, rootfs_type="image"): | |||
446 | output_file_full = os.path.join(d.getVar('WORKDIR'), output_file) | 446 | output_file_full = os.path.join(d.getVar('WORKDIR'), output_file) |
447 | 447 | ||
448 | with open(output_file_full, 'w') as output: | 448 | with open(output_file_full, 'w') as output: |
449 | output.write(format_pkg_list(pkgs, output_type)) | 449 | output.write(format_pkg_list(pkgs, output_type, d.getVar('PKGDATA_DIR'))) |
450 | 450 | ||
451 | python buildhistory_list_installed_image() { | 451 | python buildhistory_list_installed_image() { |
452 | buildhistory_list_installed(d) | 452 | buildhistory_list_installed(d) |
@@ -487,6 +487,8 @@ buildhistory_get_installed() { | |||
487 | -e 's:|: -> :' \ | 487 | -e 's:|: -> :' \ |
488 | -e 's:"\[REC\]":[style=dotted]:' \ | 488 | -e 's:"\[REC\]":[style=dotted]:' \ |
489 | -e 's:"\([<>=]\+\)" "\([^"]*\)":[label="\1 \2"]:' \ | 489 | -e 's:"\([<>=]\+\)" "\([^"]*\)":[label="\1 \2"]:' \ |
490 | -e 's:"\([*]\+\)" "\([^"]*\)":[label="\2"]:' \ | ||
491 | -e 's:"\[RPROVIDES\]":[style=dashed]:' \ | ||
490 | $1/depends.tmp | 492 | $1/depends.tmp |
491 | # Add header, sorted and de-duped contents and footer and then delete the temp file | 493 | # Add header, sorted and de-duped contents and footer and then delete the temp file |
492 | printf "digraph depends {\n node [shape=plaintext]\n" > $1/depends.dot | 494 | printf "digraph depends {\n node [shape=plaintext]\n" > $1/depends.dot |