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,47 @@
|
||||
Upstream-Status: Inappropriate [OE-Specific]
|
||||
|
||||
Make install tries to perform install for all variants, but some of them use the same
|
||||
name for crt0 in specific, so performing all of them results in an error during
|
||||
do_install, we simply modify the name of the objects so the installation can proceed
|
||||
and leave it to the user to select which object files to use.
|
||||
|
||||
|
||||
01/2023: Rebased for libgloss 4.3.0
|
||||
|
||||
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
|
||||
|
||||
|
||||
Index: git/libgloss/rs6000/Makefile.in
|
||||
===================================================================
|
||||
--- git.orig/libgloss/rs6000/Makefile.in
|
||||
+++ git/libgloss/rs6000/Makefile.in
|
||||
@@ -362,7 +362,7 @@ install-sim:
|
||||
|
||||
install-mvme:
|
||||
${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
|
||||
- set -e; for x in ${MVME_CRT0} ${MVME_BSP} ${MVME_SCRIPTS}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
|
||||
+ set -e; for x in ${MVME_CRT0} ${MVME_BSP} ${MVME_SCRIPTS}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/mvme-$$x; done
|
||||
|
||||
install-solaris:
|
||||
${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
|
||||
@@ -374,17 +374,17 @@ install-linux:
|
||||
|
||||
install-yellowknife:
|
||||
${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
|
||||
- set -e; for x in ${YELLOWKNIFE_CRT0} ${YELLOWKNIFE_BSP}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
|
||||
+ set -e; for x in ${YELLOWKNIFE_CRT0} ${YELLOWKNIFE_BSP}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/yellowknife-$$x; done
|
||||
set -e; for x in ${YELLOWKNIFE_SCRIPTS}; do ${INSTALL_DATA} $(srcdir)/$$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
|
||||
|
||||
install-ads:
|
||||
${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
|
||||
- set -e; for x in ${ADS_CRT0} ${ADS_BSP}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
|
||||
+ set -e; for x in ${ADS_CRT0} ${ADS_BSP}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/ads-$$x; done
|
||||
set -e; for x in ${ADS_SCRIPTS}; do ${INSTALL_DATA} $(srcdir)/$$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
|
||||
|
||||
install-mbx:
|
||||
${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
|
||||
- set -e; for x in ${MBX_CRT0} ${MBX_BSP}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
|
||||
+ set -e; for x in ${MBX_CRT0} ${MBX_BSP}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/mbx-$$x; done
|
||||
set -e; for x in ${MBX_SCRIPTS} ${MBX_SPECS}; do ${INSTALL_DATA} $(srcdir)/$$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
|
||||
|
||||
install-xil:
|
||||
@@ -0,0 +1,30 @@
|
||||
Upstream-Status: Inappropriate [OE-Specific]
|
||||
|
||||
Since commit e0c0ad82 libgloss started passing the -nostdinc to CC.
|
||||
|
||||
They dont want to build against C library headers that are already in
|
||||
the system to avoid pollution, however, we purposely build libgloss
|
||||
against the newly built newlib C library, thats why we keep newlib
|
||||
and libgloss in separate recipes and create a dependency between them.
|
||||
|
||||
This causes an issue where bitbake stops finding newlib headers while
|
||||
libgloss is being built.
|
||||
|
||||
Do not pass -nostdinc to CC to maintain current behavior of
|
||||
TCLIBC=newlib
|
||||
|
||||
|
||||
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
|
||||
Index: newlib-3.0.0/libgloss/configure
|
||||
===================================================================
|
||||
--- newlib-3.0.0.orig/libgloss/configure
|
||||
+++ newlib-3.0.0/libgloss/configure
|
||||
@@ -5106,7 +5106,7 @@ fi
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_compiler_isystem" >&5
|
||||
$as_echo "$libc_cv_compiler_isystem" >&6; }
|
||||
-CC="$CC -nostdinc $libc_cv_compiler_isystem"
|
||||
+CC="$CC $libc_cv_compiler_isystem"
|
||||
|
||||
host_makefile_frag_path=$host_makefile_frag
|
||||
|
||||
35
sources/poky/meta/recipes-core/newlib/libgloss_git.bb
Normal file
35
sources/poky/meta/recipes-core/newlib/libgloss_git.bb
Normal file
@@ -0,0 +1,35 @@
|
||||
require newlib.inc
|
||||
|
||||
DEPENDS += "newlib"
|
||||
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/libgloss:"
|
||||
|
||||
SRC_URI:append = " file://libgloss-build-without-nostdinc.patch"
|
||||
SRC_URI:append:powerpc = " file://fix-rs6000-crt0.patch"
|
||||
|
||||
do_configure() {
|
||||
${S}/libgloss/configure ${EXTRA_OECONF}
|
||||
}
|
||||
|
||||
do_install:prepend() {
|
||||
# install doesn't create this itself, avoid install error
|
||||
install -d ${D}${prefix}/${TARGET_SYS}/lib
|
||||
}
|
||||
|
||||
do_install:append() {
|
||||
# Move libs to default directories so they can be picked up later
|
||||
install -d ${D}${libdir}
|
||||
mv -v ${D}${prefix}/${TARGET_SYS}/lib/* ${D}${libdir}
|
||||
|
||||
# Remove original directory
|
||||
rmdir -p --ignore-fail-on-non-empty ${D}${prefix}/${TARGET_SYS}/lib
|
||||
}
|
||||
|
||||
# Split packages correctly
|
||||
FILES:${PN} += "${libdir}/*.ld ${libdir}/*.specs"
|
||||
FILES:${PN}-dev += "${libdir}/cpu-init/*"
|
||||
# RiscV installation moved the syscall header to this location
|
||||
FILES:${PN}-dev += "${prefix}/${TARGET_SYS}/include/machine/*.h"
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
61
sources/poky/meta/recipes-core/newlib/newlib.inc
Normal file
61
sources/poky/meta/recipes-core/newlib/newlib.inc
Normal file
@@ -0,0 +1,61 @@
|
||||
SUMMARY = "Newlib is a C library intended for use on embedded systems"
|
||||
HOMEPAGE = "https://sourceware.org/newlib/"
|
||||
DESCRIPTION = "C library intended for use on embedded systems. It is a conglomeration of several library parts, all under free software licenses that make them easily usable on embedded products."
|
||||
SECTION = "libs"
|
||||
|
||||
LICENSE = "GPL-2.0-only & LGPL-3.0-only & GPL-3.0-only & LGPL-2.0-only & BSD-2-Clause & BSD-3-Clause & TCL & Apache-2.0-with-LLVM-exception"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
|
||||
file://COPYING3.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \
|
||||
file://COPYING3;md5=d32239bcb673463ab874e80d47fae504 \
|
||||
file://COPYING.LIBGLOSS;md5=c0469b6ebb847a75781066be515f032d \
|
||||
file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
|
||||
file://COPYING.NEWLIB;md5=4f1a15846ffee91e352418563e1bce27 \
|
||||
file://newlib/libc/posix/COPYRIGHT;md5=103468ff1982be840fdf4ee9f8b51bbf \
|
||||
"
|
||||
|
||||
BASEVER = "4.4.0"
|
||||
PV = "${BASEVER}+git"
|
||||
SRC_URI = "git://sourceware.org/git/newlib-cygwin.git;protocol=https;branch=main"
|
||||
SRCREV="ad11e2587f83d61357a32c61c36d72ea4f39315e"
|
||||
|
||||
INHIBIT_DEFAULT_DEPS = "1"
|
||||
DEPENDS = "virtual/${TARGET_PREFIX}gcc"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
B = "${WORKDIR}/build"
|
||||
|
||||
## disable stdlib
|
||||
TARGET_CC_ARCH:append = " -nostdlib"
|
||||
|
||||
EXTRA_OECONF = " \
|
||||
--build=${BUILD_SYS} \
|
||||
--target=${TARGET_SYS} \
|
||||
--host=${HOST_SYS} \
|
||||
--prefix=${prefix} \
|
||||
--exec-prefix=${exec_prefix} \
|
||||
--bindir=${bindir} \
|
||||
--libdir=${libdir} \
|
||||
--includedir=${includedir} \
|
||||
--enable-languages=c \
|
||||
--with-newlib \
|
||||
--with-gnu-as \
|
||||
--with-gnu-ld \
|
||||
--disable-multilib \
|
||||
--disable-newlib-supplied-syscalls \
|
||||
"
|
||||
|
||||
do_configure[cleandirs] = "${B}"
|
||||
|
||||
# We need a dummy limits.h to pass preprocessor checks
|
||||
do_configure:append(){
|
||||
install -d ${STAGING_INCDIR}
|
||||
touch ${STAGING_INCDIR}/limits.h
|
||||
}
|
||||
|
||||
do_install() {
|
||||
oe_runmake install DESTDIR='${D}'
|
||||
}
|
||||
|
||||
COMPATIBLE_HOST:libc-musl:class-target = "null"
|
||||
COMPATIBLE_HOST:libc-glibc:class-target = "null"
|
||||
20
sources/poky/meta/recipes-core/newlib/newlib_git.bb
Normal file
20
sources/poky/meta/recipes-core/newlib/newlib_git.bb
Normal file
@@ -0,0 +1,20 @@
|
||||
require newlib.inc
|
||||
|
||||
PROVIDES += "virtual/libc virtual/libiconv virtual/libintl"
|
||||
|
||||
do_configure() {
|
||||
export CC_FOR_TARGET="${CC}"
|
||||
${S}/configure ${EXTRA_OECONF}
|
||||
}
|
||||
|
||||
do_install:append() {
|
||||
# Move include files and libs to default directories so they can be picked up later
|
||||
mv -v ${D}${prefix}/${TARGET_SYS}/lib ${D}${libdir}
|
||||
mv -v ${D}${prefix}/${TARGET_SYS}/include ${D}${includedir}
|
||||
|
||||
# Remove original directory
|
||||
rmdir ${D}${prefix}/${TARGET_SYS}
|
||||
}
|
||||
|
||||
# No rpm package is actually created but -dev depends on it, avoid dnf error
|
||||
DEV_PKG_DEPENDENCY:libc-newlib = ""
|
||||
Reference in New Issue
Block a user