[V2] re2c: fix build race

Message ID 20170801092521.16558-1-ross.burton@intel.com
State Accepted
Commit 33bd61e34f0d17841f0817bfdcdf87320a6743ec
Headers show

Commit Message

Ross Burton Aug. 1, 2017, 9:25 a.m.
Signed-off-by: Ross Burton <ross.burton@intel.com>

---
 meta/recipes-support/re2c/re2c/mkdir.patch | 36 ++++++++++++++++++++++++++++++
 meta/recipes-support/re2c/re2c_0.16.bb     |  2 +-
 2 files changed, 37 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-support/re2c/re2c/mkdir.patch

-- 
2.11.0

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Patch

diff --git a/meta/recipes-support/re2c/re2c/mkdir.patch b/meta/recipes-support/re2c/re2c/mkdir.patch
new file mode 100644
index 00000000000..d59f01b36c0
--- /dev/null
+++ b/meta/recipes-support/re2c/re2c/mkdir.patch
@@ -0,0 +1,36 @@ 
+Upstream-Status: Submitted (https://github.com/skvadrik/re2c/pull/191)
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From bccc10c60523f88c8f81413151cdcd612eb16198 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Mon, 31 Jul 2017 15:43:41 +0100
+Subject: [PATCH] Makefile.am: create target directory before writing into it
+
+In some situations src/parse/ may not exist before a file is copied into the
+directory. Ensure that this doesn't happen by creating the directory first.
+---
+ re2c/Makefile.am | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/re2c/Makefile.am b/re2c/Makefile.am
+index 3b3b2c5e..0707fc5a 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -187,6 +187,7 @@ CLEANFILES = \
+ 	$(DOC)
+ 
+ $(AUTOGEN_PARSER): $(CUSTOM_PARSER)
++	$(AM_V_at)$(MKDIR_P) $(dir $@)
+ 	$(AM_V_GEN) if test $(BISON) = "no"; \
+ 	then \
+ 		cp $(top_srcdir)/$(BOOTSTRAP_PARSER) $@ && \
+@@ -211,6 +212,7 @@ $(BOOTSTRAP_PARSER): $(CUSTOM_PARSER)
+ 		$(top_srcdir)/$(CUSTOM_PARSER);
+ 
+ .re.cc:
++	$(AM_V_at)$(MKDIR_P) $(dir $@)
+ 	$(AM_V_GEN) if test -x $(RE2C); \
+ 	then \
+ 		$(top_builddir)/$(RE2C) $(RE2CFLAGS) -o $@ $< && \
+-- 
+2.11.0
diff --git a/meta/recipes-support/re2c/re2c_0.16.bb b/meta/recipes-support/re2c/re2c_0.16.bb
index e82502c5f2d..50dd7b7d261 100644
--- a/meta/recipes-support/re2c/re2c_0.16.bb
+++ b/meta/recipes-support/re2c/re2c_0.16.bb
@@ -6,7 +6,7 @@  LICENSE = "PD"
 LIC_FILES_CHKSUM = "file://README;beginline=146;md5=881056c9add17f8019ccd8c382ba963a"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
-"
+           file://mkdir.patch"
 SRC_URI[md5sum] = "3bf508fabd52ed7334647d0ccb956e8d"
 SRC_URI[sha256sum] = "48c12564297641cceb5ff05aead57f28118db6277f31e2262437feba89069e84"