From patchwork Mon Dec 11 17:38:42 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Angelo Compagnucci X-Patchwork-Id: 847149 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.133; helo=hemlock.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=amarulasolutions-com.20150623.gappssmtp.com header.i=@amarulasolutions-com.20150623.gappssmtp.com header.b="yidiEcIU"; dkim-atps=neutral Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3ywVYx4xD3z9sBW for ; Tue, 12 Dec 2017 04:39:01 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 006F087604; Mon, 11 Dec 2017 17:38:57 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tMrWM8YROl0B; Mon, 11 Dec 2017 17:38:53 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id CE2CF87D92; Mon, 11 Dec 2017 17:38:53 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id 414B51C059B for ; Mon, 11 Dec 2017 17:38:52 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 3B8352694E for ; Mon, 11 Dec 2017 17:38:52 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1Sk0xumTpEqf for ; Mon, 11 Dec 2017 17:38:50 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f196.google.com (mail-wr0-f196.google.com [209.85.128.196]) by silver.osuosl.org (Postfix) with ESMTPS id 53115245F5 for ; Mon, 11 Dec 2017 17:38:50 +0000 (UTC) Received: by mail-wr0-f196.google.com with SMTP id q9so18447239wre.7 for ; Mon, 11 Dec 2017 09:38:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=XuDxtTjDuPWC1ErVF5hL4je5gdPNQEJoDYwCAGOExlc=; b=yidiEcIUKY46A8eF3tMbqgccIvF2SVMyU1zI/XbRRq+Wkm/Ntkh7K/bGv7gGb/HBgA Arzodn2JHeVm20XYtvGTopzsW8N/U3+edhPq5/h0NPvwWzL06H5qKrzXmr5Fnz/8VKU+ wh6TBXV5DKkgKTJQJkiiMAJHzHLUeArQgsaIUstPK6Z65C6W3CaAgj3wpNgtFigDCOlE IEhzGiJet/QewvwmxM3YVSnlaGOosxgM1rbEEu1RbBmJipOY7FnJgnFKZJHqW1dzRtWy XXxn7E7GGF6jTrZ5ZcCzd8YqlEAuYQB7q3Pbi4zBh6P7Bmeu+nYWXR0lj5Ts8lrvPBvn LhUA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=XuDxtTjDuPWC1ErVF5hL4je5gdPNQEJoDYwCAGOExlc=; b=DWDgP3J37xP2AhhJmvnaleUdk1XLCmzgd5XaKzPzkN5v74vIEp/DtSlWJG0Uz/vum1 KXuNUMdA/MGM+j85WfhlmMSCL4doHjgN0XoH2ouB3aHr2ECHCfhkLdRzQGL31Sif2SUM DeSadEQoLxEGW2X4sRrtfmAoN7Tsm+qdQD1Fz1kPt/g8szLNr3+/tW0jnQrRSCiMrq0k KTn6O2tQotcIhV5ESPpbgY962rBNzb51rgjaQ0anxxgm4lRAtivtP+djY0eQMpP6UiUX ViuYPKkr4ZRLO7A3zjJ/lBkSLLhpe7JAwr/THG7s9YlAKzAazZ66tlxSnwhT0JNTSAtB rpVw== X-Gm-Message-State: AKGB3mJlgwCLfAi+gFUn8YP5Uzawnk0BO2HAvuIlihLMZp8j5c9dDgE6 EPyOefUDlaANOZjFOPKQHcG9LNOPdy8= X-Google-Smtp-Source: ACJfBovy3vxXVTCcQUJ2ECfWMJAfsqX08/mEQdZbvyQo/Joxo19vqXOHjrCdPWpvBMIMN9UViBVvsw== X-Received: by 10.223.155.131 with SMTP id d3mr1221570wrc.29.1513013928305; Mon, 11 Dec 2017 09:38:48 -0800 (PST) Received: from localhost.localdomain ([89.202.204.147]) by smtp.gmail.com with ESMTPSA id u5sm9087365wmf.47.2017.12.11.09.38.45 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 11 Dec 2017 09:38:46 -0800 (PST) From: Angelo Compagnucci To: buildroot@buildroot.org Date: Mon, 11 Dec 2017 18:38:42 +0100 Message-Id: <1513013922-14269-1-git-send-email-angelo@amarulasolutions.com> X-Mailer: git-send-email 2.7.4 Subject: [Buildroot] [PATCH v4] package/i2c-tools: bump to version 4.0 X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Angelo Compagnucci MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" This patch bumps i2c-tools to version 4.0 and adds a couple of new commands named i2ctransfer and eeprog. It adds also several upstream commits not included in the release that fix static compilation issues and parallel build issues. Signed-off-by: Angelo Compagnucci --- ...01-lib-Module.mk-Add-missing-dependencies.patch | 34 ++++++++++++ ...efile-Add-flag-to-disable-dynamic-library.patch | 64 ++++++++++++++++++++++ ...odule.mk-Drop-unused-variable-LIB_OBJECTS.patch | 33 +++++++++++ .../0004-lib-Module.mk-fixing-LIB_LINKS.patch | 32 +++++++++++ package/i2c-tools/i2c-tools.hash | 2 +- package/i2c-tools/i2c-tools.mk | 16 +++++- 6 files changed, 177 insertions(+), 4 deletions(-) create mode 100644 package/i2c-tools/0001-lib-Module.mk-Add-missing-dependencies.patch create mode 100644 package/i2c-tools/0002-Makefile-Add-flag-to-disable-dynamic-library.patch create mode 100644 package/i2c-tools/0003-lib-Module.mk-Drop-unused-variable-LIB_OBJECTS.patch create mode 100644 package/i2c-tools/0004-lib-Module.mk-fixing-LIB_LINKS.patch diff --git a/package/i2c-tools/0001-lib-Module.mk-Add-missing-dependencies.patch b/package/i2c-tools/0001-lib-Module.mk-Add-missing-dependencies.patch new file mode 100644 index 0000000..09a78da --- /dev/null +++ b/package/i2c-tools/0001-lib-Module.mk-Add-missing-dependencies.patch @@ -0,0 +1,34 @@ +From a6a59693066fd8da81f7107479df3e32a129247d Mon Sep 17 00:00:00 2001 +From: Jean Delvare +Date: Wed, 6 Dec 2017 09:55:04 +0100 +Subject: [PATCH] lib/Module.mk: Add missing dependencies + +The lib symlinks lacked a dependency to the actual library file, so +parallel builds could run into a race and break. + +Signed-off-by: Angelo Compagnucci +--- + lib/Module.mk | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lib/Module.mk b/lib/Module.mk +index 432a051..fd2c8c4 100644 +--- a/lib/Module.mk ++++ b/lib/Module.mk +@@ -42,11 +42,11 @@ endif + $(LIB_DIR)/$(LIB_SHLIBNAME): $(LIB_DIR)/smbus.o + $(CC) -shared $(LDFLAGS) -Wl,--version-script=$(LIB_DIR)/libi2c.map -Wl,-soname,$(LIB_SHSONAME) -o $@ $^ -lc + +-$(LIB_DIR)/$(LIB_SHSONAME): ++$(LIB_DIR)/$(LIB_SHSONAME): $(LIB_DIR)/$(LIB_SHLIBNAME) + $(RM) $@ + $(LN) $(LIB_SHLIBNAME) $@ + +-$(LIB_DIR)/$(LIB_SHBASENAME): ++$(LIB_DIR)/$(LIB_SHBASENAME): $(LIB_DIR)/$(LIB_SHLIBNAME) + $(RM) $@ + $(LN) $(LIB_SHLIBNAME) $@ + +-- +2.7.4 + diff --git a/package/i2c-tools/0002-Makefile-Add-flag-to-disable-dynamic-library.patch b/package/i2c-tools/0002-Makefile-Add-flag-to-disable-dynamic-library.patch new file mode 100644 index 0000000..a247116 --- /dev/null +++ b/package/i2c-tools/0002-Makefile-Add-flag-to-disable-dynamic-library.patch @@ -0,0 +1,64 @@ +From 9906b2ecb6aec02d6348d6237b784135e6930d0b Mon Sep 17 00:00:00 2001 +From: Angelo Compagnucci +Date: Wed, 6 Dec 2017 10:12:07 +0100 +Subject: [PATCH] Makefile: Add flag to disable dynamic library + +In such cases where you need to disable entirely the dynamic +library compilation, now you can use the BUILD_DYNAMIC_LIB=0 +flag. + +Signed-off-by: Angelo Compagnucci +Signed-off-by: Jean Delvare +--- + Makefile | 10 +++++++++- + lib/Module.mk | 6 +++++- + 2 files changed, 14 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index c85317c..1bb5572 100644 +--- a/Makefile ++++ b/Makefile +@@ -32,12 +32,20 @@ CFLAGS ?= -O2 + CFLAGS += -Wall + SOCFLAGS := -fpic -D_REENTRANT $(CFLAGS) + +-USE_STATIC_LIB ?= 0 ++BUILD_DYNAMIC_LIB ?= 1 + BUILD_STATIC_LIB ?= 1 ++USE_STATIC_LIB ?= 0 ++ + ifeq ($(USE_STATIC_LIB),1) + BUILD_STATIC_LIB := 1 + endif + ++ifeq ($(BUILD_DYNAMIC_LIB),0) ++ifeq ($(BUILD_STATIC_LIB),0) ++$(error BUILD_DYNAMIC_LIB and BUILD_STATIC_LIB cannot be disabled at the same time) ++endif ++endif ++ + KERNELVERSION := $(shell uname -r) + + .PHONY: all strip clean install uninstall +diff --git a/lib/Module.mk b/lib/Module.mk +index fd2c8c4..44fa938 100644 +--- a/lib/Module.mk ++++ b/lib/Module.mk +@@ -27,9 +27,13 @@ LIB_SHSONAME := $(LIB_SHBASENAME).$(LIB_MAINVER) + LIB_SHLIBNAME := $(LIB_SHBASENAME).$(LIB_VER) + LIB_STLIBNAME := libi2c.a + +-LIB_TARGETS := $(LIB_SHLIBNAME) + LIB_LINKS := $(LIB_SHSONAME) $(LIB_SHBASENAME) + LIB_OBJECTS := smbus.o ++ ++LIB_TARGETS := ++ifeq ($(BUILD_DYNAMIC_LIB),1) ++LIB_TARGETS += $(LIB_SHLIBNAME) ++endif + ifeq ($(BUILD_STATIC_LIB),1) + LIB_TARGETS += $(LIB_STLIBNAME) + LIB_OBJECTS += smbus.ao +-- +2.7.4 + diff --git a/package/i2c-tools/0003-lib-Module.mk-Drop-unused-variable-LIB_OBJECTS.patch b/package/i2c-tools/0003-lib-Module.mk-Drop-unused-variable-LIB_OBJECTS.patch new file mode 100644 index 0000000..190224a --- /dev/null +++ b/package/i2c-tools/0003-lib-Module.mk-Drop-unused-variable-LIB_OBJECTS.patch @@ -0,0 +1,33 @@ +From 1831b618fbedf0bcf15b0465981d133d9e3c53ee Mon Sep 17 00:00:00 2001 +From: Jean Delvare +Date: Wed, 6 Dec 2017 10:46:56 +0100 +Subject: [PATCH] lib/Module.mk: Drop unused variable LIB_OBJECTS + +Signed-off-by: Angelo Compagnucci +--- + lib/Module.mk | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/lib/Module.mk b/lib/Module.mk +index 44fa938..8a58f5b 100644 +--- a/lib/Module.mk ++++ b/lib/Module.mk +@@ -28,7 +28,6 @@ LIB_SHLIBNAME := $(LIB_SHBASENAME).$(LIB_VER) + LIB_STLIBNAME := libi2c.a + + LIB_LINKS := $(LIB_SHSONAME) $(LIB_SHBASENAME) +-LIB_OBJECTS := smbus.o + + LIB_TARGETS := + ifeq ($(BUILD_DYNAMIC_LIB),1) +@@ -36,7 +35,6 @@ LIB_TARGETS += $(LIB_SHLIBNAME) + endif + ifeq ($(BUILD_STATIC_LIB),1) + LIB_TARGETS += $(LIB_STLIBNAME) +-LIB_OBJECTS += smbus.ao + endif + + # +-- +2.7.4 + diff --git a/package/i2c-tools/0004-lib-Module.mk-fixing-LIB_LINKS.patch b/package/i2c-tools/0004-lib-Module.mk-fixing-LIB_LINKS.patch new file mode 100644 index 0000000..7afe705 --- /dev/null +++ b/package/i2c-tools/0004-lib-Module.mk-fixing-LIB_LINKS.patch @@ -0,0 +1,32 @@ +From 026c0eb29059630b0c9133314e44eec8aca12c16 Mon Sep 17 00:00:00 2001 +From: Angelo Compagnucci +Date: Mon, 11 Dec 2017 17:57:47 +0100 +Subject: [PATCH] i2c-tools: lib/Module.mk: fixing LIB_LINKS + +LIB_LINKS should be added as a dependency only when +BUILD_DYNAMIC_LIB is enabled + +Signed-off-by: Angelo Compagnucci +--- + lib/Module.mk | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/lib/Module.mk b/lib/Module.mk +index 8a58f5b..de189a2 100644 +--- a/lib/Module.mk ++++ b/lib/Module.mk +@@ -27,10 +27,9 @@ LIB_SHSONAME := $(LIB_SHBASENAME).$(LIB_MAINVER) + LIB_SHLIBNAME := $(LIB_SHBASENAME).$(LIB_VER) + LIB_STLIBNAME := libi2c.a + +-LIB_LINKS := $(LIB_SHSONAME) $(LIB_SHBASENAME) +- + LIB_TARGETS := + ifeq ($(BUILD_DYNAMIC_LIB),1) ++LIB_LINKS := $(LIB_SHSONAME) $(LIB_SHBASENAME) + LIB_TARGETS += $(LIB_SHLIBNAME) + endif + ifeq ($(BUILD_STATIC_LIB),1) +-- +2.7.4 + diff --git a/package/i2c-tools/i2c-tools.hash b/package/i2c-tools/i2c-tools.hash index 464219d..3475d20 100644 --- a/package/i2c-tools/i2c-tools.hash +++ b/package/i2c-tools/i2c-tools.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 6d6079153cd49a62d4addacef4c092db1a46ba60b2807070a3fbe050262aef87 i2c-tools-3.1.2.tar.xz +sha256 d900ca1c11c51ea20caa50b096f948008b8a7ad832311b23353e21baa7af28d6 i2c-tools-4.0.tar.xz # License file sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/i2c-tools/i2c-tools.mk b/package/i2c-tools/i2c-tools.mk index 3bbaf38..0f71fd4 100644 --- a/package/i2c-tools/i2c-tools.mk +++ b/package/i2c-tools/i2c-tools.mk @@ -4,11 +4,12 @@ # ################################################################################ -I2C_TOOLS_VERSION = 3.1.2 +I2C_TOOLS_VERSION = 4.0 I2C_TOOLS_SOURCE = i2c-tools-$(I2C_TOOLS_VERSION).tar.xz I2C_TOOLS_SITE = https://www.kernel.org/pub/software/utils/i2c-tools I2C_TOOLS_LICENSE = GPL-2.0+, GPL-2.0 (py-smbus) I2C_TOOLS_LICENSE_FILES = COPYING +I2C_TOOLS_MAKE_OPTS = EXTRA=eeprog ifeq ($(BR2_PACKAGE_PYTHON),y) I2C_TOOLS_DEPENDENCIES += python @@ -22,6 +23,14 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y) I2C_TOOLS_DEPENDENCIES += busybox endif +ifeq ($(BR2_STATIC_LIBS),y) +I2C_TOOLS_MAKE_OPTS += BUILD_DYNAMIC_LIB=0 USE_STATIC_LIB=1 +endif + +ifeq ($(BR2_SHARED_LIBS),y) +I2C_TOOLS_MAKE_OPTS += BUILD_STATIC_LIB=0 +endif + # Build/install steps mirror the distutil python package type in the python package # infrastructure ifeq ($(BR2_PACKAGE_PYTHON)$(BR2_PACKAGE_PYTHON3),y) @@ -47,15 +56,16 @@ endef endif # BR2_PACKAGE_PYTHON define I2C_TOOLS_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) + $(MAKE) $(TARGET_CONFIGURE_OPTS) $(I2C_TOOLS_MAKE_OPTS) -C $(@D) $(I2C_TOOLS_BUILD_PYSMBUS) endef define I2C_TOOLS_INSTALL_TARGET_CMDS - for i in i2cdump i2cget i2cset i2cdetect; \ + for i in i2cdump i2cget i2cset i2cdetect i2ctransfer; \ do \ $(INSTALL) -m 755 -D $(@D)/tools/$$i $(TARGET_DIR)/usr/sbin/$$i; \ done + $(INSTALL) -m 755 -D $(@D)/eeprog/eeprog $(TARGET_DIR)/usr/bin/eeprog; $(I2C_TOOLS_INSTALL_PYSMBUS) endef