blob: b27e3ded33b6f993d6022336c000a3401ead3699 [file] [log] [blame]
Andrew Geissler595f6302022-01-24 19:11:47 +00001SUMMARY = "Additional utilities for the opkg package manager"
2SUMMARY:update-alternatives-opkg = "Utility for managing the alternatives system"
3SECTION = "base"
4HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils"
Andrew Geissler7e0e3c02022-02-25 20:34:39 +00005LICENSE = "GPL-2.0-or-later"
Andrew Geissler595f6302022-01-24 19:11:47 +00006LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
7 file://opkg.py;beginline=2;endline=18;md5=ffa11ff3c15eb31c6a7ceaa00cc9f986"
8PROVIDES += "${@bb.utils.contains('PACKAGECONFIG', 'update-alternatives', 'virtual/update-alternatives', '', d)}"
9
Patrick Williams2390b1b2022-11-03 13:47:49 -050010SRC_URI = "git://git.yoctoproject.org/opkg-utils;protocol=https;branch=master \
Andrew Geissler595f6302022-01-24 19:11:47 +000011 file://0001-update-alternatives-correctly-match-priority.patch \
12 "
Patrick Williams2390b1b2022-11-03 13:47:49 -050013SRCREV = "9239541f14a2529b9d01c0a253ab11afa2822dab"
Andrew Geissler595f6302022-01-24 19:11:47 +000014
Patrick Williams2390b1b2022-11-03 13:47:49 -050015S = "${WORKDIR}/git"
Andrew Geissler595f6302022-01-24 19:11:47 +000016
17TARGET_CC_ARCH += "${LDFLAGS}"
18
19RDEPENDS:${PN} += "bash"
20
21inherit perlnative
22
23# For native builds we use the host Python
24PYTHONRDEPS = "python3 python3-shell python3-io python3-math python3-crypt python3-logging python3-fcntl python3-pickle python3-compression python3-stringold"
25PYTHONRDEPS:class-native = ""
26
27PACKAGECONFIG = "python update-alternatives"
28PACKAGECONFIG[python] = ",,,${PYTHONRDEPS}"
29PACKAGECONFIG[update-alternatives] = ",,,"
30
31do_install() {
32 oe_runmake PREFIX=${prefix} DESTDIR=${D} install
33 if ! ${@bb.utils.contains('PACKAGECONFIG', 'update-alternatives', 'true', 'false', d)}; then
34 rm -f "${D}${bindir}/update-alternatives"
35 fi
36}
37
38do_install:append:class-target() {
39 if ! ${@bb.utils.contains('PACKAGECONFIG', 'python', 'true', 'false', d)}; then
40 grep -lZ "/usr/bin/env.*python" ${D}${bindir}/* | xargs -0 rm
41 fi
42
43 if [ -e "${D}${bindir}/update-alternatives" ]; then
44 sed -i ${D}${bindir}/update-alternatives -e 's,/usr/bin,${bindir},g; s,/usr/lib,${nonarch_libdir},g'
45 fi
46}
47
48# These are empty and will pull python3-dev into images where it wouldn't
49# have been otherwise, so don't generate them.
50PACKAGES:remove = "${PN}-dev ${PN}-staticdev"
51
52PACKAGES =+ "update-alternatives-opkg"
53FILES:update-alternatives-opkg = "${bindir}/update-alternatives"
54RPROVIDES:update-alternatives-opkg = "update-alternatives update-alternatives-cworth"
55RREPLACES:update-alternatives-opkg = "update-alternatives-cworth"
56RCONFLICTS:update-alternatives-opkg = "update-alternatives-cworth"
57
58pkg_postrm:update-alternatives-opkg() {
59 rm -rf $D${nonarch_libdir}/opkg/alternatives
60 rmdir $D${nonarch_libdir}/opkg || true
61}
62
63BBCLASSEXTEND = "native nativesdk"
64
65CLEANBROKEN = "1"