new file mode 100644
@@ -0,0 +1,98 @@
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From 226bc03acca44cf4b300597308064c44676b6f4b Mon Sep 17 00:00:00 2001
+From: Jean Delvare <jdelvare@suse.de>
+Date: Tue, 23 Jan 2018 14:24:16 +0100
+Subject: Delete duplicate i2c-dev.h
+
+The <linux/i2c-dev.h> header file is provided by the kernel, so drop
+our own copy of this file.
+
+Signed-off-by: Jean Delvare <jdelvare@suse.de>
+Acked-by: Wolfram Sang <wsa@the-dreams.de>
+---
+ include/linux/i2c-dev.h | 72 -------------------------------------------------
+ 1 file changed, 72 deletions(-)
+ delete mode 100644 include/linux/i2c-dev.h
+
+diff --git a/include/linux/i2c-dev.h b/include/linux/i2c-dev.h
+deleted file mode 100644
+index 839d25a..0000000
+--- a/include/linux/i2c-dev.h
++++ /dev/null
+@@ -1,72 +0,0 @@
+-/*
+- i2c-dev.h - i2c-bus driver, char device interface
+-
+- Copyright (C) 1995-97 Simon G. Vogl
+- Copyright (C) 1998-99 Frodo Looijaard <frodol@dds.nl>
+-
+- This program is free software; you can redistribute it and/or modify
+- it under the terms of the GNU General Public License as published by
+- the Free Software Foundation; either version 2 of the License, or
+- (at your option) any later version.
+-
+- This program is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
+-
+- You should have received a copy of the GNU General Public License
+- along with this program; if not, write to the Free Software
+- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+- MA 02110-1301 USA.
+-*/
+-
+-#ifndef _LINUX_I2C_DEV_H
+-#define _LINUX_I2C_DEV_H
+-
+-#include <linux/types.h>
+-
+-
+-/* /dev/i2c-X ioctl commands. The ioctl's parameter is always an
+- * unsigned long, except for:
+- * - I2C_FUNCS, takes pointer to an unsigned long
+- * - I2C_RDWR, takes pointer to struct i2c_rdwr_ioctl_data
+- * - I2C_SMBUS, takes pointer to struct i2c_smbus_ioctl_data
+- */
+-#define I2C_RETRIES 0x0701 /* number of times a device address should
+- be polled when not acknowledging */
+-#define I2C_TIMEOUT 0x0702 /* set timeout in units of 10 ms */
+-
+-/* NOTE: Slave address is 7 or 10 bits, but 10-bit addresses
+- * are NOT supported! (due to code brokenness)
+- */
+-#define I2C_SLAVE 0x0703 /* Use this slave address */
+-#define I2C_SLAVE_FORCE 0x0706 /* Use this slave address, even if it
+- is already in use by a driver! */
+-#define I2C_TENBIT 0x0704 /* 0 for 7 bit addrs, != 0 for 10 bit */
+-
+-#define I2C_FUNCS 0x0705 /* Get the adapter functionality mask */
+-
+-#define I2C_RDWR 0x0707 /* Combined R/W transfer (one STOP only) */
+-
+-#define I2C_PEC 0x0708 /* != 0 to use PEC with SMBus */
+-#define I2C_SMBUS 0x0720 /* SMBus transfer */
+-
+-
+-/* This is the structure as used in the I2C_SMBUS ioctl call */
+-struct i2c_smbus_ioctl_data {
+- __u8 read_write;
+- __u8 command;
+- __u32 size;
+- union i2c_smbus_data *data;
+-};
+-
+-/* This is the structure as used in the I2C_RDWR ioctl call */
+-struct i2c_rdwr_ioctl_data {
+- struct i2c_msg *msgs; /* pointers to i2c_msgs */
+- __u32 nmsgs; /* number of i2c_msgs */
+-};
+-
+-#define I2C_RDRW_IOCTL_MAX_MSGS 42
+-
+-
+-#endif /* _LINUX_I2C_DEV_H */
+--
+cgit v1.1
@@ -8,22 +8,19 @@ 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 autotools-brokensep
+EXTRA_OEMAKE = "bindir=${bindir} sbindir=${sbindir} \
+ incdir=${includedir} libdir=${libdir} \
+ mandir=${mandir} \
+ EXTRA=eeprog"
-do_compile_prepend() {
- sed -i 's#/usr/local#/usr#' ${S}/Makefile
- echo "include eeprog/Module.mk" >> ${S}/Makefile
-}
-
-do_install_append() {
- install -d ${D}${includedir}/linux
- install -m 0644 include/linux/i2c-dev.h ${D}${includedir}/linux/i2c-dev-user.h
- rm -f ${D}${includedir}/linux/i2c-dev.h
+do_install() {
+ oe_runmake 'DESTDIR=${D}' install
}
PACKAGES =+ "${PN}-misc"
For unknowable reasons this recipe inherits autotools-brokensep despite not in fact using autotools. Remove the inherit, add a do_install() that calls the makefile directly. Extend EXTRA_OEMAKE to pass bindir/sbindir/incdir/libdir/mandir so the files are all packaged in the correct location (and remove the now redundant sed of Makefile). Pass EXTRA=eeprog to EXTRA_OEMAKE to build eeprog, and remove the now redundant edit of Makefile. Backport a patch from upstream to remove linux/i2c-dev.h instead of installing it with a different name (which nobody will be using). Signed-off-by: Ross Burton <ross.burton@intel.com> --- .../i2c-tools/files/remove-i2c-dev.patch | 98 ++++++++++++++++++++++ meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb | 17 ++-- 2 files changed, 105 insertions(+), 10 deletions(-) create mode 100644 meta/recipes-devtools/i2c-tools/files/remove-i2c-dev.patch -- 2.11.0 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core