summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunqian Gordon Xu <xjqian@gmail.com>2007-12-01 12:09:46 +0000
committerJunqian Gordon Xu <xjqian@gmail.com>2007-12-01 12:09:46 +0000
commit4a1cf80f0abae3e9b9376e7ee21bfca9727c502d (patch)
treebd1467f44889abfc7943ae71f8ac81c06f1c444c
parent9022f01470fc0feb0d9d2fef846a97dfbe3d85e9 (diff)
flite: add version 1.3
* add 1.3 version, unify * apply also-support patch for both 1.2 and 1.3 * remove old patches in 1.2 * change --with-audio=oss to =alsa
-rw-r--r--packages/flite/flite-1.2/flite-1.2-alsa_support-1.2.diff512
-rw-r--r--packages/flite/flite-1.3/.mtn2git_empty0
-rw-r--r--packages/flite/flite-1.3/flite-1.3-alsa_support-1.2.diff6615
-rw-r--r--packages/flite/flite.inc44
-rw-r--r--packages/flite/flite_1.2.bb49
-rw-r--r--packages/flite/flite_1.3.bb8
6 files changed, 7184 insertions, 44 deletions
diff --git a/packages/flite/flite-1.2/flite-1.2-alsa_support-1.2.diff b/packages/flite/flite-1.2/flite-1.2-alsa_support-1.2.diff
new file mode 100644
index 0000000000..3d2753a01f
--- /dev/null
+++ b/packages/flite/flite-1.2/flite-1.2-alsa_support-1.2.diff
@@ -0,0 +1,512 @@
+Index: configure
+===================================================================
+--- flite-1.2-release/configure (.../flite-1.2-orig) (revision 10)
++++ flite-1.2-release/configure (.../release-v1.2) (revision 10)
+@@ -1415,16 +1415,16 @@
+ echo "$ac_t""no" 1>&6
+ fi
+
+-ac_safe=`echo "sys/asoundlib.h" | sed 'y%./+-%__p_%'`
+-echo $ac_n "checking for sys/asoundlib.h""... $ac_c" 1>&6
+-echo "configure:1421: checking for sys/asoundlib.h" >&5
++ac_safe=`echo "alsa/asoundlib.h" | sed 'y%./+-%__p_%'`
++echo $ac_n "checking for alsa/asoundlib.h""... $ac_c" 1>&6
++echo "configure:1421: checking for alsa/asoundlib.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+ #line 1426 "configure"
+ #include "confdefs.h"
+-#include <sys/asoundlib.h>
++#include <alsa/asoundlib.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+ { (eval echo configure:1431: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+@@ -1445,23 +1445,24 @@
+ echo "$ac_t""yes" 1>&6
+ AUDIODRIVER="alsa"
+ AUDIODEFS=-DCST_AUDIO_ALSA
++ AUDIOLIBS=-lasound
+ else
+ echo "$ac_t""no" 1>&6
+ fi
+
+ ac_safe=`echo "mmsystem.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for mmsystem.h""... $ac_c" 1>&6
+-echo "configure:1455: checking for mmsystem.h" >&5
++echo "configure:1456: checking for mmsystem.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1460 "configure"
++#line 1461 "configure"
+ #include "confdefs.h"
+ #include <mmsystem.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1465: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:1466: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+Index: include/cst_sts.h
+===================================================================
+--- flite-1.2-release/include/cst_sts.h (.../flite-1.2-orig) (revision 10)
++++ flite-1.2-release/include/cst_sts.h (.../release-v1.2) (revision 10)
+@@ -47,9 +47,9 @@
+ /* else where, this information plus the indexes in the Unit relation */
+ /* allow reconstruction of the signal itself */
+ struct cst_sts_struct {
+- const unsigned short *frame;
+- const int size; /* in samples */
+- const unsigned char *residual;
++ unsigned short *frame;
++ int size; /* in samples */
++ unsigned char *residual;
+ };
+ typedef struct cst_sts_struct cst_sts;
+
+Index: configure.in
+===================================================================
+--- flite-1.2-release/configure.in (.../flite-1.2-orig) (revision 10)
++++ flite-1.2-release/configure.in (.../release-v1.2) (revision 10)
+@@ -131,9 +131,10 @@
+ AC_CHECK_HEADER(sys/audioio.h,
+ [AUDIODRIVER="sun"
+ AUDIODEFS=-DCST_AUDIO_SUNOS])
+-AC_CHECK_HEADER(sys/asoundlib.h,
++AC_CHECK_HEADER(alsa/asoundlib.h,
+ [AUDIODRIVER="alsa"
+- AUDIODEFS=-DCST_AUDIO_ALSA])
++ AUDIODEFS=-DCST_AUDIO_ALSA
++ AUDIOLIBS=-lasound])
+ AC_CHECK_HEADER(mmsystem.h,
+ [AUDIODRIVER="wince"
+ AUDIODEFS=-DCST_AUDIO_WINCE
+Index: src/audio/au_alsa.c
+===================================================================
+--- flite-1.2-release/src/audio/au_alsa.c (.../flite-1.2-orig) (revision 10)
++++ flite-1.2-release/src/audio/au_alsa.c (.../release-v1.2) (revision 10)
+@@ -2,7 +2,7 @@
+ /* */
+ /* Language Technologies Institute */
+ /* Carnegie Mellon University */
+-/* Copyright (c) 2001 */
++/* Copyright (c) 2000 */
+ /* All Rights Reserved. */
+ /* */
+ /* Permission is hereby granted, free of charge, to use and distribute */
+@@ -29,158 +29,283 @@
+ /* ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF */
+ /* THIS SOFTWARE. */
+ /* */
++/*********************************************************************** */
++/* Author: Lukas Loehrer ( */
++/* Date: January 2005 */
+ /*************************************************************************/
+-/* Author: Geoff Harrison (mandrake@cepstral.com) */
+-/* Date: Sepetember 2001 */
+-/*************************************************************************/
+ /* */
+-/* Access to ALSA audio devices */
+-/* */
++/* Native access to alsa audio devices on Linux */
++/* Tested with libasound version 1.0.10 */
+ /*************************************************************************/
+
+-#include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
+ #include <sys/types.h>
++#include <assert.h>
++#include <errno.h>
++
+ #include "cst_string.h"
+ #include "cst_wave.h"
+ #include "cst_audio.h"
+
+-#include <sys/asoundlib.h>
++#include <alsa/asoundlib.h>
+
+-#include <sys/stat.h>
+-#include <fcntl.h>
+
+-static int alsa_card = 0, alsa_device = 0;
++/*static char *pcm_dev_name = "hw:0,0"; */
++static char *pcm_dev_name ="default";
+
++static inline void print_pcm_state(snd_pcm_t *handle, char *msg)
++{
++ fprintf(stderr, "PCM state at %s = %s\n", msg,
++ snd_pcm_state_name(snd_pcm_state(handle)));
++}
++
+ cst_audiodev *audio_open_alsa(int sps, int channels, cst_audiofmt fmt)
+ {
+- snd_pcm_channel_info_t pinfo;
+- snd_pcm_channel_params_t params;
+- snd_pcm_channel_setup_t setup;
+- snd_pcm_t *pcm;
+- cst_audiodev *ad;
+- int err;
++ cst_audiodev *ad;
++ unsigned int real_rate;
++ int err;
+
+-#ifdef __QNXNTO__
+- if (snd_pcm_open_preferred(&pcm,&alsa_card,&alsa_device,SND_PCM_OPEN_PLAYBACK) < 0)
+- {
+- cst_errmsg("alsa_audio: failed to open audio device\n");
+- cst_error();
+- }
+- if (snd_pcm_plugin_set_disable(pcm,PLUGIN_DISABLE_MMAP) < 0)
+- {
+- cst_errmsg("alsa_audio: failed to disable mmap\n");
+- snd_pcm_close(pcm);
+- cst_error();
+- }
+-#else
+- if (snd_pcm_open(&pcm,alsa_card,alsa_device,SND_PCM_OPEN_PLAYBACK) < 0)
+- {
+- cst_errmsg("alsa_audio: failed to open audio device\n");
+- cst_error();
+- }
+-#endif
++ /* alsa specific stuff */
++ snd_pcm_t *pcm_handle;
++ snd_pcm_stream_t stream = SND_PCM_STREAM_PLAYBACK;
++ snd_pcm_hw_params_t *hwparams;
++ snd_pcm_format_t format;
++ snd_pcm_access_t access = SND_PCM_ACCESS_RW_INTERLEAVED;
+
++ /* Allocate the snd_pcm_hw_params_t structure on the stack. */
++ snd_pcm_hw_params_alloca(&hwparams);
+
+- memset(&pinfo, 0, sizeof(pinfo));
+- memset(&params, 0, sizeof(params));
+- memset(&setup, 0, sizeof(setup));
++ /* Open pcm device */
++ err = snd_pcm_open(&pcm_handle, pcm_dev_name, stream, 0);
++ if (err < 0)
++ {
++ cst_errmsg("audio_open_alsa: failed to open audio device %s. %s\n",
++ pcm_dev_name, snd_strerror(err));
++ return NULL;
++ }
+
+- pinfo.channel = SND_PCM_CHANNEL_PLAYBACK;
+- snd_pcm_plugin_info(pcm,&pinfo);
++ /* Init hwparams with full configuration space */
++ err = snd_pcm_hw_params_any(pcm_handle, hwparams);
++ if (err < 0)
++ {
++ snd_pcm_close(pcm_handle);
++ cst_errmsg("audio_open_alsa: failed to get hardware parameters from audio device. %s\n", snd_strerror(err));
++ return NULL;
++ }
+
+- params.mode = SND_PCM_MODE_BLOCK;
+- params.channel = SND_PCM_CHANNEL_PLAYBACK;
+- params.start_mode = SND_PCM_START_DATA;
+- params.stop_mode = SND_PCM_STOP_STOP;
++ /* Set access mode */
++ err = snd_pcm_hw_params_set_access(pcm_handle, hwparams, access);
++ if (err < 0)
++ {
++ snd_pcm_close(pcm_handle);
++ cst_errmsg("audio_open_alsa: failed to set access mode. %s.\n", snd_strerror(err));
++ return NULL;
++ }
+
+- params.buf.block.frag_size = pinfo.max_fragment_size;
+- params.buf.block.frags_max = 1;
+- params.buf.block.frags_min = 1;
+-
+- params.format.interleave = 1;
+- params.format.rate = sps;
+- params.format.voices = channels;
+-
+- switch (fmt)
+- {
+- case CST_AUDIO_LINEAR16:
++ /* Determine matching alsa sample format */
++ /* This could be implemented in a more */
++ /* flexible way (byte order conversion). */
++ switch (fmt)
++ {
++ case CST_AUDIO_LINEAR16:
+ if (CST_LITTLE_ENDIAN)
+- params.format.format = SND_PCM_SFMT_S16_LE;
++ format = SND_PCM_FORMAT_S16_LE;
+ else
+- params.format.format = SND_PCM_SFMT_S16_BE;
++ format = SND_PCM_FORMAT_S16_BE;
+ break;
+- case CST_AUDIO_LINEAR8:
+- params.format.format = SND_PCM_SFMT_U8;
++ case CST_AUDIO_LINEAR8:
++ format = SND_PCM_FORMAT_U8;
+ break;
+- case CST_AUDIO_MULAW:
+- params.format.format = SND_PCM_SFMT_MU_LAW;
++ case CST_AUDIO_MULAW:
++ format = SND_PCM_FORMAT_MU_LAW;
+ break;
+- }
++ default:
++ snd_pcm_close(pcm_handle);
++ cst_errmsg("audio_open_alsa: failed to find suitable format.\n");
++ return NULL;
++ break;
++ }
+
+- if((err = snd_pcm_plugin_params(pcm,&params)) < 0)
+- {
+- cst_errmsg("alsa_audio params setting failed: %s\n",snd_strerror(err));
+- snd_pcm_close(pcm);
+- cst_error();
+- }
+- if((err = snd_pcm_plugin_setup(pcm,SND_PCM_CHANNEL_PLAYBACK)) > 0) {
+- cst_errmsg("alsa_audio sound prepare setting failed: %s\n",snd_strerror(err));
+- snd_pcm_close(pcm);
+- cst_error();
+- }
+- if((err = snd_pcm_plugin_prepare(pcm,SND_PCM_CHANNEL_PLAYBACK)) > 0) {
+- cst_errmsg("alsa_audio sound prepare setting failed: %s\n",snd_strerror(err));
+- snd_pcm_close(pcm);
+- cst_error();
+- }
++ /* Set samble format */
++ err = snd_pcm_hw_params_set_format(pcm_handle, hwparams, format);
++ if (err <0)
++ {
++ snd_pcm_close(pcm_handle);
++ cst_errmsg("audio_open_alsa: failed to set format. %s.\n", snd_strerror(err));
++ return NULL;
++ }
+
+- pinfo.channel = SND_PCM_CHANNEL_PLAYBACK;
+- snd_pcm_plugin_info(pcm,&pinfo);
++ /* Set sample rate near the disired rate */
++ real_rate = sps;
++ err = snd_pcm_hw_params_set_rate_near(pcm_handle, hwparams, &real_rate, 0);
++ if (err < 0)
++ {
++ snd_pcm_close(pcm_handle);
++ cst_errmsg("audio_open_alsa: failed to set sample rate near %d. %s.\n", sps, snd_strerror(err));
++ return NULL;
++ }
++ /*FIXME: This is probably too strict */
++ assert(sps == real_rate);
+
+- ad = cst_alloc(cst_audiodev, 1);
+- ad->platform_data = pcm;
+- ad->sps = ad->real_sps = sps;
+- ad->channels = ad->real_channels = channels;
+- ad->fmt = ad->real_fmt = fmt;
++ /* Set number of channels */
++ assert(channels >0);
++ err = snd_pcm_hw_params_set_channels(pcm_handle, hwparams, channels);
++ if (err < 0)
++ {
++ snd_pcm_close(pcm_handle);
++ cst_errmsg("audio_open_alsa: failed to set number of channels to %d. %s.\n", channels, snd_strerror(err));
++ return NULL;
++ }
+
+- return ad;
++ /* Commit hardware parameters */
++ err = snd_pcm_hw_params(pcm_handle, hwparams);
++ if (err < 0)
++ {
++ snd_pcm_close(pcm_handle);
++ cst_errmsg("audio_open_alsa: failed to set hw parameters. %s.\n", snd_strerror(err));
++ return NULL;
++ }
++
++ /* Make sure the device is ready to accept data */
++ assert(snd_pcm_state(pcm_handle) == SND_PCM_STATE_PREPARED);
++
++ /* Write hardware parameters to flite audio device data structure */
++ ad = cst_alloc(cst_audiodev, 1);
++ assert(ad != NULL);
++ ad->real_sps = ad->sps = sps;
++ ad->real_channels = ad->channels = channels;
++ ad->real_fmt = ad->fmt = fmt;
++ ad->platform_data = (void *) pcm_handle;
++
++ return ad;
+ }
+
+ int audio_close_alsa(cst_audiodev *ad)
+ {
+- snd_pcm_t *pcm;
++ int result;
++ snd_pcm_t *pcm_handle;
+
+- if (ad == NULL)
+- return 0;
++ if (ad == NULL)
++ return 0;
+
+- pcm = ad->platform_data;
+- snd_pcm_plugin_flush(pcm,0);
+- snd_pcm_close(pcm);
+- cst_free(ad);
++ pcm_handle = (snd_pcm_t *) ad->platform_data;
++ result = snd_pcm_close(pcm_handle);
++ if (result < 0)
++ {
++ cst_errmsg("audio_close_alsa: Error: %s.\n", snd_strerror(result));
++ }
++ cst_free(ad);
++ return result;
++}
+
+- return 0;
++/* Returns zero if recovery was successful. */
++static int recover_from_error(snd_pcm_t *pcm_handle, ssize_t res)
++{
++ if (res == -EPIPE) /* xrun */
++ {
++ res = snd_pcm_prepare(pcm_handle);
++ if (res < 0)
++ {
++ /* Failed to recover from xrun */
++ cst_errmsg("recover_from_write_error: failed to recover from xrun. %s\n.", snd_strerror(res));
++ return res;
++ }
++ }
++ else if (res == -ESTRPIPE) /* Suspend */
++ {
++ while ((res = snd_pcm_resume(pcm_handle)) == -EAGAIN)
++ {
++ snd_pcm_wait(pcm_handle, 1000);
++ }
++ if (res < 0)
++ {
++ res = snd_pcm_prepare(pcm_handle);
++ if (res <0)
++ {
++ /* Resume failed */
++ cst_errmsg("audio_recover_from_write_error: failed to resume after suspend. %s\n.", snd_strerror(res));
++ return res;
++ }
++ }
++ }
++ else if (res < 0)
++ {
++ /* Unknown failure */
++ cst_errmsg("audio_recover_from_write_error: %s.\n", snd_strerror(res));
++ return res;
++ }
++ return 0;
+ }
+
+ int audio_write_alsa(cst_audiodev *ad, void *samples, int num_bytes)
+ {
+- snd_pcm_t *pcm = ad->platform_data;
++ size_t frame_size;
++ ssize_t num_frames, res;
++ snd_pcm_t *pcm_handle;
++ char *buf = (char *) samples;
+
+- return snd_pcm_plugin_write(pcm,samples,num_bytes);
++ /* Determine frame size in bytes */
++ frame_size = audio_bps(ad->real_fmt) * ad->real_channels;
++ /* Require that only complete frames are handed in */
++ assert((num_bytes % frame_size) == 0);
++ num_frames = num_bytes / frame_size;
++ pcm_handle = (snd_pcm_t *) ad->platform_data;
++
++ while (num_frames > 0)
++ {
++ res = snd_pcm_writei(pcm_handle, buf, num_frames);
++ if (res != num_frames)
++ {
++ if (res == -EAGAIN || (res > 0 && res < num_frames))
++ {
++ snd_pcm_wait(pcm_handle, 100);
++ }
++ else if (recover_from_error(pcm_handle, res) < 0)
++ {
++ return -1;
++ }
++ }
++
++ if (res >0)
++ {
++ num_frames -= res;
++ buf += res * frame_size;
++ }
++ }
++ return num_bytes;
+ }
+
+ int audio_flush_alsa(cst_audiodev *ad)
+ {
+- snd_pcm_t *pcm = ad->platform_data;
+-
+- return snd_pcm_plugin_flush(pcm,0);
++ int result;
++ result = snd_pcm_drain((snd_pcm_t *) ad->platform_data);
++ if (result < 0)
++ {
++ cst_errmsg("audio_flush_alsa: Error: %s.\n", snd_strerror(result));
++ }
++ /* Prepare device for more data */
++ result = snd_pcm_prepare((snd_pcm_t *) ad->platform_data);
++if (result < 0)
++ {
++ cst_errmsg("audio_flush_alsa: Error: %s.\n", snd_strerror(result));
++ }
++ return result;
+ }
+
+ int audio_drain_alsa(cst_audiodev *ad)
+ {
+- snd_pcm_t *pcm = ad->platform_data;
+-
+- return snd_pcm_plugin_playback_drain(pcm);
++ int result;
++ result = snd_pcm_drop((snd_pcm_t *) ad->platform_data);
++ if (result < 0)
++ {
++ cst_errmsg("audio_drain_alsa: Error: %s.\n", snd_strerror(result));
++ }
++/* Prepare device for more data */
++ result = snd_pcm_prepare((snd_pcm_t *) ad->platform_data);
++if (result < 0)
++ {
++ cst_errmsg("audio_drain_alsa: Error: %s.\n", snd_strerror(result));
++ }
++ return result;
+ }
+-
+Index: doc/Makefile
+===================================================================
+--- flite-1.2-release/doc/Makefile (.../flite-1.2-orig) (revision 10)
++++ flite-1.2-release/doc/Makefile (.../release-v1.2) (revision 10)
+@@ -53,6 +53,7 @@
+ @ if [ ! -d html ] ; \
+ then mkdir -p html ; fi
+ (cd html; texi2html -number -split_chapter ../flite.texi)
++ mv html/flite/*.html html/ && rmdir html/flite
+ @ for i in html/*.html ; \
+ do \
+ sed 's/<BODY>/<BODY bgcolor="#ffffff">/' $$i >ttt.html; \
+Index: config/common_make_rules
+===================================================================
+--- flite-1.2-release/config/common_make_rules (.../flite-1.2-orig) (revision 10)
++++ flite-1.2-release/config/common_make_rules (.../release-v1.2) (revision 10)
+@@ -88,7 +88,7 @@
+ @ rm -rf shared_os && mkdir shared_os
+ @ rm -f $@ $(LIBDIR)/$@.${PROJECT_VERSION} $(LIBDIR)/$@.${PROJECT_SHLIB_VERSION}
+ @ (cd shared_os && ar x ../$<)
+- @ (cd shared_os && $(CC) -shared -Wl,-soname,$@.${PROJECT_SHLIB_VERSION} -o ../$@.${PROJECT_VERSION} *.os)
++ @ (cd shared_os && $(CC) -shared -Wl,-soname,$@.${PROJECT_SHLIB_VERSION} -o ../$@.${PROJECT_VERSION} *.os $(AUDIOLIBS))
+ @ ln -s $(LIBDIR)/$@.${PROJECT_VERSION} $(LIBDIR)/$@.${PROJECT_SHLIB_VERSION}
+ @ ln -s $(LIBDIR)/$@.${PROJECT_SHLIB_VERSION} $(LIBDIR)/$@
+ @ rm -rf shared_os
diff --git a/packages/flite/flite-1.3/.mtn2git_empty b/packages/flite/flite-1.3/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/flite/flite-1.3/.mtn2git_empty
diff --git a/packages/flite/flite-1.3/flite-1.3-alsa_support-1.2.diff b/packages/flite/flite-1.3/flite-1.3-alsa_support-1.2.diff
new file mode 100644
index 0000000000..b3e4b7aae4
--- /dev/null
+++ b/packages/flite/flite-1.3/flite-1.3-alsa_support-1.2.diff
@@ -0,0 +1,6615 @@
+Index: lang/usenglish/Makefile
+===================================================================
+--- flite-1.3-release/lang/usenglish/Makefile (.../flite-1.3-orig) (revision 7)
++++ flite-1.3-release/lang/usenglish/Makefile (.../release-1.2) (revision 7)
+@@ -38,6 +38,7 @@
+ DIRNAME=lang/usenglish
+ BUILD_DIRS =
+ ALL_DIRS=
++include $(TOP)/config/config
+ H = usenglish.h us_int_accent_cart.h us_int_tone_cart.h us_durz_cart.h \
+ us_ffeatures.h us_phrasing_cart.h us_text.h us_f0.h us_nums_cart.h
+ SRCS = us_int_accent_cart.c us_int_tone_cart.c us_f0_model.c \
+@@ -45,7 +46,11 @@
+ us_phoneset.c us_ffeatures.c us_phrasing_cart.c \
+ us_gpos.c us_text.c us_expand.c us_postlex.c \
+ us_nums_cart.c us_aswd.c usenglish.c
+-OBJS = $(SRCS:.c=.o)
++ifdef SHFLAGS
++OBJS := $(SRCS:.c=.os)
++else
++OBJS := $(SRCS:.c=.o)
++endif
+ SCM=
+ FILES = Makefile $(SCM) $(SRCS) $(H)
+ LIBNAME = flite_usenglish
+Index: lang/cmu_us_kal/Makefile
+===================================================================
+--- flite-1.3-release/lang/cmu_us_kal/Makefile (.../flite-1.3-orig) (revision 7)
++++ flite-1.3-release/lang/cmu_us_kal/Makefile (.../release-1.2) (revision 7)
+@@ -43,7 +43,12 @@
+ cmu_us_kal_lpc.c \
+ cmu_us_kal_res.c \
+ cmu_us_kal_residx.c
+-OBJS = $(SRCS:.c=.o)
++include $(TOP)/config/config
++ifdef SHFLAGS
++OBJS := $(SRCS:.c=.os)
++else
++OBJS := $(SRCS:.c=.o)
++endif
+ SCM=
+ FILES = Makefile $(SCM) $(SRCS) $(H)
+ LIBNAME = flite_cmu_us_kal
+Index: lang/cmu_us_kal16/Makefile
+===================================================================
+--- flite-1.3-release/lang/cmu_us_kal16/Makefile (.../flite-1.3-orig) (revision 7)
++++ flite-1.3-release/lang/cmu_us_kal16/Makefile (.../release-1.2) (revision 7)
+@@ -44,7 +44,12 @@
+ cmu_us_kal16_lpc.c \
+ cmu_us_kal16_res.c \
+ cmu_us_kal16_residx.c
+-OBJS = $(SRCS:.c=.o)
++include $(TOP)/config/config
++ifdef SHFLAGS
++OBJS := $(SRCS:.c=.os)
++else
++OBJS := $(SRCS:.c=.o)
++endif
+ SCM=
+ FILES = Makefile $(SCM) $(SRCS) $(H)
+ LIBNAME = flite_cmu_us_kal16
+Index: lang/cmu_time_awb/Makefile
+===================================================================
+--- flite-1.3-release/lang/cmu_time_awb/Makefile (.../flite-1.3-orig) (revision 7)
++++ flite-1.3-release/lang/cmu_time_awb/Makefile (.../release-1.2) (revision 7)
+@@ -45,7 +45,12 @@
+ cmu_time_awb_mcep.c \
+ cmu_time_awb_lpc.c \
+ cmu_time_awb_lex_entry.c
+-OBJS = $(SRCS:.c=.o)
++include $(TOP)/config/config
++ifdef SHFLAGS
++OBJS := $(SRCS:.c=.os)
++else
++OBJS := $(SRCS:.c=.o)
++endif
+ SCM=
+ FILES = Makefile $(SCM) $(SRCS) $(H)
+ LIBNAME = flite_cmu_time_awb
+Index: lang/cmulex/Makefile
+===================================================================
+--- flite-1.3-release/lang/cmulex/Makefile (.../flite-1.3-orig) (revision 7)
++++ flite-1.3-release/lang/cmulex/Makefile (.../release-1.2) (revision 7)
+@@ -38,13 +38,20 @@
+ DIRNAME=lang/cmulex
+ BUILD_DIRS =
+ ALL_DIRS=
++
+ H = cmu_lts_model.h cmulex.h
+ SRCS = cmu_lts_rules.c cmu_lts_model.c \
+ cmu_lex.c cmu_lex_entries.c cmu_lex_data.c
+ LEX_DATA_INCLUDES = cmu_lex_data_raw.c cmu_lex_num_bytes.c \
+ cmu_lex_phones_huff_table.c cmu_lex_entries_huff_table.c
+
+-OBJS = $(SRCS:.c=.o)
++include $(TOP)/config/config
++ifdef SHFLAGS
++OBJS := $(SRCS:.c=.os)
++else
++OBJS := $(SRCS:.c=.o)
++endif
++
+ SCRIPTS=make_cmulex
+
+ SCM=
+Index: configure
+===================================================================
+--- flite-1.3-release/configure (.../flite-1.3-orig) (revision 7)
++++ flite-1.3-release/configure (.../release-1.2) (revision 7)
+@@ -1,324 +1,38 @@
+ #! /bin/sh
++
+ # Guess values for system-dependent variables and create Makefiles.
+-# Generated by GNU Autoconf 2.57.
++# Generated automatically using autoconf version 2.13
++# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
+ #
+-# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
+-# Free Software Foundation, Inc.
+ # This configure script is free software; the Free Software Foundation
+ # gives unlimited permission to copy, distribute and modify it.
+-## --------------------- ##
+-## M4sh Initialization. ##
+-## --------------------- ##
+
+-# Be Bourne compatible
+-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+- emulate sh
+- NULLCMD=:
+- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+- # is contrary to our usage. Disable this feature.
+- alias -g '${1+"$@"}'='"$@"'
+-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+- set -o posix
+-fi
+-
+-# Support unset when possible.
+-if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
+- as_unset=unset
+-else
+- as_unset=false
+-fi
+-
+-
+-# Work around bugs in pre-3.0 UWIN ksh.
+-$as_unset ENV MAIL MAILPATH
+-PS1='$ '
+-PS2='> '
+-PS4='+ '
+-
+-# NLS nuisances.
+-for as_var in \
+- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+- LC_TELEPHONE LC_TIME
+-do
+- if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then
+- eval $as_var=C; export $as_var
+- else
+- $as_unset $as_var
+- fi
+-done
+-
+-# Required to use basename.
+-if expr a : '\(a\)' >/dev/null 2>&1; then
+- as_expr=expr
+-else
+- as_expr=false
+-fi
+-
+-if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+- as_basename=basename
+-else
+- as_basename=false
+-fi
+-
+-
+-# Name of the executable.
+-as_me=`$as_basename "$0" ||
+-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+- X"$0" : 'X\(//\)$' \| \
+- X"$0" : 'X\(/\)$' \| \
+- . : '\(.\)' 2>/dev/null ||
+-echo X/"$0" |
+- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
+- /^X\/\(\/\/\)$/{ s//\1/; q; }
+- /^X\/\(\/\).*/{ s//\1/; q; }
+- s/.*/./; q'`
+-
+-
+-# PATH needs CR, and LINENO needs CR and PATH.
+-# Avoid depending upon Character Ranges.
+-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+-as_cr_digits='0123456789'
+-as_cr_alnum=$as_cr_Letters$as_cr_digits
+-
+-# The user is always right.
+-if test "${PATH_SEPARATOR+set}" != set; then
+- echo "#! /bin/sh" >conf$$.sh
+- echo "exit 0" >>conf$$.sh
+- chmod +x conf$$.sh
+- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+- PATH_SEPARATOR=';'
+- else
+- PATH_SEPARATOR=:
+- fi
+- rm -f conf$$.sh
+-fi
+-
+-
+- as_lineno_1=$LINENO
+- as_lineno_2=$LINENO
+- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+- test "x$as_lineno_1" != "x$as_lineno_2" &&
+- test "x$as_lineno_3" = "x$as_lineno_2" || {
+- # Find who we are. Look in the path if we contain no path at all
+- # relative or not.
+- case $0 in
+- *[\\/]* ) as_myself=$0 ;;
+- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+-done
+-
+- ;;
+- esac
+- # We did not find ourselves, most probably we were run as `sh COMMAND'
+- # in which case we are not to be found in the path.
+- if test "x$as_myself" = x; then
+- as_myself=$0
+- fi
+- if test ! -f "$as_myself"; then
+- { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
+- { (exit 1); exit 1; }; }
+- fi
+- case $CONFIG_SHELL in
+- '')
+- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for as_base in sh bash ksh sh5; do
+- case $as_dir in
+- /*)
+- if ("$as_dir/$as_base" -c '
+- as_lineno_1=$LINENO
+- as_lineno_2=$LINENO
+- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+- test "x$as_lineno_1" != "x$as_lineno_2" &&
+- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
+- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
+- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
+- CONFIG_SHELL=$as_dir/$as_base
+- export CONFIG_SHELL
+- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
+- fi;;
+- esac
+- done
+-done
+-;;
+- esac
+-
+- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+- # uniformly replaced by the line number. The first 'sed' inserts a
+- # line-number line before each line; the second 'sed' does the real
+- # work. The second script uses 'N' to pair each line-number line
+- # with the numbered line, and appends trailing '-' during
+- # substitution so that $LINENO is not a special case at line end.
+- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
+- sed '=' <$as_myself |
+- sed '
+- N
+- s,$,-,
+- : loop
+- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+- t loop
+- s,-$,,
+- s,^['$as_cr_digits']*\n,,
+- ' >$as_me.lineno &&
+- chmod +x $as_me.lineno ||
+- { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
+- { (exit 1); exit 1; }; }
+-
+- # Don't try to exec as it changes $[0], causing all sort of problems
+- # (the dirname of $[0] is not the place where we might find the
+- # original and so on. Autoconf is especially sensible to this).
+- . ./$as_me.lineno
+- # Exit status is that of the last command.
+- exit
+-}
+-
+-
+-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+- *c*,-n*) ECHO_N= ECHO_C='
+-' ECHO_T=' ' ;;
+- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
+-esac
+-
+-if expr a : '\(a\)' >/dev/null 2>&1; then
+- as_expr=expr
+-else
+- as_expr=false
+-fi
+-
+-rm -f conf$$ conf$$.exe conf$$.file
+-echo >conf$$.file
+-if ln -s conf$$.file conf$$ 2>/dev/null; then
+- # We could just check for DJGPP; but this test a) works b) is more generic
+- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+- if test -f conf$$.exe; then
+- # Don't use ln at all; we don't have any links
+- as_ln_s='cp -p'
+- else
+- as_ln_s='ln -s'
+- fi
+-elif ln conf$$.file conf$$ 2>/dev/null; then
+- as_ln_s=ln
+-else
+- as_ln_s='cp -p'
+-fi
+-rm -f conf$$ conf$$.exe conf$$.file
+-
+-if mkdir -p . 2>/dev/null; then
+- as_mkdir_p=:
+-else
+- as_mkdir_p=false
+-fi
+-
+-as_executable_p="test -f"
+-
+-# Sed expression to map a string onto a valid CPP name.
+-as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
+-
+-# Sed expression to map a string onto a valid variable name.
+-as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
+-
+-
+-# IFS
+-# We need space, tab and new line, in precisely that order.
+-as_nl='
+-'
+-IFS=" $as_nl"
+-
+-# CDPATH.
+-$as_unset CDPATH
+-
+-
+-# Name of the host.
+-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+-# so uname gets run too.
+-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+-
+-exec 6>&1
+-
+-#
+-# Initializations.
+-#
++# Defaults:
++ac_help=
+ ac_default_prefix=/usr/local
+-ac_config_libobj_dir=.
+-cross_compiling=no
+-subdirs=
+-MFLAGS=
+-MAKEFLAGS=
+-SHELL=${CONFIG_SHELL-/bin/sh}
++# Any additions from configure.in:
++ac_help="$ac_help
++ --disable-shared without shared library support"
++ac_help="$ac_help
++ --disable-sockets without socket support"
++ac_help="$ac_help
++ --with-audio with specific audio support (none linux freebsd etc) "
++ac_help="$ac_help
++ --with-lang with language "
++ac_help="$ac_help
++ --with-vox with vox "
++ac_help="$ac_help
++ --with-lex with lexicon "
+
+-# Maximum number of lines to put in a shell here document.
+-# This variable seems obsolete. It should probably be removed, and
+-# only ac_max_sed_lines should be used.
+-: ${ac_max_here_lines=38}
+-
+-# Identity of this package.
+-PACKAGE_NAME=
+-PACKAGE_TARNAME=
+-PACKAGE_VERSION=
+-PACKAGE_STRING=
+-PACKAGE_BUGREPORT=
+-
+-ac_unique_file="include/flite.h"
+-# Factoring default headers for most tests.
+-ac_includes_default="\
+-#include <stdio.h>
+-#if HAVE_SYS_TYPES_H
+-# include <sys/types.h>
+-#endif
+-#if HAVE_SYS_STAT_H
+-# include <sys/stat.h>
+-#endif
+-#if STDC_HEADERS
+-# include <stdlib.h>
+-# include <stddef.h>
+-#else
+-# if HAVE_STDLIB_H
+-# include <stdlib.h>
+-# endif
+-#endif
+-#if HAVE_STRING_H
+-# if !STDC_HEADERS && HAVE_MEMORY_H
+-# include <memory.h>
+-# endif
+-# include <string.h>
+-#endif
+-#if HAVE_STRINGS_H
+-# include <strings.h>
+-#endif
+-#if HAVE_INTTYPES_H
+-# include <inttypes.h>
+-#else
+-# if HAVE_STDINT_H
+-# include <stdint.h>
+-# endif
+-#endif
+-#if HAVE_UNISTD_H
+-# include <unistd.h>
+-#endif"
+-
+-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT RANLIB ac_ct_RANLIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA AR ac_ct_AR TARGET_OS TARGET_CPU M68KCC LEXDEFS VOXDEFS HOST_OS HOST_CPU OTHERLIBS SHFLAGS MMAPTYPE STDIOTYPE CPP EGREP AUDIODRIVER AUDIODEFS AUDIOLIBS FL_LANG FL_VOX FL_LEX LIBOBJS LTLIBOBJS'
+-ac_subst_files=''
+-
+ # Initialize some variables set by options.
+-ac_init_help=
+-ac_init_version=false
+ # The variables have the same names as the options, with
+ # dashes changed to underlines.
+-cache_file=/dev/null
++build=NONE
++cache_file=./config.cache
+ exec_prefix=NONE
++host=NONE
+ no_create=
++nonopt=NONE
+ no_recursion=
+ prefix=NONE
+ program_prefix=NONE
+@@ -327,15 +41,10 @@
+ silent=
+ site=
+ srcdir=
++target=NONE
+ verbose=
+ x_includes=NONE
+ x_libraries=NONE
+-
+-# Installation directory options.
+-# These are left unexpanded so users can "make install exec_prefix=/foo"
+-# and all the variables that are supposed to be based on exec_prefix
+-# by default will actually change.
+-# Use braces instead of parens because sh, perl, etc. also accept them.
+ bindir='${exec_prefix}/bin'
+ sbindir='${exec_prefix}/sbin'
+ libexecdir='${exec_prefix}/libexec'
+@@ -349,9 +58,17 @@
+ infodir='${prefix}/info'
+ mandir='${prefix}/man'
+
++# Initialize some other variables.
++subdirs=
++MFLAGS= MAKEFLAGS=
++SHELL=${CONFIG_SHELL-/bin/sh}
++# Maximum number of lines to put in a shell here document.
++ac_max_here_lines=12
++
+ ac_prev=
+ for ac_option
+ do
++
+ # If the previous option needs an argument, assign it.
+ if test -n "$ac_prev"; then
+ eval "$ac_prev=\$ac_option"
+@@ -359,59 +76,59 @@
+ continue
+ fi
+
+- ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
++ case "$ac_option" in
++ -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
++ *) ac_optarg= ;;
++ esac
+
+ # Accept the important Cygnus configure options, so we can diagnose typos.
+
+- case $ac_option