Hello community, here is the log from the commit of package espeak for openSUSE:Factory checked in at 2013-12-19 15:08:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/espeak (Old) and /work/SRC/openSUSE:Factory/.espeak.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "espeak" Changes: -------- --- /work/SRC/openSUSE:Factory/espeak/espeak.changes 2012-09-16 23:46:47.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.espeak.new/espeak.changes 2013-12-19 15:08:28.000000000 +0100 @@ -1,0 +2,75 @@ +Sun Dec 15 14:33:07 UTC 2013 - [email protected] + +- Update to version 1.47.11 + + No changelog entry +- Changes from 1.47.10 + + Data change only. + + Revert 't' sound in Spanish to version 1.47.07. +- Changes from 1.47.09 + + Bug fix (lookup in *_list occasionally found the wrong word). +- Changes from 1.47.08 + + Automatically generate character names for subscript and superscript + characters. + + Use internal ctype data for character codes up to U+024F. + + Add API function espeak_TextToPhonemes(). + + Add test language az, Azerbaijani. +- Changes from 1.47.07 + + Language data changes only. +- Changes from 1.47.06 + + Fix for systems which have 44010Hz but not 22050Hz audio. + + Now runs OK in ARMv7 mode. +- Changes from 1.47.05 + + Bug fixes. + + Phoneme definitions: add conditions prev2PhW(), next3PhW(). + + Added language: ms (Malay) + Command line: + --voices=<directory> lists the voices in the specified subdirectory. +- Changes from 1.47.03 + + Bug fixes. +- Changes from 1.47.01 + + Added languages: + - an Aragonese. + - fa Farsi. + - ga Irish. + - lt Lithuanian. + - pa Punjabi. + + Many language improvements, including American English, Danish, + Dutch, Portuguese, Tamil. + + Command-line program. + - Added -version option. + - Added optional value to --ipa option. + --ipa=1 adds a 'tie' character to link letters in a multi-letter + phoneme name. + --ipa=2 adds a zero-width joiner to link letters in a + multi-letter phoneme name. + - -X option now lists the names of attributes from *_list files. + + Speak the names of Braille Dot characters, U+2800 to U+28FF. + + Speak names of characters in some non-native alphabets. + + Automatic switch to a different language for text in non-native + alphabets. + + Improved speaking of text from a non-native alphabet after + automatically switching to a different language voice. + + Break words with characters from different alphabets into + separate words. + + Ignore soft-hyphen (U+00AD) in text. + + Klatt vioices, improved nasal vowels. + + espeak-data can be compiled using a different sample rate than the + default 22050Hz. eSpeak will then generate speech at that sample rate. + + Change the structure of the espeak-data/voices directory to use + subdirectories for europe, asia, and others. + + Add suffix option 'm' to allow multiplr suffixes to be removed from a word. + + Allow $text attribute when a text translation is given in a different alphabet. + + + Phoneme definitions. + - Add NOT operator in conditions. + - Add prevVowel() and nextPh2W() + - Ignore UTF8-BOM sequence at the start of phoneme definition files. + + espeakedit application. + - Use wxWidgets 2.8 on Linux. + - Use wxNotebook for prosody and vowel pages. + - Add an option to compile the phoneme data at a specified sample rate + (uses the 'sox' program for the conversion of WAV file data). +- Add easpeak-fix-bufferoverflow-strncpy.patch; fix a bufferoverflow from + dictionnary sources files + +------------------------------------------------------------------- Old: ---- espeak-1.46.02-source.zip New: ---- easpeak-fix-bufferoverflow-strncpy.patch espeak-1.47.11-source.zip ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ espeak.spec ++++++ --- /var/tmp/diff_new_pack.BRh3Nx/_old 2013-12-19 15:08:29.000000000 +0100 +++ /var/tmp/diff_new_pack.BRh3Nx/_new 2013-12-19 15:08:29.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package espeak # -# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,8 +17,8 @@ Name: espeak -%define _major_version 1.46 -Version: 1.46.02 +%define _major_version 1.47 +Version: %{_major_version}.11 Release: 0 %define _version %{version}-source Summary: Software speech synthesizer (text-to-speech) @@ -27,6 +27,7 @@ Url: http://espeak.sourceforge.net Source: http://sourceforge.net/projects/espeak/files/espeak/espeak-%{_major_version}/espeak-%{_version}.zip Source1: espeak.1 +Patch: easpeak-fix-bufferoverflow-strncpy.patch BuildRequires: gcc-c++ BuildRequires: portaudio-devel BuildRequires: pulseaudio-devel @@ -58,23 +59,30 @@ %prep %setup -q -n %{name}-%{_version} +%patch -p1 # Don't use the included binary voice dictionaries; we compile these from # source %{__rm} espeak-data/*_dict # Build against portaudio v19 (see ReadMe) %{__cp} -f src/portaudio19.h src/portaudio.h +# Remove executable bits of documentation +chmod a-x docs/*.html %build cd src make %{?_smp_mflags} CXXFLAGS="%{optflags}" cd .. -# Build the TTS voice dictionaries -export ESPEAK_DATA_PATH=%{_builddir}/%{name}-%{_version} +# Compile the TTS voice dictionaries +export ESPEAK_DATA_PATH=$RPM_BUILD_DIR/espeak-%{version}-source cd dictsource -for voice in $(../src/speak --voices | awk '{print $2}{print $5}' | egrep -v Language\|File\|/ | uniq); do - ../src/speak --compile=$voice; +# Strange sed regex to parse ambiguous output from 'speak --voices', filled upstream BZ 3608811 +for voice in $(../src/speak --voices | \ +LANG=C sed -n '/Age\/Gender/ ! s/ *[0-9]\+ *\([^ ]\+\) *M\? *[^ ]\+ *\(\((\|[A-Z]\)[^ ]\+\)\? *\([^ ]\+\).*/\1 \4/ p' | \ +sort | uniq); do \ + ../src/speak --compile=$voice; \ done + %install cd src make LIBDIR=%{_libdir} DESTDIR=%{buildroot} install ++++++ easpeak-fix-bufferoverflow-strncpy.patch ++++++ --- a/src/dictionary.cpp +++ b/src/dictionary.cpp @@ -3533,7 +3533,7 @@ say_as = option_sayas; option_sayas = 0; // don't speak replacement word as letter names text[0] = 0; - strncpy0(&text[1], word1, sizeof(text)); + strncpy0(&text[1], word1, sizeof(text)-strlen(text)-1); found = TranslateWord(tr, &text[1], 0, NULL, NULL); strcpy(ph_out, word_phonemes); option_sayas = say_as; -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
