Add flite port

This commit is contained in:
Timothy Gu
2014-12-24 23:29:13 +00:00
parent 314a3c06f3
commit 91a39ed24a
3 changed files with 427 additions and 0 deletions

View File

@@ -0,0 +1,119 @@
SUMMARY="A light-weight text-to-speech engine"
DESCRIPTION="Flite is a text-to-speech engine developed by the Carnegie \
Mellon University. As a light-weight alternative to the Festival engine, it \
is desinged to fit into small embedded machines as well as large-scale \
servers. In addition to its native format flite supports voices generated by \
the FestVox project as well.
"
HOMEPAGE="http://www.festvox.org/flite/"
SRC_URI="http://www.festvox.org/flite/packed/flite-2.0/flite-${portVersion}-release.tar.bz2"
CHECKSUM_SHA256="678c3860fd539402b5d1699b921239072af6acb4e72dc4720494112807cae411"
SOURCE_DIR="flite-${portVersion}-release"
REVISION="1"
# Although individually many files have different licenses, as a whole this
# license covers all the files.
LICENSE="
Flite
"
COPYRIGHT="
1986 University of Toronto
1992, 1995 Markus Mummert
1996-2004 University of Edinburgh, UK
1999-2014 Language Technologies Institute, Carnegie Mellon University
2001 Cepstral, LLC
2001 Sun Microsystems, Inc.
2003-2004 Nagoya Institute of Technology
2003-2004 Nara Institute of Science and Technology
2008-2012 University of Illinois at Urbana-Champaign
"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86 x86_gcc2"
EXTRA_CMD="
cmu_time_awb
cmu_us_awb
cmu_us_kal
cmu_us_kal16
cmu_us_rms
cmu_us_slt
"
EXTRA_LIBS="
cmu_grapheme_lang
cmu_grapheme_lex
cmu_indic_lang
cmu_indic_lex
$EXTRA_CMD
cmulex
usenglish
"
PROVIDES="
flite$secondaryArchSuffix = $portVersion
lib:libflite$secondaryArchSuffix = $portVersion compat >= 2
flite_tools = $portVersion
cmd:flite$secondaryArchSuffix = $portVersion
cmd:flite_time$secondaryArchSuffix = $portVersion
"
DEVEL_LIBS="libflite"
for c in $EXTRA_CMD; do
PROVIDES="
$PROVIDES
cmd:flite_${c} = $portVersion
"
done
PROVIDES_devel="
flite${secondaryArchSuffix}_devel = $portVersion
devel:libflite$secondaryArchSuffix = $portVersion compat >= 2
"
for l in $EXTRA_LIBS; do
PROVIDES="
$PROVIDES
lib:libflite_${l}${secondaryArchSuffix} = $portVersion compat >= 2
"
PROVIDES_devel="
$PROVIDES_devel
devel:libflite_${l}${secondaryArchSuffix} = $portVersion compat >= 2
"
DEVEL_LIBS="
$DEVEL_LIBS
libflite_${l}
"
done
REQUIRES="
haiku$secondaryArchSuffix
"
REQUIRES_devel="
haiku${secondaryArchSuffix}_devel
flite$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
makefile_engine
cmd:awk
cmd:autoconf
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:mkdepend
"
PATCHES="flite-${portVersion}.patchset"
BUILD()
{
autoconf
runConfigure ./configure \
--enable-shared
make $jobArgs
}
INSTALL()
{
make install
prepareInstalledDevelLibs \
$DEVEL_LIBS
packageEntries devel \
$developDir
}

View File

@@ -0,0 +1,206 @@
Flite is free software.
We have kept the core code to BSD-like copyright, thus the system is
free to use in commercial products, with commercial extensions. GPL
code is only included as part of the build process and does not
taint any of the run-time code.
As a collection it is distributed under the following license. Note
a few files in this distribution have a different but equally free
non-conflicting licence, see below.
Language Technologies Institute
Carnegie Mellon University
Copyright (c) 1999-2014
All Rights Reserved.
Permission is hereby granted, free of charge, to use and distribute
this software and its documentation without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of this work, and to
permit persons to whom this work is furnished to do so, subject to
the following conditions:
1. The code must retain the above copyright notice, this list of
conditions and the following disclaimer.
2. Any modifications must be clearly marked as such.
3. Original authors' names are not deleted.
4. The authors' names are not used to endorse or promote products
derived from this software without specific prior written
permission.
CARNEGIE MELLON UNIVERSITY AND THE CONTRIBUTORS TO THIS WORK
DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT
SHALL CARNEGIE MELLON UNIVERSITY NOR THE CONTRIBUTORS BE LIABLE
FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
THIS SOFTWARE.
All files within this distribution have the above license except
the following
src/cg/cst_mlpg.h
src/cg/cst_mlpg.c
src/cg/cst_mlsa.h
src/cg/cst_mlsa.c
src/cg/cst_vc.h
src/cg/cst_vc.c
/*********************************************************************/
/* */
/* Nagoya Institute of Technology, Aichi, Japan, */
/* Nara Institute of Science and Technology, Nara, Japan */
/* and */
/* Carnegie Mellon University, Pittsburgh, PA */
/* Copyright (c) 2003-2004 */
/* All Rights Reserved. */
/* */
/* Permission is hereby granted, free of charge, to use and */
/* distribute this software and its documentation without */
/* restriction, including without limitation the rights to use, */
/* copy, modify, merge, publish, distribute, sublicense, and/or */
/* sell copies of this work, and to permit persons to whom this */
/* work is furnished to do so, subject to the following conditions: */
/* */
/* 1. The code must retain the above copyright notice, this list */
/* of conditions and the following disclaimer. */
/* 2. Any modifications must be clearly marked as such. */
/* 3. Original authors' names are not deleted. */
/* */
/* NAGOYA INSTITUTE OF TECHNOLOGY, NARA INSTITUTE OF SCIENCE AND */
/* TECHNOLOGY, CARNEGIE MELLON UNIVERSITY, AND THE CONTRIBUTORS TO */
/* THIS WORK DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, */
/* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, */
/* IN NO EVENT SHALL NAGOYA INSTITUTE OF TECHNOLOGY, NARA */
/* INSTITUTE OF SCIENCE AND TECHNOLOGY, CARNEGIE MELLON UNIVERSITY, */
/* NOR THE CONTRIBUTORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR */
/* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM */
/* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, */
/* NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN */
/* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
/* */
/*********************************************************************/
These functions are derived from the versions in festvox/src/vc/ as
modified by Tomoki Toda which in turn contain code derived from
NITECH's HTS system. Their copyright has the same freedoms as
as Flite's but under NAIST, NITECH and/or CMU.
src/audio/au_wince.c
src/utils/cst_file_stdio.c
src/utils/cst_mmap_posix.c
src/utils/cst_mmap_win32.c
src/utils/cst_mmap_none.c
src/utils/cst_file_wince.c
sapi/
are copyright Cepstral, LLC rather than CMU but fall under the same
free licence as the above, except for the owner. (Note the SAPI stuff
probably doesn't work any more)
doc/alice
Is the first two chapters of Alice in Wonderland as distributed by the
Gutenburg project and is now in the public domain
src/regex/regexp.c
src/regex/regsub.c
* Copyright (c) 1986 by University of Toronto.
* Written by Henry Spencer. Not derived from licensed software.
*
* Permission is granted to anyone to use this software for any
* purpose on any computer system, and to redistribute it freely,
* subject to the following restrictions:
*
* 1. The author is not responsible for the consequences of use of
* this software, no matter how awful, even if they arise
* from defects in it.
*
* 2. The origin of this software must not be misrepresented, either
* by explicit claim or by omission.
*
* 3. Altered versions must be plainly marked as such, and must not
* be misrepresented as being the original software.
src/speech/rateconv.c
* Copyright (c) 1992, 1995 by Markus Mummert
*
* Redistribution and use of this software, modifcation and inclusion
* into other forms of software are permitted provided that the following
* conditions are met:
*
* 1. Redistributions of this software must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. If this software is redistributed in a modified condition
* it must reveal clearly that it has been modified.
lang/usenglish/us_durz_cart.c
lang/usenglish/us_durz_cart.h
lang/usenglish/us_int_accent_cart.c
lang/usenglish/us_int_accent_cart.h
lang/usenglish/us_int_tone_cart.c
lang/usenglish/us_int_tone_cart.h
lang/usenglish/us_phoneset.c
lang/usenglish/us_f0lr.c
These are directly (or indirectly) compiled/derived from files that are
part of the Festival Speech Synthesis System (1.4.1). Hence they have
a joint copyright CMU/Edinburgh but with the same free licence
configure
# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
#
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
configure.sub
config.guess
missing
install-sh
mkinstalldirs
Copyright FSF, and under the GPL, these files are only used for
convenient configuration and are not part of the generated binary,
and therefore do not impose any GPL restrctions on the rest of the
system. But as they are standard methods for configuration they
are included.
src/speech/g72x.h
src/speech/g721.c
src/speech/g72x.c
src/speech/g723_24.c
src/speech/g723_40.c
/*
* This source code is a product of Sun Microsystems, Inc. and is provided
* for unrestricted use. Users may copy or modify this source code without
* charge.
*
* SUN SOURCE CODE IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING
* THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
* PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
*
* Sun source code is provided with no support and without any obligation on
* the part of Sun Microsystems, Inc. to assist in its use, correction,
* modification or enhancement.
*
* SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
* INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY THIS SOFTWARE
* OR ANY PART THEREOF.
*
* In no event will Sun Microsystems, Inc. be liable for any lost revenue
* or profits or other special, indirect and consequential damages, even if
* Sun has been advised of the possibility of such damages.
*
* Sun Microsystems, Inc.
* 2550 Garcia Avenue
* Mountain View, California 94043
*/
lang/cmu_grapheme_lex/grapheme_unitran_tables.c
/* Copyright 2008-2012, University of Illinois at Urbana-Champaign */
/* distributed under the Apache License, Version (2.0) */
/* http://www.apache.org/licenses/LICENSE-2.0 */
/* Original table developed by Richard Sproat and Kyoung-young Kim */
/* Ported for Festvox by Gopala Anumachipalli gopalakr@cs.cmu.edu Sep 2012 */
/* Then converted to C for CMU Flite (cmuflite.org) */

View File

@@ -0,0 +1,102 @@
From b21c80cf33debb37b6638ab2be8d188c5a14eafb Mon Sep 17 00:00:00 2001
From: Timothy Gu <timothygu99@gmail.com>
Date: Wed, 24 Dec 2014 22:37:15 +0000
Subject: Support shared libraries on Haiku
diff --git a/configure.in b/configure.in
index 972d818..c2472a6 100644
--- a/configure.in
+++ b/configure.in
@@ -265,6 +265,10 @@ fi
if test "$shared" = true; then
case "$target_os" in
+ haiku*)
+ SHFLAGS="-fPIC"
+ OTHERLIBS="-lnetwork"
+ ;;
linux*|k*bsd*-gnu|gnu*)
SHFLAGS="-fPIC"
;;
--
1.8.3.4
From 95e4aff793bbef466ed151897d71585bcb7e0321 Mon Sep 17 00:00:00 2001
From: Timothy Gu <timothygu99@gmail.com>
Date: Wed, 24 Dec 2014 22:38:03 +0000
Subject: Do not unconditionally add `-lm` to linking commands
TODO: make this more platform-independent.
diff --git a/config/common_make_rules b/config/common_make_rules
index 7a03785..0dacbb6 100644
--- a/config/common_make_rules
+++ b/config/common_make_rules
@@ -68,7 +68,7 @@ BUILDDIRS=$(OBJDIR) $(BINDIR) $(LIBDIR)
FLITELIBS = $(BUILDDIR)/lib/libflite.a
FLITELIBFLAGS = -L$(BUILDDIR)/lib -lflite
-LDFLAGS += -lm $(AUDIOLIBS) $(OTHERLIBS)
+LDFLAGS += $(AUDIOLIBS) $(OTHERLIBS)
FULLOBJS = $(OBJS:%=$(OBJDIR)/%)
ifdef SHFLAGS
--
1.8.3.4
From 96416a919c8ea1fcafd457502ee2bc6fd3ef107f Mon Sep 17 00:00:00 2001
From: Timothy Gu <timothygu99@gmail.com>
Date: Wed, 24 Dec 2014 22:39:36 +0000
Subject: cmu_indic_lex: Separate code and declaration
diff --git a/lang/cmu_indic_lex/cmu_indic_lex.c b/lang/cmu_indic_lex/cmu_indic_lex.c
index 3c586cb..ee682d6 100644
--- a/lang/cmu_indic_lex/cmu_indic_lex.c
+++ b/lang/cmu_indic_lex/cmu_indic_lex.c
@@ -334,6 +334,9 @@ cst_val *cmu_indic_lex_ord_to_phones(const cst_val *ords,
int cur_char_type = 0;
int next_char_type = 0;
+ const cst_val *v, *vx;
+ cst_val *ph;
+
// Ignore chars (filter)
in_ords = cmu_indic_lex_remove_ignore_chars(ords);
@@ -431,8 +434,6 @@ cst_val *cmu_indic_lex_ord_to_phones(const cst_val *ords,
}
}
- const cst_val *v, *vx;
- cst_val *ph;
for(v=out_phone_strings; v; v=val_cdr(v)) {
ph = val_readlist_string(val_string(val_car(v)));
for(vx=ph; vx; vx=val_cdr(vx)) {
--
1.8.3.4
From 8b998ca76f21a8bb7cf240fd7ed40627eafbc2d8 Mon Sep 17 00:00:00 2001
From: Timothy Gu <timothygu99@gmail.com>
Date: Wed, 24 Dec 2014 23:44:02 +0000
Subject: Bump shlib version to libflite.so.2
This way it is consistent with libflite.so.2.0.0
diff --git a/config/project.mak b/config/project.mak
index f42ee12..252f22a 100644
--- a/config/project.mak
+++ b/config/project.mak
@@ -40,4 +40,4 @@ PROJECT_VERSION = 2.0.0
PROJECT_DATE = Dec 2014
PROJECT_STATE = release
-PROJECT_SHLIB_VERSION = 1
+PROJECT_SHLIB_VERSION = 2
--
1.8.3.4