update to 2.5.0 [release 2.5.0-1mamba;Sat Aug 17 2019]

This commit is contained in:
Silvan Calarco 2024-01-05 22:14:47 +01:00
parent 328cc233fb
commit 6fea523e9e
16 changed files with 465 additions and 1986 deletions

View File

@ -1,33 +0,0 @@
--- speech_tools/config/rules/library.mak.soname 2001-04-04 07:55:32.000000000 -0400
+++ speech_tools/config/rules/library.mak 2007-03-16 14:13:59.000000000 -0400
@@ -103,14 +103,14 @@
###########################################################################
lib%.so : lib%.a
- @echo Make Shared Library $*
+ @echo Make Shared Library $(*F)
@if [ ! -d shared_space ] ; then mkdir shared_space ; else $(RM) -f shared_space/*.o ; fi
@(cd shared_space ; $(AR) x ../$< )
- @echo Link Shared Library $*
- if [ -n "$(PROJECT_LIBRARY_NEEDS_SYSLIBS_$*)" ] ; then libs='$(JAVA_PROJECT_LIBS)' ; fi ;\
- $(subst XXX,$@.$(PROJECT_LIBRARY_VERSION_$*),$(MAKE_SHARED_LIB)) shared_space/*.o $(PROJECT_LIBRARY_USES_$*:%=-L. -l%) $$libs
+ @echo Link Shared Library $(*F)
+ if [ -n "$(PROJECT_LIBRARY_NEEDS_SYSLIBS_$(*F))" ] ; then libs='$(JAVA_PROJECT_LIBS)' ; fi ;\
+ $(subst XXX,$@.$(PROJECT_LIBRARY_VERSION_$(*F)),$(subst YYY,$(@F).$(PROJECT_LIBRARY_VERSION_$(*F)),$(MAKE_SHARED_LIB))) shared_space/*.o $(PROJECT_LIBRARY_USES_$(*F):%=-L. -l%) $$libs
@$(RM) -f shared_space/*.o $@
- @ln -s $@.$(PROJECT_LIBRARY_VERSION_$*) $@
+ @ln -s $(@F).$(PROJECT_LIBRARY_VERSION_$(*F)) $@
###########################################################################
## ##
--- speech_tools/config/compilers/gcc_defaults.mak.soname 2007-03-16 12:43:31.000000000 -0400
+++ speech_tools/config/compilers/gcc_defaults.mak 2007-03-16 13:30:11.000000000 -0400
@@ -78,7 +78,7 @@
SHARED_LINKFLAGS = -fno-shared-data
ifndef GCC_MAKE_SHARED_LIB
- MAKE_SHARED_LIB = $(CXX) -shared -fno-shared-data -o XXX
+ MAKE_SHARED_LIB = $(CXX) -shared -fno-shared-data -o XXX -Wl,-soname,YYY
else
MAKE_SHARED_LIB = $(GCC_MAKE_SHARED_LIB)
endif

View File

@ -1,36 +0,0 @@
diff -up festival/src/modules/Text/text_modes.cc.gcc43 festival/src/modules/Text/text_modes.cc
--- festival/src/modules/Text/text_modes.cc.gcc43 2008-02-22 21:50:33.000000000 -0500
+++ festival/src/modules/Text/text_modes.cc 2008-02-22 21:50:41.000000000 -0500
@@ -59,8 +59,8 @@ static void um_apply_filter(const EST_St
void tts_file_user_mode(LISP filename, LISP params)
{
- volatile EST_String tmpname = make_tmp_filename();
- volatile EST_String inname = get_c_string(filename);
+ EST_String tmpname = make_tmp_filename();
+ EST_String inname = get_c_string(filename);
volatile EST_String filter;
volatile EST_TokenStream ts;
volatile LISP func;
diff -up speech_tools/base_class/EST_TSimpleVector.cc.gcc43 festival/speech_tools/base_class/EST_TSimpleVector.cc
--- speech_tools/base_class/EST_TSimpleVector.cc.gcc43 2006-07-06 08:57:18.000000000 -0400
+++ speech_tools/base_class/EST_TSimpleVector.cc 2008-02-22 21:43:03.000000000 -0500
@@ -43,6 +43,7 @@
#include "EST_TSimpleVector.h"
#include "EST_matrix_support.h"
#include <fstream>
+#include <cstring>
#include "EST_cutils.h"
template<class T> void EST_TSimpleVector<T>::copy(const EST_TSimpleVector<T> &a)
diff -up speech_tools/base_class/EST_TSimpleMatrix.cc.gcc43 festival/speech_tools/base_class/EST_TSimpleMatrix.cc
--- speech_tools/base_class/EST_TSimpleMatrix.cc.gcc43 2004-09-30 08:53:35.000000000 -0400
+++ speech_tools/base_class/EST_TSimpleMatrix.cc 2008-02-22 21:43:03.000000000 -0500
@@ -44,6 +44,7 @@
#include "EST_TVector.h"
#include <fstream>
#include <iostream>
+#include <cstring>
#include "EST_cutils.h"
template<class T>

View File

@ -1,22 +0,0 @@
diff -up festival/speech_tools/speech_class/EST_wave_io.cc.gcc44 festival/speech_tools/speech_class/EST_wave_io.cc
--- speech_tools/speech_class/EST_wave_io.cc.gcc44 2009-02-26 17:26:58.672421948 -0500
+++ speech_tools/speech_class/EST_wave_io.cc 2009-02-26 17:50:02.065661124 -0500
@@ -68,7 +68,7 @@ static const char *NIST_END_SIG = "end_h
int nist_get_param_int(const char *hdr, const char *field, int def_val)
{
- char *p;
+ const char *p;
int val;
if (((p=strstr(hdr,field)) != NULL) &&
@@ -84,7 +84,8 @@ int nist_get_param_int(const char *hdr,
char *nist_get_param_str(const char *hdr, const char *field, const char *def_val)
{
- char *p,*val;
+ const char *p;
+ char *val;
int size;
if (((p=strstr(hdr,field)) != NULL) &&

View File

@ -1,35 +0,0 @@
diff -ur festival.orig/speech_tools/main/siod_main.cc festival/speech_tools/main/siod_main.cc
--- speech_tools/main/siod_main.cc 2004-09-30 08:53:36.000000000 -0400
+++ speech_tools/main/siod_main.cc 2007-03-13 00:49:35.000000000 -0400
@@ -224,10 +224,10 @@
cons(flocons(subminor),NIL))));
EST_Pathname etcdircommon = est_libdir;
- etcdircommon += "etc";
+ etcdircommon += "etc/";
- EST_Pathname etcdir = etcdircommon;
- etcdir += est_ostype;
+ EST_Pathname etcdir = {{HORRIBLELIBARCHKLUDGE}};
+ etcdir += "festival/etc/";
// Modify my PATH to include these directories
siod_set_lval("etc-path",cons(rintern(etcdir),
diff -ur festival.orig/src/arch/festival/festival.cc festival/src/arch/festival/festival.cc
--- festival.orig/src/arch/festival/festival.cc 2007-03-13 00:41:42.000000000 -0400
+++ festival/src/arch/festival/festival.cc 2007-03-13 00:47:55.000000000 -0400
@@ -349,10 +349,10 @@
proclaim_module("mplayeraudio");
// Add etc-dir path and machine specific directory etc/$OSTYPE
- char *etcdir = walloc(char,strlen(festival_libdir)+strlen("etc/")+
- strlen(FTOSTYPE)+3);
- sprintf(etcdir,"%s/etc/%s/",festival_libdir,FTOSTYPE);
- char *etcdircommon = walloc(char,strlen(festival_libdir)+strlen("etc/")+3);
+ char *etcdir = walloc(char,strlen({{HORRIBLELIBARCHKLUDGE}})+
+ strlen("etc/festival/")+2);
+ sprintf(etcdir,"%s/festival/etc/",{{HORRIBLELIBARCHKLUDGE}});
+ char *etcdircommon = walloc(char,strlen(festival_libdir)+strlen("etc/")+2);
sprintf(etcdircommon,"%s/etc/",festival_libdir);
// Modify my PATH to include these directories

View File

@ -1,37 +0,0 @@
--- speech_tools/config/rules/defaults.mak.orig 2007-03-16 12:39:12.000000000 -0400
+++ speech_tools/config/rules/defaults.mak 2007-03-16 12:39:19.000000000 -0400
@@ -69,15 +69,21 @@
MADE_FROM_ABOVE:=$(N)
endif
+ifneq ($(SHARED),0)
+ LIBTYPE=so
+else
+ LIBTYPE=a
+endif
+
ifndef PROJECT_LIBDEPS
- PROJECT_LIBDEPS = $(foreach l,$(PROJECT_LIBRARIES),$(PROJECT_LIBRARY_DIR_$(l))/lib$(l).a)
+ PROJECT_LIBDEPS = $(foreach l,$(PROJECT_LIBRARIES),$(PROJECT_LIBRARY_DIR_$(l))/lib$(l).$(LIBTYPE))
endif
ifndef PROJECT_LIBS
PROJECT_LIBS = $(foreach l,$(PROJECT_LIBRARIES),-L$(PROJECT_LIBRARY_DIR_$(l)) -l$(l))
endif
ifndef REQUIRED_LIBDEPS
- REQUIRED_LIBDEPS = $(foreach l,$(REQUIRED_LIBRARIES),$(REQUIRED_LIBRARY_DIR_$(l))/lib$(l).a)
+ REQUIRED_LIBDEPS = $(foreach l,$(REQUIRED_LIBRARIES),$(REQUIRED_LIBRARY_DIR_$(l))/lib$(l).$(LIBTYPE))
endif
ifndef REQUIRED_LIBS
REQUIRED_LIBS = $(foreach l,$(REQUIRED_LIBRARIES),-L$(REQUIRED_LIBRARY_DIR_$(l)) -l$(l))
--- festival/config/project.mak.orig 2007-03-16 13:01:40.000000000 -0400
+++ festival/config/project.mak 2007-03-16 13:02:24.000000000 -0400
@@ -84,6 +84,8 @@
PROJECT_LIBRARY_DIR_Festival = $(TOP)/src/lib
PROJECT_DEFAULT_LIBRARY = Festival
+PROJECT_LIBRARY_VERSION_Festival = $(PROJECT_VERSION).0
+
# Libraries used from other projects
REQUIRED_LIBRARIES = estools estbase eststring

View File

@ -1,20 +0,0 @@
diff -up festival/speech_tools/config/compilers/gcc_defaults.mak.no-shared-data festival/speech_tools/config/compilers/gcc_defaults.mak
--- speech_tools/config/compilers/gcc_defaults.mak.no-shared-data 2008-02-22 13:45:50.000000000 -0500
+++ speech_tools/config/compilers/gcc_defaults.mak 2008-02-22 13:46:24.000000000 -0500
@@ -73,12 +73,12 @@ PROFILE_gprof_CCFLAGS = -pg
PROFILE_gprof_CXXFLAGS = -pg
PROFILE_gprof_LINKFLAGS = -pg
-SHARED_CCFLAGS = -fPIC -fno-shared-data
-SHARED_CXXFLAGS = -fPIC -fno-shared-data
-SHARED_LINKFLAGS = -fno-shared-data
+SHARED_CCFLAGS = -fPIC
+SHARED_CXXFLAGS = -fPIC
+SHARED_LINKFLAGS =
ifndef GCC_MAKE_SHARED_LIB
- MAKE_SHARED_LIB = $(CXX) -shared -fno-shared-data -o XXX -Wl,-soname,YYY
+ MAKE_SHARED_LIB = $(CXX) -shared -o XXX -Wl,-soname,YYY
else
MAKE_SHARED_LIB = $(GCC_MAKE_SHARED_LIB)
endif

File diff suppressed because it is too large Load Diff

View File

@ -1,14 +0,0 @@
--- speech_tools/config/project.mak.orig 2007-03-13 15:27:53.000000000 -0400
+++ speech_tools/config/project.mak 2007-03-13 15:29:12.000000000 -0400
@@ -99,8 +99,9 @@
PROJECT_LIBRARY_DIR_eststring = $(TOP)/lib
PROJECT_LIBRARY_DIR_estjava = $(TOP)/lib
-PROJECT_LIBRARY_USES_estbase = eststring
-
+PROJECT_LIBRARY_USES_estbase = eststring m
+PROJECT_LIBRARY_USES_estools = estbase m ncurses
+PROJECT_LIBRARY_USES_eststring = m
PROJECT_LIBRARY_USES_estjava = estbase eststring
PROJECT_LIBRARY_VERSION_estools = $(PROJECT_VERSION).1

View File

@ -1,360 +0,0 @@
diff -ru festival-2.1/festival/src/modules/OGIcommon/OGIcommon.cc festival-2.1.buono/festival/src/modules/OGIcommon/OGIcommon.cc
--- festival-2.1/festival/src/modules/OGIcommon/OGIcommon.cc 2006-12-05 23:38:01.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIcommon/OGIcommon.cc 2012-07-17 13:44:54.871361181 +0200
@@ -111,7 +111,7 @@
// loop through items
int n=0;
- for (i0=r->first(); i0 != 0; i0=next(i0)) {
+ for (i0=r->first(); i0 != 0; i0=i0->next()) {
names.append(i0->name());
y[n] = i0->F("end");
n++;
diff -ru festival-2.1/festival/src/modules/OGIcommon/OGIduration.cc festival-2.1.buono/festival/src/modules/OGIcommon/OGIduration.cc
--- festival-2.1/festival/src/modules/OGIcommon/OGIduration.cc 2006-12-05 23:38:01.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIcommon/OGIduration.cc 2012-07-17 13:46:24.807426415 +0200
@@ -36,7 +36,7 @@
// Loop thru segments
for (useg=u->relation("Segment")->head(), sseg=u->relation("SrcSeg")->head();
((useg!=0) && (sseg!=0));
- useg=next(useg), sseg=next(sseg)) {
+ useg=useg->next(), sseg=sseg->next()) {
@@ -81,7 +81,7 @@
// Loop thru segments
for (useg=u->relation("Segment")->head(), sseg=u->relation("SrcSeg")->head();
((useg!=0) && (sseg!=0));
- useg=next(useg), sseg=next(sseg)) {
+ useg=useg->next(), sseg=sseg->next()) {
if (sseg->name() != useg->name())
sseg->set_name(useg->name());
diff -ru festival-2.1/festival/src/modules/OGIcommon/OGI_file.cc festival-2.1.buono/festival/src/modules/OGIcommon/OGI_file.cc
--- festival-2.1/festival/src/modules/OGIcommon/OGI_file.cc 2006-12-05 23:38:01.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIcommon/OGI_file.cc 2012-07-17 13:44:21.807704834 +0200
@@ -181,7 +181,7 @@
size_t fps = ftell(fp);
fprintf(fp, "KVL %d ", kvl.length());
- for (l=kvl.head(); l!=0; l=next(l)){
+ for (l=kvl.head(); l!=0; l=l->next()){
fprintf(fp, "%s %s ", kvl.key(l).str(), kvl.val(l).str());
}
fprintf(fp, "%s ", ENDKEY.str());
diff -ru festival-2.1/festival/src/modules/OGIcommon/OGIgain.cc festival-2.1.buono/festival/src/modules/OGIcommon/OGIgain.cc
--- festival-2.1/festival/src/modules/OGIcommon/OGIgain.cc 2006-12-05 23:38:01.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIcommon/OGIgain.cc 2012-07-17 13:46:56.624095722 +0200
@@ -49,7 +49,7 @@
// remove any in region where we will insert
p_gitem = NULL;
- for (gitem=grel->head(); gitem!=0; gitem=next(gitem)){
+ for (gitem=grel->head(); gitem!=0; gitem=gitem->next()){
if (p_gitem){
p_gitem->unref_all();
}
@@ -63,7 +63,7 @@
}
p_gitem = NULL;
- for (gitem=grel->head(); gitem!=0; gitem=next(gitem)){
+ for (gitem=grel->head(); gitem!=0; gitem=gitem->next()){
if (gitem->F("pos") >= B){
break;
}
@@ -130,7 +130,7 @@
float B = ffeature(seg, "start");
float E = ffeature(seg, "end");
- for (gitem=u->relation("Gain")->head(); gitem!=0; gitem=next(gitem)){
+ for (gitem=u->relation("Gain")->head(); gitem!=0; gitem=gitem->next()){
if (gitem->f_present("pos")){
if (gitem->F("pos") >= B) {
if (gitem->F("pos") <= E){
diff -ru festival-2.1/festival/src/modules/OGIcommon/OGI_WaveChunk.cc festival-2.1.buono/festival/src/modules/OGIcommon/OGI_WaveChunk.cc
--- festival-2.1/festival/src/modules/OGIcommon/OGI_WaveChunk.cc 2006-12-05 23:38:01.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIcommon/OGI_WaveChunk.cc 2012-07-17 13:45:45.779832055 +0200
@@ -22,7 +22,7 @@
int OGI_WaveChunk::which_chunk(int samp){
int out=-1;
EST_Litem *s;
- for (s=true_samp.head(); s!=0; s=next(s)){
+ for (s=true_samp.head(); s!=0; s=s->next()){
if (true_samp(s) > samp)
break;
out++;
@@ -132,22 +132,22 @@
NchunkV = true_samp.length();
true_sampV = walloc(int, true_samp.length());
- for (k=0,s=true_samp.head(); s!=0; s=next(s)){
+ for (k=0,s=true_samp.head(); s!=0; s=s->next()){
true_sampV[k++] = true_samp(s);
}
startV = walloc(int, start.length());
- for (k=0,s=start.head(); s!=0; s=next(s)){
+ for (k=0,s=start.head(); s!=0; s=s->next()){
startV[k++] = start(s);
}
endV = walloc(int, end.length());
- for (k=0,s=end.head(); s!=0; s=next(s)){
+ for (k=0,s=end.head(); s!=0; s=s->next()){
endV[k++] = end(s);
}
offsetV = walloc(int, offset.length());
- for (k=0,s=offset.head(); s!=0; s=next(s)){
+ for (k=0,s=offset.head(); s!=0; s=s->next()){
offsetV[k++] = offset(s);
}
done_setup_get = TRUE;
diff -ru festival-2.1/festival/src/modules/OGIdbase/OGIresLPC_db.cc festival-2.1.buono/festival/src/modules/OGIdbase/OGIresLPC_db.cc
--- festival-2.1/festival/src/modules/OGIdbase/OGIresLPC_db.cc 2006-12-05 23:38:05.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIdbase/OGIresLPC_db.cc 2012-07-17 13:48:38.261039341 +0200
@@ -77,7 +77,7 @@
void OGIresLPC_db::free_all_units(void){
EST_Litem *p;
- for (p = loaded_units.head(); p != 0; p = next(p)){
+ for (p = loaded_units.head(); p != 0; p = p->next()){
free_unit(loaded_units(p));
}
loaded_units.clear();
diff -ru festival-2.1/festival/src/modules/OGIdbase/OGIunitsel_diphone.cc festival-2.1.buono/festival/src/modules/OGIdbase/OGIunitsel_diphone.cc
--- festival-2.1/festival/src/modules/OGIdbase/OGIunitsel_diphone.cc 2006-12-05 23:38:05.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIdbase/OGIunitsel_diphone.cc 2012-07-17 13:48:12.474307360 +0200
@@ -40,9 +40,9 @@
EST_Relation *dbSeg_rel = u->relation("dbUnit");
/// loop through Segment items
- for (lseg=u->relation("Segment")->head(); lseg!=0; lseg=next(lseg)) {
+ for (lseg=u->relation("Segment")->head(); lseg!=0; lseg=lseg->next()) {
- rseg = next(lseg);
+ rseg = lseg->next();
if (rseg != 0){
// Left phone name
diff -ru festival-2.1/festival/src/modules/OGIresLPC/pmark_analysis.cc festival-2.1.buono/festival/src/modules/OGIresLPC/pmark_analysis.cc
--- festival-2.1/festival/src/modules/OGIresLPC/pmark_analysis.cc 2006-12-05 23:38:17.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIresLPC/pmark_analysis.cc 2012-07-17 13:53:35.315701699 +0200
@@ -250,7 +250,7 @@
EST_IList pmlist;
EST_Litem *p;
Track2IList(pmarks, (float) sp.sample_rate(), pmlist);
- for (p = pmlist.head(); p != 0; p = next(p)){
+ for (p = pmlist.head(); p != 0; p = p->next()){
if ((pmlist(p) < 0) || pmlist(p) > sp.length())
p = pmlist.remove(p);
}
@@ -615,7 +615,7 @@
static void purge_pm_list(EST_IList &pm, EST_IList &rmlist){
// in pm, remove INDICES listed in rmlist
EST_Litem *p;
- for (p=rmlist.tail(); p != 0; p = prev(p)){
+ for (p=rmlist.tail(); p != 0; p = p->prev()){
pm.remove_nth(rmlist(p));
}
}
diff -ru festival-2.1/festival/src/modules/OGIresLPC/resLPC_concat.cc festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_concat.cc
--- festival-2.1/festival/src/modules/OGIresLPC/resLPC_concat.cc 2006-12-05 23:38:17.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_concat.cc 2012-07-17 13:49:23.748566558 +0200
@@ -84,7 +84,7 @@
// Loop through the units to get size of WaveChunk -- pre-alloc
int appx_wave_size = 0; // samples
- for (newUnit=u->relation("dbUnit")->head(); newUnit != 0; newUnit=next(newUnit)){
+ for (newUnit=u->relation("dbUnit")->head(); newUnit != 0; newUnit=newUnit->next()){
indx = newUnit->f("db_indx");
appx_wave_size += udb->load_unit_udata(indx); // returns size
appx_wave_size += T0_max; // possible extra zero samples needed around each
@@ -93,7 +93,7 @@
// Loop through the units
- for (newUnit=u->relation("dbUnit")->head(); newUnit != 0; newUnit=next(newUnit)){
+ for (newUnit=u->relation("dbUnit")->head(); newUnit != 0; newUnit=newUnit->next()){
// Items in the dbUnit relation have the following features:
// - "db_indx" into dbase
// - "isNatNbL" - is the prev unit this unit's natural neighbor?
@@ -145,7 +145,7 @@
// mark voiced joins
EST_Litem *p;
- for (p = vjoin_list.head(); p != 0; p = next(p)){
+ for (p = vjoin_list.head(); p != 0; p = p->next()){
srcdata->pm.a(vjoin_list(p), "v/uv") = _V_;
}
diff -ru festival-2.1/festival/src/modules/OGIresLPC/resLPC_dump.cc festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_dump.cc
--- festival-2.1/festival/src/modules/OGIresLPC/resLPC_dump.cc 2006-12-05 23:38:17.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_dump.cc 2012-07-17 13:49:51.766275351 +0200
@@ -176,9 +176,9 @@
// Loop thru SrcSeg, record 1st pmark of each segment
dbunit=u->relation("dbUnit")->head();
names.append(EST_String(dbunit->name()));
- dbunit = next(dbunit); // skip 1st one
+ dbunit = dbunit->next(); // skip 1st one
- for ( ; dbunit!=0; dbunit=next(dbunit)){
+ for ( ; dbunit!=0; dbunit=dbunit->next()){
// pmarks
srcpmR = dbunit->I("lpcpm");
diff -ru festival-2.1/festival/src/modules/OGIresLPC/resLPC_mod.cc festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_mod.cc
--- festival-2.1/festival/src/modules/OGIresLPC/resLPC_mod.cc 2006-12-05 23:38:17.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_mod.cc 2012-07-17 13:51:30.175997155 +0200
@@ -166,7 +166,7 @@
EST_Item *lastseg = u->relation("Segment")->tail();
// Loop thru segments
- for (useg=u->relation("Segment")->head(); useg != 0; useg=next(useg)) {
+ for (useg=u->relation("Segment")->head(); useg != 0; useg=useg->next()) {
if (ph_is_silence(useg->name())){
@@ -180,7 +180,7 @@
incr = ffeature(useg,"segment_duration").Float()/5.0;
GtargL = seg_gain_target(u, useg, 1);
if (GtargL == 1.0)
- GtargL = seg_gain_target(u, next(useg), 0);
+ GtargL = seg_gain_target(u, useg->next(), 0);
OGIgain_targ(u, 0.0, firstseg->F("end"),
0.0, GtargL,
incr,"sin");
@@ -194,7 +194,7 @@
incr = ffeature(useg,"segment_duration").Float()/5.0;
GtargR = seg_gain_target(u, useg, 0);
if (GtargR == 1.0)
- GtargR = seg_gain_target(u, prev(useg), 1);
+ GtargR = seg_gain_target(u, useg->prev(), 1);
OGIgain_targ(u,ffeature(lastseg,"start").Float(),lastseg->F("end"),
GtargR, 0.0,
incr,"sin");
@@ -212,11 +212,11 @@
incr = ffeature(useg,"segment_duration").Float()/5.0;
GtargL = seg_gain_target(u, useg, 1);
if (GtargL == 1.0)
- GtargL = seg_gain_target(u, prev(useg), 1);
+ GtargL = seg_gain_target(u, useg->prev(), 1);
GtargR = seg_gain_target(u, useg, 0);
if (GtargR == 1.0)
- GtargR = seg_gain_target(u, next(useg), 0);
+ GtargR = seg_gain_target(u, useg->next(), 0);
OGIgain_targ(u,ffeature(useg,"start").Float(), mid,
GtargL, 0.0,
@@ -285,7 +285,7 @@
EST_Item *sseg;
// Loop thru SrcSeg, record 1st pmark of each segment
- for (sseg=u->relation("SrcSeg")->head(); sseg!=0; sseg=next(sseg)){
+ for (sseg=u->relation("SrcSeg")->head(); sseg!=0; sseg=sseg->next()){
src_end += sseg->F("dur");
@@ -365,7 +365,7 @@
// last one in the first unit
Lph = parent(as(daughtern(dbUnit),"SrcSeg"));
- for (dbUnit=next(dbUnit); dbUnit != 0; dbUnit=next(dbUnit)){
+ for (dbUnit=dbUnit->next(); dbUnit != 0; dbUnit=dbUnit->next()){
// first phone in this unit
Rph = parent(as(daughter1(dbUnit),"SrcSeg"));
@@ -384,17 +384,17 @@
M = dbUnit->I("lpcpm");
// begin point: limit to begin of unit and begin of segment the join is in
- B = max(prev(dbUnit)->I("lpcpm"), M - smoothlen);
+ B = max(dbUnit->prev()->I("lpcpm"), M - smoothlen);
B = max(B, Lph->I("lpcpm"));
// end point: limit to end of unit and end of segment the join is in
- if (next(dbUnit))
- nextpm = next(dbUnit)->I("lpcpm");
+ if (dbUnit->next())
+ nextpm = dbUnit->next()->I("lpcpm");
else
nextpm = srclpc.num_frames();
E = min(nextpm, M + smoothlen);
- if (next(Rph))
- E = min(E, next(Rph)->I("lpcpm")-1);
+ if (Rph->next())
+ E = min(E, Rph->next()->I("lpcpm")-1);
// do smoothing
if (doMatch)
@@ -459,7 +459,7 @@
Gtarg.begin_append(utt_targ->length());
// loop through targets
- for (targ=utt_targ->first(); targ != 0; targ=next(targ)) {
+ for (targ=utt_targ->first(); targ != 0; targ=targ->next()) {
if (targ->f_present("pos"))
Gtarg.append(targ->F("pos"), targ->F("gain"));
}
diff -ru festival-2.1/festival/src/modules/OGIresLPC/resLPC_pmark.cc festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_pmark.cc
--- festival-2.1/festival/src/modules/OGIresLPC/resLPC_pmark.cc 2006-12-05 23:38:17.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_pmark.cc 2012-07-17 13:53:12.769935094 +0200
@@ -114,13 +114,13 @@
To_UV_sec, pm, Nexc, Fs, label_vuv);
for (b=Bvsect.tail(),e=Evsect.tail();
- ((b!=0)||(e!=0)); b=prev(b),e=prev(e)){
+ ((b!=0)||(e!=0)); b=b->prev(),e=e->prev()){
make_Vsection(Bvsect(b), Evsect(e), pm, label_vuv);
// make next UNVOICED section
- if (prev(e)){
- insert_UVsection(Bvsect, Evsect, Evsect(prev(e)), Bvsect(b),
+ if (e->prev()){
+ insert_UVsection(Bvsect, Evsect, Evsect(e->prev()), Bvsect(b),
To_UV_sec, pm, Nexc, Fs, label_vuv);
}
}
@@ -190,7 +190,7 @@
// update V/UV information to reflect added pmarks
for (b=Bvsect.head(),e=Evsect.head();
- ((b!=0)||(e!=0)); b=next(b),e=next(e)){
+ ((b!=0)||(e!=0)); b=b->next(),e=e->next()){
if (Bvsect(b) >= UVsectE){
Bvsect(b) += tvect.Nelem()-Nstrays;
diff -ru festival-2.1/festival/src/modules/OGIresLPC/resLPC_resyn.cc festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_resyn.cc
--- festival-2.1/festival/src/modules/OGIresLPC/resLPC_resyn.cc 2006-12-05 23:38:17.000000000 +0100
+++ festival-2.1.buono/festival/src/modules/OGIresLPC/resLPC_resyn.cc 2012-07-17 13:52:18.790493893 +0200
@@ -88,7 +88,7 @@
EST_Item *sseg;
// set "end" of srcseg from input "dur"
- for (sseg=u->relation("SrcSeg")->head(); sseg!=0; sseg=next(sseg)){
+ for (sseg=u->relation("SrcSeg")->head(); sseg!=0; sseg=sseg->next()){
src_end += sseg->F("dur");
sseg->set("end", src_end);
}
@@ -96,7 +96,7 @@
// readjust: start from end of wave and shrink segs that are
// beyond the end
float next_end = wavend;
- for (sseg=u->relation("SrcSeg")->tail(); sseg!=u->relation("SrcSeg")->head(); sseg=prev(sseg)){
+ for (sseg=u->relation("SrcSeg")->tail(); sseg!=u->relation("SrcSeg")->head(); sseg=sseg->prev()){
if (sseg->F("end") > next_end){
sseg->set("end", next_end);
next_end -= 0.001;
@@ -107,7 +107,7 @@
// re-set "dur"
float prev_end=0.0;
- for (sseg=u->relation("SrcSeg")->head(); sseg != 0; sseg=next(sseg)){
+ for (sseg=u->relation("SrcSeg")->head(); sseg != 0; sseg=sseg->next()){
sseg->set("dur", sseg->F("end")-prev_end);
prev_end = sseg->F("end");
}

View File

@ -0,0 +1,12 @@
--- festival/src/modules/clustergen/HTS_vocoder_me.cc.omv~ 2017-12-28 22:12:57.990128926 +0100
+++ festival/src/modules/clustergen/HTS_vocoder_me.cc 2017-12-28 22:16:12.636790019 +0100
@@ -91,6 +91,9 @@
HTS_VOCODER_ME_C_START;
#include "./HTS_vocoder_me.h"
+#define HTS_Vocoder_initialize HTS_Vocoder_initialize_nodupes
+#define HTS_Vocoder_synthesize HTS_Vocoder_synthesize_nodupes
+#define HTS_Vocoder_clear HTS_Vocoder_clear_nodupes
#include "../hts_engine/HTS_vocoder.c"
/* HTS_Vocoder_initialize_me: initialize vocoder (mixed excitation) */

View File

@ -0,0 +1,84 @@
diff -Nru festival.orig/config/config.in festival/config/config.in
--- festival.orig/config/config.in 2004-06-21 15:52:42.000000000 -0500
+++ festival/config/config.in 2005-05-30 19:50:45.000000000 -0500
@@ -20,7 +20,7 @@
## You may need to set this explicitly if automounter or NFS
## side effects cause problems
-FESTIVAL_HOME := $(shell (cd $(TOP); pwd))
+FESTIVAL_HOME := /usr
###########################################################################
## Feature selection.
diff -Nru festival.orig/config/project.mak festival/config/project.mak
--- festival.orig/config/project.mak 2004-07-12 10:39:37.000000000 -0500
+++ festival/config/project.mak 2005-05-30 19:50:45.000000000 -0500
@@ -112,6 +112,5 @@
DOCXX_DIRS = $(TOP)/src
MODULE_TO_DOCXX = perl $(TOP)/src/modules/utilities/extract_module_doc++.prl
-FTLIBDIR = $(FESTIVAL_HOME)/lib
-
+FTLIBDIR = /usr/share/festival
diff -Nru festival.orig/config/systems/Linux.mak festival/config/systems/Linux.mak
--- festival.orig/config/systems/Linux.mak 2001-04-04 06:55:32.000000000 -0500
+++ festival/config/systems/Linux.mak 2005-05-30 19:51:28.000000000 -0500
@@ -40,13 +40,13 @@
include $(EST)/config/systems/default.mak
-DEFAULT_JAVA_HOME=/usr/lib/jdk-1.1.6
+DEFAULT_JAVA_HOME=/usr/lib/jvm/java-6-openjdk
JAVA=/usr/bin/java
JAVAC=/usr/bin/javac
JAVAH=/usr/bin/javah
TCL_LIBRARY = -ltcl
-OS_LIBS = -ldl
+OS_LIBS = -ldl -lncurses
## the native audio module for this type of system
NATIVE_AUDIO_MODULE = LINUX16
diff -Nru festival.orig/config/systems/default.mak festival/config/systems/default.mak
--- festival.orig/config/systems/default.mak 2001-04-04 06:55:32.000000000 -0500
+++ festival/config/systems/default.mak 2005-05-30 19:50:45.000000000 -0500
@@ -40,7 +40,7 @@
###########################################################################
## Installation directories
-INSTALL_PREFIX=/usr/local
+INSTALL_PREFIX=/usr
BINDIR=$(INSTALL_PREFIX)/bin
LIBDIR=$(INSTALL_PREFIX)/lib
@@ -63,8 +63,8 @@
###########################################################################
## Where to find Enlightenment Speech Demon
-ESD_INCLUDE = /usr/local/include
-ESD_LIB = /usr/local/lib
+ESD_INCLUDE = /usr/include
+ESD_LIB = /usr/lib
###########################################################################
## Where to find X11
@@ -75,14 +75,14 @@
###########################################################################
## TCL support
-TCL_INCLUDE = /usr/local/include
-TCL_LIB = /usr/local/lib
-TCL_LIBRARY = -ltcl7.6
+TCL_INCLUDE = /usr/include
+TCL_LIB = /usr/lib
+TCL_LIBRARY = -ltcl
###########################################################################
## Efence library for malloc debugging
-EFENCE_LIB = /usr/local/lib
+EFENCE_LIB = /usr/lib
###########################################################################
## Commands.

View File

@ -0,0 +1,11 @@
--- festival-2.5.0/speech_tools/configure.in.orig 2019-12-12 10:53:45.927000000 +0100
+++ festival-2.5.0/speech_tools/configure.in 2019-12-12 10:52:46.323000000 +0100
@@ -42,7 +42,7 @@
AC_C_BIGENDIAN
-AC_CHECK_LIB(ncurses, tputs, [TERMCAPLIB=-lncurses], [TERMCAPLIB=-lcurses])
+AC_CHECK_LIB(ncurses, tputs, [TERMCAPLIB="-lncurses -ltinfo"], [TERMCAPLIB="-lcurses -ltinfo" ])
dnl if test "$TERMCAPLIB" != "-ltermcap"; then
dnl AC_CHECK_LIB(termcap, tputs, [TERMCAPLIB=-ltermcap], [TERMCAPLIB=-lncurses])
dnl

View File

@ -0,0 +1,72 @@
--- speech_tools/config/rules/defaults.mak.orig 2007-03-16 12:39:12.000000000 -0400
+++ speech_tools/config/rules/defaults.mak 2007-03-16 12:39:19.000000000 -0400
@@ -69,15 +69,21 @@
MADE_FROM_ABOVE:=$(N)
endif
+ifneq ($(SHARED),0)
+ LIBTYPE=so
+else
+ LIBTYPE=a
+endif
+
ifndef PROJECT_LIBDEPS
- PROJECT_LIBDEPS = $(foreach l,$(PROJECT_LIBRARIES),$(PROJECT_LIBRARY_DIR_$(l))/lib$(l).a)
+ PROJECT_LIBDEPS = $(foreach l,$(PROJECT_LIBRARIES),$(PROJECT_LIBRARY_DIR_$(l))/lib$(l).$(LIBTYPE))
endif
ifndef PROJECT_LIBS
PROJECT_LIBS = $(foreach l,$(PROJECT_LIBRARIES),-L$(PROJECT_LIBRARY_DIR_$(l)) -l$(l))
endif
ifndef REQUIRED_LIBDEPS
- REQUIRED_LIBDEPS = $(foreach l,$(REQUIRED_LIBRARIES),$(REQUIRED_LIBRARY_DIR_$(l))/lib$(l).a)
+ REQUIRED_LIBDEPS = $(foreach l,$(REQUIRED_LIBRARIES),$(REQUIRED_LIBRARY_DIR_$(l))/lib$(l).$(LIBTYPE))
endif
ifndef REQUIRED_LIBS
REQUIRED_LIBS = $(foreach l,$(REQUIRED_LIBRARIES),-L$(REQUIRED_LIBRARY_DIR_$(l)) -l$(l))
--- festival/config/project.mak.orig 2007-03-16 13:01:40.000000000 -0400
+++ festival/config/project.mak 2007-03-16 13:02:24.000000000 -0400
@@ -83,6 +83,8 @@
PROJECT_LIBRARY_DIR_Festival = $(TOP)/src/lib
PROJECT_DEFAULT_LIBRARY = Festival
+PROJECT_LIBRARY_VERSION_Festival = $(PROJECT_VERSION).0
+
# Libraries used from other projects
REQUIRED_LIBRARIES = estools estbase eststring
diff -p -up festival/speech_tools/config/compilers/gcc_defaults.mak.bettersoname festival/speech_tools/config/compilers/gcc_defaults.mak
--- speech_tools/config/compilers/gcc_defaults.mak.bettersoname 2010-12-06 10:25:35.000000000 +0100
+++ speech_tools/config/compilers/gcc_defaults.mak 2010-12-06 10:27:51.000000000 +0100
@@ -83,7 +83,7 @@ SHARED_CXXFLAGS = -fPIC
ifndef GCC_MAKE_SHARED_LIB
# Older versions of gcc might have required -fno-shared-data
# MAKE_SHARED_LIB = $(CXX) -shared -fno-shared-data -o XXX
- MAKE_SHARED_LIB = $(CXX) -shared -o XXX
+ MAKE_SHARED_LIB = $(CXX) -shared -o XXX -Wl,-soname,YYY
else
MAKE_SHARED_LIB = $(GCC_MAKE_SHARED_LIB)
endif
diff -p -up festival/speech_tools/config/rules/library.mak.bettersoname festival/speech_tools/config/rules/library.mak
--- speech_tools/config/rules/library.mak.bettersoname 2001-04-04 13:55:32.000000000 +0200
+++ speech_tools/config/rules/library.mak 2010-12-06 10:25:35.000000000 +0100
@@ -103,14 +103,14 @@ endif
###########################################################################
lib%.so : lib%.a
- @echo Make Shared Library $*
+ @echo Make Shared Library $(*F)
@if [ ! -d shared_space ] ; then mkdir shared_space ; else $(RM) -f shared_space/*.o ; fi
@(cd shared_space ; $(AR) x ../$< )
- @echo Link Shared Library $*
- if [ -n "$(PROJECT_LIBRARY_NEEDS_SYSLIBS_$*)" ] ; then libs='$(JAVA_PROJECT_LIBS)' ; fi ;\
- $(subst XXX,$@.$(PROJECT_LIBRARY_VERSION_$*),$(MAKE_SHARED_LIB)) shared_space/*.o $(PROJECT_LIBRARY_USES_$*:%=-L. -l%) $$libs
+ @echo Link Shared Library $(*F)
+ if [ -n "$(PROJECT_LIBRARY_NEEDS_SYSLIBS_$(*F))" ] ; then libs='$(JAVA_PROJECT_LIBS)' ; fi ;\
+ $(subst XXX,$@.$(PROJECT_LIBRARY_VERSION_$(*F)),$(subst YYY,$(@F).$(PROJECT_LIBRARY_VERSION_$(*F)),$(MAKE_SHARED_LIB))) shared_space/*.o $(PROJECT_LIBRARY_USES_$(*F):%=-L. -l%) $$libs
@$(RM) -f shared_space/*.o $@
- @ln -s $@.$(PROJECT_LIBRARY_VERSION_$*) $@
+ @ln -s $(@F).$(PROJECT_LIBRARY_VERSION_$(*F)) $@
###########################################################################
## ##

View File

@ -0,0 +1,121 @@
diff -aur speech_tools.old//config/compilers/jdk.mak speech_tools/config/compilers/jdk.mak
--- speech_tools.old//config/compilers/jdk.mak 2001-04-04 19:55:32.000000000 +0800
+++ speech_tools/config/compilers/jdk.mak 2010-12-08 12:14:56.076668109 +0800
@@ -52,7 +52,7 @@
endif
endif
-JAVAFLAGS = -depend
+JAVAFLAGS =
DEBUG_JAVAFLAGS = -g
diff -aur speech_tools.old//config/config.in speech_tools/config/config.in
--- speech_tools.old//config/config.in 2008-10-29 03:20:49.000000000 +0800
+++ speech_tools/config/config.in 2010-12-08 12:17:50.110001443 +0800
@@ -15,7 +15,7 @@
## You may need to set this explicitly if automounter or NFS
## side effects cause problems
-EST_HOME := $(shell (cd $(EST); pwd))
+EST_HOME := /usr
###########################################################################
## System type.
@@ -28,14 +28,14 @@
##
## Examples: sparc_SunOS5 intel_Linux2.0
-SYSTEM_TYPE=$(MACHINETYPE)_$(OSTYPE)$(OSREV)
+SYSTEM_TYPE=Linux
###########################################################################
## Compiler.
## The definitions are in compilers/$(COMPILER).mak
## Examples: gcc suncc egcs gcc28
-COMPILER=@COMPILERTYPE@
+COMPILER=gcc
###########################################################################
## Java system to use if you include the Java interface.
@@ -61,7 +61,7 @@
# VERBOSE=1
#DEBUG=1
# PROFILE=gprof
-#SHARED=2
+SHARED=2
## Directory specific selections which override the above
@@ -98,7 +98,7 @@
## It may not work under all systems, so may be optionally omitted.
INCLUDE_MODULES += EDITLINE
-TERMCAPLIB = @TERMCAPLIB@
+TERMCAPLIB =
# speech recognition
#INCLUDE_MODULES += ASR
Only in speech_tools/config: config.in.orig
diff -aur speech_tools.old//config/systems/default.mak speech_tools/config/systems/default.mak
--- speech_tools.old//config/systems/default.mak 2005-07-17 21:06:49.000000000 +0800
+++ speech_tools/config/systems/default.mak 2010-12-08 12:14:56.076668109 +0800
@@ -40,7 +40,7 @@
###########################################################################
## Installation directories
-INSTALL_PREFIX=/usr/local
+INSTALL_PREFIX=/usr
BINDIR=$(INSTALL_PREFIX)/bin
LIBDIR=$(INSTALL_PREFIX)/lib
@@ -63,8 +63,8 @@
###########################################################################
## Where to find Enlightenment Speech Demon
-ESD_INCLUDE = /usr/local/include
-ESD_LIB = /usr/local/lib
+ESD_INCLUDE = /usr/include
+ESD_LIB = /usr/lib
###########################################################################
## Where to find X11
@@ -75,14 +75,14 @@
###########################################################################
## TCL support
-TCL_INCLUDE = /usr/local/include
-TCL_LIB = /usr/local/lib
-TCL_LIBRARY = -ltcl7.6
+TCL_INCLUDE = /usr/include
+TCL_LIB = /usr/lib
+TCL_LIBRARY = -ltcl
###########################################################################
## Efence library for malloc debugging
-EFENCE_LIB = /usr/local/lib
+EFENCE_LIB = /usr/lib
###########################################################################
## Commands.
diff -aur speech_tools.old//config/systems/Linux.mak speech_tools/config/systems/Linux.mak
--- speech_tools.old//config/systems/Linux.mak 2001-04-04 19:55:32.000000000 +0800
+++ speech_tools/config/systems/Linux.mak 2010-12-08 12:14:56.076668109 +0800
@@ -40,13 +40,13 @@
include $(EST)/config/systems/default.mak
-DEFAULT_JAVA_HOME=/usr/lib/jdk-1.1.6
+DEFAULT_JAVA_HOME=/usr/lib/jvm/java-6-openjdk
JAVA=/usr/bin/java
JAVAC=/usr/bin/javac
JAVAH=/usr/bin/javah
TCL_LIBRARY = -ltcl
-OS_LIBS = -ldl
+OS_LIBS = -ldl -lncurses
## the native audio module for this type of system
NATIVE_AUDIO_MODULE = LINUX16

View File

@ -1,5 +1,6 @@
%define majver %(echo %version | cut -d. -f1-2)
Name: festival Name: festival
Version: 2.4 Version: 2.5.0
Release: 1mamba Release: 1mamba
Summary: A general framework for building speech synthesis systems Summary: A general framework for building speech synthesis systems
Group: System/Multimedia Group: System/Multimedia
@ -7,8 +8,8 @@ Vendor: openmamba
Distribution: openmamba Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it> Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://www.cstr.ed.ac.uk/projects/festival/ URL: http://www.cstr.ed.ac.uk/projects/festival/
Source: http://festvox.org/packed/festival/latest/festival-%{version}-release.tar.gz Source: http://www.festvox.org/packed/festival/%{majver}/festival-%{version}-release.tar.gz
Source1: http://www.cstr.ed.ac.uk/downloads/festival/latest/speech_tools-%{version}-release.tar.gz Source1: http://www.festvox.org/packed/festival/%{majver}/speech_tools-%{version}-release.tar.gz
Source2: http://festvox.org/packed/festival/latest/festlex_CMU.tar.gz Source2: http://festvox.org/packed/festival/latest/festlex_CMU.tar.gz
Source3: http://festvox.org/packed/festival/latest/festlex_OALD.tar.gz Source3: http://festvox.org/packed/festival/latest/festlex_OALD.tar.gz
Source4: http://festvox.org/packed/festival/latest/festlex_POSLEX.tar.gz Source4: http://festvox.org/packed/festival/latest/festlex_POSLEX.tar.gz
@ -25,39 +26,51 @@ Source14: http://festvox.org/packed/festival/latest/festvox_cstr_us_jmk_arc
Source15: http://festvox.org/packed/festival/latest/festvox_us1.tar.gz Source15: http://festvox.org/packed/festival/latest/festvox_us1.tar.gz
Source16: http://festvox.org/packed/festival/latest/festvox_us2.tar.gz Source16: http://festvox.org/packed/festival/latest/festvox_us2.tar.gz
Source17: http://festvox.org/packed/festival/latest/festvox_us3.tar.gz Source17: http://festvox.org/packed/festival/latest/festvox_us3.tar.gz
Source18: http://www2.pd.istc.cnr.it/FESTIVAL/ogi/OGIresLPC-2.2.tar.gz #Source18: http://www2.pd.istc.cnr.it/FESTIVAL/ogi/OGIresLPC-2.2.tar.gz
Patch0: festival-1.96-enable_esd_audio.patch Patch0: festival-1.96-enable_esd_audio.patch
Patch1: festival-1.96-gcc43.patch
Patch2: festival-1.96-gcc44.patch
Patch3: festival-1.96-etcsiteinit.patch Patch3: festival-1.96-etcsiteinit.patch
Patch4: festival-1.96-main-shared-build.patch
Patch5: festival-1.96-kludge-etcpath-into-libarch.patch
Patch6: festival-1.96-speechtools-ohjeezcxxisnotgcc.patch Patch6: festival-1.96-speechtools-ohjeezcxxisnotgcc.patch
Patch7: festival-1.96-bettersonamehack.patch Patch13: festival-2.5.0-libncurses-6.1.20190728.patch
Patch8: festival-1.96-no-shared-data.patch Patch14: festival-2.5.0-shared-build.patch
Patch9: festival-1.96-speechtools-linklibswithotherlibs.patch Patch15: festival-2.5.0-speechconfig.patch
Patch10: festival-1.96-speechtools-1.2.96-beta+awb.patch Patch16: festival-2.5.0-compile.patch
Patch11: speech_tools-2.1-gcc-4.7.patch Patch17: festival-2.5.0-festconfig.patch
Patch12: %{name}-2.1-OGIresLPC-gcc-4.7.patch
License: MIT License: MIT
## AUTOBUILDREQ-BEGIN ## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel BuildRequires: glibc-devel
BuildRequires: ldconfig
BuildRequires: libalsa-devel BuildRequires: libalsa-devel
BuildRequires: libgcc BuildRequires: libgcc
BuildRequires: libgomp-devel
BuildRequires: libncurses-devel BuildRequires: libncurses-devel
BuildRequires: libstdc++6-devel BuildRequires: libstdc++6-devel
## AUTOBUILDREQ-END ## AUTOBUILDREQ-END
BuildRequires: libesound-devel >= 0.2.36 BuildRequires: libesound-devel >= 0.2.36
Requires: festivalvoice Requires: festivalvoice
Requires: festival-voice-en = %{version} Requires: festival-voice-en = %{?epoch:%epoch:}%{version}-%{release}
Requires(post):%{__install_info} Requires(post):%{__install_info}
BuildRoot: %{_tmppath}/%{name}-%{version}-root Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
%description %description
Festival offers a general framework for building speech synthesis systems as well as including examples of various modules. As a whole it offers full text to speech through a number APIs: from shell level, though a Scheme command interpreter, as a C++ library, from Java, and an Emacs interface. Festival is multi-lingual (currently English (British and American), and Spanish) though English is the most advanced. Other groups release new languages for the system. And full tools and documentation for build new voices are available through Carnegie Mellon's FestVox project (http://festvox.org) Festival offers a general framework for building speech synthesis systems as well as including examples of various modules. As a whole it offers full text to speech through a number APIs: from shell level, though a Scheme command interpreter, as a C++ library, from Java, and an Emacs interface. Festival is multi-lingual (currently English (British and American), and Spanish) though English is the most advanced. Other groups release new languages for the system. And full tools and documentation for build new voices are available through Carnegie Mellon's FestVox project (http://festvox.org)
The system is written in C++ and uses the Edinburgh Speech Tools Library for low level architecture and has a Scheme (SIOD) based command interpreter for control. Documentation is given in the FSF texinfo format which can generate, a printed manual, info files and HTML. The system is written in C++ and uses the Edinburgh Speech Tools Library for low level architecture and has a Scheme (SIOD) based command interpreter for control. Documentation is given in the FSF texinfo format which can generate, a printed manual, info files and HTML.
Festival is free software. Festival and the speech tools are distributed under an X11-type licence allowing unrestricted commercial and non-commercial use alike. Festival is free software. Festival and the speech tools are distributed under an X11-type licence allowing unrestricted commercial and non-commercial use alike.
%package -n lib%{name}
Summary: Shared libraries provided by %{name}
Group: System/Libraries
%description -n lib%{name}
Shared libraries provided by %{name}.
%package -n lib%{name}-devel
Summary: Headers and static libraries for development with %{name}
Group: Development/Libraries
Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
%description -n lib%{name}-devel
Headers and static libraries for development %{name}.
%package voice-us %package voice-us
Summary: American English language voice files for festival Summary: American English language voice files for festival
Group: System/Multimedia Group: System/Multimedia
@ -85,11 +98,13 @@ Provides: festivalvoice
%description voice-it %description voice-it
English language voice files for festival. English language voice files for festival.
%debug_package
%prep %prep
#% setup -q -n %{name} %setup -q -c -a0 -a1 -a2 -a3 -a4 -a5 -a6 -a7 -a8 -a9 -a10 -a11 -a12 -a13 -a14 -a15 -a16 -a17
#-D -T #-a18
#% setup -q -D -T
#:<< __EOF #:<< __EOF
%setup -q -c -a0 -a1 -a2 -a3 -a4 -a5 -a6 -a7 -a8 -a9 -a10 -a11 -a12 -a13 -a14 -a15 -a16 -a17 -a18
unzip italian_scm.zip unzip italian_scm.zip
unzip lex_ifd.zip unzip lex_ifd.zip
unzip lp_diphone.zip unzip lp_diphone.zip
@ -99,22 +114,18 @@ unzip pc_diphone.zip
unzip pc_mbrola_unix.zip unzip pc_mbrola_unix.zip
unzip pc_ogi_diphone.zip unzip pc_ogi_diphone.zip
#%patch1 -p0
#%patch2 -p0
%patch3 -p0 %patch3 -p0
#%patch4 -p0
#%patch5 -p0
%patch6 -p0 %patch6 -p0
#%patch7 -p0 %patch13 -p1
#%patch8 -p0 %patch14 -p0
#%patch9 -p0 %patch15 -p0
#%patch10 -p0 %patch16 -p0
#cd speech_tools %patch17 -p0
#%patch11 -p1
#cd ..
%patch12 -p1
echo "ALSO_INCLUDE += OGIcommon OGIeffect OGIinsert OGIdbase" >> festival/config/config.in # Avoid make failure on making scripts and docs
sed -i "s|examples bin doc|examples|" festival/Makefile
#echo "ALSO_INCLUDE += OGIcommon OGIeffect OGIinsert OGIdbase" >> festival/config/config.in
# FIXME: patched to build but main final link fails with this module # FIXME: patched to build but main final link fails with this module
# OGIresLPC # OGIresLPC
@ -122,132 +133,166 @@ echo "ALSO_INCLUDE += OGIcommon OGIeffect OGIinsert OGIdbase" >> festival/config
#:<< __EOF #:<< __EOF
cd speech_tools cd speech_tools
%configure %configure
%make -j1
%make -j1 \
OPTIMISE_CFLAGS="$RPM_OPT_FLAGS -fPIC -fcommon" \
OPTIMISE_CCFLAGS="$RPM_OPT_FLAGS -fPIC -fcommon"
# libs="-L$(pwd)/lib" # libs="-L$(pwd)/lib"
# CFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing" \
# CXXFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing"
cd ../festival cd ../festival
#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/src/lib #export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/src/lib
%configure %configure
%make -j1 FTLIBDIR=%{_datadir}/festival/lib %make -j1 \
# CFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing" \ OPTIMISE_CFLAGS="$RPM_OPT_FLAGS -fPIC" \
# CXXFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing" OPTIMISE_CCFLAGS="$RPM_OPT_FLAGS -fPIC"
#FTLIBDIR=%{_datadir}/festival/lib \
%install %install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" [ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
cd speech_tools cd speech_tools
#make INSTALLED_LIB=%{buildroot}%{_libdir} make_installed_lib_shared
#install lib/libestools.so* %{buildroot}%{_libdir} #binaries
make INSTALLED_BIN=%{buildroot}%{_libexecdir}/speech-tools make_installed_bin_static #move binaries over wrappers (FS#7864)
#cd include for i in $(grep -l 'EST shared script' bin/*); do
#for d in $( find . -type d | grep -v win32 ); do cp -f main/$(basename $i) bin;
# make -w -C $d INCDIR=%{buildroot}%{_includedir}/speech_tools/$d install_incs done
#done install -d -m0755 %{buildroot}%{_bindir}
install -m755 -t %{buildroot}%{_bindir} bin/[a-z]*
rm -f %{buildroot}%{_bindir}/{est_gdb,est_examples,est_program}
#libraries
install -d -m0755 %{buildroot}%{_libdir}
install -m755 -t %{buildroot}%{_libdir} lib/lib*.so.*
ln -sf libestbase.so.%{version}.1 %{buildroot}%{_libdir}/libestbase.so
ln -sf libestools.so.%{version}.1 %{buildroot}%{_libdir}/libestools.so
ln -sf libeststring.so.1.2 %{buildroot}%{_libdir}/libeststring.so
#headers
install -d -m755 %{buildroot}%{_includedir}/speech_tools/{,instantiate,ling_class,rxp,sigpr,unix}
for dir in {.,instantiate,ling_class,rxp,sigpr,unix}; do
install -m644 -t %{buildroot}%{_includedir}/speech_tools/$dir include/$dir/*.h
done
cd .. cd ..
cd festival cd festival
make INSTALLED_BIN=%{buildroot}%{_bindir} make_installed_bin_static
# remove builddir inserted in some scripts # binaries
sed -i "s|%{_builddir}/%{name}-%{version}/%{name}|%{_prefix}|" \ for b in festival festival_client; do
bin/text2wave examples/saytime install -m755 src/main/$b %{buildroot}/usr/bin/$b
done
install -D -m0755 bin/text2wave %{buildroot}%{_bindir} for b in benchmark dumpfeats durmeanstd latest make_utts powmeanstd \
install -D -m0755 examples/saytime %{buildroot}%{_bindir} run-festival-script saytime scfg_parse_text text2pos text2wave; do
install -m755 examples/$b %{buildroot}%{_bindir}/$b
done
#install -D -m0755 festival/src/main/festival %{buildroot}%{_bindir}/festival # libraries
#install -D -m0755 festival/src/main/festival_client %{buildroot}%{_bindir}/festival_client install -m755 src/lib/libFestival.so.* %{buildroot}%{_libdir}
#cp src/lib/libFestival.so* %{buildroot}%{_libdir} ln -sf libFestival.so.%{version}.0 %{buildroot}%{_libdir}/libFestival.so
install -d %{buildroot}%{_datadir}/festival %{buildroot}%{_sysconfdir}/festival %{buildroot}%{_mandir}/man1 #headers
cp -a lib %{buildroot}%{_datadir}/festival/ install -dm755 %{buildroot}%{_includedir}/festival
mv %{buildroot}%{_datadir}/festival/lib/siteinit.scm %{buildroot}%{_sysconfdir}/festival/ install -m644 -t %{buildroot}%{_includedir}/festival src/include/*.h
cp -a doc/*.1 %{buildroot}%{_mandir}/man1
#mkdir -p %{buildroot}%{_includedir}/festival # datadir
#cp -a src/include/* %{buildroot}%{_includedir}/festival install -d %{buildroot}%{_datadir}/festival
cp -a lib/* %{buildroot}%{_datadir}/festival/
rm -fv $(find %{buildroot}%{_datadir}/festival -name Makefile)
rm -fv $(find %{buildroot}%{_bindir} -name Makefile)
rm -rf %{buildroot}%{_datadir}/festival/lib/voices-multisyn/english #create voices directory
rm -f %{buildroot}%{_datadir}/festival/lib/Makefile install -dm755 %{buildroot}%{_datadir}/festival/voices
rm -f %{buildroot}%{_datadir}/festival/lib/multisyn/Makefile
rm -f %{buildroot}%{_datadir}/festival/lib/etc/Makefile # Ok now some general cleanups (from Arch Linux)
for i in $(find %{buildroot}%{_includedir} -type f); do
sed -i -e 's,"EST.*\.h",\<speech_tools/&\>,g' -e 's,speech_tools/\",speech_tools/,g' \
-e 's,"siod.*\.h",\<speech_tools/&\>,g' -e 's,speech_tools/\",speech_tools/,g' \
-e 's,"instantiate/.*\.h",\<speech_tools/&\>,g' -e 's,speech_tools/instantiate/\",speech_tools/instantiate/,g' -e 's,"instantiate,instantiate,g' \
-e 's,"ling_class/.*\.h",\<speech_tools/&\>,g' -e 's,speech_tools/ling_class/\",speech_tools/ling_class/,g' -e 's,"ling_class,ling_class,g' \
-e 's,"rxp/.*\.h",\<speech_tools/&\>,g' -e 's,speech_tools/rxp/\",speech_tools/rxp/,g' -e 's,"rxp,rxp,g' \
-e 's,"sigpr/.*\.h",\<speech_tools/&\>,g' -e 's,speech_tools/sigpr/\",speech_tools/sigpr/,g' -e 's,"sigpr,sigpr,g' \
-e 's,"unix/.*\.h",\<speech_tools/&\>,g' -e 's,speech_tools/unix/\",speech_tools/unix/,g' -e 's,\.h\">,.h\>,g' -e 's,"unix,unix,g' \
-e 's,"festival\.h",\<festival/festival.h\>,g' \
-e 's,"ModuleDescription\.h",\<festival/ModuleDescription.h\>,g' \
-e 's,"Phone\.h",\<festival/Phone.h\>,g' $i
done
%clean %clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" [ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post -p /sbin/ldconfig %post-n lib%{name} -p /sbin/ldconfig
%postun -n lib%{name} -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files %files
%defattr(-,root,root) %defattr(-,root,root)
%dir %{_sysconfdir}/festival %{_bindir}/*
%config(noreplace) %{_sysconfdir}/festival/*.scm
%{_bindir}/festival
%{_bindir}/festival_client
%{_bindir}/festival_server
%{_bindir}/festival_server_control
%{_bindir}/saytime
%{_bindir}/text2wave
%{_libexecdir}/speech-tools/*
#%dir %{_includedir}/festival
#%{_includedir}/festival/*
#%dir %{_includedir}/speech_tools
#%{_includedir}/speech_tools/*
#%{_libdir}/libFestival.so
#%{_libdir}/libFestival.so.*
#%{_libdir}/libestbase.a
#%{_libdir}/libestbase.so
#%{_libdir}/libestbase.so.*
#%{_libdir}/libestools.a
#%{_libdir}/libestools.so
#%{_libdir}/libestools.so.*
#%{_libdir}/libeststring.a
#%{_libdir}/libeststring.so
#%{_libdir}/libeststring.so.*
%{_datadir}/festival/lib/*.dtd
%{_datadir}/festival/lib/VCLocalRules
%{_datadir}/festival/lib/dicts/cmu/*
%{_datadir}/festival/lib/dicts/oald/*
%{_datadir}/festival/lib/dicts/wsj.wp39.*
%{_datadir}/festival/lib/dicts/COPYING.poslex
%{_datadir}/festival/lib/multisyn/*.scm
%{_datadir}/festival/lib/sable-latin.ent
%{_datadir}/festival/lib/scfg_wsj_wp20.gram
%{_datadir}/festival/lib/*.ngrambin
%{_datadir}/festival/lib/speech.properties
%{_datadir}/festival/lib/etc/unknown_Linux/*
%{_datadir}/festival/lib/etc/unknown_Linux/.made
%{_datadir}/festival/lib/etc/email_filter
%{_datadir}/festival/lib/festival.el
%dir %{_datadir}/festival %dir %{_datadir}/festival
%{_datadir}/festival/lib/*.scm %{_datadir}/festival/*.dtd
%doc festival/COPYING festival/NEWS festival/README %{_datadir}/festival/VCLocalRules
%{_datadir}/festival/dicts/cmu/*
%{_datadir}/festival/dicts/oald/*
%{_datadir}/festival/dicts/wsj.wp39.*
%{_datadir}/festival/dicts/COPYING.poslex
%{_datadir}/festival/multisyn/*.scm
%{_datadir}/festival/sable-latin.ent
%{_datadir}/festival/scfg_wsj_wp20.gram
%{_datadir}/festival/*.ngrambin
%{_datadir}/festival/speech.properties
%{_datadir}/festival/etc/Linux/.made
%{_datadir}/festival/etc/Linux/audsp
%{_datadir}/festival/etc/email_filter
%{_datadir}/festival/festival.el
%{_datadir}/festival/*.scm
#%{_mandir}/man1/festival.1*
#%{_mandir}/man1/festival_client.1*
%{_mandir}/man1/festival.1* %files -n lib%{name}
%{_mandir}/man1/festival_client.1* %defattr(-,root,root)
%{_libdir}/libFestival.so.*
%{_libdir}/libestbase.so.*
%{_libdir}/libestools.so.*
%{_libdir}/libeststring.so.*
%doc festival/COPYING
%files -n lib%{name}-devel
%defattr(-,root,root)
%dir %{_includedir}/festival
%{_includedir}/festival/*.h
%dir %{_includedir}/speech_tools
%{_includedir}/speech_tools/*
%{_libdir}/libFestival.so
%{_libdir}/libestbase.so
%{_libdir}/libestools.so
%{_libdir}/libeststring.so
%doc festival/NEWS
%files voice-us %files voice-us
%defattr(-,root,root) %defattr(-,root,root)
%dir %{_datadir}/festival/lib/voices/us %dir %{_datadir}/festival/voices/us
%{_datadir}/festival/lib/voices/us/* %{_datadir}/festival/voices/us/*
%dir %{_datadir}/festival/voices-multisyn/english
%{_datadir}/festival/voices-multisyn/english/*
%files voice-en %files voice-en
%defattr(-,root,root) %defattr(-,root,root)
%dir %{_datadir}/festival/lib/voices/english %dir %{_datadir}/festival/voices/english
%{_datadir}/festival/lib/voices/english/* %{_datadir}/festival/voices/english/*
%files voice-it %files voice-it
%defattr(-,root,root) %defattr(-,root,root)
%dir %{_datadir}/festival/lib/voices/italian %dir %{_datadir}/festival/voices/italian
%{_datadir}/festival/lib/voices/italian/* %{_datadir}/festival/voices/italian/*
%{_datadir}/festival/lib/italian_scm/* %{_datadir}/festival/italian_scm/*
%{_datadir}/festival/lib/dicts/ifd* %{_datadir}/festival/dicts/ifd*
%changelog %changelog
* Sat Aug 17 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 2.5.0-1mamba
- update to 2.5.0
* Tue Dec 08 2015 Automatic Build System <autodist@mambasoft.it> 2.4-1mamba * Tue Dec 08 2015 Automatic Build System <autodist@mambasoft.it> 2.4-1mamba
- automatic version update by autodist - automatic version update by autodist

View File

@ -1,82 +0,0 @@
diff -Nru speech-tools-2.1~release/debian/patches/ftbfs_gcc4.7.diff speech-tools-2.1~release/debian/patches/ftbfs_gcc4.7.diff
--- a/base_class/EST_TSimpleMatrix.cc
+++ b/base_class/EST_TSimpleMatrix.cc
@@ -44,6 +44,7 @@
#include "EST_TVector.h"
#include <fstream>
#include <iostream>
+#include <cstring>
#include "EST_cutils.h"
template<class T>
@@ -98,7 +99,7 @@ void EST_TSimpleMatrix<T>::resize(int ne
{
int copy_r = Lof(this->num_rows(), new_rows);
- just_resize(new_rows, new_cols, &old_vals);
+ this->just_resize(new_rows, new_cols, &old_vals);
for (q=0; q<(copy_r*new_cols*sizeof(T)); q++) /* memcpy */
((char *)this->p_memory)[q] = ((char *)old_vals)[q];
@@ -127,9 +128,9 @@ void EST_TSimpleMatrix<T>::resize(int ne
int copy_r = Lof(this->num_rows(), new_rows);
int copy_c = Lof(this->num_columns(), new_cols);
- just_resize(new_rows, new_cols, &old_vals);
+ this->just_resize(new_rows, new_cols, &old_vals);
- set_values(old_vals,
+ this->set_values(old_vals,
old_row_step, old_column_step,
0, copy_r,
0, copy_c);
--- a/base_class/EST_TSimpleVector.cc
+++ b/base_class/EST_TSimpleVector.cc
@@ -43,6 +43,7 @@
#include "EST_TSimpleVector.h"
#include "EST_matrix_support.h"
#include <fstream>
+#include <cstring>
#include "EST_cutils.h"
template<class T> void EST_TSimpleVector<T>::copy(const EST_TSimpleVector<T> &a)
@@ -70,7 +71,7 @@ template<class T> void EST_TSimpleVector
int old_offset = this->p_offset;
unsigned int q;
- just_resize(newn, &old_vals);
+ this->just_resize(newn, &old_vals);
if (set && old_vals)
{
--- a/include/EST_TIterator.h
+++ b/include/EST_TIterator.h
@@ -209,7 +209,7 @@ public:
/// Create an iterator ready to run over the given container.
EST_TStructIterator(const Container &over)
- { begin(over); }
+ { this->begin(over); }
const Entry *operator ->() const
{return &this->current();}
@@ -289,7 +289,7 @@ public:
/// Create an iterator ready to run over the given container.
EST_TRwStructIterator(Container &over)
- { begin(over); }
+ { this->begin(over); }
Entry *operator ->() const
{return &this->current();}
--- a/include/EST_TNamedEnum.h
+++ b/include/EST_TNamedEnum.h
@@ -130,7 +130,7 @@ public:
{this->initialise((const void *)defs); };
EST_TNamedEnumI(EST_TValuedEnumDefinition<const char *,const char *,INFO> defs[], ENUM (*conv)(const char *))
{this->initialise((const void *)defs, conv); };
- const char *name(ENUM tok, int n=0) const {return value(tok,n); };
+ const char *name(ENUM tok, int n=0) const {return this->value(tok,n); };
};