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,43 @@
# Fixup for the libubootenv which rely on uboot-config class for no good reason.
#
# This is not intended to be permanent but we need to get the integration
# working and there is no good solution for now so we are adding this in a
# non-intrusive way and using the `IMX_DEFAULT_BOOTLOADER` as a guard to do any
# code execution.
def fixup_uboot_config_dependency(d):
ubootmachine = d.getVar("UBOOT_MACHINE")
ubootconfig = (d.getVar('UBOOT_CONFIG') or "").split()
imx_default_bootloader = d.get('IMX_DEFAULT_BOOTLOADER')
if not ubootmachine and not ubootconfig and imx_default_bootloader:
# FIXME: We need to provide the UBOOT_MACHINE or UBOOT_CONFIG to allow libubootenv to
# build. This is caused by the commit below:
#
# ,----[ libubootenv change ]
# | commit 10aa1291979fb90bed1beb49be4d406ed0e1e4d5 ┃
# | ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━
# | Author: Ming Liu <liu.ming50@gmail.com>
# | Date: Tue Aug 25 20:08:01 2020 +0200
# |
# | libubootenv: inherit uboot-config
# |
# | This mainly aims to involve in the sanity check of UBOOT_CONFIG and
# | UBOOT_MACHINE, it will throw a error message at recipe parsing time if
# | neither of them is set, and libubootenv would be skipped.
# |
# | Signed-off-by: Ming Liu <liu.ming50@gmail.com>
# | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
# `----
ubootmachine = d.getVar("UBOOT_MACHINE:pn-%s" % imx_default_bootloader)
ubootconfig = (d.getVar("UBOOT_CONFIG:pn-%s" % imx_default_bootloader) or "").split()
d.setVar("UBOOT_CONFIG", ubootconfig)
d.setVar("UBOOT_MACHINE", ubootmachine)
python fixup_uboot_config_dependency_handler() {
fixup_uboot_config_dependency(d)
}
fixup_uboot_config_dependency_handler[eventmask] = "bb.event.RecipePreFinalise"
addhandler fixup_uboot_config_dependency_handler

View File

@@ -0,0 +1,20 @@
# Copyright (C) 2012-2022 O.S. Systems Software LTDA.
# Released under the MIT license (see COPYING.MIT for the terms)
inherit fsl-u-boot-localversion
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://Licenses/README;md5=2ca5f2c35c8cc335f0a19756634782f1"
DEPENDS += "flex-native bison-native"
SRC_URI = "git://github.com/Freescale/u-boot-fslc.git;branch=${SRCBRANCH};protocol=https"
SRCREV = "aa4bc52d08c342df83e3c576e2c108d7c8816e0e"
SRCBRANCH = "2025.01+fslc"
PV = "2025.01+fslc+git${SRCPV}"
CVE_PRODUCT = "denx:u-boot"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"

View File

@@ -0,0 +1,42 @@
require u-boot-fslc-common_${PV}.inc
DESCRIPTION = "U-boot bootloader mxsboot tool"
SECTION = "bootloader"
inherit python3native
DEPENDS += " \
bison-native \
dtc \
gnutls \
openssl \
python3-setuptools-native \
swig-native \
util-linux-libuuid \
"
PROVIDES = "u-boot-mxsboot"
EXTRA_OEMAKE:class-target = 'CROSS_COMPILE="${TARGET_PREFIX}" CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1 CONFIG_MX28=y'
EXTRA_OEMAKE:class-native = 'CC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1 CONFIG_MX28=y'
EXTRA_OEMAKE:class-nativesdk = 'CROSS_COMPILE="${HOST_PREFIX}" CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1 CONFIG_MX28=y'
do_compile () {
oe_runmake -C ${S} O=${B} tools-only_defconfig
# Disable CONFIG_CMD_LICENSE, license.h is not used by tools and
# generating it requires bin2header tool, which for target build
# is built with target tools and thus cannot be executed on host.
sed -i "s/CONFIG_CMD_LICENSE=.*/# CONFIG_CMD_LICENSE is not set/" .config
oe_runmake -C ${S} O=${B} cross_tools NO_SDL=1
}
do_install () {
install -Dm 0755 tools/mxsboot ${D}${bindir}/uboot-mxsboot
ln -sf uboot-mxsboot ${D}${bindir}/mxsboot
}
COMPATIBLE_MACHINE:class-target = "(mxs-generic-bsp)"
BBCLASSEXTEND = "native nativesdk"

View File

@@ -0,0 +1,26 @@
require recipes-bsp/u-boot/u-boot.inc
require u-boot-fslc-common_${PV}.inc
DESCRIPTION = "U-Boot based on mainline U-Boot used by FSL Community BSP in \
order to provide support for some backported features and fixes, or because it \
was submitted for revision and it takes some time to become part of a stable \
version, or because it is not applicable for upstreaming."
DEPENDS += "bc-native dtc-native python3-setuptools-native gnutls-native"
PROVIDES += "u-boot u-boot-mfgtool"
B = "${WORKDIR}/build"
# FIXME: Allow linking of 'tools' binaries with native libraries
# used for generating the boot logo and other tools used
# during the build process.
EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CPPFLAGS}" \
HOSTLDFLAGS="${BUILD_LDFLAGS}" \
HOSTSTRIP=true'
inherit ${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') == '1', 'imx-boot-container', '')}
inherit uuu_bootloader_tag
PACKAGE_ARCH = "${MACHINE_ARCH}"
COMPATIBLE_MACHINE = "(imx-generic-bsp)"

View File

@@ -0,0 +1,26 @@
DESCRIPTION = "i.MX U-Boot suppporting i.MX reference boards."
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "git://github.com/nxp-imx/uboot-imx.git;protocol=https;branch=${SRCBRANCH}"
SRCBRANCH = "lf_v2024.04"
LOCALVERSION ?= "-imx_v2024.04_6.6.52-2.2.0"
SRCREV = "6c4545203d123c246c5d7995f2893959506d28e0"
CVE_PRODUCT = "nxp:uboot_secondary_program_loader denx:u-boot"
DEPENDS += " \
bc-native \
bison-native \
dtc-native \
flex-native \
gnutls-native \
xxd-native \
"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
inherit fsl-u-boot-localversion
BOOT_TOOLS = "imx-boot-tools"

View File

@@ -0,0 +1,66 @@
# Copyright (C) 2013-2016 Freescale Semiconductor
# Copyright 2018 (C) O.S. Systems Software LTDA.
# Copyright (C) 2017-2024 NXP
require recipes-bsp/u-boot/u-boot.inc
require u-boot-imx-common_${PV}.inc
PROVIDES += "u-boot u-boot-mfgtool"
inherit uuu_bootloader_tag
# The UUU tag goes on the boot partition. For 8+, the boot partition image
# is imx-boot, so disable UUU-tagging here
UUU_BOOTLOADER:mx8-generic-bsp = ""
UUU_BOOTLOADER:mx9-generic-bsp = ""
do_deploy:append:mx8m-generic-bsp() {
# Deploy u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]
then
for config in ${UBOOT_MACHINE}; do
i=$(expr $i + 1);
for type in ${UBOOT_CONFIG}; do
j=$(expr $j + 1);
if [ $j -eq $i ]
then
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${B}/${config}/u-boot-nodtb.bin ${DEPLOYDIR}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${type}
UBOOT_DTB_NAME_FLAGS="${type}:${UBOOT_DTB_NAME}"
for key_value in ${UBOOT_DTB_NAME_FLAGS}; do
local type_key="${key_value%%:*}"
local dtb_name="${key_value#*:}"
if [ "$type_key" = "$type" ]
then
bbnote "UBOOT_CONFIG = $type, UBOOT_DTB_NAME = $dtb_name"
# There is only one ${dtb_name}, the first one. All the other are with the type appended
if [ ! -f "${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}" ]; then
install -m 0644 ${B}/${config}/arch/arm/dts/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}
else
bbwarn "Use custom wks.in for $dtb_name = $type"
fi
install -m 0644 ${B}/${config}/arch/arm/dts/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}-${type}
fi
unset type_key
unset dtb_name
done
unset UBOOT_DTB_NAME_FLAGS
fi
done
unset j
done
unset i
fi
# Deploy CRT.* from u-boot for stmm
install -m 0644 ${S}/CRT.* ${DEPLOYDIR}
}
do_deploy:append:mx93-generic-bsp() {
# Deploy CRT.* from u-boot for stmm
install -m 0644 ${S}/CRT.* ${DEPLOYDIR}
}
PACKAGE_ARCH = "${MACHINE_ARCH}"
COMPATIBLE_MACHINE = "(mx6-generic-bsp|mx7-generic-bsp|mx8-generic-bsp|mx9-generic-bsp)"

View File

@@ -0,0 +1,98 @@
require recipes-bsp/u-boot/u-boot.inc
DESCRIPTION = "U-Boot provided by Freescale with focus on QorIQ boards"
PROVIDES += "u-boot"
inherit fsl-u-boot-localversion
LICENSE = "GPL-2.0-only & BSD-3-Clause & BSD-2-Clause & LGPL-2.0-only & LGPL-2.1-only"
LIC_FILES_CHKSUM = " \
file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://Licenses/bsd-2-clause.txt;md5=6a31f076f5773aabd8ff86191ad6fdd5 \
file://Licenses/bsd-3-clause.txt;md5=4a1190eac56a9db675d58ebe86eaf50c \
file://Licenses/lgpl-2.0.txt;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
file://Licenses/lgpl-2.1.txt;md5=4fbd65380cdd255951079008b364516c \
"
SRC_URI = "git://github.com/nxp-qoriq/u-boot;protocol=https;nobranch=1"
SRCREV= "1c0116f3da250c5a52858c53efb8b38c0963f477"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
PV:append = "+fslgit"
LOCALVERSION = "+fsl"
INHIBIT_DEFAULT_DEPS = "1"
DEPENDS = "libgcc virtual/${TARGET_PREFIX}gcc bison-native bc-native swig-native python3-native python3-setuptools-native"
DEPENDS:append:qoriq-arm64 = " dtc-native"
DEPENDS:append:qoriq-arm = " dtc-native"
DEPENDS:append:qoriq-ppc = " boot-format-native"
python () {
if d.getVar("TCMODE") == "external-fsl":
return
ml = d.getVar("MULTILIB_VARIANTS")
arch = d.getVar("OVERRIDES")
if "e5500-64b:" in arch or "e6500-64b:" in arch:
if not "lib32" in ml:
raise bb.parse.SkipPackage("Building the u-boot for this arch requires multilib to be enabled")
sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib32-linux'
sys_original = d.getVar('TARGET_VENDOR') + '-' + d.getVar('TARGET_OS')
workdir = d.getVar('WORKDIR')
d.setVar('DEPENDS:append', ' lib32-gcc-cross-powerpc lib32-libgcc')
d.setVar('PATH:append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/powerpc' + sys_multilib)
d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir + '/lib32-recipe-sysroot')
d.setVar("WRAP_TARGET_PREFIX", 'powerpc' + sys_multilib + '-')
elif "fsl-lsch2-32b:" in arch:
if not "lib64" in ml:
raise bb.parse.SkipRecipe("Building the u-boot for this arch requires multilib to be enabled")
sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib64-linux'
sys_original = d.getVar('TARGET_VENDOR') + '-' + d.getVar('TARGET_OS')
workdir = d.getVar('WORKDIR')
d.setVar('DEPENDS:append', ' lib64-gcc-cross-aarch64 lib64-libgcc')
d.setVar('PATH:append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/aarch64' + sys_multilib)
d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir + '/lib64-recipe-sysroot')
d.setVar("WRAP_TARGET_PREFIX", 'aarch64' + sys_multilib + '-')
}
LE_UBOOT_FOR_ARMBE_TARGET ?= "0"
ENDIANNESS_GCC = "${@bb.utils.contains("LE_UBOOT_FOR_ARMBE_TARGET", "1", "-mlittle-endian", "", d)}"
ENDIANNESS_LD = "${@bb.utils.contains("LE_UBOOT_FOR_ARMBE_TARGET", "1", "-EL", "", d)}"
WRAP_TARGET_PREFIX ?= "${TARGET_PREFIX}"
EXTRA_OEMAKE = 'CROSS_COMPILE=${WRAP_TARGET_PREFIX} CC="${WRAP_TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS} ${ENDIANNESS_GCC}" LD="${WRAP_TARGET_PREFIX}ld ${ENDIANNESS_LD}" V=1'
EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"'
EXTRA_OEMAKE += 'STAGING_INCDIR=${STAGING_INCDIR_NATIVE} STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'
do_compile:append:qoriq() {
unset i j k
for config in ${UBOOT_MACHINE}; do
i=`expr $i + 1`;
for type in ${UBOOT_CONFIG}; do
j=`expr $j + 1`;
for binary in ${UBOOT_BINARIES}; do
k=`expr $k + 1`
if [ $j -eq $i ] && [ $k -eq $i ]; then
if [ -n "${BOOTFORMAT_CONFIG}" ] && echo "${type}" |grep -q spi;then
# regenerate spi binary if BOOTFORMAT_CONFIG is set
boot_format ${STAGING_DATADIR_NATIVE}/boot_format/${BOOTFORMAT_CONFIG} \
${config}/u-boot-${type}.${UBOOT_SUFFIX} -spi ${config}/u-boot.format.bin
cp ${config}/u-boot.format.bin ${config}/u-boot-${type}.${UBOOT_SUFFIX}
elif [ "qspi" = "${type}" ];then
cp ${config}/${binary} ${config}/u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX}
fi
fi
done
unset k
done
unset j
done
unset i
}
PACKAGES += "${PN}-images"
FILES:${PN}-images += "/boot"
COMPATIBLE_MACHINE = "(qoriq)"