Files
poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb
Hannu Lounento 2a092f4aec i2c-tools: use update-alternatives
i2cget, i2cset, i2cdump and i2cdetect may also be provided by Busybox
when CONFIG_I2CGET, CONFIG_I2CSET, CONFIG_I2CDUMP and CONFIG_I2CDETECT
are enabled respectively.

Busybox has a priority of 50.

Prior to the patch building core-image-minimal with

    IMAGE_INSTALL_append = " busybox"
    IMAGE_INSTALL_append = " i2c-tools"

in local.conf produced the warnings

    WARNING: core-image-minimal-1.0-r0 do_rootfs: busybox.postinst returned 1, marking as unpacked only, configuration required on target.
    WARNING: core-image-minimal-1.0-r0 do_rootfs: Intentionally failing postinstall scriptlets of ['busybox'] to defer them to first boot is deprecated. Please place them into pkg_postinst_ontarget_${PN} ().
    If deferring to first boot wasn't the intent, then scriptlet failure may mean an issue in the recipe, or a regression elsewhere.
    Details of the failure are in /path/to/poky/build/tmp-glibc/work/qemux86-oe-linux/core-image-minimal/1.0-r0/temp/log.do_rootfs.
    WARNING: core-image-minimal-1.0-r0 do_rootfs: [log_check] core-image-minimal: found 1 warning message in the logfile:
    [log_check] WARNING: Intentionally failing postinstall scriptlets of ['busybox'] to defer them to first boot is deprecated. Please place them into pkg_postinst_ontarget_${PN} ().

where log.do_rootfs contained

    update-alternatives: Error: not linking /path/to/poky/build/tmp-glibc/work/qemux86-oe-linux/core-image-minimal/1.0-r0/rootfs/usr/sbin/i2cget to /bin/busybox.nosuid since /path/to/poky/build/tmp-glibc/work/qemux86-oe-linux/core-image-minimal/1.0-r0/rootfs/usr/sbin/i2cget exists and is not a link

and similarly for i2cset, i2cdump and i2cdetect when a workspace layer
created by devtool contained

    cat workspace/appends/busybox_%.bbappend
    FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"

    SRC_URI_append = " file://i2c.cfg"

and

    cat workspace/appends/busybox/i2c.cfg
    CONFIG_I2CGET=y
    CONFIG_I2CSET=y
    CONFIG_I2CDETECT=y
    CONFIG_I2CDUMP=y

(From OE-Core rev: 391f0fb76c286734cc9be57b825efe02b6999faf)

Signed-off-by: Hannu Lounento <hannu.lounento@vaisala.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 21:07:16 +01:00

46 lines
1.7 KiB
BlitzBasic

SUMMARY = "Set of i2c tools for linux"
HOMEPAGE = "https://i2c.wiki.kernel.org/index.php/I2C_Tools"
SECTION = "base"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
SRC_URI = "${KERNELORG_MIRROR}/software/utils/i2c-tools/${BP}.tar.gz \
file://0001-lib-Module.mk-Add-missing-dependencies.patch \
file://0001-tools-Module.mk-Add-missing-dependencies.patch \
file://0001-i2c-tools-eeprog-Module.mk-Add-missing-dependency.patch \
file://remove-i2c-dev.patch \
"
SRC_URI[md5sum] = "d92a288d70f306d3895e3a7e9c14c9aa"
SRC_URI[sha256sum] = "5b60daf6f011de0acb61de57dba62f2054bb39f19961d67e0c91610f071ca403"
inherit update-alternatives
EXTRA_OEMAKE = "bindir=${bindir} sbindir=${sbindir} \
incdir=${includedir} libdir=${libdir} \
mandir=${mandir} \
EXTRA=eeprog"
do_install() {
oe_runmake 'DESTDIR=${D}' install
}
PACKAGES =+ "${PN}-misc"
FILES_${PN}-misc = "${sbindir}/i2c-stub-from-dump \
${bindir}/ddcmon \
${bindir}/decode-edid \
${bindir}/decode-dimms \
${bindir}/decode-vaio \
"
RDEPENDS_${PN}-misc = "${PN} perl perl-module-posix \
perl-module-constant perl-module-file-basename \
perl-module-fcntl perl-module-strict perl-module-vars \
"
ALTERNATIVE_PRIORITY = "100"
ALTERNATIVE_${PN} = "i2cdetect i2cdump i2cget i2cset"
ALTERNATIVE_LINK_NAME[i2cdetect] = "${sbindir}/i2cdetect"
ALTERNATIVE_LINK_NAME[i2cdump] = "${sbindir}/i2cdump"
ALTERNATIVE_LINK_NAME[i2cget] = "${sbindir}/i2cget"
ALTERNATIVE_LINK_NAME[i2cset] = "${sbindir}/i2cset"