1 DESCRIPTION = "A free speech synthesis and text-to-speech system"
2 HOMEPAGE = "http://www.cstr.ed.ac.uk/projects/festival/"
3 SECTION = "System/Libraries"
4 LICENSE = "MIT and GPL-2.0+ and TCL"
11 inherit manifest autotools-brokensep
19 #PROVIDES by festival-dev
20 PROVIDES += "festival-dev"
24 #RDEPENDS of festival-dev (${PN}-dev)
25 RDEPENDS_${PN}-dev += "festival"
37 unp ${S}/packaging/speech_tools-2.1-release.tar.gz
41 unp ${S}/packaging/festlex_CMU.tar.gz
45 unp ${S}/packaging/festvox_kallpc16k.tar.gz
49 unp ${S}/packaging/festlex_POSLEX.tar.gz
51 chmod -Rf a+rX,u+w,g-w,o-w ${S}
52 #setup -q -b 1 -b 2 -b 3 -b 4
53 mv ../festival/lib/* lib/
54 cat ${S}/packaging/festival-1.95-examples.patch | patch -s -p1 --fuzz=2
56 cat ${S}/packaging/festival-text2wave-manpage.patch | patch -s -p1 --fuzz=2
58 cat ${S}/packaging/festival-1.95-libdir.patch | patch -s -p0 --fuzz=2
60 cat ${S}/packaging/festival-1.95-audsp.patch | patch -s -p0 --fuzz=2
62 cat ${S}/packaging/festival-1.96-chroot.patch | patch -s -p0 --fuzz=2
64 cat ${S}/packaging/festival-no-LD_LIBRARY_PATH-extension.patch | patch -s -p1 --fuzz=2
66 cat ${S}/packaging/festival-safe-temp-file.patch | patch -s -p1 --fuzz=2
68 cat ${S}/packaging/festival-use-pacat.patch | patch -s -p1 -b --suffix .use-pacat --fuzz=2
69 #patch7 -p1 -b .use-pacat
71 cat ${S}/packaging/speech_tools-undefined-operation.patch | patch -s -p1 --fuzz=2
73 cat ${S}/packaging/speech_tools-1.2.95-config.patch | patch -s -p0 --fuzz=2
75 cat ${S}/packaging/speech_tools-no-LD_LIBRARY_PATH-extension.patch | patch -s -p1 --fuzz=2
77 cat ${S}/packaging/speech_tools-gcc47.patch | patch -s -p1 --fuzz=2
79 cat ${S}/packaging/festival-1.96-speechtools-shared-build.patch | patch -s -p2 -b --suffix .shared-build --fuzz=2
80 #patch200 -p2 -b .shared-build
81 cat ${S}/packaging/festival-1.96-bettersonamehack.patch | patch -s -p2 -b --suffix .bettersoname --fuzz=2
82 #patch201 -p2 -b .bettersoname
83 cat ${S}/packaging/festival-1.96-main-speech_tools-shared-build.patch | patch -s -p2 -b --suffix .shared --fuzz=2
84 #patch205 -p2 -b .shared
86 cat ${S}/packaging/festival-1.96-main-festival-shared-build.patch | patch -s -p1 -b --suffix .shared --fuzz=2
87 #patch206 -p1 -b .shared
89 cat ${S}/packaging/no-shared-data.patch | patch -s -p1 -b --suffix .no-shared-data --fuzz=2
90 #patch210 -p1 -b .no-shared-data
91 cat ${S}/packaging/festival-1.96-speechtools-linklibswithotherlibs.patch | patch -s -p1 -b --suffix .linklibswithotherlibs --fuzz=2
92 #patch211 -p1 -b .linklibswithotherlibs
97 bb.build.exec_func('do_prep', d)
108 LD_AS_NEEDED=1; export LD_AS_NEEDED ;
112 autotools_do_configure
115 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/speech_tools/lib
116 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/festival-2.1/src/lib
119 ./configure --prefix=${prefix} --libdir=${prefix}/lib --datadir=${prefix}/share/festival --sysconfdir=${sysconfdir}
121 oe_runmake CC="${CC} -fPIC $RPM_OPT_FLAGS" CXX="${HOST_SYS}-g++ $RPM_OPT_FLAGS -fPIC -Wno-non-template-friend -ffriend-injection -fno-strict-aliasing"
123 oe_runmake CC="${CC} -fPIC $RPM_OPT_FLAGS" CXX="${HOST_SYS}-g++ $RPM_OPT_FLAGS -fPIC -Wno-non-template-friend -ffriend-injection -fno-strict-aliasing"
130 EXTRA_OECONF += " --prefix=${prefix} --libdir=${prefix}/lib --datadir=${prefix}/share/festival --sysconfdir=${sysconfdir}"
133 export RPM_BUILD_ROOT=${D}
142 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/speech_tools/lib
143 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/festival-2.1/src/lib
146 #make INSTALLED_BIN=%{buildroot}%{_bindir} make_installed_bin_shared
152 BINDIR=${prefix}/bin \
154 rm -f ${D}${infodir}/dir
155 find ${D} -regex ".*\.la$" | xargs rm -f --
156 find ${D} -regex ".*\.a$" | xargs rm -f --
159 install -D bin/text2wave ${D}${prefix}/bin/text2wave
160 install -m 755 src/main/festival ${D}${prefix}/bin/
161 install -m 755 src/main/festival_client ${D}${prefix}/bin/
162 install -m 755 bin/festival_server* ${D}${prefix}/bin/
163 install -m 755 examples/saytime ${D}${prefix}/bin/
165 install -D -m 644 doc/festival.1 ${D}${mandir}/man1/festival.1
166 install -m 644 doc/festival_client.1 ${D}${mandir}/man1/
167 install -m 644 doc/text2wave.1 ${D}${mandir}/man1/
169 install -D lib/festival.scm ${D}${sysconfdir}/festival.scm
170 # install dictionarys
171 install -D lib/dicts/cmu/cmudict-0.4.out ${D}${prefix}/share/festival/dicts/cmu/cmudict-0.4.out
172 install -m 644 lib/dicts/cmu/*.scm ${D}${prefix}/share/festival/dicts/cmu/
173 install -m 644 lib/dicts/wsj.wp39.poslexR ${D}${prefix}/share/festival/dicts/
174 install -m 644 lib/dicts/wsj.wp39.tri.ngrambin ${D}${prefix}/share/festival/dicts/
176 mkdir -p ${D}${prefix}/share/festival/voices/english/kal_diphone/festvox
177 mkdir -p ${D}${prefix}/share/festival/voices/english/kal_diphone/group
178 cp lib/voices/english/kal_diphone/group/* ${D}${prefix}/share/festival/voices/english/kal_diphone/group/
179 cp lib/voices/english/kal_diphone/festvox/*.scm ${D}${prefix}/share/festival/voices/english/kal_diphone/festvox
181 cp lib/*.scm ${D}${prefix}/share/festival/
182 cp lib/*.ngrambin ${D}${prefix}/share/festival/
183 cp lib/*.gram ${D}${prefix}/share/festival/
184 cp lib/*.el ${D}${prefix}/share/festival/
185 install -D lib/etc/unknown_Linux/audsp ${D}${prefix}/lib/festival/audsp
187 install -D src/lib/libFestival.so ${D}/${prefix}/lib/libFestival.so
189 mkdir -p ${D}${prefix}/include/
190 install -m 644 src/include/*.h ${D}${prefix}/include/
193 mkdir -p ${D}${prefix}/include/instantiate
194 mkdir -p ${D}${prefix}/include/ling_class
195 mkdir -p ${D}${prefix}/include/rxp
196 mkdir -p ${D}${prefix}/include/sigpr
197 mkdir -p ${D}${prefix}/include/unix
198 install -m 644 include/*h ${D}${prefix}/include
199 install -m 644 include/instantiate/*h ${D}${prefix}/include/instantiate
200 install -m 644 include/ling_class/*h ${D}${prefix}/include/ling_class
201 install -m 644 include/rxp/*h ${D}${prefix}/include/rxp
202 install -m 644 include/sigpr/*h ${D}${prefix}/include/sigpr
203 install -m 644 include/unix/*h ${D}${prefix}/include/unix
204 # make sure we have no static libs, install shared ones
205 install -m 644 lib/lib*.so* ${D}${prefix}/lib
206 rm -f ${D}${prefix}/lib/*.a
208 # install init script
209 # install -m 755 -D %{S:6} %{buildroot}/etc/init.d/%name
210 # install -d %{buildroot}%_sbindir
211 # ln -sf ../../etc/init.d/%name %{buildroot}/usr/sbin/rc%name
212 # installl sysconfig file
213 #install -m 644 -D %{S:5} %{buildroot}/var/adm/fillup-templates/sysconfig.%name
218 pkg_postinst_${PN}() {
225 pkg_postinst_${PN}() {
246 PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-locale"
247 PACKAGES += " festival "
248 PACKAGES += " festival-dev "
251 festival_files += "MIT COPYING"
252 festival_files += "README INSTALL examples/*.text examples/ex1.* examples/*.scm examples/*.dtd"
253 festival_files += "${sysconfdir}/festival.scm"
254 festival_files += "${prefix}/bin/festival"
255 festival_files += "${prefix}/bin/festival_client"
256 festival_files += "${prefix}/bin/festival_server"
257 festival_files += "${prefix}/bin/festival_server_control"
258 festival_files += "${prefix}/bin/text2wave"
259 festival_files += "${prefix}/bin/saytime"
260 festival_files += "${prefix}/lib/libe*.so.*"
261 festival_files += "${prefix}/lib/libFestival.so"
262 festival_files += "${prefix}/lib/festival"
263 festival_files += "${prefix}/share/festival"
264 festival_files += "${mandir}/man1/*"
266 festival-dev_files = ""
267 festival-dev_files += "${prefix}/include/*"
268 festival-dev_files += "${prefix}/lib/libe*.so"
270 FILES_${PN} = "${festival_files}"
271 FILES_${PN}-dev = "${festival-dev_files}"
273 PKG_festival= "festival"
274 PKG_festival-dev= "festival-dev"
276 require festival-extraconf.inc