text2wave,saytime: fix %_builddir references in scripts [release 2.1-2mamba;Wed Jul 17 2013]

This commit is contained in:
Silvan Calarco 2024-01-05 22:14:41 +01:00
parent e1c9041a93
commit 6bc60c33a6
15 changed files with 2219 additions and 0 deletions

View File

@ -1,2 +1,6 @@
# festival # festival
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.
Festival is free software. Festival and the speech tools are distributed under an X11-type licence allowing unrestricted commercial and non-commercial use alike.

View File

@ -0,0 +1,33 @@
--- 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

@ -0,0 +1,16 @@
diff -Nru speech_tools.orig/config/config.in speech_tools/config/config.in
--- speech_tools.orig/config/config.in 2006-07-08 20:06:18.000000000 +0200
+++ speech_tools/config/config.in 2007-08-01 03:30:11.000000000 +0200
@@ -80,10 +80,10 @@
# INCLUDE_MODULES += NAS_AUDIO
## Elightenment Sound Demon, for KDE etc.
-# INCLUDE_MODULES += ESD_AUDIO
+INCLUDE_MODULES += ESD_AUDIO
## Native audio for your platform (sun, linux, freebsd, irix, macosx, windows)
-INCLUDE_MODULES += NATIVE_AUDIO
+#INCLUDE_MODULES += NATIVE_AUDIO
## Special code to run Windows MPLAYER
# INCLUDE_MODULES += MPLAYER_AUDIO

View File

@ -0,0 +1,55 @@
diff -ur festival.orig/lib/init.scm festival/lib/init.scm
--- festival.orig/lib/init.scm 2004-07-15 19:03:04.000000000 -0400
+++ festival/lib/init.scm 2007-03-15 11:58:09.000000000 -0400
@@ -55,6 +55,10 @@
(if (probe_file (path-append libdir "sitevars.scm"))
(load (path-append libdir "sitevars.scm")))
+(if (probe_file "/etc/festival/sitevars.scm")
+ (load "/etc/festival/sitevars.scm"))
+
+
;;; CSTR siod extensions
(require 'cstr)
@@ -98,7 +102,7 @@
(t ;; can't find direct support so guess that /dev/audio for 8k ulaw exists
(Parameter.def 'Audio_Method 'sunaudio)))
;;; If you have an external program to play audio add its definition
-;;; in siteinit.scm
+;;; in ~/.festivalrc or /etc/festival/siteinit.scm
;;; The audio spooler doesn't work under Windows so redefine audio_mode
(if (member 'mplayeraudio *modules*)
@@ -135,9 +139,13 @@
;;;
;;; Local site initialization, if the file exists load it
;;;
+
(if (probe_file (path-append libdir "siteinit.scm"))
(load (path-append libdir "siteinit.scm")))
+(if (probe_file "/etc/festival/siteinit.scm")
+ (load "/etc/festival/siteinit.scm"))
+
;;; User initialization, if a user has a personal customization
;;; file loaded it
(if (probe_file (path-append home-directory ".siodrc"))
diff -ur festival.orig/lib/voices.scm festival/lib/voices.scm
--- festival.orig/lib/voices.scm 2005-05-02 10:20:37.000000000 -0400
+++ festival/lib/voices.scm 2007-03-15 12:00:19.000000000 -0400
@@ -45,12 +45,12 @@
(defvar system-voice-path '( )
"system-voice-path
Additional directory not near the load path where voices can be
- found, this can be redefined in lib/sitevars.scm if desired.")
+ found, this can be redefined in /etc/festival/sitevars.scm if desired.")
(defvar system-voice-path-multisyn '( )
"system-voice-path-multisyn
Additional directory not near the load path where multisyn voices can be
- found, this can be redefined in lib/sitevars.scm if desired.")
+ found, this can be redefined in /etc/festival/sitevars.scm if desired.")
(defvar voice-path
(remove-duplicates

36
festival-1.96-gcc43.patch Normal file
View File

@ -0,0 +1,36 @@
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>

22
festival-1.96-gcc44.patch Normal file
View File

@ -0,0 +1,22 @@
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

@ -0,0 +1,35 @@
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

@ -0,0 +1,37 @@
--- 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

@ -0,0 +1,20 @@
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

@ -0,0 +1,14 @@
--- 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

@ -0,0 +1,13 @@
--- speech_tools/config/compilers/gcc_defaults.mak.orig 2007-03-13 16:28:39.000000000 -0400
+++ speech_tools/config/compilers/gcc_defaults.mak 2007-03-13 16:28:59.000000000 -0400
@@ -39,10 +39,7 @@
###########################################################################
CC=gcc
-CXX=gcc
-ifeq ($(OSTYPE),Darwin)
CXX=g++
-endif
COMPILER_DESC=FSF gcc
COMPILER_VERSION_COMMAND=$(CXX) -v 2>&1 | tail -1 | sed -e 's/^....//'

View File

@ -0,0 +1,360 @@
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");
}

265
festival.spec Normal file
View File

@ -0,0 +1,265 @@
Name: festival
Version: 2.1
Release: 2mamba
Summary: A general framework for building speech synthesis systems
Group: System/Multimedia
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://www.cstr.ed.ac.uk/projects/festival/
Source: http://festvox.org/packed/festival/latest/festival-%{version}-release.tar.gz
Source1: http://www.cstr.ed.ac.uk/downloads/festival/latest/speech_tools-%{version}-release.tar.gz
Source2: http://festvox.org/packed/festival/latest/festlex_CMU.tar.gz
Source3: http://festvox.org/packed/festival/latest/festlex_OALD.tar.gz
Source4: http://festvox.org/packed/festival/latest/festlex_POSLEX.tar.gz
Source5: http://festvox.org/packed/festival/latest/festvox_kallpc16k.tar.gz
Source6: http://festvox.org/packed/festival/latest/festvox_kedlpc8k.tar.gz
Source7: http://festvox.org/packed/festival/latest/festvox_kedlpc16k.tar.gz
Source8: http://switch.dl.sourceforge.net/sourceforge/it-festival/Italian-FESTIVAL.zip
Source9: http://festvox.org/packed/festival/latest/festvox_cmu_us_awb_arctic_hts.tar.gz
Source10: http://festvox.org/packed/festival/latest/festvox_cmu_us_bdl_arctic_hts.tar.gz
Source11: http://festvox.org/packed/festival/latest/festvox_cmu_us_jmk_arctic_hts.tar.gz
Source12: http://festvox.org/packed/festival/latest/festvox_cmu_us_slt_arctic_hts.tar.gz
Source13: http://festvox.org/packed/festival/latest/festvox_cstr_us_awb_arctic_multisyn-1.0.tar.gz
Source14: http://festvox.org/packed/festival/latest/festvox_cstr_us_jmk_arctic_multisyn-1.0.tar.gz
Source15: http://festvox.org/packed/festival/latest/festvox_us1.tar.gz
Source16: http://festvox.org/packed/festival/latest/festvox_us2.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
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
Patch4: festival-1.96-main-shared-build.patch
Patch5: festival-1.96-kludge-etcpath-into-libarch.patch
Patch6: festival-1.96-speechtools-ohjeezcxxisnotgcc.patch
Patch7: festival-1.96-bettersonamehack.patch
Patch8: festival-1.96-no-shared-data.patch
Patch9: festival-1.96-speechtools-linklibswithotherlibs.patch
Patch10: festival-1.96-speechtools-1.2.96-beta+awb.patch
Patch11: speech_tools-2.1-gcc-4.7.patch
Patch12: %{name}-2.1-OGIresLPC-gcc-4.7.patch
License: MIT
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libalsa-devel
BuildRequires: libgcc
BuildRequires: libncurses-devel
BuildRequires: libstdc++6-devel
## AUTOBUILDREQ-END
BuildRequires: libesound-devel >= 0.2.36
Requires: festivalvoice
Requires: festival-voice-en = %{version}
Requires(post):%{__install_info}
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%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)
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.
%package voice-us
Summary: American English language voice files for festival
Group: System/Multimedia
Requires: %{name} = %{version}-%{release}
Provides: festivalvoice
%description voice-us
American English language voice files for festival.
%package voice-en
Summary: English language voice files for festival
Group: System/Multimedia
Requires: %{name} = %{version}-%{release}
Provides: festivalvoice
%description voice-en
English language voice files for festival.
%package voice-it
Summary: Italian language voice files for festival
Group: System/Multimedia
Requires: %{name} = %{version}-%{release}
Provides: festivalvoice
%description voice-it
English language voice files for festival.
%prep
#% setup -q -n %{name}
#-D -T
#:<< __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 lex_ifd.zip
unzip lp_diphone.zip
unzip lp_mbrola_unix.zip
unzip lp_ogi_diphone.zip
unzip pc_diphone.zip
unzip pc_mbrola_unix.zip
unzip pc_ogi_diphone.zip
#%patch1 -p0
#%patch2 -p0
%patch3 -p0
#%patch4 -p0
#%patch5 -p0
%patch6 -p0
#%patch7 -p0
#%patch8 -p0
#%patch9 -p0
#%patch10 -p0
cd speech_tools
%patch11 -p1
cd ..
%patch12 -p1
echo "ALSO_INCLUDE += OGIcommon OGIeffect OGIinsert OGIdbase" >> festival/config/config.in
# FIXME: patched to build but main final link fails with this module
# OGIresLPC
%build
#:<< __EOF
cd speech_tools
%configure
%make -j1
# libs="-L$(pwd)/lib"
# CFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing" \
# CXXFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing"
cd ../festival
#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/src/lib
%configure
%make -j1 FTLIBDIR=%{_datadir}/festival/lib
# CFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing" \
# CXXFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing"
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
cd speech_tools
#make INSTALLED_LIB=%{buildroot}%{_libdir} make_installed_lib_shared
#install lib/libestools.so* %{buildroot}%{_libdir}
make INSTALLED_BIN=%{buildroot}%{_libexecdir}/speech-tools make_installed_bin_static
#cd include
#for d in $( find . -type d | grep -v win32 ); do
# make -w -C $d INCDIR=%{buildroot}%{_includedir}/speech_tools/$d install_incs
#done
cd ..
cd festival
make INSTALLED_BIN=%{buildroot}%{_bindir} make_installed_bin_static
# remove builddir inserted in some scripts
sed -i "s|%{_builddir}/%{name}-%{version}/%{name}|%{_prefix}|" \
bin/text2wave examples/saytime
install -D -m0755 bin/text2wave %{buildroot}%{_bindir}
install -D -m0755 examples/saytime %{buildroot}%{_bindir}
#install -D -m0755 festival/src/main/festival %{buildroot}%{_bindir}/festival
#install -D -m0755 festival/src/main/festival_client %{buildroot}%{_bindir}/festival_client
#cp src/lib/libFestival.so* %{buildroot}%{_libdir}
install -d %{buildroot}%{_datadir}/festival %{buildroot}%{_sysconfdir}/festival %{buildroot}%{_mandir}/man1
cp -a lib %{buildroot}%{_datadir}/festival/
mv %{buildroot}%{_datadir}/festival/lib/siteinit.scm %{buildroot}%{_sysconfdir}/festival/
cp -a doc/*.1 %{buildroot}%{_mandir}/man1
#mkdir -p %{buildroot}%{_includedir}/festival
#cp -a src/include/* %{buildroot}%{_includedir}/festival
rm -rf %{buildroot}%{_datadir}/festival/lib/voices-multisyn/english
rm -f %{buildroot}%{_datadir}/festival/lib/Makefile
rm -f %{buildroot}%{_datadir}/festival/lib/multisyn/Makefile
rm -f %{buildroot}%{_datadir}/festival/lib/etc/Makefile
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root)
%dir %{_sysconfdir}/festival
%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
%{_datadir}/festival/lib/*.scm
%doc festival/COPYING festival/NEWS festival/README
%{_mandir}/man1/festival.1*
%{_mandir}/man1/festival_client.1*
%files voice-us
%defattr(-,root,root)
%dir %{_datadir}/festival/lib/voices/us
%{_datadir}/festival/lib/voices/us/*
%files voice-en
%defattr(-,root,root)
%dir %{_datadir}/festival/lib/voices/english
%{_datadir}/festival/lib/voices/english/*
%files voice-it
%defattr(-,root,root)
%dir %{_datadir}/festival/lib/voices/italian
%{_datadir}/festival/lib/voices/italian/*
%{_datadir}/festival/lib/italian_scm/*
%{_datadir}/festival/lib/dicts/ifd*
%changelog
* Wed Jul 17 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1-2mamba
- text2wave,saytime: fix %_builddir references in scripts
* Tue Jul 17 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1-1mamba
- update to 2.1
* Mon Sep 21 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.96-2mamba
- added patches for build with gcc 4.4
- added festvox_cmu_us_* and festvox_cstr_us_* packages
- added patch and moved configuration files to /etc/festival
- removed esd patch
- added patch for shared library build
* Wed Aug 01 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 1.96-1mamba
- package created by autospec

View File

@ -0,0 +1,82 @@
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); };
};