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,76 @@
From 27e5595c065ce3af687818555a882ab5e1dfbc2b Mon Sep 17 00:00:00 2001
From: Mingli Yu <mingli.yu@windriver.com>
Date: Tue, 22 Nov 2022 18:48:27 +0800
Subject: [PATCH] tcl: update the header location
Lets install the include header and private header files into
usr/include/tcl8.6 when version of tcl is 8.6.x
Upstream-Status: Inappropriate [Configuration Specific]
Signed-off-by: Khem Raj <raj.khem@gmai.com>
Fixed the TCL_INCLUDE_SPEC
Also update the header location in tcl.pc to correct the header
location in case some package such python3 which use pkg-config
to detect tcl doesn't find the header.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
unix/Makefile.in | 2 +-
unix/configure.in | 4 ++--
unix/tcl.pc.in | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/unix/Makefile.in b/unix/Makefile.in
index 0b8179f..4824b28 100644
--- a/unix/Makefile.in
+++ b/unix/Makefile.in
@@ -57,7 +57,7 @@ SCRIPT_INSTALL_DIR = $(INSTALL_ROOT)$(TCL_LIBRARY)
MODULE_INSTALL_DIR = $(SCRIPT_INSTALL_DIR)/../tcl8
# Directory in which to install the include file tcl.h:
-INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(includedir)
+INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(includedir)/tcl$(VERSION)
# Path to the private tcl header dir:
PRIVATE_INCLUDE_DIR = @PRIVATE_INCLUDE_DIR@
diff --git a/unix/configure.in b/unix/configure.in
index 0354a0b..2d0c00f 100644
--- a/unix/configure.in
+++ b/unix/configure.in
@@ -774,7 +774,7 @@ eval "TCL_LIB_FILE=libtcl${LIB_SUFFIX}"
eval "TCL_LIB_FILE=${TCL_LIB_FILE}"
test -z "$TCL_LIBRARY" && TCL_LIBRARY='$(libdir)/tcl$(VERSION)'
-PRIVATE_INCLUDE_DIR='$(includedir)'
+PRIVATE_INCLUDE_DIR='$(includedir)/tcl$(VERSION)'
HTML_DIR='$(DISTDIR)/html'
# Note: in the following variable, it's important to use the absolute
@@ -895,7 +895,7 @@ TCL_BUILD_STUB_LIB_PATH="`pwd`/${TCL_STUB_LIB_FILE}"
TCL_STUB_LIB_PATH="${TCL_STUB_LIB_DIR}/${TCL_STUB_LIB_FILE}"
# Install time header dir can be set via --includedir
-eval "TCL_INCLUDE_SPEC=\"-I${includedir}\""
+eval "TCL_INCLUDE_SPEC=\"-I${includedir}/tcl${VERSION}\""
#------------------------------------------------------------------------
# tclConfig.sh refers to this by a different name
diff --git a/unix/tcl.pc.in b/unix/tcl.pc.in
index 93b5e69..dcd51d7 100644
--- a/unix/tcl.pc.in
+++ b/unix/tcl.pc.in
@@ -3,7 +3,7 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
-includedir=@includedir@
+includedir=@includedir@/tcl@PACKAGE_VERSION@
libfile=@TCL_LIB_FILE@
Name: Tool Command Language

View File

@@ -0,0 +1,39 @@
Upstream-Status: Inappropriate [embedded specific]
Fixes tcl target recipe build on old distros which have glibc older than 2.14
| + echo 'NOTE: make DESTDIR=/srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image install'
| NOTE: make DESTDIR=/srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image install
| + make DESTDIR=/srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image install
| Making directory /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image/usr/lib
| Installing message catalogs
| Making directory /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image/usr/share/man
| tclsh: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/tcl8.5.11/unix/libtcl8.5.so)
| Making directory /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image/usr/bin
| make: *** [install-msgs] Error 1
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2012/04/26
Index: unix/Makefile.in
===================================================================
--- a/unix.orig/Makefile.in 2013-11-10 23:38:01.787425628 -0800
+++ b/unix/Makefile.in 2013-11-10 23:37:59.807425578 -0800
@@ -686,7 +686,7 @@
# tcltest executable gets the build directory burned into its ld search path.
# This keeps tcltest from picking up an already installed version of the Tcl
# library.
-SHELL_ENV = @LD_LIBRARY_PATH_VAR@=`pwd`:${@LD_LIBRARY_PATH_VAR@} \
+SHELL_ENV = @LD_LIBRARY_PATH_VAR@=${@LD_LIBRARY_PATH_VAR@} \
TCLLIBPATH="@abs_builddir@/pkgs" \
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"
@@ -712,7 +712,7 @@
$(SHELL_ENV) ${TCLTEST_EXE} $(TOP_DIR)/tests/all.tcl $(TESTFLAGS)
gdb-test: ${TCLTEST_EXE}
- @echo "set env @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}" > gdb.run
+ @echo "set env @LD_LIBRARY_PATH_VAR@=$${@LD_LIBRARY_PATH_VAR@}" > gdb.run
@echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run
@echo "set args $(TOP_DIR)/tests/all.tcl $(TESTFLAGS) -singleproc 1" >> gdb.run
$(GDB) ${TCLTEST_EXE} --command=gdb.run

View File

@@ -0,0 +1,78 @@
From 8a6c77cdd265fe7ce35929f58f1ade0c6bc4025b Mon Sep 17 00:00:00 2001
From: Nitin A Kamble <nitin.a.kamble@intel.com>
Date: Fri, 13 Aug 2010 12:24:00 -0700
Subject: [PATCH] tcl: fix a build issue
Upstream-Status: Inappropriate [upstream does not support installed tests]
---
unix/Makefile.in | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/unix/Makefile.in b/unix/Makefile.in
index b110fe9..d7b35a8 100644
--- a/unix/Makefile.in
+++ b/unix/Makefile.in
@@ -814,23 +814,23 @@ tcltest-real:
test: test-tcl test-packages
test-tcl: ${TCLTEST_EXE}
- $(SHELL_ENV) ./${TCLTEST_EXE} $(TOP_DIR)/tests/all.tcl $(TESTFLAGS)
+ $(SHELL_ENV) ${TCLTEST_EXE} $(TOP_DIR)/tests/all.tcl $(TESTFLAGS)
gdb-test: ${TCLTEST_EXE}
@echo "set env @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}" > gdb.run
@echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run
@echo "set args $(TOP_DIR)/tests/all.tcl $(TESTFLAGS) -singleproc 1" >> gdb.run
- $(GDB) ./${TCLTEST_EXE} --command=gdb.run
+ $(GDB) ${TCLTEST_EXE} --command=gdb.run
rm gdb.run
# Useful target to launch a built tcltest with the proper path,...
runtest: ${TCLTEST_EXE}
- $(SHELL_ENV) ./${TCLTEST_EXE}
+ $(SHELL_ENV) ${TCLTEST_EXE}
# Useful target for running the test suite with an unwritable current
# directory...
ro-test: ${TCLTEST_EXE}
- echo 'exec chmod -w .;package require tcltest;tcltest::temporaryDirectory /tmp;source ../tests/all.tcl;exec chmod +w .' | $(SHELL_ENV) ./${TCLTEST_EXE}
+ echo 'exec chmod -w .;package require tcltest;tcltest::temporaryDirectory /tmp;source ../tests/all.tcl;exec chmod +w .' | $(SHELL_ENV) ${TCLTEST_EXE}
# The following target generates the shared libraries in dltest/ that are used
# for testing; they are included as part of the "tcltest" target (via the
@@ -848,28 +848,28 @@ dltest.marker: ${STUB_LIB_FILE}
# This target can be used to run tclsh from the build directory
# via `make shell SCRIPT=/tmp/foo.tcl`
shell: ${TCL_EXE}
- $(SHELL_ENV) ./${TCL_EXE} $(SCRIPT)
+ $(SHELL_ENV) ${TCL_EXE} $(SCRIPT)
# This target can be used to run tclsh inside either gdb or insight
gdb: ${TCL_EXE}
- $(SHELL_ENV) $(GDB) ./${TCL_EXE}
+ $(SHELL_ENV) $(GDB) ${TCL_EXE}
lldb: ${TCL_EXE}
$(SHELL_ENV) $(LLDB) ./${TCL_EXE}
valgrind: ${TCL_EXE} ${TCLTEST_EXE}
- $(SHELL_ENV) $(VALGRIND) $(VALGRINDARGS) ./${TCLTEST_EXE} \
+ $(SHELL_ENV) $(VALGRIND) $(VALGRINDARGS) ${TCLTEST_EXE} \
$(TOP_DIR)/tests/all.tcl -singleproc 1 -constraints valgrind \
$(TESTFLAGS)
valgrindshell: ${TCL_EXE}
- $(SHELL_ENV) $(VALGRIND) $(VALGRINDARGS) ./${TCL_EXE} $(SCRIPT)
+ $(SHELL_ENV) $(VALGRIND) $(VALGRINDARGS) ${TCL_EXE} $(SCRIPT)
trace-shell: ${TCL_EXE}
- $(SHELL_ENV) ${TRACE} $(TRACE_OPTS) ./${TCL_EXE} $(SCRIPT)
+ $(SHELL_ENV) ${TRACE} $(TRACE_OPTS) ${TCL_EXE} $(SCRIPT)
trace-test: ${TCLTEST_EXE}
- $(SHELL_ENV) ${TRACE} $(TRACE_OPTS) ./${TCLTEST_EXE} $(TOP_DIR)/tests/all.tcl -singleproc 1 $(TESTFLAGS)
+ $(SHELL_ENV) ${TRACE} $(TRACE_OPTS) ${TCLTEST_EXE} $(TOP_DIR)/tests/all.tcl -singleproc 1 $(TESTFLAGS)
#--------------------------------------------------------------------------
# Installation rules

View File

@@ -0,0 +1,32 @@
The interp-36.7 patch has race conditions and is missing cleanup. This patch by
a Tcl maintainer should improve matters.
Upstream-Status: Pending
Signed-off-by: Ross Burton <ross.burton@arm.com>
diff --git a/tests/interp.test b/tests/interp.test
index d7424847f..fc90990f3 100644
--- a/tests/interp.test
+++ b/tests/interp.test
@@ -3595,17 +3595,18 @@ test interp-36.7 {ChildBgerror sets error handler of child [1999035]} -setup {
variable result
set result [lindex $args 0]
}
+ set tout [after 5000 {set result timeout}]
} -body {
child eval {
variable done {}
after 0 error foo
- after 10 [list ::set [namespace which -variable done] {}]
- vwait [namespace which -variable done]
}
+ vwait result
set result
} -cleanup {
+ after cancel $tout
variable result {}
- unset -nocomplain result
+ unset -nocomplain result tout
interp delete child
} -result foo

View File

@@ -0,0 +1,31 @@
#!/bin/sh
# clock.test needs a timezone to be set
export TZ="Europe/London"
export TCL_LIBRARY=library
export ERROR_ON_FAILURES=1
# Some tests are overly strict with timings and fail on loaded systems.
SKIP=""
# 15321
SKIP="$SKIP async-\* event-\*"
# 14882
SKIP="$SKIP cmdMZ-6.6"
# 15081
SKIP="$SKIP exit-1.\*"
# 15407 15421
SKIP="$SKIP \*io-46.1"
# io-13.6 explicitly says it can fail on slow/loaded machines
SKIP="$SKIP io-13.6"
# 14825
SKIP="$SKIP socket-\* socket_inet-\*"
for i in tests/*.test; do
i=$(basename $i)
./tcltest tests/all.tcl -file $i -skip "$SKIP"
if [ $? -eq 0 ]; then
echo "PASS: $i"
else
echo "FAIL: $i"
fi
done

View File

@@ -0,0 +1,42 @@
From d6155ec08b355d64f1a7db407254d159037bb72a Mon Sep 17 00:00:00 2001
From: Richard Purdie <rpurdie@linux.intel.com>
Date: Wed, 9 Dec 2009 23:59:44 +0000
Subject: [PATCH] tcl: Add tcltk from OE.dev but with legacy staging function
Upstream-Status: Pending
---
unix/Makefile.in | 5 ++++-
unix/tcl.m4 | 3 +++
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/unix/Makefile.in b/unix/Makefile.in
index 398afd0..804532e 100644
--- a/unix/Makefile.in
+++ b/unix/Makefile.in
@@ -893,7 +893,10 @@ install-binaries: binaries
done
@echo "Installing $(LIB_FILE) to $(DLL_INSTALL_DIR)/"
@@INSTALL_LIB@
- @chmod 555 "$(DLL_INSTALL_DIR)/$(LIB_FILE)"
+ mv "$(DLL_INSTALL_DIR)"/$(LIB_FILE) "$(DLL_INSTALL_DIR)"/$(LIB_FILE).0
+ ln -sf $(LIB_FILE).0 "$(DLL_INSTALL_DIR)"/$(LIB_FILE)
+ ln -sf "$(DLL_INSTALL_DIR)"/$(LIB_FILE).0 ./
+ @chmod 555 "$(DLL_INSTALL_DIR)"/$(LIB_FILE).0
@echo "Installing ${TCL_EXE} as $(BIN_INSTALL_DIR)/tclsh$(VERSION)${EXE_SUFFIX}"
@$(INSTALL_PROGRAM) ${TCL_EXE} "$(BIN_INSTALL_DIR)/tclsh$(VERSION)${EXE_SUFFIX}"
@echo "Installing tclConfig.sh to $(CONFIG_INSTALL_DIR)/"
diff --git a/unix/tcl.m4 b/unix/tcl.m4
index f3d08ec..797c93f 100644
--- a/unix/tcl.m4
+++ b/unix/tcl.m4
@@ -1382,6 +1382,9 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
# get rid of the warnings.
#CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES"
+ # following line added by CW for Debian GNU/Linux
+ TCL_SHLIB_LD_EXTRAS="-Wl,-soname,\${TCL_LIB_FILE}.0"
+
SHLIB_LD='${CC} ${CFLAGS} ${LDFLAGS} -shared'
DL_OBJS="tclLoadDl.o"
DL_LIBS="-ldl"

View File

@@ -0,0 +1,32 @@
From 6efc98774681795712073c2b91e5e9d1763239b8 Mon Sep 17 00:00:00 2001
From: "Song.Li" <Song.Li@windriver.com>
Date: Wed, 1 Aug 2012 19:05:51 +0800
Subject: [PATCH] tcl:install tcl to lib64 instead of lib on 64bit target
Remove hardcoded library install path. Change $(prefix)/lib/ to ${libdir}.
[YOCTO #2876]
Upstream-Status: Pending
Signed-off-by: Song.Li <Song.Li@windriver.com>
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
---
configure | 2 +-
configure.in | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
Index: unix/configure.in
===================================================================
--- a/unix.orig/configure.in 2013-11-10 23:20:50.000000000 -0800
+++ b/unix/configure.in 2013-11-10 23:39:41.199428131 -0800
@@ -790,7 +790,7 @@
eval "TCL_LIB_FILE=${TCL_LIB_FILE}"
-test -z "$TCL_LIBRARY" && TCL_LIBRARY='$(prefix)/lib/tcl$(VERSION)'
+test -z "$TCL_LIBRARY" && TCL_LIBRARY='$(libdir)/tcl$(VERSION)'
PRIVATE_INCLUDE_DIR='$(includedir)'
HTML_DIR='$(DISTDIR)/html'

View File

@@ -0,0 +1,111 @@
SUMMARY = "Tool Command Language"
HOMEPAGE = "http://tcl.sourceforge.net"
DESCRIPTION = "Tool Command Language, is an open-source multi-purpose C library which includes a powerful dynamic scripting language. Together they provide ideal cross-platform development environment for any programming project."
SECTION = "devel/tcltk"
# http://www.tcl.tk/software/tcltk/license.html
LICENSE = "TCL & BSD-3-Clause"
LIC_FILES_CHKSUM = "file://license.terms;md5=058f6229798281bbcac4239c788cfa38 \
file://compat/license.terms;md5=058f6229798281bbcac4239c788cfa38 \
file://library/license.terms;md5=058f6229798281bbcac4239c788cfa38 \
file://macosx/license.terms;md5=058f6229798281bbcac4239c788cfa38 \
file://tests/license.terms;md5=058f6229798281bbcac4239c788cfa38 \
file://win/license.terms;md5=058f6229798281bbcac4239c788cfa38 \
"
DEPENDS = "tcl-native zlib"
BASE_SRC_URI = "${SOURCEFORGE_MIRROR}/tcl/tcl-core${PV}-src.tar.gz \
file://tcl-add-soname.patch"
SRC_URI = "${BASE_SRC_URI} \
file://fix_non_native_build_issue.patch \
file://fix_issue_with_old_distro_glibc.patch \
file://tcl-remove-hardcoded-install-path.patch \
file://alter-includedir.patch \
file://interp.patch \
file://run-ptest \
"
SRC_URI[sha256sum] = "c61f0d6699e2bc7691f119b41963aaa8dc980f23532c4e937739832a5f4a6642"
SRC_URI:class-native = "${BASE_SRC_URI}"
UPSTREAM_CHECK_URI = "https://www.tcl.tk/software/tcltk/download.html"
UPSTREAM_CHECK_REGEX = "tcl(?P<pver>\d+(\.\d+)+)-src"
S = "${WORKDIR}/${BPN}${PV}"
VER = "${PV}"
inherit autotools ptest binconfig
AUTOTOOLS_SCRIPT_PATH = "${S}/unix"
EXTRA_OECONF = "--enable-threads --disable-rpath --enable-man-suffix"
# Prevent installing copy of tzdata based on tzdata installation on the build host
# It doesn't install tzdata if one of the following files exist on the host:
# /usr/share/zoneinfo/UTC /usr/share/zoneinfo/GMT /usr/share/lib/zoneinfo/UTC /usr/share/lib/zoneinfo/GMT /usr/lib/zoneinfo/UTC /usr/lib/zoneinfo/GMT
# otherwise "/usr/lib/tcl8.6/tzdata" is included in tcl package
EXTRA_OECONF += "--with-tzdata=no"
do_install() {
autotools_do_install
oe_runmake 'DESTDIR=${D}' install-private-headers
ln -sf ./tclsh${VER} ${D}${bindir}/tclsh
ln -sf tclsh8.6 ${D}${bindir}/tclsh${VER}
sed -i "s;-L${B};-L${STAGING_LIBDIR};g" tclConfig.sh
sed -i "s;'${WORKDIR};'${STAGING_INCDIR};g" tclConfig.sh
install -d ${D}${bindir_crossscripts}
install -m 0755 tclConfig.sh ${D}${bindir_crossscripts}
install -m 0755 tclConfig.sh ${D}${libdir}
for dir in compat generic unix; do
install -d ${D}${includedir}/${BPN}${VER}/$dir
install -m 0644 ${S}/$dir/*.h ${D}${includedir}/${BPN}${VER}/$dir/
done
}
SYSROOT_DIRS += "${bindir_crossscripts}"
PACKAGES =+ "tcl-lib"
FILES:tcl-lib = "${libdir}/libtcl8.6.so.*"
FILES:${PN} += "${libdir}/tcl${VER} ${libdir}/tcl8.6 ${libdir}/tcl8"
FILES:${PN}-dev += "${libdir}/tclConfig.sh ${libdir}/tclooConfig.sh"
# isn't getting picked up by shlibs code
RDEPENDS:${PN} += "tcl-lib"
RDEPENDS:${PN}-ptest += "libgcc"
BBCLASSEXTEND = "native nativesdk"
do_compile_ptest() {
oe_runmake tcltest
}
do_install_ptest() {
cp ${B}/tcltest ${D}${PTEST_PATH}
cp -r ${S}/library ${D}${PTEST_PATH}
cp -r ${S}/tests ${D}${PTEST_PATH}
}
do_install_ptest:append:libc-musl () {
# Assumes locales other than provided by musl-locales
sed -i '/SKIP="$SKIP socket.*$/a # unixInit-3* is suppressed due to hardcoded locale assumptions\nSKIP="$SKIP unixInit-3\\\*"' ${D}${PTEST_PATH}/run-ptest
}
# Fix some paths that might be used by Tcl extensions
BINCONFIG_GLOB = "*Config.sh"
# Fix the path in sstate
SSTATE_SCAN_FILES += "*Config.sh"
# Cleanup host path from ${libdir}/tclConfig.sh and remove the
# ${bindir_crossscripts}/tclConfig.sh from target
PACKAGE_PREPROCESS_FUNCS += "tcl_package_preprocess"
tcl_package_preprocess() {
sed -i -e "s;${DEBUG_PREFIX_MAP};;g" \
-e "s;-L${STAGING_LIBDIR};-L${libdir};g" \
-e "s;${STAGING_INCDIR};${includedir};g" \
-e "s;--sysroot=${RECIPE_SYSROOT};;g" \
${PKGD}${libdir}/tclConfig.sh
rm -f ${PKGD}${bindir_crossscripts}/tclConfig.sh
}