Initial commit

This commit is contained in:
Your Name
2026-04-23 17:07:55 +08:00
commit b7e39e063b
16725 changed files with 1625565 additions and 0 deletions
@@ -0,0 +1,28 @@
From 26206005dacd61380663bb4fd9b18178bb33665b Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Sat, 24 Oct 2020 21:59:27 +0200
Subject: [PATCH] update-alternatives: correctly match priority
It should always be at the end of string, otherwise something
like "/usr/bin/python3.9-config 123" will erroneously match
against priority 9.
Upstream-Status: Submitted
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
update-alternatives | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/update-alternatives b/update-alternatives
index 1389b3f..e0b31bf 100644
--- a/update-alternatives
+++ b/update-alternatives
@@ -94,7 +94,7 @@ add_alt() {
local path="$2"
local priority="$3"
remove_alt $name $path
- if grep -qw "$priority" $ad/$name; then
+ if grep -qw "$priority"$ $ad/$name; then
echo "Warn: update-alternatives: $name has multiple providers with the same priority, please check $ad/$name for details"
fi
echo "$path $priority" >> $ad/$name
@@ -0,0 +1,65 @@
SUMMARY = "Additional utilities for the opkg package manager"
SUMMARY:update-alternatives-opkg = "Utility for managing the alternatives system"
SECTION = "base"
HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
file://opkg.py;beginline=2;endline=18;md5=ffa11ff3c15eb31c6a7ceaa00cc9f986"
PROVIDES += "${@bb.utils.contains('PACKAGECONFIG', 'update-alternatives', 'virtual/update-alternatives', '', d)}"
SRC_URI = "git://git.yoctoproject.org/opkg-utils;protocol=https;branch=master \
file://0001-update-alternatives-correctly-match-priority.patch \
"
SRCREV = "67994e62dc598282830385da75ba9b1abbbda941"
S = "${WORKDIR}/git"
TARGET_CC_ARCH += "${LDFLAGS}"
RDEPENDS:${PN} += "bash"
inherit perlnative
# For native builds we use the host Python
PYTHONRDEPS = "python3 python3-shell python3-io python3-math python3-crypt python3-logging python3-fcntl python3-pickle python3-compression python3-stringold"
PYTHONRDEPS:class-native = ""
PACKAGECONFIG = "python update-alternatives"
PACKAGECONFIG[python] = ",,,${PYTHONRDEPS}"
PACKAGECONFIG[update-alternatives] = ",,,"
do_install() {
oe_runmake PREFIX=${prefix} DESTDIR=${D} install
if ! ${@bb.utils.contains('PACKAGECONFIG', 'update-alternatives', 'true', 'false', d)}; then
rm -f "${D}${bindir}/update-alternatives"
fi
}
do_install:append:class-target() {
if ! ${@bb.utils.contains('PACKAGECONFIG', 'python', 'true', 'false', d)}; then
grep -lZ "/usr/bin/env.*python" ${D}${bindir}/* | xargs -0 rm
fi
if [ -e "${D}${bindir}/update-alternatives" ]; then
sed -i ${D}${bindir}/update-alternatives -e 's,/usr/bin,${bindir},g; s,/usr/lib,${nonarch_libdir},g'
fi
}
# These are empty and will pull python3-dev into images where it wouldn't
# have been otherwise, so don't generate them.
PACKAGES:remove = "${PN}-dev ${PN}-staticdev"
PACKAGES =+ "update-alternatives-opkg"
FILES:update-alternatives-opkg = "${bindir}/update-alternatives"
RPROVIDES:update-alternatives-opkg = "update-alternatives update-alternatives-cworth"
RREPLACES:update-alternatives-opkg = "update-alternatives-cworth"
RCONFLICTS:update-alternatives-opkg = "update-alternatives-cworth"
pkg_postrm:update-alternatives-opkg() {
rm -rf $D${nonarch_libdir}/opkg/alternatives
rmdir $D${nonarch_libdir}/opkg || true
}
BBCLASSEXTEND = "native nativesdk"
CLEANBROKEN = "1"