From patchwork Thu Jul 6 12:49:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan-Simon Moeller X-Patchwork-Id: 26966 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3A8B2EB64DC for ; Thu, 6 Jul 2023 12:51:20 +0000 (UTC) Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) by mx.groups.io with SMTP id smtpd.web11.21416.1688647875303113281 for ; Thu, 06 Jul 2023 05:51:15 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="signature has expired" header.i=dl9pf@gmx.de header.s=s31663417 header.b=i5VjpT0J; spf=pass (domain: gmx.de, ip: 212.227.17.22, mailfrom: dl9pf@gmx.de) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1688647868; x=1689252668; i=dl9pf@gmx.de; bh=HNWLccJNwIXnOVkyx1R83P69wbu6eXLxNMKrNFcvWXA=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=i5VjpT0JRoGiQconE974iPIXVEd5HAicQNHVuhg/EjVHPRaBrWvrGaY6upm4wPsqdXBWZTV rJZXOmuz7DznStZGpe0eAFYXrDTOW7Pb+IWE97xne+IPrian14r9P4W/oRil9fxtEcfC8BjbS wF23dCqn+iZ4wNbg9kNFJ+yNZaNfu7754gwnGPNmPdcdxGNM1sggC5FQBcGLwZ1q4Baf0G8jZ d8cTOmOyKDJ5o1hqos9lWbS2qmrRnZjsOSw3mYiC9rdSHyVztpEsVDGF3LqO7Z1544zRPvSvO VEKgdUabcOojjckxWKbtolMWmPq321kbvLVq2RdcTF//kraZo02w== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from gmx.de ([77.23.145.57]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mqb1c-1pdbdj47iC-00mYwQ; Thu, 06 Jul 2023 14:51:08 +0200 From: dl9pf@gmx.de To: openembedded-core@lists.openembedded.org Cc: dl9pf@gmx.de, Rusty Howell , Rusty Howell , Luca Ceresoli , Richard Purdie Subject: [kirkstone][PATCH] oe-depends-dot: Handle new format for task-depends.dot Date: Thu, 6 Jul 2023 14:49:24 +0200 Message-ID: <20230706125052.6541-2-dl9pf@gmx.de> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230706125052.6541-1-dl9pf@gmx.de> References: <20230706125052.6541-1-dl9pf@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:tOqzNjBprdHWOrFCBhFxSlnw30CIWM456dIk4C/8SRak5YItJEk bQnj8cLZUVjRtjxhWZ1qBJIknHotcIHCdTJcafRUVxMorETnteyUb/XdYSIt7Bx6FWbUorD nPibVXqFsowDBGMkUp1rLDL+/PgPMxzEWeHRJ02pmPUb6clmwISRNaqolobnwisXxx38QLL Jb/JgV0NJdsaV617vUiiA== UI-OutboundReport: notjunk:1;M01:P0:NqpZx5kU9NI=;zrImQS1ad0tAV45gw4f4Dd5nz8V hL2O0pc67GVHCB/yvcEzdRDX5WXBTdsUOc7xRSK1oj4G6u6lSAYzAlS1PwVEE9TwudTTVUkBE AkemPgbJUghyXfuExf6HnKv9X6EddzjHWOSI9GSOtyE3vui5muYPjvCMKul31ys0vHLvnIS3P fHC0J+VxzH+SAsHns0zXl08sCb6GQTFIupSqVbWISY4ThzETIoRRN/p3UFowaudspJ8GUyNYN r34h7b4nW106a9kb3otlLhtcrvtfxUWDfZUvpVccwm45GCyyLlFAETWbREoPHxAFv1sBzniNs B5PJanpXLHo/fXmnrFdnt5koluAd9EI1skFjJbexumS8HtA8pk1lsPM+bp/noiVTUboa2wmU/ S6ENjWiIhCNSeT/Vxc9mrPAlxH8utFF6HX6uTgWqAY8DLx8IGLvEdk7FiMPrkuiJUa+RXQZbv fwQZC3VIDJKv/JCOwpjuiVcMXmjZADWp5Uc0JKNWd9V0YzS2WldnYtlLrB1g4p3EeC14y2atq QM7hVJZ1B/Xf/yAd7ygHUO7SKAjc1DGfiGxqR5Q5MZHP+e3S9oYvo/opPRyZh/zVyN1h8JR9s EQXP+CRTuJXCE+38RyVwhp24FzZw67XfIpIDzh7JZLnND0A+6QHuT9F21QoCb/GCHVhh5iJ+F qxht0ZfejLKvlnkWhahh75+mAHbXTWzqBXjUoi9mZni8VJZdWWhMWPOXMe8GbfE4SQBN82Tbn WWgnnnL1xWZfCwkSsFf4UBcid6YinYvm+fUVpQJKtXL4e+jj7lSatE5hEpqnNRitJbcV3eLQP hDsDhjamX5AGCro+JDCH6p976e7enL2EpcFOhGRgineBjIBSEwzfLqS0r6ZMu+kwWakLyqJv7 R2nL9NniBpIKMKZxVTzS2gzOPXgFDcbk1sAPWI+8wqRZ4x6OxQRkDfLw3LRCBl2+3RYTLonS6 drfr5tOXt3xR343b9cO0BavZYvg= List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 06 Jul 2023 12:51:20 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/183939 From: Rusty Howell The .dot file created by `bitbake -g` changed formats a while ago, which broke oe-depends-dot. Also add some useful examples to the --help output. Signed-off-by: Rusty Howell Signed-off-by: Luca Ceresoli Signed-off-by: Richard Purdie (cherry picked from commit 7751bc4909f3834e43db020ebb91665a5d7960a9) Signed-off-by: Jan-Simon Moeller --- scripts/oe-depends-dot | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) -- 2.41.0 diff --git a/scripts/oe-depends-dot b/scripts/oe-depends-dot index 5eb3e12769..1c2d51c6ec 100755 --- a/scripts/oe-depends-dot +++ b/scripts/oe-depends-dot @@ -15,7 +15,7 @@ class Dot(object): def __init__(self): parser = argparse.ArgumentParser( description="Analyse recipe-depends.dot generated by bitbake -g", - epilog="Use %(prog)s --help to get help") + formatter_class=argparse.RawDescriptionHelpFormatter) parser.add_argument("dotfile", help = "Specify the dotfile", nargs = 1, action='store', default='') parser.add_argument("-k", "--key", @@ -32,6 +32,21 @@ class Dot(object): " For example, A->B, B->C, A->C, then A->C can be removed.", action="store_true", default=False) + parser.epilog = """ +Examples: +First generate the .dot file: + bitbake -g core-image-minimal + +To find out why a package is being built: + %(prog)s -k -w ./task-depends.dot + +To find out what a package depends on: + %(prog)s -k -d ./task-depends.dot + +Reduce the .dot file packages only, no tasks: + %(prog)s -r ./task-depends.dot +""" + self.args = parser.parse_args() if len(sys.argv) != 3 and len(sys.argv) < 5: @@ -99,6 +114,10 @@ class Dot(object): if key == "meta-world-pkgdata": continue dep = m.group(2) + key = key.split('.')[0] + dep = dep.split('.')[0] + if key == dep: + continue if key in depends: if not key in depends[key]: depends[key].add(dep)