There are issues with big-endian systems which the following patch addresses (+ a few minor things)
* espeak-phoneme-data.c: Cross-compiling is easier as one can define TARGET_BYTE_ORDER to override the BYTE_ORDER define.
* dictionary.cpp: reverse_word_bytes was not working correctly - replaced by macros. Also two more words are swapped allowing to use the original little-endian dict files -> no need to recompile them! (now only the phon* files need to be converted).
GetFileLength may return a size < 0, therefore check for <= 0 (not == 0)
* Makefile: Removed flag -O2 to allow for system-specific optimization settings, like -Os for small systems.
* synthesize.cpp: buf was never set, fixed.
* numbers.cpp: Made letter_accents_0e0 unsigned to get rid of the warning "overflow in implicit constant conversion"
Please review the changes and if appropriate please apply them.
Log in to post a comment.