diff options
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-support/espeak/espeak_1.48.04.bb')
-rw-r--r-- | meta-openembedded/meta-oe/recipes-support/espeak/espeak_1.48.04.bb | 47 |
1 files changed, 37 insertions, 10 deletions
diff --git a/meta-openembedded/meta-oe/recipes-support/espeak/espeak_1.48.04.bb b/meta-openembedded/meta-oe/recipes-support/espeak/espeak_1.48.04.bb index 57e30f0710..78f8f85c96 100644 --- a/meta-openembedded/meta-oe/recipes-support/espeak/espeak_1.48.04.bb +++ b/meta-openembedded/meta-oe/recipes-support/espeak/espeak_1.48.04.bb @@ -1,8 +1,20 @@ -require espeak.inc -inherit siteinfo +DESCRIPTION = "eSpeak is a compact open source software speech synthesizer" +SECTION = "base" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://License.txt;md5=cb7a20edb4c9f5f478de6523dcd7362c" + +SRC_URI = "http://downloads.sourceforge.net/espeak/espeak-1.48.04-source.zip \ + file://0001-Fix-build-of-shared-library-on-architectures-needing.patch \ + file://0002-tr_languages-cast-string_ordinal-init-values.patch \ +" +SRC_URI[md5sum] = "cadd7482eaafe9239546bdc09fa244c3" +SRC_URI[sha256sum] = "bf9a17673adffcc28ff7ea18764f06136547e97bbd9edf2ec612f09b207f0659" + +S = "${WORKDIR}/espeak-${PV}-source" + +DEPENDS = "portaudio-v19 qemu-helper-native" +inherit siteinfo qemu -EXTRA_PHONEMES = '${@bb.utils.contains("SITEINFO_ENDIANNESS", "be", "espeak-data (= ${PV})", "", d)}' -RDEPENDS_${PN} = "portaudio-v19 ${EXTRA_PHONEMES}" CXXFLAGS += "-DUSE_PORTAUDIO" TARGET_CC_ARCH += "${LDFLAGS}" @@ -11,12 +23,30 @@ FILES_${PN} += "${datadir}/espeak-data" do_configure() { # "speak" binary, a TTS engine, uses portaudio in either APIs V18 or V19, use V19 - cp "${S}/src/portaudio19.h" "${S}/src/portaudio.h" + install -m 0644 "${S}/src/portaudio19.h" "${S}/src/portaudio.h" } do_compile() { cd src oe_runmake + + cd "${S}/platforms/big_endian" + qemu_binary="${@qemu_wrapper_cmdline(d, '${STAGING_DIR_TARGET}', ['${S}/platforms/big_endian', '${STAGING_DIR_TARGET}${base_libdir}'])}" + cat >qemuwrapper <<EOF +#!/bin/sh +$qemu_binary "\$@" +EOF + chmod +x qemuwrapper + sed -i '/^ *CC *=/d' Makefile + # Fixing byte order of phoneme data files + if [ "${SITEINFO_ENDIANNESS}" = "be" ]; then + sed -i 's/\(.*BYTE_ORDER\)/#undef BYTE_ORDER\n#define BYTE_ORDER BIG_ENDIAN\n\1/' espeak-phoneme-data.c + else + sed -i 's/\(.*BYTE_ORDER\)/#undef BYTE_ORDER\n#define BYTE_ORDER LITTLE_ENDIAN\n\1/' espeak-phoneme-data.c + fi + oe_runmake + ./qemuwrapper ./espeak-phoneme-data "${S}/espeak-data" "." "${S}/espeak-data/phondata-manifest" + cp -f phondata phonindex phontab "${S}/espeak-data" } do_install() { @@ -31,10 +61,7 @@ do_install() { ln -sf espeak/espeak.h ${D}${includedir}/ oe_libinstall -so -C src libespeak ${D}${libdir} - if [ "${SITEINFO_ENDIANNESS}" = "be" ] ; then - # the big-endian phon* files are provided by the package espeak-data - rm -f ${S}/espeak-data/phon* - fi - cp -R --no-dereference --preserve=mode,links ${S}/espeak-data/* ${D}${datadir}/espeak-data } + +RDEPENDS_${PN} = "portaudio-v19" |