new file mode 100644
@@ -0,0 +1,30 @@
+From a0377147222ba7950c76a646827751cc36799682 Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Mon, 17 Mar 2025 20:08:14 +0100
+Subject: [PATCH] common_make_rules: dont fail in mkdir if rm -rf has failed
+
+rm -rf fails, probably because the directory is already in use by another process.
+
+Upstream-Status: Pending [Upstream seems to be dead]
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+---
+ config/common_make_rules | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/config/common_make_rules b/config/common_make_rules
+index 1a45b43..ae60fad 100644
+--- a/config/common_make_rules
++++ b/config/common_make_rules
+@@ -120,7 +120,7 @@ $(OBJDIR)/.build_so: $(FULLSHOBJS)
+ # Used in the lib/ directory and in building new voices
+ $(LIBDIR)/%.so: $(LIBDIR)/%.shared.a
+ @ echo making $@
+- @ rm -rf shared_os && mkdir shared_os
++ @ rm -rf shared_os && mkdir -p shared_os
+ @ rm -f $@ $@.${PROJECT_VERSION} $@.${PROJECT_SHLIB_VERSION}
+ @ (cd shared_os && $(AR) x ../$<)
+ @ (cd shared_os && $(CC) -shared -Wl,-soname,`basename $@`.${PROJECT_SHLIB_VERSION} -o ../$@.${PROJECT_VERSION} *.os $(LDFLAGS))
+--
+2.48.1
+
new file mode 100644
@@ -0,0 +1,65 @@
+From 14aa28529357ba13994a2bd90cfd11bfceeffcce Mon Sep 17 00:00:00 2001
+From: Moritz Barsnick <barsnick@gmx.net>
+Date: Thu, 23 Mar 2023 14:53:08 +0100
+Subject: [PATCH] fix implicit dependency on flite_voice_list.c
+
+Also make flite_lang_list a proper rule, so that it only builds once.
+
+Both C files were repeatedly being clobbered, as were their respective
+object files.
+
+Convert flite_voice_list.c is into an explicit dependency with a creation
+rule. flite_voice_list.o continues to be implicit from flite_voice_list.c.
+
+Convert flite_lang_list into a similar, proper object rule.
+
+Fixes https://github.com/festvox/flite/issues/86
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+---
+ main/Makefile | 20 ++++++--------------
+ 1 file changed, 6 insertions(+), 14 deletions(-)
+
+diff --git a/main/Makefile b/main/Makefile
+index 8166182..b9a8828 100644
+--- a/main/Makefile
++++ b/main/Makefile
+@@ -106,21 +106,16 @@ endif
+
+ .NOTPARALLEL: $(ALL)
+
+-flite_lang_list:
+- rm -f flite_lang_list.c
++flite_lang_list.c:
+ $(TOP)/tools/make_lang_list $(LANGS) $(LEXES)
+- $(MAKE) flite_lang_list.o
+
+-$(BINDIR)/flite$(EXEEXT): flite_main.o flite_lang_list $(flite_LIBS_deps)
++flite_voice_list.c:
+ $(TOP)/tools/make_voice_list $(VOICES)
+- rm -f flite_voice_list.o
+- $(MAKE) flite_voice_list.o
++
++$(BINDIR)/flite$(EXEEXT): flite_main.o flite_voice_list.o flite_lang_list.o $(flite_LIBS_deps)
+ $(CC) $(CFLAGS) -o $@ flite_main.o flite_voice_list.o flite_lang_list.o $(flite_LIBS_flags) $(LDFLAGS)
+
+-$(BINDIR)/flitevox_info$(EXEEXT): flitevox_info_main.o flite_lang_list $(flite_LIBS_deps)
+- $(TOP)/tools/make_voice_list $(VOICES)
+- rm -f flite_voice_list.o
+- $(MAKE) flite_voice_list.o
++$(BINDIR)/flitevox_info$(EXEEXT): flitevox_info_main.o flite_voice_list.o flite_lang_list.o $(flite_LIBS_deps)
+ $(CC) $(CFLAGS) -o $@ flitevox_info_main.o flite_voice_list.o flite_lang_list.o $(flite_LIBS_flags) $(LDFLAGS)
+
+ $(BINDIR)/world$(EXEEXT): world_main.c
+@@ -144,10 +139,7 @@ each:
+ $(MAKE) VOICE=$$i $(BINDIR)/flite_$$i ; \
+ done
+
+-$(BINDIR)/flite_${VOICE}: flite_main.o flite_lang_list $(flite_LIBS_deps)
+- $(TOP)/tools/make_voice_list $(VOICE)
+- rm -f flite_voice_list.o
+- $(MAKE) flite_voice_list.o
++$(BINDIR)/flite_${VOICE}: flite_main.o flite_voice_list.o flite_lang_list.o $(flite_LIBS_deps)
+ $(CC) $(CFLAGS) -o $@ flite_main.o flite_voice_list.o flite_lang_list.o $(flite_LIBS_flags) $(LDFLAGS)
+
+ install:
@@ -9,22 +9,20 @@ inherit autotools-brokensep
DEPENDS += "alsa-lib chrpath-replacement-native"
SRC_URI = "git://github.com/festvox/flite.git;protocol=https;branch=master"
+SRC_URI += "file://0001-common_make_rules-dont-fail-in-mkdir-if-rm-rf-has-fa.patch"
SRC_URI += "file://0001-Remove-defining-const-as-nothing.patch"
+SRC_URI += "file://14aa28529357ba13994a2bd90cfd11bfceeffcce.patch"
-SRCREV = "e9e2e37c329dbe98bfeb27a1828ef9a71fa84f88"
+SRCREV = "6c9f20dc915b17f5619340069889db0aa007fcdc"
S = "${WORKDIR}/git"
+PV .= "+git"
EXTRA_OECONF += "--enable-shared"
-
-do_configure:append() {
- sed -i '/$(INSTALL) -m 755 $(BINDIR)\/flite_time $(DESTDIR)$(INSTALLBINDIR)/d' ${S}/main/Makefile
-}
+LDFLAGS:append = " -lasound"
do_install:append() {
chown -R root:root ${D}${libdir}/*
}
-# | make[1]: *** No rule to make target 'flite_voice_list.c', needed by 'all'. Stop.
-PARALLEL_MAKE = ""
CLEANBROKEN = "1"
- update to latest tip - add a PR to fix implicit dependency on flite_voice_list.c [https://github.com/festvox/flite/pull/92] - add a patch to fix parallel builds Signed-off-by: Markus Volk <f_l_k@t-online.de> --- ...s-dont-fail-in-mkdir-if-rm-rf-has-fa.patch | 30 +++++++++ ...28529357ba13994a2bd90cfd11bfceeffcce.patch | 65 +++++++++++++++++++ .../recipes-multimedia/flite/flite_2.2.bb | 12 ++-- 3 files changed, 100 insertions(+), 7 deletions(-) create mode 100644 meta-multimedia/recipes-multimedia/flite/flite/0001-common_make_rules-dont-fail-in-mkdir-if-rm-rf-has-fa.patch create mode 100644 meta-multimedia/recipes-multimedia/flite/flite/14aa28529357ba13994a2bd90cfd11bfceeffcce.patch