From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7032209666543190016 X-Received: by 2002:a19:6412:: with SMTP id y18mr31889124lfb.494.1637313902931; Fri, 19 Nov 2021 01:25:02 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6512:3499:: with SMTP id v25ls81546lfr.0.gmail; Fri, 19 Nov 2021 01:25:01 -0800 (PST) X-Google-Smtp-Source: ABdhPJyME12VSBklIJ30PBQhB3Fjy9ltoGisfTbUbQwjbE1PzU+DrdUlyD7rM2+Lf9KuRL5cQ/tn X-Received: by 2002:ac2:4c0b:: with SMTP id t11mr32179268lfq.520.1637313901371; Fri, 19 Nov 2021 01:25:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1637313901; cv=none; d=google.com; s=arc-20160816; b=QjQ5VDxcnbiBkEFW1gnYXaJ4uiEt/XJdyMxrqd5jeV9LMVyShxssxwTFVrAF2V5GHL Zi434QU+ehXXmP21vM489efNmt0Cr2eXkVPGDW8ldMoY31PBbsyL9677jajqAQvHHMag rB5xqnmdlr8CcRz5ppvnjTwVaXA65tF4cZwOHUMtcHE7tN7oRby8XQsgZw3/uySGA0iX Xd5PNlAwMAY5bEl1EtK7XSYwRosmjNGB68PaBEGceHGDqgMFf43zRDR5lBdx68vEoWSo 6MC1F6AIc30I8brMFtVYcnAKNVWy6E1WHsrQbdYf/DExqlZ/HwnojL6eo2PH8aNTNC3i DfcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from; bh=bw2vOv4f40ljwa+9kKkCyQZSGjK9mB5mqOZwqMxpXGs=; b=mB8XhKZ6iBycO66OsPClngU6OYVxTAOkpAbYjFpWjt93ZbA23cF6Nv9hPBnxHOY/HP Cb1t488q5hMEr9NV9Br0kcpZjPpdY0rxyj6VZutOsQ/mW3+3nCYy/0PQ2135rPOHby1U tNmumSI2YKbt8NmbdO7zGqsI4pVPSmgTwKagZyfNlpir0wv7uDcZgJH5S6PlKfHEHSPB LNcyp/HimP/OJRJ0FxO3BO7+zLCNtXdjDpqRywr4aFGgeJBmDAeuZLNcfZ0AXPNOhKxj muqmJG7I14L69pBpvxmM00IfKXXbT3gg8WZJgrJkOnmbQ3Cb1DptEGmGnDi/K7pAdO+S fzsw== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Return-Path: Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id t71si116186lff.6.2021.11.19.01.25.01 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 19 Nov 2021 01:25:01 -0800 (PST) Received-SPF: pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Received: from baighyz.m.ilbers.de (host-80-81-17-52.static.customer.m-online.net [80.81.17.52]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8) with ESMTPSA id 1AJ9OxJV020762 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 19 Nov 2021 10:25:00 +0100 From: Uladzimir Bely To: isar-users@googlegroups.com Subject: [PATCH v3 0/5] Use buildstats from OE to generate build charts Date: Fri, 19 Nov 2021 10:24:54 +0100 Message-Id: <20211119092459.27376-1-ubely@ilbers.de> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: mOqMWX+3CV1O Changes since v2: - Use more straightforward USE_BUILDSTATS = "1" in local.conf to enable the buildstats feature, don't use OE-specific USER_CLASSES. - Avoid forking buildstats.bbclass, use it from OE `as is`. Changes since v1: - rebased on latest `next` rechecked in CI. OE uses buildstats to analyze build performance. This patchset ports this functionality to Isar. Build statistics is collected in $BUILDDIR/tmp/buildstats and can be converted to PDF file or viewed directly. Note: After creating rootfs, buildstats.bbclass checks its size by executing "du -sh" on the directory. While in Isar rootfs is created under root, some "-x" directories (/var/cache/apt/archives/partial or /root) may be unavailable for this check. So, the calculated size may differ from the real one. The first patch in the series is borrowed from 'sstate' series. So, if 'sstate' patchset is applied before this one, the patch should be skipped. Adriaan Schmidt (1): oe imports in central location Uladzimir Bely (4): buildstats: Borrow buildstats and pybootchartgui from OE buildstats: Fixes to work with bbclass in ISAR buildstats: Enable buildstats in default configuration doc: Add buildstats section in user manual doc/user_manual.md | 22 + meta-isar/conf/local.conf.sample | 3 + meta/classes/base.bbclass | 28 + meta/classes/buildstats.bbclass | 295 ++++++ meta/classes/dpkg-base.bbclass | 5 - meta/classes/patch.bbclass | 5 - meta/conf/bitbake.conf | 4 + meta/lib/buildstats.py | 161 +++ scripts/pybootchartgui/AUTHORS | 11 + scripts/pybootchartgui/COPYING | 340 ++++++ scripts/pybootchartgui/MAINTAINERS | 3 + scripts/pybootchartgui/NEWS | 204 ++++ scripts/pybootchartgui/README.pybootchart | 37 + scripts/pybootchartgui/pybootchartgui.py | 23 + .../pybootchartgui/pybootchartgui/__init__.py | 0 .../pybootchartgui/pybootchartgui/batch.py | 46 + scripts/pybootchartgui/pybootchartgui/draw.py | 975 ++++++++++++++++++ scripts/pybootchartgui/pybootchartgui/gui.py | 348 +++++++ scripts/pybootchartgui/pybootchartgui/main.py | 1 + .../pybootchartgui/pybootchartgui/main.py.in | 183 ++++ .../pybootchartgui/pybootchartgui/parsing.py | 821 +++++++++++++++ .../pybootchartgui/process_tree.py | 292 ++++++ .../pybootchartgui/pybootchartgui/samples.py | 178 ++++ .../pybootchartgui/tests/parser_test.py | 105 ++ .../pybootchartgui/tests/process_tree_test.py | 92 ++ 25 files changed, 4172 insertions(+), 10 deletions(-) create mode 100644 meta/classes/buildstats.bbclass create mode 100644 meta/lib/buildstats.py create mode 100644 scripts/pybootchartgui/AUTHORS create mode 100644 scripts/pybootchartgui/COPYING create mode 100644 scripts/pybootchartgui/MAINTAINERS create mode 100644 scripts/pybootchartgui/NEWS create mode 100644 scripts/pybootchartgui/README.pybootchart create mode 100755 scripts/pybootchartgui/pybootchartgui.py create mode 100644 scripts/pybootchartgui/pybootchartgui/__init__.py create mode 100644 scripts/pybootchartgui/pybootchartgui/batch.py create mode 100644 scripts/pybootchartgui/pybootchartgui/draw.py create mode 100644 scripts/pybootchartgui/pybootchartgui/gui.py create mode 120000 scripts/pybootchartgui/pybootchartgui/main.py create mode 100644 scripts/pybootchartgui/pybootchartgui/main.py.in create mode 100644 scripts/pybootchartgui/pybootchartgui/parsing.py create mode 100644 scripts/pybootchartgui/pybootchartgui/process_tree.py create mode 100644 scripts/pybootchartgui/pybootchartgui/samples.py create mode 100644 scripts/pybootchartgui/pybootchartgui/tests/parser_test.py create mode 100644 scripts/pybootchartgui/pybootchartgui/tests/process_tree_test.py -- 2.20.1