1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
|
# $Id: PKGBUILD 137968 2011-09-13 09:17:12Z eric $
# Maintainer:
# Contributor: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Simo Leone <neotuli@gmail.com>
pkgname=festival
pkgver=2.1
_suffix=release
pkgrel=3.1
pkgdesc="A general multi-lingual speech synthesis system"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.cstr.ed.ac.uk/projects/festival/"
license=('BSD' 'GPL' 'custom')
depends=('perl')
options=('!makeflags')
source=("http://www.cstr.ed.ac.uk/downloads/${pkgname}/${pkgver}/${pkgname}-${pkgver}-${_suffix}.tar.gz"
"http://www.cstr.ed.ac.uk/downloads/${pkgname}/${pkgver}/speech_tools-${pkgver}-${_suffix}.tar.gz"
"http://www.cstr.ed.ac.uk/downloads/${pkgname}/${pkgver}/festlex_CMU.tar.gz"
"http://www.cstr.ed.ac.uk/downloads/${pkgname}/${pkgver}/festlex_OALD.tar.gz"
"http://www.cstr.ed.ac.uk/downloads/${pkgname}/${pkgver}/festlex_POSLEX.tar.gz"
'speechconfig.patch'
'festconfig.patch'
'festival-shared-build.patch')
md5sums=('c93eb3e389ed171ab9abd46afe8897a8'
'6920ddc75b042910a3bcfee3ab106938'
'6a2ee4fed7c3ebedf197a3b8524ccb87'
'84af32a914d996f57bc4cb36fe8cdc97'
'aa80f9250065b318325f16fdad3a4484'
'c30ae990baca40c9c2b1d5cd27502139'
'348cc033430aee7989463198818ae74c'
'46132b1cd86a982007312def49ab176a')
build() {
cd "$srcdir"
patch -Np0 -i "$srcdir/festival-shared-build.patch"
# Build Speech Tools first
cd "$srcdir/speech_tools"
patch -Np1 -i "$srcdir/speechconfig.patch"
./configure --prefix=/usr --sysconfdir=/etc --build=$CHOST --host=$CHOST
make OPTIMISE_CXXFLAGS="${CXXFLAGS}" OPTIMISE_CCFLAGS="${CFLAGS}"
# Build Festival itself
cd "$srcdir/festival"
patch -Np1 -i "$srcdir/festconfig.patch"
# Avoid make failure on making scripts and docs
sed -i "s#examples bin doc#examples#" Makefile
./configure --prefix=/usr --sysconfdir=/etc --build=$CHOST --host=$CHOST
make OPTIMISE_CXXFLAGS="${CXXFLAGS}" OPTIMISE_CCFLAGS="${CFLAGS}"
}
package() {
# Install Speech Tools first
cd "$srcdir/speech_tools"
install -dm755 "$pkgdir"/usr/{bin,lib,include/speech_tools/{,instantiate,ling_class,rxp,sigpr,unix}}
#binaries
#move binaries over wrappers (FS#7864)
for i in $(grep -l 'EST shared script' bin/*); do
cp -f main/$(basename $i) bin;
done
install -m755 -t "$pkgdir"/usr/bin bin/[a-z]*
rm -f "$pkgdir"/usr/bin/{est_gdb,est_examples,est_program}
#libraries
install -m755 -t "$pkgdir"/usr/lib lib/lib*.so.*
ln -sf libestbase.so.${pkgver}.1 "$pkgdir"/usr/lib/libestbase.so
ln -sf libestools.so.${pkgver}.1 "$pkgdir"/usr/lib/libestools.so
ln -sf libeststring.so.1.2 "$pkgdir"/usr/lib/libeststring.so
install -m644 -t "$pkgdir"/usr/lib lib/lib*.a
#headers
for dir in {.,instantiate,ling_class,rxp,sigpr,unix}; do
install -m644 -t "${pkgdir}"/usr/include/speech_tools/$dir include/$dir/*.h
done
# Install Festival itself
cd "$srcdir"/festival
#binaries
install -m755 src/main/festival "$pkgdir"/usr/bin/
install -m755 src/main/festival_client "$pkgdir"/usr/bin/
install -m755 examples/benchmark "$pkgdir"/usr/bin/
install -m755 examples/dumpfeats "$pkgdir"/usr/bin/
install -m755 examples/durmeanstd "$pkgdir"/usr/bin/
install -m755 examples/latest "$pkgdir"/usr/bin/
install -m755 examples/make_utts "$pkgdir"/usr/bin/
install -m755 examples/powmeanstd "$pkgdir"/usr/bin/
install -m755 examples/run-festival-script "$pkgdir"/usr/bin/
install -m755 examples/saytime "$pkgdir"/usr/bin/
install -m755 examples/scfg_parse_text "$pkgdir"/usr/bin/
install -m755 examples/text2pos "$pkgdir"/usr/bin/
install -m755 examples/text2wave "$pkgdir"/usr/bin
#libraries
install -m644 src/lib/libFestival.a "$pkgdir"/usr/lib/
install -m755 src/lib/libFestival.so.* "$pkgdir"/usr/lib/
ln -sf libFestival.so.2.1.0 "$pkgdir"/usr/lib/libFestival.so
#headers
install -dm755 "$pkgdir"/usr/include/festival
install -m644 -t "$pkgdir"/usr/include/festival src/include/*.h
mkdir -p "$pkgdir"/usr/share/festival
cp -aR lib/* "$pkgdir"/usr/share/festival
rm -f $(find "$pkgdir"/usr/share/festival -name Makefile)
rm -f $(find "$pkgdir"/usr/bin -name Makefile)
#create voices directory
install -dm755 "$pkgdir"/usr/share/festival/voices
#licenses
install -D -m644 "$srcdir"/festival/COPYING \
"$pkgdir"/usr/share/licenses/$pkgname/LICENSE
install -D -m644 "$srcdir"/speech_tools/README \
"$pkgdir"/usr/share/licenses/$pkgname/LICENSE.other
# Ok now some general cleanups
for i in $(find "$pkgdir"/usr/include/ -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
}
|