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:
Siggi (OpenClaw Agent)
2026-03-01 20:58:18 +00:00
commit 16accb6b24
15086 changed files with 1292356 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
From 06605158852f9364519391fa11070ba5ec4303e9 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 2 Sep 2017 08:07:17 -0700
Subject: [PATCH] disbale heap checkers and debug allocator on musl
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Pending
---
configure.ac | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configure.ac b/configure.ac
index 68fd51c..4cb71fe 100644
--- a/configure.ac
+++ b/configure.ac
@@ -53,6 +53,8 @@ case "$host" in
need_nanosleep=no;;
*-cygwin*) default_enable_cpu_profiler=no;;
*-linux*) default_enable_heap_checker=yes; heap_checker_supported=yes;;
+ *-musl*) default_enable_heap_checker=no; default_enable_heap_profiler=no;
+ default_enable_debugalloc=no; default_enable_libunwind=no;
esac
# Currently only backtrace works on s390 and OSX.

View File

@@ -0,0 +1,59 @@
From d675808d300278a9e7143428cfecf3fda61cc9a2 Mon Sep 17 00:00:00 2001
From: Robert Yang <liezhi.yang@windriver.com>
Date: Thu, 21 Mar 2024 10:59:29 +0000
Subject: [PATCH] src/mmap_hook.cc: Fix build for 32bit machine
Fixed build error on 32bit machine:
../git/src/mmap_hook.cc:309:31: error: static assertion failed
309 | static_assert(sizeof(int32_t) == sizeof(off_t), "");
This is because oe's off_t is 64bit on both 32 and 64bit system, which is the
default value of glibc, so the assertion would be failed on 32bit system, and
remove mmap() and mmap64() to fix the redefined error.
Upstream-Status: Inappropriate [OE-Specific]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
src/mmap_hook.cc | 22 ----------------------
1 file changed, 22 deletions(-)
diff --git a/src/mmap_hook.cc b/src/mmap_hook.cc
index 0a0f62f..27425e4 100644
--- a/src/mmap_hook.cc
+++ b/src/mmap_hook.cc
@@ -302,30 +302,8 @@ void* mmap(void* start, size_t length, int prot, int flags, int fd, off_t off) _
#define HOOKED_MMAP
-#elif defined(DEFINED_DO_MMAP) && defined(__linux__) && !GOOD_LINUX_SYSTEM
-// Linuxes with 32-bit off_t. We're being careful with mmap64 being
-// 64-bit and mmap being 32-bit.
-
-static_assert(sizeof(int32_t) == sizeof(off_t), "");
-
-extern "C" void* mmap64(void* start, size_t length, int prot, int flags, int fd, int64_t off)
- __THROW ATTRIBUTE_SECTION(malloc_hook);
-extern "C" void* mmap(void* start, size_t length, int prot, int flags, int fd, off_t off)
- __THROW ATTRIBUTE_SECTION(malloc_hook);
-
-void* mmap(void *start, size_t length, int prot, int flags, int fd, off_t off) __THROW {
- return do_mmap_with_hooks(start, length, prot, flags, fd, off);
-}
-
-void* mmap64(void *start, size_t length, int prot, int flags, int fd, int64_t off) __THROW {
- return do_mmap_with_hooks(start, length, prot, flags, fd, off);
-}
-
-#define HOOKED_MMAP
-
#endif // Linux/32-bit off_t case
-
#ifdef HOOKED_MMAP
extern "C" int munmap(void* start, size_t length) __THROW ATTRIBUTE_SECTION(malloc_hook);
--
2.35.5

View File

@@ -0,0 +1,28 @@
From 564f800e3e24647c095f7a321bf3ebdccfbf762d Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 2 Sep 2017 12:02:04 -0700
Subject: [PATCH] Disable libunwind on aarch64
Fixes hangs when using libtcmalloc.so
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
configure.ac | 5 +++++
1 file changed, 5 insertions(+)
--- a/configure.ac
+++ b/configure.ac
@@ -76,6 +76,11 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM(, [re
[default_enable_libunwind=yes
default_tcmalloc_pagesize=8])
+# Disable libunwind linking on aarch64 by default.
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM(, [return __aarch64__])],
+ [default_enable_libunwind=no],
+ [default_enable_libunwind=yes])
+
AC_ARG_ENABLE([cpu-profiler],
[AS_HELP_STRING([--disable-cpu-profiler],
[do not build the cpu profiler])],

View File

@@ -0,0 +1,61 @@
From 328805fd16930deefda400a77e9c2c5d17d04d29 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 13 Mar 2021 00:42:25 -0800
Subject: [PATCH] Compatibility fixes for musl.
---
Upstream-Status: Pending
src/getpc.h | 4 ++++
src/stacktrace_powerpc-linux-inl.h | 8 ++++++--
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/getpc.h b/src/getpc.h
index 87d18b6..c569731 100644
--- a/src/getpc.h
+++ b/src/getpc.h
@@ -68,6 +68,10 @@
typedef ucontext ucontext_t;
#endif
+#if defined(__powerpc__) && !defined(PT_NIP)
+#define PT_NIP 32
+#endif
+
namespace tcmalloc {
namespace getpc {
diff --git a/src/stacktrace_powerpc-linux-inl.h b/src/stacktrace_powerpc-linux-inl.h
index 883e7d2..212bd25 100644
--- a/src/stacktrace_powerpc-linux-inl.h
+++ b/src/stacktrace_powerpc-linux-inl.h
@@ -186,7 +186,7 @@ static int GET_STACK_TRACE_OR_FRAMES {
ucontext_t uc;
// We don't care about the rest, since the IP value is at 'uc' field.
} *sigframe = reinterpret_cast<signal_frame_64*>(current);
- result[n] = (void*) sigframe->uc.uc_mcontext.gp_regs[PT_NIP];
+ result[n] = (void*) sigframe->uc.uc_mcontext.gp_regs[32];
}
#else
if (sigtramp32_vdso && (sigtramp32_vdso == current->return_addr)) {
@@ -196,7 +196,7 @@ static int GET_STACK_TRACE_OR_FRAMES {
mcontext_t mctx;
// We don't care about the rest, since IP value is at 'mctx' field.
} *sigframe = reinterpret_cast<signal_frame_32*>(current);
- result[n] = (void*) sigframe->mctx.gregs[PT_NIP];
+ result[n] = (void*) sigframe->mctx.gregs[32];
} else if (sigtramp32_rt_vdso && (sigtramp32_rt_vdso == current->return_addr)) {
struct rt_signal_frame_32 {
char dummy[64 + 16];
@@ -204,7 +204,11 @@ static int GET_STACK_TRACE_OR_FRAMES {
ucontext_t uc;
// We don't care about the rest, since IP value is at 'uc' field.A
} *sigframe = reinterpret_cast<rt_signal_frame_32*>(current);
+#if defined(__GLIBC__)
result[n] = (void*) sigframe->uc.uc_mcontext.uc_regs->gregs[PT_NIP];
+#else
+ result[n] = (void*) sigframe->uc.uc_mcontext.gregs[32];
+#endif
}
#endif

View File

@@ -0,0 +1,65 @@
SUMMARY = "Fast, multi-threaded malloc() and nifty performance analysis tools"
HOMEPAGE = "https://github.com/gperftools/gperftools"
DESCRIPTION = "The gperftools, previously called google-perftools, package contains some \
utilities to improve and analyze the performance of C++ programs. \
Included are an optimized thread-caching malloc() and cpu and heap profiling utilities. \
"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=762732742c73dc6c7fbe8632f06c059a"
DEPENDS:append:libc-musl = " libucontext"
SRCREV = "365060c4213a48adb27f63d5dfad41b3dfbdd62e"
SRC_URI = "git://github.com/gperftools/gperftools;branch=master;protocol=https \
file://0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch \
file://disable_libunwind_aarch64.patch \
file://0001-src-mmap_hook.cc-Fix-build-for-32bit-machine.patch \
"
SRC_URI:append:libc-musl = " file://ppc-musl.patch"
inherit autotools
S = "${WORKDIR}/git"
# On mips, we have the following error.
# do_page_fault(): sending SIGSEGV to ls for invalid read access from 00000008
# Segmentation fault (core dumped)
COMPATIBLE_HOST:mipsarch = "null"
COMPATIBLE_HOST:riscv64 = "null"
COMPATIBLE_HOST:riscv32 = "null"
# Disable thumb1
# {standard input}: Assembler messages:
# {standard input}:434: Error: lo register required -- `ldr pc,[sp]'
# Makefile:4538: recipe for target 'src/base/libtcmalloc_la-linuxthreads.lo' failed
ARM_INSTRUCTION_SET:armv5 = "arm"
ARM_INSTRUCTION_SET:toolchain-clang:arm = "arm"
EXTRA_OECONF:append:libc-musl:powerpc64le = " --disable-cpu-profiler"
EXTRA_OECONF:append:libc-musl:powerpc = " --disable-cpu-profiler"
PACKAGECONFIG ?= "libunwind static"
PACKAGECONFIG:remove:arm:libc-musl = "libunwind"
PACKAGECONFIG:remove:riscv64 = "libunwind"
PACKAGECONFIG:remove:riscv32 = "libunwind"
PACKAGECONFIG[libunwind] = "--enable-libunwind,--disable-libunwind,libunwind"
PACKAGECONFIG[static] = "--enable-static,--disable-static,"
PACKAGE_BEFORE_PN += "libtcmalloc-minimal"
FILES:libtcmalloc-minimal = "${libdir}/libtcmalloc_minimal*${SOLIBS} ${libdir}/libtcmalloc_minimal_debug*${SOLIBS}"
# pprof tool requires Getopt::long and POSIX perl5 modules.
# Also runs `objdump` on each cpuprofile data file
RDEPENDS:${PN} += " \
binutils \
curl \
perl-module-carp \
perl-module-cwd \
perl-module-getopt-long \
perl-module-overloading \
perl-module-posix \
"
RDEPENDS:${PN} += "libtcmalloc-minimal (= ${EXTENDPKGV})"