diff --git a/packages/speechd/Makefile.am.patch b/packages/speechd/Makefile.am.patch
new file mode 100644
index 000000000..708fa3bb3
--- /dev/null
+++ b/packages/speechd/Makefile.am.patch
@@ -0,0 +1,11 @@
+--- a/src/clients/spdsend/Makefile.am 2022-04-15 04:49:54.446394459 +0000
++++ b/src/clients/spdsend/Makefile.am 2022-04-15 15:02:21.579033348 +0000
+@@ -19,7 +19,7 @@
+
+ bin_PROGRAMS = spdsend
+ spdsend_SOURCES = spdsend.h spdsend.c server.c client.c common.c
+-spdsend_LDADD = $(EXTRA_SOCKET_LIBS) -lpthread
++spdsend_LDADD = $(EXTRA_SOCKET_LIBS)
+
+
+ -include $(top_srcdir)/git.mk
diff --git a/packages/speechd/build.sh b/packages/speechd/build.sh
index 8665ec152..9b57e07eb 100644
--- a/packages/speechd/build.sh
+++ b/packages/speechd/build.sh
@@ -2,12 +2,12 @@ TERMUX_PKG_HOMEPAGE=https://github.com/brailcom/speechd
TERMUX_PKG_DESCRIPTION="Common interface to speech synthesis"
TERMUX_PKG_LICENSE="LGPL-2.1, GPL-2.0"
TERMUX_PKG_MAINTAINER="@termux"
-TERMUX_PKG_VERSION=0.10.2
-TERMUX_PKG_REVISION=3
-TERMUX_PKG_SHA256=056efb80186f2bfc3f6ef468ab9905ca2d652cc2180b13514b752a9d616a6930
+TERMUX_PKG_VERSION=0.11.1
+TERMUX_PKG_SHA256=6dd8566188f70b1e971fe18f78960e30cb7daee88f147e5235b5cdfaf6184bb8
TERMUX_PKG_SRCURL=https://github.com/brailcom/speechd/archive/${TERMUX_PKG_VERSION}.tar.gz
TERMUX_PKG_DEPENDS="dotconf, espeak, glib, libiconv, pulseaudio, python"
TERMUX_PKG_BUILD_DEPENDS="libiconv-static, libsndfile-static"
+TERMUX_PKG_AUTO_UPDATE=true
##
## Note: package needs patching for proper fix of pthread_cancel usage.
@@ -30,12 +30,13 @@ TERMUX_PKG_RM_AFTER_INSTALL="bin/spd-conf"
# We cannot run cross-compiled programs to get help message, so disable
# man-page generation with help2man
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+="ac_cv_prog_HELP2MAN="
-
-termux_step_pre_configure () {
- _PYTHON_VERSION=$(source $TERMUX_SCRIPTDIR/packages/python/build.sh; echo $_MAJOR_VERSION)
+
+termux_step_pre_configure() {
+ _PYTHON_VERSION=$(
+ source $TERMUX_SCRIPTDIR/packages/python/build.sh
+ echo $_MAJOR_VERSION
+ )
+ export am_cv_python_pythondir="${TERMUX_PREFIX}/lib/python${_PYTHON_VERSION}/site-packages"
+ export am_cv_python_pyexecdir="$am_cv_python_pythondir"
./build.sh
}
-
-termux_step_post_massage() {
- mv lib/python3* lib/python$_PYTHON_VERSION
-}
diff --git a/packages/speechd/espeak.patch b/packages/speechd/espeak.patch
new file mode 100644
index 000000000..f20be3c5c
--- /dev/null
+++ b/packages/speechd/espeak.patch
@@ -0,0 +1,20 @@
+--- a/src/modules/espeak.c 2022-04-15 04:49:54.448394598 +0000
++++ b/src/modules/espeak.c 2022-04-15 14:59:04.648322417 +0000
+@@ -35,7 +35,7 @@
+ #include
+ #include
+ #include
+-
++#include
+ /* espeak header file */
+ #ifdef ESPEAK_NG_INCLUDE
+ #include
+@@ -890,7 +890,7 @@
+
+ if (!strncmp(identifier, "mb/mb-", 6)) {
+ voicename = g_strdup(identifier + 6);
+- dash = index(voicename, '-');
++ dash = strchr(voicename, '-');
+ if (dash)
+ /* Ignore "-en" language specification */
+ *dash = 0;
diff --git a/packages/speechd/speechd.h.patch b/packages/speechd/speechd.h.patch
index caf0fe821..5aa223ea6 100644
--- a/packages/speechd/speechd.h.patch
+++ b/packages/speechd/speechd.h.patch
@@ -1,11 +1,12 @@
---- ../speechd.h 2018-10-16 16:57:51.355159010 +0000
-+++ ./src/server/speechd.h 2018-10-16 16:58:00.751157017 +0000
-@@ -49,7 +49,7 @@
-
+diff -uNr a/src/server/speechd.h b/src/server/speechd.h
+--- a/src/server/speechd.h 2022-04-15 04:49:54.443394249 +0000
++++ b/src/server/speechd.h 2022-04-15 06:22:30.560961362 +0000
+@@ -47,7 +47,7 @@
+
#include
#include
-#include
+#include
-
+
#define SPEECHD_DEBUG 0
-
+
diff --git a/packages/speechd/speechd.patch b/packages/speechd/speechd.patch
index db3651722..35bd33619 100644
--- a/packages/speechd/speechd.patch
+++ b/packages/speechd/speechd.patch
@@ -1,88 +1,6 @@
-diff -u -r ../speechd-0.10.2/src/api/c/libspeechd.c ./src/api/c/libspeechd.c
---- ../speechd-0.10.2/src/api/c/libspeechd.c 2020-11-24 23:38:03.000000000 +0000
-+++ ./src/api/c/libspeechd.c 2021-04-05 18:06:21.834517140 +0000
-@@ -608,7 +608,7 @@
- pthread_mutex_lock(&connection->ssip_mutex);
-
- if (connection->mode == SPD_MODE_THREADED) {
-- pthread_cancel(connection->td->events_thread);
-+ pthread_kill(connection->td->events_thread, 0);
- pthread_mutex_destroy(&connection->td->mutex_reply_ready);
- pthread_mutex_destroy(&connection->td->mutex_reply_ack);
- pthread_cond_destroy(&connection->td->cond_reply_ready);
-diff -u -r ../speechd-0.10.2/src/audio/nas.c ./src/audio/nas.c
---- ../speechd-0.10.2/src/audio/nas.c 2020-11-24 23:38:03.000000000 +0000
-+++ ./src/audio/nas.c 2021-04-05 18:06:21.834517140 +0000
-@@ -51,7 +51,6 @@
- static void *_nas_handle_events(void *par)
- {
- spd_nas_id_t *nas_id = (spd_nas_id_t *) par;
-- pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
-
- while (1)
- AuHandleEvents(nas_id->aud);
-@@ -209,7 +208,7 @@
- if (nas_id == NULL)
- return -2;
-
-- pthread_cancel(nas_id->nas_event_handler);
-+ pthread_kill(nas_id->nas_event_handler, 0);
- pthread_join(nas_id->nas_event_handler, NULL);
-
- pthread_mutex_destroy(&nas_id->pt_mutex);
-diff -u -r ../speechd-0.10.2/src/modules/baratinoo.c ./src/modules/baratinoo.c
---- ../speechd-0.10.2/src/modules/baratinoo.c 2020-11-24 23:38:03.000000000 +0000
-+++ ./src/modules/baratinoo.c 2021-04-05 18:06:21.834517140 +0000
-@@ -561,7 +561,7 @@
- g_usleep(25000);
-
- /* Make sure the thread has really exited */
-- pthread_cancel(engine->thread);
-+ pthread_kill(engine->thread, 0);
- DBG(DBG_MODNAME "Joining threads.");
- if (pthread_join(engine->thread, NULL) != 0)
- DBG(DBG_MODNAME "Failed to join threads.");
-diff -u -r ../speechd-0.10.2/src/modules/module_utils.c ./src/modules/module_utils.c
---- ../speechd-0.10.2/src/modules/module_utils.c 2020-11-24 23:38:03.000000000 +0000
-+++ ./src/modules/module_utils.c 2021-04-05 18:06:21.834517140 +0000
-@@ -891,15 +891,17 @@
- DBG("Can't fill signal set, expect problems when terminating!\n");
- }
-
-+#ifndef __ANDROID__
- pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
- pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL);
-+#endif
- }
-
- int module_terminate_thread(pthread_t thread)
- {
- int ret;
-
-- ret = pthread_cancel(thread);
-+ ret = pthread_kill(thread, 0);
- if (ret != 0) {
- DBG("Cancellation of speak thread failed");
- return 1;
-diff -u -r ../speechd-0.10.2/src/server/speaking.c ./src/server/speaking.c
---- ../speechd-0.10.2/src/server/speaking.c 2020-11-24 23:38:03.000000000 +0000
-+++ ./src/server/speaking.c 2021-04-05 18:06:21.834517140 +0000
-@@ -950,9 +950,10 @@
- MSG(1,
- "Can't fill signal set, expect problems when terminating!");
- }
--
-+#ifndef __ANDROID__
- pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
- pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL);
-+#endif __ANDROID__
- }
-
- void stop_priority_except_first(SPDPriority priority)
-diff -u -r ../speechd-0.10.2/src/server/speechd.c ./src/server/speechd.c
---- ../speechd-0.10.2/src/server/speechd.c 2020-11-24 23:38:03.000000000 +0000
-+++ ./src/server/speechd.c 2021-04-05 18:06:21.834517140 +0000
-@@ -1285,7 +1285,7 @@
+--- a/src/server/speechd.c 2022-04-15 04:49:54.443394249 +0000
++++ b/src/server/speechd.c 2022-04-15 06:14:44.973486291 +0000
+@@ -1353,7 +1353,7 @@
g_hash_table_destroy(fd_settings);
MSG(4, "Closing speak() thread...");
@@ -91,14 +9,74 @@ diff -u -r ../speechd-0.10.2/src/server/speechd.c ./src/server/speechd.c
if (ret != 0)
FATAL("Speak thread failed to cancel!\n");
---- ../speechd-0.10.2/src/modules/Makefile.am 2020-11-24 23:38:03.000000000 +0000
-+++ ./src/modules/Makefile.am 2021-04-05 18:13:05.761394281 +0000
-@@ -134,7 +134,7 @@
- modulebin_PROGRAMS += sd_baratinoo
- sd_baratinoo_SOURCES = baratinoo.c baratinoo_compat.h $(audio_SOURCES) $(common_SOURCES) module_utils_speak_queue.c
- sd_baratinoo_LDADD = $(top_builddir)/src/common/libcommon.la \
-- $(audio_dlopen_modules) -lbaratinoo -lpthread -ldl \
-+ $(audio_dlopen_modules) -lbaratinoo -ldl \
- $(common_LDADD)
+--- a/src/modules/module_utils.c 2022-04-15 04:49:54.468395993 +0000
++++ b/src/modules/module_utils.c 2022-04-15 06:07:29.462108958 +0000
+@@ -584,7 +584,7 @@
+ {
+ int ret;
- if baratinoo_shim
+- ret = pthread_cancel(thread);
++ ret = pthread_kill(thread, 0);
+ if (ret != 0) {
+ DBG("Cancellation of speak thread failed");
+ return 1;
+--- a/src/audio/nas.c 2022-04-15 04:49:54.442394179 +0000
++++ b/src/audio/nas.c 2022-04-15 05:57:51.188773780 +0000
+@@ -51,8 +51,6 @@
+ static void *_nas_handle_events(void *par)
+ {
+ spd_nas_id_t *nas_id = (spd_nas_id_t *) par;
+- pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
+-
+ while (1)
+ AuHandleEvents(nas_id->aud);
+
+@@ -208,7 +206,7 @@
+ if (nas_id == NULL)
+ return -2;
+
+- pthread_cancel(nas_id->nas_event_handler);
++ pthread_kill(nas_id->nas_event_handler,0);
+ pthread_join(nas_id->nas_event_handler, NULL);
+
+ pthread_mutex_destroy(&nas_id->pt_mutex);
+--- a/src/api/c/libspeechd.c 2022-04-15 04:49:54.445394389 +0000
++++ b/src/api/c/libspeechd.c 2022-04-15 05:47:47.292651531 +0000
+@@ -607,7 +607,7 @@
+ pthread_mutex_lock(&connection->ssip_mutex);
+
+ if (connection->mode == SPD_MODE_THREADED) {
+- pthread_cancel(connection->td->events_thread);
++ pthread_kill(connection->td->events_thread, 0);
+ pthread_mutex_destroy(&connection->td->mutex_reply_ready);
+ pthread_mutex_destroy(&connection->td->mutex_reply_ack);
+ pthread_cond_destroy(&connection->td->cond_reply_ready);
+--- a/src/common/common.c 2022-04-15 04:49:54.442394179 +0000
++++ b/src/common/common.c 2022-04-15 14:25:51.987242432 +0000
+@@ -49,6 +49,4 @@
+
+ void set_speaking_thread_parameters(void)
+ {
+- pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
+- pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL);
+ }
+--- a/src/server/output.c 2022-04-15 04:49:54.443394249 +0000
++++ b/src/server/output.c 2022-04-15 14:30:36.748824687 +0000
+@@ -218,8 +218,6 @@
+ void
+ static output_lock(void)
+ {
+- if (pthread_self() == speak_thread)
+- pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &oldstate);
+ pthread_mutex_lock(&output_layer_mutex);
+ }
+
+@@ -227,8 +225,6 @@
+ static output_unlock(void)
+ {
+ pthread_mutex_unlock(&output_layer_mutex);
+- if (pthread_self() == speak_thread)
+- pthread_setcancelstate(oldstate, NULL);
+ }
+
+ #define OL_RET(value) \
diff --git a/packages/speechd/tmpdir.patch b/packages/speechd/tmpdir.patch
index b06508e8a..ae616c742 100644
--- a/packages/speechd/tmpdir.patch
+++ b/packages/speechd/tmpdir.patch
@@ -1,7 +1,6 @@
-diff -u -r ../src.orig/config/modules/baratinoo.conf ./config/modules/baratinoo.conf
---- ../src.orig/config/modules/baratinoo.conf 2021-04-05 20:10:31.958686047 +0000
-+++ ./config/modules/baratinoo.conf 2021-04-05 20:11:39.501980984 +0000
-@@ -39,7 +39,7 @@
+--- a/config/modules/baratinoo.conf 2022-04-15 04:49:54.305384622 +0000
++++ b/config/modules/baratinoo.conf 2022-04-15 14:12:51.719383602 +0000
+@@ -38,7 +38,7 @@
# DebugFile specifies the file where the debugging information
# should be stored (note that the log is overwritten each time
# the module starts)
@@ -10,11 +9,10 @@ diff -u -r ../src.orig/config/modules/baratinoo.conf ./config/modules/baratinoo.
# Copyright (C) 2017 Colomban Wendling
-diff -u -r ../src.orig/config/modules/festival.conf ./config/modules/festival.conf
---- ../src.orig/config/modules/festival.conf 2021-04-05 20:10:31.958686047 +0000
-+++ ./config/modules/festival.conf 2021-04-05 20:11:39.531980966 +0000
+--- a/config/modules/festival.conf 2022-04-15 04:49:54.321385739 +0000
++++ b/config/modules/festival.conf 2022-04-15 14:12:51.730383586 +0000
@@ -70,7 +70,7 @@
- Debug 0
+
# If FestivalDebugSaveOutput is set to 1, it writes the produced sound tracks
-# to /tmp/debug-festival-*.snd before it says them. You can later browse them
@@ -22,9 +20,8 @@ diff -u -r ../src.orig/config/modules/festival.conf ./config/modules/festival.co
# for debugging purposes. They are numbered in order starting from 0.
# FestivalDebugSaveOutput 0
-diff -u -r ../src.orig/config/modules/flite.conf ./config/modules/flite.conf
---- ../src.orig/config/modules/flite.conf 2021-04-05 20:10:31.958686047 +0000
-+++ ./config/modules/flite.conf 2021-04-05 20:11:39.505314316 +0000
+--- a/config/modules/flite.conf 2022-04-15 04:49:54.321385739 +0000
++++ b/config/modules/flite.conf 2022-04-15 14:12:51.734383580 +0000
@@ -12,7 +12,7 @@
# DebugFile specifies the file where the debugging information
# should be stored (note that the log is overwritten each time
@@ -34,21 +31,19 @@ diff -u -r ../src.orig/config/modules/flite.conf ./config/modules/flite.conf
# Copyright (C) 2003-2008 Brailcom, o.p.s
-diff -u -r ../src.orig/config/modules/ibmtts.conf ./config/modules/ibmtts.conf
---- ../src.orig/config/modules/ibmtts.conf 2021-04-05 20:10:31.958686047 +0000
-+++ ./config/modules/ibmtts.conf 2021-04-05 20:11:39.495314322 +0000
-@@ -104,7 +104,7 @@
+--- a/config/modules/ibmtts.conf 2022-04-15 04:49:54.321385739 +0000
++++ b/config/modules/ibmtts.conf 2022-04-15 14:12:51.737383576 +0000
+@@ -11,7 +11,7 @@
# should be stored (note that the log is overwritten each time
# the module starts)
-# DebugFile "/tmp/debug-ibmtts"
+# DebugFile "@TERMUX_PREFIX@/tmp/debug-ibmtts"
- # -- VOICE PARAMETERS --
-diff -u -r ../src.orig/config/modules/ivona.conf ./config/modules/ivona.conf
---- ../src.orig/config/modules/ivona.conf 2021-04-05 20:10:31.958686047 +0000
-+++ ./config/modules/ivona.conf 2021-04-05 20:11:39.525314303 +0000
+ # The number of samples returned by IBM TTS.
+--- a/config/modules/ivona.conf 2022-04-15 04:49:54.321385739 +0000
++++ b/config/modules/ivona.conf 2022-04-15 14:12:51.741383570 +0000
@@ -14,7 +14,7 @@
# DebugFile specifies the file where the debugging information
# should be stored (note that the log is overwritten each time
@@ -58,22 +53,20 @@ diff -u -r ../src.orig/config/modules/ivona.conf ./config/modules/ivona.conf
# IvonaMinCapLet overrides DefaultCapLetRecognition. Set to:
# 1 for "icon" - play icon even if default is "none"
-diff -u -r ../src.orig/config/modules/llia_phon-generic.conf ./config/modules/llia_phon-generic.conf
---- ../src.orig/config/modules/llia_phon-generic.conf 2021-04-05 20:10:31.958686047 +0000
-+++ ./config/modules/llia_phon-generic.conf 2021-04-05 20:11:39.521980972 +0000
-@@ -69,7 +69,7 @@
+--- a/config/modules/llia_phon-generic.conf 2022-04-15 04:49:54.322385808 +0000
++++ b/config/modules/llia_phon-generic.conf 2022-04-15 14:12:51.745383564 +0000
+@@ -15,7 +15,7 @@
# DebugFile specifies the file where the debugging information
# should be stored (note that the log is overwritten each time
# the module starts)
-# DebugFile "/tmp/debug-llia-phon-generic"
+# DebugFile "@TERMUX_PREFIX@/tmp/debug-llia-phon-generic"
-
- # Copyright (C) 2004-2008 Brailcom, o.p.s
-diff -u -r ../src.orig/config/modules/swift-generic.conf ./config/modules/swift-generic.conf
---- ../src.orig/config/modules/swift-generic.conf 2021-04-05 20:10:31.958686047 +0000
-+++ ./config/modules/swift-generic.conf 2021-04-05 20:11:39.478647665 +0000
-@@ -23,7 +23,7 @@
+ # GenericExecuteSynth is the shell command that should be
+ # executed in order to say some message. This command must
+--- a/config/modules/swift-generic.conf 2022-04-15 04:49:54.322385808 +0000
++++ b/config/modules/swift-generic.conf 2022-04-15 14:12:51.751383555 +0000
+@@ -27,7 +27,7 @@
# can modify this value, see other parameters).
# The command can be split into more lines, if necessary, using '\'.
GenericExecuteSynth \
@@ -82,22 +75,73 @@ diff -u -r ../src.orig/config/modules/swift-generic.conf ./config/modules/swift-
GenericCmdDependency "/opt/swift/bin/swift"
GenericSoundIconFolder "/usr/share/sounds/sound-icons/"
-diff -u -r ../src.orig/config/modules/voxin.conf ./config/modules/voxin.conf
---- ../src.orig/config/modules/voxin.conf 2021-04-05 20:10:31.958686047 +0000
-+++ ./config/modules/voxin.conf 2021-04-05 20:11:39.548647622 +0000
-@@ -104,7 +104,7 @@
+--- a/config/modules/voxin.conf 2022-04-15 04:49:54.322385808 +0000
++++ b/config/modules/voxin.conf 2022-04-15 14:12:51.754383550 +0000
+@@ -11,7 +11,7 @@
# should be stored (note that the log is overwritten each time
# the module starts)
-# DebugFile "/tmp/debug-ibmtts"
+# DebugFile "@TERMUX_PREFIX@/tmp/debug-ibmtts"
- # -- VOICE PARAMETERS --
-diff -u -r ../src.orig/doc/speech-dispatcher.texi ./doc/speech-dispatcher.texi
---- ../src.orig/doc/speech-dispatcher.texi 2021-04-05 20:10:31.962019379 +0000
-+++ ./doc/speech-dispatcher.texi 2021-04-05 20:11:39.898647405 +0000
-@@ -527,8 +527,8 @@
+ # The number of samples returned by IBM TTS.
+--- a/doc/speech-dispatcher-cs.html 2022-04-15 04:49:54.322385808 +0000
++++ b/doc/speech-dispatcher-cs.html 2022-04-15 14:12:51.783383507 +0000
+@@ -871,7 +871,7 @@
+
+
GenericExecuteSynth \
+ "epos-say -o --language $LANG --voice $VOICE --init_f $PITCH --init_t $RATE \
+-\"$DATA\" | sed -e s+unknown.*$++ >/tmp/epos-said.wav && play /tmp/epos-said.wav >/dev/null"
++\"$DATA\" | sed -e s+unknown.*$++ >@TERMUX_PREFIX@/tmp/epos-said.wav && play @TERMUX_PREFIX@/tmp/epos-said.wav >/dev/null"
+
+
+
+--- a/doc/speech-dispatcher-cs.texi 2022-04-15 04:49:54.323385878 +0000
++++ b/doc/speech-dispatcher-cs.texi 2022-04-15 14:12:51.789383498 +0000
+@@ -744,7 +744,7 @@
+ @example
+ GenericExecuteSynth \
+ "epos-say -o --language $LANG --voice $VOICE --init_f $PITCH --init_t $RATE \
+-\"$DATA\" | sed -e s+unknown.*$++ >/tmp/epos-said.wav && play /tmp/epos-said.wav >/dev/null"
++\"$DATA\" | sed -e s+unknown.*$++ >@TERMUX_PREFIX@/tmp/epos-said.wav && play @TERMUX_PREFIX@/tmp/epos-said.wav >/dev/null"
+ @end example
+ @end defvr
+
+--- a/doc/speech-dispatcher.html 2022-04-15 04:49:54.323385878 +0000
++++ b/doc/speech-dispatcher.html 2022-04-15 14:12:51.794383491 +0000
+@@ -574,8 +574,8 @@
+
+
+
killall -u `whoami` speech-dispatcher
+-speech-dispatcher -c unix_socket -S /tmp/my.sock
+-SPEECHD_ADDRESS=unix_socket:/tmp/my.sock spd-say "test"
++speech-dispatcher -c unix_socket -S @TERMUX_PREFIX@/tmp/my.sock
++SPEECHD_ADDRESS=unix_socket:@TERMUX_PREFIX@/tmp/my.sock spd-say "test"
+
+
+
+@@ -1007,7 +1007,7 @@
+
+
GenericExecuteSynth \
+ "epos-say -o --language $LANG --voice $VOICE --init_f $PITCH --init_t $RATE \
+-\"$DATA\" | sed -e s+unknown.*$++ >/tmp/epos-said.wav && play /tmp/epos-said.wav >/dev/null"
++\"$DATA\" | sed -e s+unknown.*$++ >@TERMUX_PREFIX@/tmp/epos-said.wav && play @TERMUX_PREFIX@/tmp/epos-said.wav >/dev/null"
+
+
+
+@@ -1436,7 +1436,7 @@
+ Examples of valid address lines are:
+
+
unix_socket
+-unix_socket:/tmp/test.sock
++unix_socket:@TERMUX_PREFIX@/tmp/test.sock
+ inet_socket
+ inet_socket:192.168.0.34
+ inet_socket:192.168.0.34:6563
+--- a/doc/speech-dispatcher.texi 2022-04-15 04:49:54.323385878 +0000
++++ b/doc/speech-dispatcher.texi 2022-04-15 14:12:51.804383476 +0000
+@@ -528,8 +528,8 @@
@example
killall -u `whoami` speech-dispatcher
@@ -108,7 +152,7 @@ diff -u -r ../src.orig/doc/speech-dispatcher.texi ./doc/speech-dispatcher.texi
@end example
@node Troubleshooting, Configuration, Running, User's Documentation
-@@ -896,7 +896,7 @@
+@@ -911,7 +911,7 @@
@example
GenericExecuteSynth \
"epos-say -o --language $LANG --voice $VOICE --init_f $PITCH --init_t $RATE \
@@ -117,7 +161,7 @@ diff -u -r ../src.orig/doc/speech-dispatcher.texi ./doc/speech-dispatcher.texi
@end example
@end defvr
-@@ -1244,7 +1244,7 @@
+@@ -1261,7 +1261,7 @@
Examples of valid address lines are:
@example
unix_socket
@@ -126,9 +170,8 @@ diff -u -r ../src.orig/doc/speech-dispatcher.texi ./doc/speech-dispatcher.texi
inet_socket
inet_socket:192.168.0.34
inet_socket:192.168.0.34:6563
-diff -u -r ../src.orig/po/cs.po ./po/cs.po
---- ../src.orig/po/cs.po 2021-04-05 20:10:31.985352701 +0000
-+++ ./po/cs.po 2021-04-05 20:11:39.751980829 +0000
+--- a/po/cs.po 2022-04-15 04:49:54.441394110 +0000
++++ b/po/cs.po 2022-04-15 14:12:52.126382997 +0000
@@ -144,7 +144,7 @@
#: src/server/options.c:110
@@ -138,9 +181,8 @@ diff -u -r ../src.orig/po/cs.po ./po/cs.po
msgstr ""
#: src/server/options.c:113 src/clients/say/options.c:169
-diff -u -r ../src.orig/po/de.po ./po/de.po
---- ../src.orig/po/de.po 2021-04-05 20:10:31.985352701 +0000
-+++ ./po/de.po 2021-04-05 20:11:39.718647517 +0000
+--- a/po/de.po 2022-04-15 04:49:54.441394110 +0000
++++ b/po/de.po 2022-04-15 14:12:52.130382991 +0000
@@ -144,8 +144,8 @@
#: src/server/options.c:110
@@ -152,9 +194,21 @@ diff -u -r ../src.orig/po/de.po ./po/de.po
#: src/server/options.c:113 src/clients/say/options.c:169
#, c-format
-diff -u -r ../src.orig/po/fr.po ./po/fr.po
---- ../src.orig/po/fr.po 2021-04-05 20:10:31.985352701 +0000
-+++ ./po/fr.po 2021-04-05 20:11:39.765314154 +0000
+--- a/po/eo.po 2022-04-15 04:49:54.441394110 +0000
++++ b/po/eo.po 2022-04-15 14:12:52.133382987 +0000
+@@ -130,8 +130,8 @@
+
+ #: src/server/options.c:110
+ #, c-format
+-msgid "if TMPDIR is exported, otherwise to /tmp/%s\n"
+-msgstr "se la medivariablo TMPDIR ekzistas, alie en /tmp/%s\n"
++msgid "if TMPDIR is exported, otherwise to @TERMUX_PREFIX@/tmp/%s\n"
++msgstr "se la medivariablo TMPDIR ekzistas, alie en @TERMUX_PREFIX@/tmp/%s\n"
+
+ #: src/server/options.c:113 src/clients/say/options.c:169
+ #, c-format
+--- a/po/fr.po 2022-04-15 04:49:54.441394110 +0000
++++ b/po/fr.po 2022-04-15 14:12:52.136382982 +0000
@@ -130,8 +130,8 @@
#: src/server/options.c:110
@@ -166,9 +220,8 @@ diff -u -r ../src.orig/po/fr.po ./po/fr.po
#: src/server/options.c:113 src/clients/say/options.c:169
#, c-format
-diff -u -r ../src.orig/po/hu.po ./po/hu.po
---- ../src.orig/po/hu.po 2021-04-05 20:10:31.985352701 +0000
-+++ ./po/hu.po 2021-04-05 20:11:39.771980817 +0000
+--- a/po/hu.po 2022-04-15 04:49:54.441394110 +0000
++++ b/po/hu.po 2022-04-15 14:12:52.140382976 +0000
@@ -144,7 +144,7 @@
#: src/server/options.c:110
@@ -178,9 +231,8 @@ diff -u -r ../src.orig/po/hu.po ./po/hu.po
msgstr ""
#: src/server/options.c:113 src/clients/say/options.c:169
-diff -u -r ../src.orig/po/nb_NO.po ./po/nb_NO.po
---- ../src.orig/po/nb_NO.po 2021-04-05 20:10:31.985352701 +0000
-+++ ./po/nb_NO.po 2021-04-05 20:11:39.758647492 +0000
+--- a/po/nb_NO.po 2022-04-15 04:49:54.441394110 +0000
++++ b/po/nb_NO.po 2022-04-15 14:12:52.147382966 +0000
@@ -131,8 +131,8 @@
#: src/server/options.c:110
@@ -192,9 +244,8 @@ diff -u -r ../src.orig/po/nb_NO.po ./po/nb_NO.po
#: src/server/options.c:113 src/clients/say/options.c:169
#, c-format
-diff -u -r ../src.orig/po/pt_BR.po ./po/pt_BR.po
---- ../src.orig/po/pt_BR.po 2021-04-05 20:10:31.985352701 +0000
-+++ ./po/pt_BR.po 2021-04-05 20:11:39.735314173 +0000
+--- a/po/pt_BR.po 2022-04-15 04:49:54.441394110 +0000
++++ b/po/pt_BR.po 2022-04-15 14:12:52.151382960 +0000
@@ -131,8 +131,8 @@
#: src/server/options.c:110
@@ -206,9 +257,8 @@ diff -u -r ../src.orig/po/pt_BR.po ./po/pt_BR.po
#: src/server/options.c:113 src/clients/say/options.c:169
#, c-format
-diff -u -r ../src.orig/po/pt.po ./po/pt.po
---- ../src.orig/po/pt.po 2021-04-05 20:10:31.985352701 +0000
-+++ ./po/pt.po 2021-04-05 20:11:39.761980823 +0000
+--- a/po/pt.po 2022-04-15 04:49:54.441394110 +0000
++++ b/po/pt.po 2022-04-15 14:12:52.155382954 +0000
@@ -130,8 +130,8 @@
#: src/server/options.c:110
@@ -220,9 +270,8 @@ diff -u -r ../src.orig/po/pt.po ./po/pt.po
#: src/server/options.c:113 src/clients/say/options.c:169
#, c-format
-diff -u -r ../src.orig/po/ru.po ./po/ru.po
---- ../src.orig/po/ru.po 2021-04-05 20:10:31.985352701 +0000
-+++ ./po/ru.po 2021-04-05 20:11:39.738647504 +0000
+--- a/po/ru.po 2022-04-15 04:49:54.441394110 +0000
++++ b/po/ru.po 2022-04-15 14:12:52.159382948 +0000
@@ -129,7 +129,7 @@
#: src/server/options.c:110
@@ -232,9 +281,8 @@ diff -u -r ../src.orig/po/ru.po ./po/ru.po
msgstr ""
#: src/server/options.c:113 src/clients/say/options.c:169
-diff -u -r ../src.orig/po/speech-dispatcher.pot ./po/speech-dispatcher.pot
---- ../src.orig/po/speech-dispatcher.pot 2021-04-05 20:10:31.985352701 +0000
-+++ ./po/speech-dispatcher.pot 2021-04-05 20:11:39.725314179 +0000
+--- a/po/speech-dispatcher.pot 2022-04-15 04:49:54.441394110 +0000
++++ b/po/speech-dispatcher.pot 2022-04-15 14:12:52.162382944 +0000
@@ -126,7 +126,7 @@
#: src/server/options.c:110
@@ -244,9 +292,8 @@ diff -u -r ../src.orig/po/speech-dispatcher.pot ./po/speech-dispatcher.pot
msgstr ""
#: src/server/options.c:113 src/clients/say/options.c:169
-diff -u -r ../src.orig/src/api/c/libspeechd.c ./src/api/c/libspeechd.c
---- ../src.orig/src/api/c/libspeechd.c 2021-04-05 20:10:31.985352701 +0000
-+++ ./src/api/c/libspeechd.c 2021-04-05 20:11:42.535312431 +0000
+--- a/src/api/c/libspeechd.c 2022-04-15 04:49:54.445394389 +0000
++++ b/src/api/c/libspeechd.c 2022-04-15 14:12:52.176382923 +0000
@@ -239,7 +239,7 @@
{
#ifdef LIBSPEECHD_DEBUG
@@ -256,9 +303,8 @@ diff -u -r ../src.orig/src/api/c/libspeechd.c ./src/api/c/libspeechd.c
if (spd_debug == NULL)
SPD_FATAL("COULDN'T ACCES FILE INTENDED FOR DEBUG");
-diff -u -r ../src.orig/src/api/python/speechd_config/config.py.in ./src/api/python/speechd_config/config.py.in
---- ../src.orig/src/api/python/speechd_config/config.py.in 2021-04-05 20:10:31.988686032 +0000
-+++ ./src/api/python/speechd_config/config.py.in 2021-04-05 20:11:42.371979199 +0000
+--- a/src/api/python/speechd_config/config.py 2022-04-15 04:49:54.446394459 +0000
++++ b/src/api/python/speechd_config/config.py 2022-04-15 14:12:52.195382894 +0000
@@ -464,7 +464,7 @@
if 'TMPDIR' in os.environ:
tmpdir = os.environ['TMPDIR']
@@ -268,9 +314,8 @@ diff -u -r ../src.orig/src/api/python/speechd_config/config.py.in ./src/api/pyth
debugdir_path = os.path.join(tmpdir, "speechd-debug")
date = datetime.date.today()
debugarchive_path = os.path.join(tmpdir, "speechd-debug-%d-%d-%d.tar.gz" %
-diff -u -r ../src.orig/src/clients/spdsend/server.c ./src/clients/spdsend/server.c
---- ../src.orig/src/clients/spdsend/server.c 2021-04-05 20:10:31.988686032 +0000
-+++ ./src/clients/spdsend/server.c 2021-04-05 20:11:42.218645962 +0000
+--- a/src/clients/spdsend/server.c 2022-04-15 04:49:54.446394459 +0000
++++ b/src/clients/spdsend/server.c 2022-04-15 14:12:52.225382849 +0000
@@ -340,7 +340,7 @@
static const char *server_socket_name()
{
@@ -280,51 +325,37 @@ diff -u -r ../src.orig/src/clients/spdsend/server.c ./src/clients/spdsend/server
system_error("memory allocation");
return name;
}
-diff -u -r ../src.orig/src/modules/festival.c ./src/modules/festival.c
---- ../src.orig/src/modules/festival.c 2021-04-05 20:10:31.992019364 +0000
-+++ ./src/modules/festival.c 2021-04-05 20:11:41.821979543 +0000
-@@ -474,7 +474,7 @@
+--- a/src/modules/festival.c 2022-04-15 04:49:54.448394598 +0000
++++ b/src/modules/festival.c 2022-04-15 14:12:52.249382814 +0000
+@@ -347,7 +347,7 @@
/* TODO: Solve this */
// DBG("Removing junk files in tmp/");
- // system("rm -f /tmp/est* 2> /dev/null");
+ // system("rm -f @TERMUX_PREFIX@/tmp/est* 2> /dev/null");
-
- sem_destroy(&festival_semaphore);
return 0;
-@@ -644,7 +644,7 @@
- char filename_debug
- [256];
- sprintf(filename_debug,
-- "/tmp/debug-festival-%d.snd",
-+ "@TERMUX_PREFIX@/tmp/debug-festival-%d.snd",
- debug_count++);
- save_FT_Wave_snd(fwave,
- filename_debug);
-@@ -789,7 +789,7 @@
- if (FestivalDebugSaveOutput) {
- char filename_debug[256];
- sprintf(filename_debug,
-- "/tmp/debug-festival-%d.snd",
-+ "@TERMUX_PREFIX@/tmp/debug-festival-%d.snd",
- debug_count++);
- save_FT_Wave_snd(fwave, filename_debug);
- }
-diff -u -r ../src.orig/src/modules/generic.c ./src/modules/generic.c
---- ../src.orig/src/modules/generic.c 2021-04-05 20:10:31.992019364 +0000
-+++ ./src/modules/generic.c 2021-04-05 20:11:41.785312899 +0000
-@@ -422,7 +422,7 @@
- if (helper)
- tmpdir = g_strdup(helper);
- else
-- tmpdir = g_strdup("/tmp");
-+ tmpdir = g_strdup("@TERMUX_PREFIX@/tmp");
+ }
- helper = g_get_home_dir();
- if (helper)
-diff -u -r ../src.orig/src/server/options.c ./src/server/options.c
---- ../src.orig/src/server/options.c 2021-04-05 20:10:31.995352695 +0000
-+++ ./src/server/options.c 2021-04-05 20:11:41.605313011 +0000
+@@ -575,7 +575,7 @@
+ char filename_debug
+ [256];
+ sprintf(filename_debug,
+- "/tmp/debug-festival-%d.snd",
++ "@TERMUX_PREFIX@/tmp/debug-festival-%d.snd",
+ debug_count++);
+ save_FT_Wave_snd(fwave,
+ filename_debug);
+@@ -716,7 +716,7 @@
+ if (FestivalDebugSaveOutput) {
+ char filename_debug[256];
+ sprintf(filename_debug,
+- "/tmp/debug-festival-%d.snd",
++ "@TERMUX_PREFIX@/tmp/debug-festival-%d.snd",
+ debug_count++);
+ save_FT_Wave_snd(fwave, filename_debug);
+ }
+--- a/src/server/options.c 2022-04-15 04:49:54.443394249 +0000
++++ b/src/server/options.c 2022-04-15 14:12:52.299382739 +0000
@@ -107,7 +107,7 @@
printf(_("Output debugging information into $TMPDIR/%s\n"),
"speechd-debug");
@@ -334,13 +365,3 @@ diff -u -r ../src.orig/src/server/options.c ./src/server/options.c
"speechd-debug");
printf(" -h, --help ");
printf(_("Print this info\n"));
-@@ -201,7 +201,7 @@
- case 'D':
- tmpdir = g_strdup(getenv("TMPDIR"));
- if (!tmpdir)
-- tmpdir = g_strdup("/tmp");
-+ tmpdir = g_strdup("@TERMUX_PREFIX@/tmp");
- SpeechdOptions.debug_destination =
- g_strdup_printf("%s/speechd-debug", tmpdir);
- g_free(tmpdir);
-Binary file (standard input) matches