1#!/bin/sh 2#####################################################-*-mode:shell-script-*- 3## ## 4## Language Technologies Institute ## 5## Carnegie Mellon University ## 6## Copyright (c) 2012 ## 7## All Rights Reserved. ## 8## ## 9## Permission is hereby granted, free of charge, to use and distribute ## 10## this software and its documentation without restriction, including ## 11## without limitation the rights to use, copy, modify, merge, publish, ## 12## distribute, sublicense, and/or sell copies of this work, and to ## 13## permit persons to whom this work is furnished to do so, subject to ## 14## the following conditions: ## 15## 1. The code must retain the above copyright notice, this list of ## 16## conditions and the following disclaimer. ## 17## 2. Any modifications must be clearly marked as such. ## 18## 3. Original authors' names are not deleted. ## 19## 4. The authors' names are not used to endorse or promote products ## 20## derived from this software without specific prior written ## 21## permission. ## 22## ## 23## CARNEGIE MELLON UNIVERSITY AND THE CONTRIBUTORS TO THIS WORK ## 24## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26## SHALL CARNEGIE MELLON UNIVERSITY NOR THE CONTRIBUTORS BE LIABLE ## 27## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31## THIS SOFTWARE. ## 32## ## 33########################################################################### 34## ## 35## Build a compilable C file with a list of the available languages ## 36## ## 37########################################################################### 38 39rm -f flite_lang_list.c 40 41echo "/* Generated automatically from make_lang_list */" >flite_lang_list.c 42echo >>flite_lang_list.c 43echo '#include "flite.h"' >>flite_lang_list.c 44echo >>flite_lang_list.c 45echo $* | 46awk '{n = NF/2; 47 for (i=1; i<=n; i++) 48 { 49 printf("void %s_init(cst_voice *v);\n",$i); 50 printf("cst_lexicon *%s_init(void);\n\n",$(i+n)); 51 }}' >>flite_lang_list.c 52echo >>flite_lang_list.c 53echo "void flite_set_lang_list(void)" >>flite_lang_list.c 54echo "{" >>flite_lang_list.c 55echo $* | 56awk '{n = NF/2; 57 for (i=1; i<=n; i++) 58 { 59 if ($i == "usenglish") 60 { 61 printf(" flite_add_lang(\"eng\",usenglish_init,cmulex_init);\n"); 62 } 63 printf(" flite_add_lang(\"%s\",%s_init,%s_init);\n",$i,$i,$(i+n)); 64 }}' >>flite_lang_list.c 65echo "}" >>flite_lang_list.c 66echo >>flite_lang_list.c 67 68