- tools-build-add-missing-dependencies.patch: Fix another random

failure of parallel builds.

OBS-URL: https://build.opensuse.org/package/show/Base:System/i2c-tools?expand=0&rev=47
This commit is contained in:
Jean Delvare 2017-12-12 16:08:47 +00:00 committed by Git OBS Bridge
parent 8264074f83
commit 7e86ac05df
3 changed files with 61 additions and 0 deletions

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Tue Dec 12 17:07:54 CET 2017 - jdelvare@suse.com
- tools-build-add-missing-dependencies.patch: Fix another random
failure of parallel builds.
-------------------------------------------------------------------
Wed Dec 6 16:01:02 CET 2017 - jdelvare@suse.com

View File

@ -30,6 +30,7 @@ Source1: https://www.kernel.org/pub/software/utils/i2c-tools/%{name}-%{ve
Patch1: i2cbusses-path-overflows.patch
Patch2: lib-build-add-missing-dependencies.patch
Patch3: decode-dimms-hackweek-DDR4.patch
Patch4: tools-build-add-missing-dependencies.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
ExcludeArch: s390 s390x
@ -64,6 +65,7 @@ connected to the I2C or SMBus buses of the system.
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%build
make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" CC="%{__cc}" BUILD_STATIC_LIB:=0

View File

@ -0,0 +1,53 @@
From: Jean Delvare <jdelvare@suse.de>
Subject: tools/Module.mk: Add missing dependencies
Better build the library before building the tools which link against
it, otherwise parallel builds could run into a race and break.
---
lib/Module.mk | 7 +++++++
tools/Module.mk | 10 +++++-----
2 files changed, 12 insertions(+), 5 deletions(-)
--- a/lib/Module.mk
+++ b/lib/Module.mk
@@ -37,6 +37,13 @@ ifeq ($(BUILD_STATIC_LIB),1)
LIB_TARGETS += $(LIB_STLIBNAME)
endif
+# Library file to link against (static or dynamic)
+ifeq ($(USE_STATIC_LIB),1)
+LIB_DEPS := $(LIB_DIR)/$(LIB_STLIBNAME)
+else
+LIB_DEPS := $(LIB_DIR)/$(LIB_SHBASENAME)
+endif
+
#
# Libraries
#
--- a/tools/Module.mk
+++ b/tools/Module.mk
@@ -24,19 +24,19 @@ TOOLS_TARGETS := i2cdetect i2cdump i2cse
# Programs
#
-$(TOOLS_DIR)/i2cdetect: $(TOOLS_DIR)/i2cdetect.o $(TOOLS_DIR)/i2cbusses.o
+$(TOOLS_DIR)/i2cdetect: $(TOOLS_DIR)/i2cdetect.o $(TOOLS_DIR)/i2cbusses.o $(LIB_DEPS)
$(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
-$(TOOLS_DIR)/i2cdump: $(TOOLS_DIR)/i2cdump.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o
+$(TOOLS_DIR)/i2cdump: $(TOOLS_DIR)/i2cdump.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o $(LIB_DEPS)
$(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
-$(TOOLS_DIR)/i2cset: $(TOOLS_DIR)/i2cset.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o
+$(TOOLS_DIR)/i2cset: $(TOOLS_DIR)/i2cset.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o $(LIB_DEPS)
$(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
-$(TOOLS_DIR)/i2cget: $(TOOLS_DIR)/i2cget.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o
+$(TOOLS_DIR)/i2cget: $(TOOLS_DIR)/i2cget.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o $(LIB_DEPS)
$(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
-$(TOOLS_DIR)/i2ctransfer: $(TOOLS_DIR)/i2ctransfer.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o
+$(TOOLS_DIR)/i2ctransfer: $(TOOLS_DIR)/i2ctransfer.o $(TOOLS_DIR)/i2cbusses.o $(TOOLS_DIR)/util.o $(LIB_DEPS)
$(CC) $(LDFLAGS) -o $@ $^ $(TOOLS_LDFLAGS)
#