summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaxin John <maxin.john@intel.com>2018-01-12 14:26:37 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-01-19 12:37:13 +0000
commit0797aab859f89b810365278e3b865fe4d79aeab1 (patch)
tree4358307e3a3a3b824baaebbc7d850b28cff94231
parent9b7a842855a0d0ae4b5ca6daecd963e7ff85dc10 (diff)
downloadpoky-0797aab859f89b810365278e3b865fe4d79aeab1.tar.gz
i2c-tools: upgrade to 4.0
Update the SRC_URI to point to kernel.org location where i2c-tools is hosted these days. Remove Modules.mk since it was used for deprecated binaries (eepromer, eeprom) Backported the following patches to fix races during build: a) 0001-tools-Module.mk-Add-missing-dependencies.patch b) 0001-i2c-tools-eeprog-Module.mk-Add-missing-dependency.patch c) 0001-lib-Module.mk-Add-missing-dependencies.patch (From OE-Core rev: f330e9f64b69de09284da765ca1e869099ec49ae) Signed-off-by: Maxin B. John <maxin.john@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/i2c-tools/files/0001-i2c-tools-eeprog-Module.mk-Add-missing-dependency.patch32
-rw-r--r--meta/recipes-devtools/i2c-tools/files/0001-lib-Module.mk-Add-missing-dependencies.patch37
-rw-r--r--meta/recipes-devtools/i2c-tools/files/0001-tools-Module.mk-Add-missing-dependencies.patch69
-rw-r--r--meta/recipes-devtools/i2c-tools/files/Module.mk72
-rw-r--r--meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb (renamed from meta/recipes-devtools/i2c-tools/i2c-tools_3.1.2.bb)21
5 files changed, 150 insertions, 81 deletions
diff --git a/meta/recipes-devtools/i2c-tools/files/0001-i2c-tools-eeprog-Module.mk-Add-missing-dependency.patch b/meta/recipes-devtools/i2c-tools/files/0001-i2c-tools-eeprog-Module.mk-Add-missing-dependency.patch
new file mode 100644
index 0000000000..5b1a53844e
--- /dev/null
+++ b/meta/recipes-devtools/i2c-tools/files/0001-i2c-tools-eeprog-Module.mk-Add-missing-dependency.patch
@@ -0,0 +1,32 @@
1From 01674fefe3bd24fd93412fbb3eb4e85fe70c80aa Mon Sep 17 00:00:00 2001
2From: "Maxin B. John" <maxin.john@intel.com>
3Date: Mon, 18 Dec 2017 16:01:39 +0200
4Subject: [PATCH] i2c-tools: eeprog/Module.mk: Add missing dependency
5
6Absence of this dependency caused parallel build to run into a race
7and break.
8
9Upstream-Status: Accepted
10https://git.kernel.org/pub/scm/utils/i2c-tools/i2c-tools.git/commit/?id=f87c97317012a3b96b67237925893b8ffd5f4f50
11
12Signed-off-by: Maxin B. John <maxin.john@intel.com>
13---
14 eeprog/Module.mk | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/eeprog/Module.mk b/eeprog/Module.mk
18index 9d36869..d215855 100644
19--- a/eeprog/Module.mk
20+++ b/eeprog/Module.mk
21@@ -20,7 +20,7 @@ EEPROG_TARGETS := eeprog
22 # Programs
23 #
24
25-$(EEPROG_DIR)/eeprog: $(EEPROG_DIR)/eeprog.o $(EEPROG_DIR)/24cXX.o
26+$(EEPROG_DIR)/eeprog: $(EEPROG_DIR)/eeprog.o $(EEPROG_DIR)/24cXX.o $(LIB_DEPS)
27 $(CC) $(LDFLAGS) -o $@ $^ $(EEPROG_LDFLAGS)
28
29 #
30--
312.4.0
32
diff --git a/meta/recipes-devtools/i2c-tools/files/0001-lib-Module.mk-Add-missing-dependencies.patch b/meta/recipes-devtools/i2c-tools/files/0001-lib-Module.mk-Add-missing-dependencies.patch
new file mode 100644
index 0000000000..426b4330ea
--- /dev/null
+++ b/meta/recipes-devtools/i2c-tools/files/0001-lib-Module.mk-Add-missing-dependencies.patch
@@ -0,0 +1,37 @@
1From a6a59693066fd8da81f7107479df3e32a129247d Mon Sep 17 00:00:00 2001
2From: Jean Delvare <jdelvare@suse.de>
3Date: Wed, 6 Dec 2017 09:55:04 +0100
4Subject: [PATCH] lib/Module.mk: Add missing dependencies
5
6The lib symlinks lacked a dependency to the actual library file, so
7parallel builds could run into a race and break.
8
9Upstream-Status: Backport
10
11Signed-off-by: Jean Delvare <jdelvare@suse.de>
12Signed-off-by: Maxin B. John <maxin.john@intel.com>
13---
14 lib/Module.mk | 4 ++--
15 1 file changed, 2 insertions(+), 2 deletions(-)
16
17diff --git a/lib/Module.mk b/lib/Module.mk
18index 432a051..fd2c8c4 100644
19--- a/lib/Module.mk
20+++ b/lib/Module.mk
21@@ -42,11 +42,11 @@ endif
22 $(LIB_DIR)/$(LIB_SHLIBNAME): $(LIB_DIR)/smbus.o
23 $(CC) -shared $(LDFLAGS) -Wl,--version-script=$(LIB_DIR)/libi2c.map -Wl,-soname,$(LIB_SHSONAME) -o $@ $^ -lc
24
25-$(LIB_DIR)/$(LIB_SHSONAME):
26+$(LIB_DIR)/$(LIB_SHSONAME): $(LIB_DIR)/$(LIB_SHLIBNAME)
27 $(RM) $@
28 $(LN) $(LIB_SHLIBNAME) $@
29
30-$(LIB_DIR)/$(LIB_SHBASENAME):
31+$(LIB_DIR)/$(LIB_SHBASENAME): $(LIB_DIR)/$(LIB_SHLIBNAME)
32 $(RM) $@
33 $(LN) $(LIB_SHLIBNAME) $@
34
35--
362.4.0
37
diff --git a/meta/recipes-devtools/i2c-tools/files/0001-tools-Module.mk-Add-missing-dependencies.patch b/meta/recipes-devtools/i2c-tools/files/0001-tools-Module.mk-Add-missing-dependencies.patch
new file mode 100644
index 0000000000..e47c02ab7f
--- /dev/null
+++ b/meta/recipes-devtools/i2c-tools/files/0001-tools-Module.mk-Add-missing-dependencies.patch
@@ -0,0 +1,69 @@
1From 08b0d67ba7eceb862cb17f52eb1911e9579726ea Mon Sep 17 00:00:00 2001
2From: Jean Delvare <jdelvare@suse.de>
3Date: Thu, 14 Dec 2017 08:52:26 +0100
4Subject: [PATCH] tools/Module.mk: Add missing dependencies
5
6Better build the library before building the tools which link against
7it, otherwise parallel builds could run into a race and break.
8
9Upstream-Status: Backport
10
11Signed-off-by: Jean Delvare <jdelvare@suse.de>
12Tested-by: Angelo Compagnucci <angelo@amarulasolutions.com>
13Acked-by: Angelo Compagnucci <angelo@amarulasolutions.com>
14Signed-off-by: Maxin B. John <maxin.john@intel.com>
15---
16 lib/Module.mk | 7 +++++++
17 tools/Module.mk | 10 +++++-----
18 2 files changed, 12 insertions(+), 5 deletions(-)
19
20diff --git a/lib/Module.mk b/lib/Module.mk
21index 8a58f5b..67afe91 100644
22--- a/lib/Module.mk
23+++ b/lib/Module.mk
24@@ -37,6 +37,13 @@ ifeq ($(BUILD_STATIC_LIB),1)
25 LIB_TARGETS += $(LIB_STLIBNAME)
26 endif
27
28+# Library file to link against (static or dynamic)
29+ifeq ($(USE_STATIC_LIB),1)
30+LIB_DEPS := $(LIB_DIR)/$(LIB_STLIBNAME)
31+else
32+LIB_DEPS := $(LIB_DIR)/$(LIB_SHBASENAME)
33+endif
34+
35 #
36 # Libraries
37 #
38diff --git a/tools/Module.mk b/tools/Module.mk
39index 6421a23..609de7a 100644
40--- a/tools/Module.mk
41+++ b/tools/Module.mk
42@@ -24,19 +24,19 @@ TOOLS_TARGETS := i2cdetect i2cdump i2cset i2cget i2ctransfer
43 # Programs
44 #
45
46-$(TOOLS_DIR)/i2cdetect: $(TOOLS_DIR)/i2cdetect.o $(TOOLS_DIR)/i2cbusses.o
47+$(TOOLS_DIR)/i2cdetect: $(TOOLS_DIR)/i2cdetect.o $(TOOLS_DIR)/i2cbusses.o $(LIB_DEPS)
48 $(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
49
50-$(TOOLS_DIR)/i2cdump: $(TOOLS_DIR)/i2cdump.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o
51+$(TOOLS_DIR)/i2cdump: $(TOOLS_DIR)/i2cdump.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o $(LIB_DEPS)
52 $(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
53
54-$(TOOLS_DIR)/i2cset: $(TOOLS_DIR)/i2cset.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o
55+$(TOOLS_DIR)/i2cset: $(TOOLS_DIR)/i2cset.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o $(LIB_DEPS)
56 $(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
57
58-$(TOOLS_DIR)/i2cget: $(TOOLS_DIR)/i2cget.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o
59+$(TOOLS_DIR)/i2cget: $(TOOLS_DIR)/i2cget.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o $(LIB_DEPS)
60 $(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
61
62-$(TOOLS_DIR)/i2ctransfer: $(TOOLS_DIR)/i2ctransfer.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o
63+$(TOOLS_DIR)/i2ctransfer: $(TOOLS_DIR)/i2ctransfer.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o $(LIB_DEPS)
64 $(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
65
66 #
67--
682.4.0
69
diff --git a/meta/recipes-devtools/i2c-tools/files/Module.mk b/meta/recipes-devtools/i2c-tools/files/Module.mk
deleted file mode 100644
index fcaf72f22a..0000000000
--- a/meta/recipes-devtools/i2c-tools/files/Module.mk
+++ /dev/null
@@ -1,72 +0,0 @@
1# EEPROMER
2#
3# Licensed under the GNU General Public License.
4
5EEPROMER_DIR := eepromer
6
7EEPROMER_CFLAGS := -Wstrict-prototypes -Wshadow -Wpointer-arith -Wcast-qual \
8 -Wcast-align -Wwrite-strings -Wnested-externs -Winline \
9 -W -Wundef -Wmissing-prototypes -Iinclude
10
11EEPROMER_TARGETS := eepromer eeprom eeprog
12
13#
14# Programs
15#
16
17$(EEPROMER_DIR)/eepromer: $(EEPROMER_DIR)/eepromer.o
18 $(CC) $(LDFLAGS) -o $@ $^
19
20$(EEPROMER_DIR)/eeprom: $(EEPROMER_DIR)/eeprom.o
21 $(CC) $(LDFLAGS) -o $@ $^
22
23$(EEPROMER_DIR)/eeprog: $(EEPROMER_DIR)/eeprog.o $(EEPROMER_DIR)/24cXX.o
24 $(CC) $(LDFLAGS) -o $@ $^
25
26#
27# Objects
28#
29
30$(EEPROMER_DIR)/eepromer.o: $(EEPROMER_DIR)/eepromer.c
31 $(CC) $(CFLAGS) $(EEPROMER_CFLAGS) -c $< -o $@
32
33$(EEPROMER_DIR)/eeprom.o: $(EEPROMER_DIR)/eeprom.c
34 $(CC) $(CFLAGS) $(EEPROMER_CFLAGS) -c $< -o $@
35
36$(EEPROMER_DIR)/eeprog.o: $(EEPROMER_DIR)/eeprog.c
37 $(CC) $(CFLAGS) $(EEPROMER_CFLAGS) -c $< -o $@
38
39$(EEPROMER_DIR)/24cXX.o: $(EEPROMER_DIR)/24cXX.c
40 $(CC) $(CFLAGS) $(EEPROMER_CFLAGS) -c $< -o $@
41
42#
43# Commands
44#
45
46all-eepromer: $(addprefix $(EEPROMER_DIR)/,$(EEPROMER_TARGETS))
47
48strip-eepromer: $(addprefix $(EEPROMER_DIR)/,$(EEPROMER_TARGETS))
49 strip $(addprefix $(EEPROMER_DIR)/,$(EEPROMER_TARGETS))
50
51clean-eepromer:
52 $(RM) $(addprefix $(EEPROMER_DIR)/,*.o $(EEPROMER_TARGETS))
53
54install-eepromer: $(addprefix $(EEPROMER_DIR)/,$(EEPROMER_TARGETS))
55 $(INSTALL_DIR) $(DESTDIR)$(sbindir) $(DESTDIR)$(man8dir)
56 for program in $(EEPROMER_TARGETS) ; do \
57 $(INSTALL_PROGRAM) $(EEPROMER_DIR)/$$program $(DESTDIR)$(sbindir) ; done
58
59uninstall-eepromer:
60 for program in $(EEPROMER_TARGETS) ; do \
61 $(RM) $(DESTDIR)$(sbindir)/$$program ; \
62 $(RM) $(DESTDIR)$(man8dir)/$$program.8 ; done
63
64all: all-eepromer
65
66strip: strip-eepromer
67
68clean: clean-eepromer
69
70install: install-eepromer
71
72uninstall: uninstall-eepromer
diff --git a/meta/recipes-devtools/i2c-tools/i2c-tools_3.1.2.bb b/meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb
index 45d3d6d10a..e936fd759b 100644
--- a/meta/recipes-devtools/i2c-tools/i2c-tools_3.1.2.bb
+++ b/meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb
@@ -4,20 +4,20 @@ SECTION = "base"
4LICENSE = "GPLv2+" 4LICENSE = "GPLv2+"
5LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" 5LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
6 6
7SRC_URI = "http://downloads.yoctoproject.org/mirror/sources/${BP}.tar.bz2 \ 7SRC_URI = "${KERNELORG_MIRROR}/software/utils/i2c-tools/${BP}.tar.gz \
8 file://Module.mk \ 8 file://0001-lib-Module.mk-Add-missing-dependencies.patch \
9 file://0001-tools-Module.mk-Add-missing-dependencies.patch \
10 file://0001-i2c-tools-eeprog-Module.mk-Add-missing-dependency.patch \
9" 11"
10UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/i/i2c-tools/" 12
11UPSTREAM_CHECK_REGEX = "i2c-tools_(?P<pver>.+)\.orig" 13SRC_URI[md5sum] = "d92a288d70f306d3895e3a7e9c14c9aa"
12SRC_URI[md5sum] = "7104a1043d11a5e2c7b131614eb1b962" 14SRC_URI[sha256sum] = "5b60daf6f011de0acb61de57dba62f2054bb39f19961d67e0c91610f071ca403"
13SRC_URI[sha256sum] = "db5e69f2e2a6e3aa2ecdfe6a5f490b149c504468770f58921c8c5b8a7860a441"
14 15
15inherit autotools-brokensep 16inherit autotools-brokensep
16 17
17do_compile_prepend() { 18do_compile_prepend() {
18 cp ${WORKDIR}/Module.mk ${S}/eepromer/
19 sed -i 's#/usr/local#/usr#' ${S}/Makefile 19 sed -i 's#/usr/local#/usr#' ${S}/Makefile
20 echo "include eepromer/Module.mk" >> ${S}/Makefile 20 echo "include eeprog/Module.mk" >> ${S}/Makefile
21} 21}
22 22
23do_install_append() { 23do_install_append() {
@@ -33,4 +33,7 @@ FILES_${PN}-misc = "${sbindir}/i2c-stub-from-dump \
33 ${bindir}/decode-dimms \ 33 ${bindir}/decode-dimms \
34 ${bindir}/decode-vaio \ 34 ${bindir}/decode-vaio \
35 " 35 "
36RDEPENDS_${PN}-misc = "${PN} perl" 36RDEPENDS_${PN}-misc = "${PN} perl perl-module-posix \
37 perl-module-constant perl-module-file-basename \
38 perl-module-fcntl perl-module-strict perl-module-vars \
39 "