ovn: fix build failure due to make install race condition (#451492)
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
From a94104a0c419a5049712f7372690dab10f54ab2f Mon Sep 17 00:00:00 2001
|
||||
From: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
|
||||
Date: Sun, 12 Oct 2025 18:46:14 -0400
|
||||
Subject: [PATCH ovn] build: Fix race condition when installing ovn-detrace.
|
||||
|
||||
When running parallel make install (-j), ovn-detrace-install could
|
||||
trigger before ovn_detrace.py is installed. In this case, `ln` will
|
||||
fail.
|
||||
|
||||
When it happens, make fails with:
|
||||
|
||||
```
|
||||
ln: failed to create symbolic link '[...]/bin/ovn-detrace': No such file or directory
|
||||
make[2]: *** [Makefile:3852: ovn-detrace-install] Error 1
|
||||
```
|
||||
|
||||
Automake install-*-local targets are not guaranteed any order. In
|
||||
contrast, install-*-hook does [1]. This patch switches the make target
|
||||
to use the latter.
|
||||
|
||||
[1] https://www.gnu.org/software/automake/manual/html_node/Extending-Installation.html
|
||||
|
||||
Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
|
||||
---
|
||||
Makefile.am | 2 ++
|
||||
utilities/automake.mk | 2 +-
|
||||
2 files changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 6119ef510..060d3189d 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -128,6 +128,7 @@ dist_scripts_SCRIPTS =
|
||||
dist_scripts_DATA =
|
||||
EXTRA_PROGRAMS =
|
||||
INSTALL_DATA_LOCAL =
|
||||
+INSTALL_DATA_HOOK =
|
||||
UNINSTALL_LOCAL =
|
||||
man_MANS =
|
||||
MAN_FRAGMENTS =
|
||||
@@ -487,6 +488,7 @@ dist-hook: $(DIST_HOOKS)
|
||||
all-local: $(ALL_LOCAL)
|
||||
clean-local: $(CLEAN_LOCAL)
|
||||
install-data-local: $(INSTALL_DATA_LOCAL)
|
||||
+install-data-hook: $(INSTALL_DATA_HOOK)
|
||||
uninstall-local: $(UNINSTALL_LOCAL)
|
||||
.PHONY: $(DIST_HOOKS) $(CLEAN_LOCAL) $(INSTALL_DATA_LOCAL) $(UNINSTALL_LOCAL)
|
||||
|
||||
diff --git a/utilities/automake.mk b/utilities/automake.mk
|
||||
index 1de33614f..ec955f6bf 100644
|
||||
--- a/utilities/automake.mk
|
||||
+++ b/utilities/automake.mk
|
||||
@@ -106,7 +106,7 @@ utilities_ovn_appctl_SOURCES = utilities/ovn-appctl.c
|
||||
utilities_ovn_appctl_LDADD = lib/libovn.la $(OVSDB_LIBDIR)/libovsdb.la $(OVS_LIBDIR)/libopenvswitch.la
|
||||
|
||||
# ovn-detrace
|
||||
-INSTALL_DATA_LOCAL += ovn-detrace-install
|
||||
+INSTALL_DATA_HOOK += ovn-detrace-install
|
||||
ovn-detrace-install:
|
||||
ln -sf ovn_detrace.py $(DESTDIR)$(bindir)/ovn-detrace
|
||||
|
||||
--
|
||||
2.51.0
|
||||
|
||||
@@ -51,6 +51,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
url = "https://github.com/ovn-org/ovn/commit/b396babaa54ea0c8d943bbfef751dbdbf288c7af.patch";
|
||||
hash = "sha256-RjWxT3EYKjGhtvCq3bAhKN9PrPTkSR72xPkQQ4SPWWU=";
|
||||
})
|
||||
# Fix build failure due to make install race condition.
|
||||
# Posted at: https://patchwork.ozlabs.org/project/ovn/patch/20251012225908.37855-1-ihar.hrachyshka@gmail.com/
|
||||
./0001-build-Fix-race-condition-when-installing-ovn-detrace.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
Reference in New Issue
Block a user