Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
From 8591c1e3edaea8f17396e3d2819d9064b2818cfb Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sat, 6 Aug 2022 20:39:01 -0700
|
||||
Subject: [PATCH] Do not include linux/fs.h
|
||||
|
||||
This header is not needed to be included anymore, moreover it conflicts
|
||||
with sys/mount.h from glibc 2.36+ see [1]
|
||||
|
||||
[1] https://sourceware.org/glibc/wiki/Release/2.36
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/xrmx/bootchart/pull/99]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
collector/collector.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/collector/collector.c b/collector/collector.c
|
||||
index 5055181..12738ff 100644
|
||||
--- a/collector/collector.c
|
||||
+++ b/collector/collector.c
|
||||
@@ -34,7 +34,6 @@
|
||||
|
||||
#include <sys/mount.h>
|
||||
#include <sys/sysmacros.h>
|
||||
-#include <linux/fs.h>
|
||||
#include <linux/genetlink.h>
|
||||
#include <linux/taskstats.h>
|
||||
#include <linux/cgroupstats.h>
|
||||
--
|
||||
2.37.1
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
From 988ca784d4840c87509e770a21d5d22105af8668 Mon Sep 17 00:00:00 2001
|
||||
From: Mingli Yu <mingli.yu@windriver.com>
|
||||
Date: Fri, 5 Nov 2021 11:18:07 +0800
|
||||
Subject: [PATCH] bootchartd.in: make sure only one bootchartd process
|
||||
|
||||
When boot with "init=/sbin/bootchartd" as below:
|
||||
# runqemu qemux86 bootparams="init=/sbin/bootchartd"
|
||||
|
||||
There are two bootchartd process after boot [1].
|
||||
# ps -ef | grep bootchart
|
||||
root 101 1 0 03:27 ? 00:00:00 /bin/sh /sbin/bootchartd
|
||||
root 103 101 8 03:27 ? 00:00:02 /lib64/bootchart/bootchart-collector 50
|
||||
root 106 1 0 03:27 ? 00:00:00 /bin/sh /sbin/bootchartd
|
||||
root 792 106 0 03:27 ? 00:00:00 /lib64/bootchart/bootchart-collector --usleep 1000000
|
||||
root 794 725 0 03:27 ttyS0 00:00:00 grep bootchart
|
||||
|
||||
# /sbin/bootchartd stop
|
||||
[bootchart] bootchart-collector started as pid 596 with 2 args:
|
||||
[bootchart] '--dump'
|
||||
[bootchart] '/tmp/bootchart.3lXpVDAq3v'
|
||||
[bootchart] Extracting profile data from pid 204
|
||||
[bootchart] map 0xbed9a000 -> 0xbedbb000 size: 132k from 'bed9a000' 'bedbb000'
|
||||
[bootchart] read 135168 bytes of 135168
|
||||
[bootchart] reading 150 chunks (of 150) ...
|
||||
[bootchart] wrote 18760 kbB
|
||||
[bootchart] bootchart-collector pid: 596 unmounted proc / clean exit
|
||||
|
||||
But there still one process exist after the above stop command finish.
|
||||
# ps -ef | grep bootchartd
|
||||
root 202 1 0 09:09 ? 00:00:00 /bin/sh /sbin/bootchartd
|
||||
root 629 516 0 09:10 ? 00:00:00 grep bootchartd
|
||||
|
||||
Remove the wait_boot which used to wait the boot process to finish to
|
||||
make sure only one bootchartd process and meanwhile we don't need the
|
||||
wait_boot logic because we either use "/sbin/bootchartd stop" to stop
|
||||
the bootchartd manually or install package bootchartd-stop-initscript
|
||||
altogether with bootchart2 to stop bootchartd automatically after boot.
|
||||
|
||||
After patch:
|
||||
# ps -ef | grep bootchart
|
||||
root 101 1 0 03:36 ? 00:00:00 /bin/sh /sbin/bootchartd
|
||||
root 103 101 6 03:36 ? 00:00:04 /lib64/bootchart/bootchart-collector 50
|
||||
root 596 592 0 03:37 ttyS0 00:00:00 grep bootchart
|
||||
|
||||
[1] https://github.com/xrmx/bootchart/issues/94
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/xrmx/bootchart/pull/95]
|
||||
|
||||
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
|
||||
---
|
||||
bootchartd.in | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/bootchartd.in b/bootchartd.in
|
||||
index 7979ef9..f0e466d 100755
|
||||
--- a/bootchartd.in
|
||||
+++ b/bootchartd.in
|
||||
@@ -183,7 +183,6 @@ if [ $$ -eq 1 ]; then
|
||||
else # running inside the main system
|
||||
echo "bootchart: no initrd used; starting"
|
||||
start &
|
||||
- wait_boot &
|
||||
# wait a little, until the collector is going, before allowing
|
||||
# the rest of the system to charge ahead, so we catch it
|
||||
$USLEEP 250000
|
||||
--
|
||||
2.17.1
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
From 09505532b49573663fb4ff4dad424dc2ef4c1f84 Mon Sep 17 00:00:00 2001
|
||||
From: Kyle Russell <bkylerussell@gmail.com>
|
||||
Date: Wed, 13 Jul 2016 17:30:00 -0400
|
||||
Subject: [PATCH] collector: Allocate space on heap for chunks
|
||||
|
||||
Nicer for embedded devices which may have smaller stack limitations.
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/xrmx/bootchart/pull/74]
|
||||
|
||||
Signed-off-by: Kyle Russell <bkylerussell@gmail.com>
|
||||
---
|
||||
collector/dump.c | 7 ++++---
|
||||
1 file changed, 4 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/collector/dump.c b/collector/dump.c
|
||||
index e673b5b..2f094b4 100644
|
||||
--- a/collector/dump.c
|
||||
+++ b/collector/dump.c
|
||||
@@ -184,12 +184,12 @@ static void dump_buffers (DumpState *s)
|
||||
log ("reading %d chunks (of %d) ...\n", max_chunk, s->map.max_chunk);
|
||||
for (i = 0; i < max_chunk; i++) {
|
||||
FILE *output;
|
||||
- char buffer[CHUNK_SIZE];
|
||||
- Chunk *c = (Chunk *)&buffer;
|
||||
+ char *buffer = malloc(CHUNK_SIZE);
|
||||
+ Chunk *c = (Chunk *)buffer;
|
||||
size_t addr = (size_t) s->map.chunks[i];
|
||||
|
||||
lseek (s->mem, addr, SEEK_SET);
|
||||
- read (s->mem, &buffer, CHUNK_SIZE);
|
||||
+ read (s->mem, buffer, CHUNK_SIZE);
|
||||
/* log ("type: '%s' len %d\n",
|
||||
c->dest_stream, (int)c->length); */
|
||||
|
||||
@@ -197,6 +197,7 @@ static void dump_buffers (DumpState *s)
|
||||
fwrite (c->data, 1, c->length, output);
|
||||
bytes_dumped += c->length;
|
||||
fclose (output);
|
||||
+ free(buffer);
|
||||
}
|
||||
log ("wrote %ld kb\n", (long)(bytes_dumped+1023)/1024);
|
||||
}
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
#!/bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: bootchartd_stop
|
||||
# Required-Start: $remote_fs $all
|
||||
# Required-Stop:
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop:
|
||||
# Short-Description: Stop bootchartd collection
|
||||
# Description: This script accompanies bootchartd from bootchart2.
|
||||
# bootchartd should stop detect the end of the boot process
|
||||
# automatically if a window manager is launched, but for
|
||||
# command-line only operating systems, this script should be
|
||||
# used instead.
|
||||
### END INIT INFO
|
||||
|
||||
/sbin/bootchartd stop
|
||||
|
||||
: exit 0
|
||||
@@ -0,0 +1,162 @@
|
||||
# Copyright (c) 2013 LG Electronics, Inc.
|
||||
# Copyright (C) 2014 Intel Corp.
|
||||
|
||||
# This recipe creates packages for the bootchart2 system-wide profiler daemon
|
||||
# and related utilities. Depending on the images you're building, additional
|
||||
# configuration may be needed in order to use it.
|
||||
#
|
||||
# Packages:
|
||||
# * bootchart2 - The daemon itself.
|
||||
# * pybootchartgui - Python program to visualize and display the data
|
||||
# collected by bootchart2 or compatible daemons such as the original
|
||||
# bootchart.
|
||||
# * bootchartd-stop-initscript - A SysV init script to stop data collection
|
||||
# when booting completes (see below for details.)
|
||||
#
|
||||
# While bootchart2 is designed to stop collecting data roughly when the boot
|
||||
# process completes, it is not exactly a stopwatch. It has a list of programs
|
||||
# which are supposed signify that the boot process has completed (for example,
|
||||
# openbox or gnome-shell,) but it waits a full 20 seconds after such a program
|
||||
# is launched before stopping itself, to collect additional data.
|
||||
#
|
||||
# If you are using a window manager or GUI which isn't included in bootchart2's
|
||||
# default configuration file, you should write bbappend file to amend
|
||||
# bootchartd.conf and add it to EXIT_PROC. An example of this is shown in this
|
||||
# recipe, where the Matchbox window manager (used by Sato) is added.
|
||||
#
|
||||
# If you want data collection to end at a certain point exactly, you should
|
||||
# arrange for the following command to be run:
|
||||
# bootchartd stop
|
||||
# You might set this command to be launched by the desktop environment shipped
|
||||
# on the image you're building after the other startup programs are complete.
|
||||
# This will not incur the 20 second wait period and will cause bootchart2 to
|
||||
# behave a bit more like a stopwatch. An example of this is shown in this
|
||||
# recipe, specifically the bootchartd-stop-initscript package, which stops data
|
||||
# collection as the last action when switching to runlevels 2 through 5. You can
|
||||
# add bootchartd-stop-initscript to IMAGE_INSTALL if you need to use it.
|
||||
#
|
||||
# Unless you're doing something special, if your image does not launch an X
|
||||
# window manager, you will need to add bootchartd-stop-initscript to your image.
|
||||
#
|
||||
# Bootchart2 can be started in two ways. Data collection can be initiated by
|
||||
# running the following command:
|
||||
# bootchartd start
|
||||
# However, for the most complete data, the bootchart2 developers recommend
|
||||
# running it as PID 1. This can be done by adding the following to the kernel
|
||||
# command line parameters in the bootloader setup:
|
||||
# init=/sbin/bootchartd
|
||||
# When invoked this way, bootchart2 will set itself up and then automatically
|
||||
# run /sbin/init. For example, when booting the default qemux86 image, one might
|
||||
# use a command like this:
|
||||
# runqemu qemux86 bootparams="initcall_debug printk.time=y quiet \
|
||||
# init=/sbin/bootchartd"
|
||||
#
|
||||
# Neither method is actually implemented here, choose what works for you.
|
||||
#
|
||||
# If you are building your image with systemd instead of SysV init, bootchart2
|
||||
# includes systemd service files to begin collection automatically at boot and
|
||||
# end collection automatically 20 seconds after the boot process has completed.
|
||||
# However, be aware that systemd tends to start bootchart2 relatively late into
|
||||
# the boot process, so it's highly recommended to use bootchart2 as PID 1. If
|
||||
# you're using systemd and you wish to use another method to stop data
|
||||
# collection at a time of your choosing, you may do so as long as you get to it
|
||||
# before the 20 second timeout of the systemd service files. Also, you may write
|
||||
# a bbappend to patch bootchart2-done.timer.in to increase or decrease the
|
||||
# timeout. Decreasing it to 0 will make it behave like
|
||||
# bootchartd-stop-initscript.
|
||||
#
|
||||
# By default, when data collection is stopped, a file named bootchart.tgz will
|
||||
# be created in /var/log. If pybootchartgui is included in your image,
|
||||
# bootchart.png will also be created at the same time. However, this results in
|
||||
# a noticeable hitch or pause at boot time, which may not be what you want on an
|
||||
# embedded device. So you may prefer to omit pybootchartgui from your image. In
|
||||
# that case, copy bootchart.tgz over to your development system and generate
|
||||
# bootchart.png there. To get pybootchartgui on your development system, you can
|
||||
# either install it directly from some other source, or build bootchart2-native
|
||||
# and find pybootchartgui in the native sysroot:
|
||||
# bitbake bootchart2-native
|
||||
# ./tmp/sysroots/x86_64-linux/usr/bin/pybootchartgui /path/to/bootchart.tgz
|
||||
# Note that, whether installed on your build system or on your image, the
|
||||
# pybootchartgui provided by this recipe does not support the -i option. You
|
||||
# will need to install pybootchartgui by other means in order to run it in
|
||||
# interactive mode.
|
||||
|
||||
SUMMARY = "Booting sequence and CPU,I/O usage monitor"
|
||||
DESCRIPTION = "Monitors where the system spends its time at start, creating a graph of all processes, disk utilization, and wait time."
|
||||
HOMEPAGE = "https://github.com/mmeeks/bootchart"
|
||||
LICENSE = "GPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=44ac4678311254db62edf8fd39cb8124"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.\d+(\.\d+)*)"
|
||||
|
||||
SRC_URI = "git://github.com/xrmx/bootchart.git;branch=master;protocol=https \
|
||||
file://bootchartd_stop.sh \
|
||||
file://0001-collector-Allocate-space-on-heap-for-chunks.patch \
|
||||
file://0001-bootchartd.in-make-sure-only-one-bootchartd-process.patch \
|
||||
file://0001-Do-not-include-linux-fs.h.patch \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
SRCREV = "868a2afab9da34f32c007d773b77253c93104636"
|
||||
|
||||
|
||||
inherit systemd update-rc.d python3native update-alternatives
|
||||
|
||||
ALTERNATIVE:${PN} = "bootchartd"
|
||||
ALTERNATIVE_LINK_NAME[bootchartd] = "${base_sbindir}/bootchartd"
|
||||
ALTERNATIVE_PRIORITY = "100"
|
||||
|
||||
# The only reason to build bootchart2-native is for a native pybootchartgui.
|
||||
BBCLASSEXTEND = "native"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "bootchart2.service bootchart2-done.service bootchart2-done.timer"
|
||||
|
||||
UPDATERCPN = "bootchartd-stop-initscript"
|
||||
INITSCRIPT_NAME = "bootchartd_stop.sh"
|
||||
INITSCRIPT_PARAMS = "start 99 2 3 4 5 ."
|
||||
|
||||
do_compile:prepend () {
|
||||
export PY_LIBDIR="${libdir}/${PYTHON_DIR}"
|
||||
export BINDIR="${bindir}"
|
||||
export LIBDIR="/${baselib}"
|
||||
export EARLY_PREFIX="${root_prefix}"
|
||||
}
|
||||
|
||||
do_install () {
|
||||
install -d ${D}${sysconfdir} # needed for -native
|
||||
export PY_LIBDIR="${libdir}/${PYTHON_DIR}"
|
||||
export BINDIR="${bindir}"
|
||||
export DESTDIR="${D}"
|
||||
export LIBDIR="/${baselib}"
|
||||
export EARLY_PREFIX="${root_prefix}"
|
||||
|
||||
oe_runmake install NO_PYTHON_COMPILE=1
|
||||
install -d ${D}${sysconfdir}/init.d
|
||||
install -m 0755 ${WORKDIR}/bootchartd_stop.sh ${D}${sysconfdir}/init.d
|
||||
|
||||
echo 'EXIT_PROC="$EXIT_PROC matchbox-window-manager"' >> ${D}${sysconfdir}/bootchartd.conf
|
||||
|
||||
# Use python 3 instead of python 2
|
||||
sed -i -e '1s,#!.*python.*,#!${USRBINPATH}/env python3,' ${D}${bindir}/pybootchartgui
|
||||
|
||||
# The timestamps embedded in compressed man pages is not reproducible
|
||||
gzip -d ${D}${mandir}/man1/*.gz
|
||||
}
|
||||
|
||||
PACKAGES =+ "pybootchartgui"
|
||||
FILES:pybootchartgui += "${PYTHON_SITEPACKAGES_DIR}/pybootchartgui ${bindir}/pybootchartgui"
|
||||
RDEPENDS:pybootchartgui = "python3-pycairo python3-compression python3-image python3-math python3-shell python3-compression python3-codecs"
|
||||
RDEPENDS:${PN}:class-target += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'sysvinit-pidof', 'procps', d)}"
|
||||
RDEPENDS:${PN}:class-target += "lsb-release"
|
||||
DEPENDS:append:class-native = " python3-pycairo-native"
|
||||
|
||||
PACKAGES =+ "bootchartd-stop-initscript"
|
||||
FILES:bootchartd-stop-initscript += "${sysconfdir}/init.d ${sysconfdir}/rc*.d"
|
||||
RDEPENDS:bootchartd-stop-initscript = "${PN}"
|
||||
|
||||
FILES:${PN} += "${base_libdir}/bootchart/bootchart-collector"
|
||||
FILES:${PN} += "${base_libdir}/bootchart/tmpfs"
|
||||
FILES:${PN} += "${libdir}"
|
||||
FILES:${PN}-doc += "${datadir}/docs"
|
||||
|
||||
RCONFLICTS:${PN} = "bootchart"
|
||||
Reference in New Issue
Block a user