mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-22 19:50:05 +02:00
espeak: enable portaudio backend
This commit is contained in:
@@ -10,11 +10,11 @@ which are based on human speech recordings."
|
||||
HOMEPAGE="http://espeak.sourceforge.net/"
|
||||
COPYRIGHT="2005-2014 Jonathan Duddington"
|
||||
LICENSE="GNU GPL v3"
|
||||
REVISION="4"
|
||||
SOURCE_URI="http://sourceforge.net/projects/espeak/files/espeak/espeak-1.48/espeak-1.48.04-source.zip"
|
||||
REVISION="5"
|
||||
SOURCE_URI="http://sourceforge.net/projects/espeak/files/espeak/espeak-1.48/espeak-${portVersion}-source.zip"
|
||||
CHECKSUM_SHA256="bf9a17673adffcc28ff7ea18764f06136547e97bbd9edf2ec612f09b207f0659"
|
||||
SOURCE_DIR="espeak-${portVersion}-source"
|
||||
PATCHES="espeak-1.48.04.patch"
|
||||
PATCHES="espeak-${portVersion}.patchset"
|
||||
|
||||
ARCHITECTURES="all"
|
||||
|
||||
@@ -26,10 +26,12 @@ PROVIDES="
|
||||
"
|
||||
REQUIRES="
|
||||
haiku
|
||||
lib:libportaudio
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku_devel
|
||||
devel:libportaudio
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:gcc
|
||||
@@ -45,8 +47,10 @@ BUILD()
|
||||
STDCPPLIBS=-lstdc++.r4
|
||||
fi
|
||||
|
||||
cp -f portaudio19.h portaudio.h
|
||||
|
||||
make LIB_STDCPP=$STDCPPLIBS \
|
||||
AUDIO=wave LIB_PTHREAD= \
|
||||
AUDIO=portaudio LIB_PTHREAD= \
|
||||
VISIBILITY_FLAG= \
|
||||
PREFIX=$prefix \
|
||||
DATADIR=$dataDir/espeak-data \
|
||||
@@ -57,7 +61,7 @@ INSTALL()
|
||||
{
|
||||
cd src
|
||||
make LIB_STDCPP=$STDCPPLIBS \
|
||||
AUDIO=wave LIB_PTHREAD= \
|
||||
AUDIO=portaudio LIB_PTHREAD= \
|
||||
VISIBILITY_FLAG= \
|
||||
PREFIX=$prefix \
|
||||
DATADIR=$dataDir/espeak-data \
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
From 45ab885e00990acc5da891489537f7994a9dc25d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
|
||||
Date: Thu, 3 Jul 2014 22:01:40 +0200
|
||||
Subject: [PATCH] Remove some hardcoding of libraries and flags
|
||||
|
||||
---
|
||||
src/Makefile | 15 +++++++++++----
|
||||
1 file changed, 11 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index 95fe549..085fdea 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -21,6 +21,12 @@ SONAME_OPT=-Wl,-soname,
|
||||
# Use EXTRA_LIBS=-lm on Solaris
|
||||
EXTRA_LIBS =
|
||||
|
||||
+# Default libstdc++
|
||||
+LIB_STDCPP = -lstdc++
|
||||
+
|
||||
+# Default pthread library
|
||||
+LIB_PTHREAD = -lpthread
|
||||
+
|
||||
INSTALL = install
|
||||
LN_SF = /bin/ln -sf
|
||||
MKDIR = mkdir -p
|
||||
@@ -83,18 +89,19 @@ libespeak_SOURCES = speak_lib.cpp compiledict.cpp dictionary.cpp intonation.cpp
|
||||
|
||||
SRCS1=$(speak_SOURCES)
|
||||
OBJS1=$(patsubst %.cpp,%.o,$(SRCS1))
|
||||
-LIBS1=-lstdc++ $(LIB_AUDIO) -lpthread $(EXTRA_LIBS)
|
||||
+LIBS1=$(LIB_STDCPP) $(LIB_AUDIO) $(LIB_PTHREAD) $(EXTRA_LIBS)
|
||||
|
||||
SRCS2=$(libespeak_SOURCES)
|
||||
OBJS2=$(patsubst %.cpp,x_%.o,$(SRCS2))
|
||||
-LIBS2=-lstdc++ $(LIB_AUDIO) -lpthread
|
||||
+LIBS2=$(LIB_STDCPP) $(LIB_AUDIO) $(LIB_PTHREAD)
|
||||
|
||||
SRCS3 = espeak.cpp
|
||||
OBJS3=$(patsubst %.cpp,%.o,$(SRCS3))
|
||||
-LIBS3=-lstdc++ -L . -lespeak
|
||||
+LIBS3=$(LIB_STDCPP) -L . -lespeak
|
||||
|
||||
CXXFLAGS=-O2
|
||||
|
||||
+VISIBILITY_FLAG=-fvisibility=hidden
|
||||
|
||||
all: $(BIN_NAME) $(LIB_NAME) $(STATIC_LIB_NAME) $(BIN2_NAME)
|
||||
|
||||
@@ -110,7 +117,7 @@ $(BIN2_NAME): $(OBJS3) $(LIB_NAME)
|
||||
|
||||
|
||||
x_%.o: %.cpp
|
||||
- $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -fpic -fvisibility=hidden -pedantic \
|
||||
+ $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -fpic $(VISIBILITY_FLAG) -pedantic \
|
||||
-I. -D LIBRARY -c -fno-exceptions $< -o x_$*.o
|
||||
|
||||
$(LIB_NAME): $(OBJS2)
|
||||
--
|
||||
1.8.3.4
|
||||
|
||||
113
app-accessibility/espeak/patches/espeak-1.48.04.patchset
Normal file
113
app-accessibility/espeak/patches/espeak-1.48.04.patchset
Normal file
@@ -0,0 +1,113 @@
|
||||
From 03e70397412588bf561c7463f5b2c8f2e8427c12 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 21 Dec 2022 13:29:35 +1000
|
||||
Subject: applying patch espeak-1.48.04.patch
|
||||
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index 95fe549..085fdea 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -21,6 +21,12 @@ SONAME_OPT=-Wl,-soname,
|
||||
# Use EXTRA_LIBS=-lm on Solaris
|
||||
EXTRA_LIBS =
|
||||
|
||||
+# Default libstdc++
|
||||
+LIB_STDCPP = -lstdc++
|
||||
+
|
||||
+# Default pthread library
|
||||
+LIB_PTHREAD = -lpthread
|
||||
+
|
||||
INSTALL = install
|
||||
LN_SF = /bin/ln -sf
|
||||
MKDIR = mkdir -p
|
||||
@@ -83,18 +89,19 @@ libespeak_SOURCES = speak_lib.cpp compiledict.cpp dictionary.cpp intonation.cpp
|
||||
|
||||
SRCS1=$(speak_SOURCES)
|
||||
OBJS1=$(patsubst %.cpp,%.o,$(SRCS1))
|
||||
-LIBS1=-lstdc++ $(LIB_AUDIO) -lpthread $(EXTRA_LIBS)
|
||||
+LIBS1=$(LIB_STDCPP) $(LIB_AUDIO) $(LIB_PTHREAD) $(EXTRA_LIBS)
|
||||
|
||||
SRCS2=$(libespeak_SOURCES)
|
||||
OBJS2=$(patsubst %.cpp,x_%.o,$(SRCS2))
|
||||
-LIBS2=-lstdc++ $(LIB_AUDIO) -lpthread
|
||||
+LIBS2=$(LIB_STDCPP) $(LIB_AUDIO) $(LIB_PTHREAD)
|
||||
|
||||
SRCS3 = espeak.cpp
|
||||
OBJS3=$(patsubst %.cpp,%.o,$(SRCS3))
|
||||
-LIBS3=-lstdc++ -L . -lespeak
|
||||
+LIBS3=$(LIB_STDCPP) -L . -lespeak
|
||||
|
||||
CXXFLAGS=-O2
|
||||
|
||||
+VISIBILITY_FLAG=-fvisibility=hidden
|
||||
|
||||
all: $(BIN_NAME) $(LIB_NAME) $(STATIC_LIB_NAME) $(BIN2_NAME)
|
||||
|
||||
@@ -110,7 +117,7 @@ $(BIN2_NAME): $(OBJS3) $(LIB_NAME)
|
||||
|
||||
|
||||
x_%.o: %.cpp
|
||||
- $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -fpic -fvisibility=hidden -pedantic \
|
||||
+ $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -fpic $(VISIBILITY_FLAG) -pedantic \
|
||||
-I. -D LIBRARY -c -fno-exceptions $< -o x_$*.o
|
||||
|
||||
$(LIB_NAME): $(OBJS2)
|
||||
--
|
||||
2.37.3
|
||||
|
||||
|
||||
From 475eee0e45ca29ab701f7a5913d2fbe67713cefb Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 21 Dec 2022 14:20:01 +1000
|
||||
Subject: Fix build
|
||||
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index 085fdea..bc8d034 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -106,7 +106,7 @@ VISIBILITY_FLAG=-fvisibility=hidden
|
||||
all: $(BIN_NAME) $(LIB_NAME) $(STATIC_LIB_NAME) $(BIN2_NAME)
|
||||
|
||||
.cpp.o:
|
||||
- $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -pedantic -I. -c -fno-exceptions $<
|
||||
+ $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -pedantic -I. -c -fno-exceptions -Wno-narrowing $<
|
||||
|
||||
$(BIN_NAME): $(OBJS1)
|
||||
$(CXX) $(LDFLAGS) -o $@ $(OBJS1) $(LIBS1)
|
||||
@@ -118,7 +118,7 @@ $(BIN2_NAME): $(OBJS3) $(LIB_NAME)
|
||||
|
||||
x_%.o: %.cpp
|
||||
$(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -fpic $(VISIBILITY_FLAG) -pedantic \
|
||||
- -I. -D LIBRARY -c -fno-exceptions $< -o x_$*.o
|
||||
+ -I. -D LIBRARY -c -fno-exceptions -Wno-narrowing $< -o x_$*.o
|
||||
|
||||
$(LIB_NAME): $(OBJS2)
|
||||
$(CXX) $(LDFLAGS) -shared $(SONAME_OPT)$(LIB_NAME).$(LIB_VERSION) -o $@ \
|
||||
--
|
||||
2.37.3
|
||||
|
||||
|
||||
From adfe8dc77b438f77fee17848ddb12b8123ba5748 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 21 Dec 2022 14:20:32 +1000
|
||||
Subject: Terminate audiobackend on exit
|
||||
|
||||
|
||||
diff --git a/src/espeak.cpp b/src/espeak.cpp
|
||||
index dbd83f2..aefb2cd 100644
|
||||
--- a/src/espeak.cpp
|
||||
+++ b/src/espeak.cpp
|
||||
@@ -804,5 +804,8 @@ int main (int argc, char **argv)
|
||||
|
||||
if(f_phonemes_out != stdout)
|
||||
fclose(f_phonemes_out); // needed for WinCE
|
||||
+
|
||||
+ espeak_Terminate();
|
||||
+
|
||||
return(0);
|
||||
}
|
||||
--
|
||||
2.37.3
|
||||
|
||||
Reference in New Issue
Block a user