aboutsummaryrefslogtreecommitdiffstats
path: root/audio/festival+OGI/Makefile
blob: 74ce70f86427a1dfe722cedf0b736e372240c340 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# New ports collection makefile for:    festival+OGI
# Date created:                 2003-11-05
# Whom:                 trevor
# based on pkgsrc/audio/festival from NetBSD
#
# $NetBSD: Makefile,v 1.27 2003/10/06 21:40:17 jmc Exp $
# $FreeBSD$
#

PORTNAME=   festival+OGI
PORTVERSION=    1.4.1
CATEGORIES= audio accessibility
MASTER_SITES=   ${MASTER_SITE_FESTIVAL} ${MASTER_SITE_FESTIVAL_OGI}
MASTER_SITE_SUBDIR= ${PORTVERSION}
DISTFILES=  festival-${PORTVERSION}.tar.gz \
        speech_tools-1.2.1.tar.gz \
        OGIresLPC-2.0.9.tar.gz

PATCH_SITES=    ${MASTER_SITE_FESTIVAL_OGI}
PATCHFILES= OGIfestpatch-1.4.1.2.tar.gz

MAINTAINER= trevor@FreeBSD.org
COMMENT=    Text-to-speech system with OGI residual LPC synthesizer

LIB_DEPENDS=    audio.2:${PORTSDIR}/audio/nas \
        esd.2:${PORTSDIR}/audio/esound

CONFLICTS=  festival-*
DIST_SUBDIR=    festival

RESTRICTED= no-commercial-use

FESTIVAL=   ${WRKSRC}/festival
FESTIVAL_ARCH=  ${MACHINE_ARCH:S/i386/ix86/}
FHOME=      ${PREFIX}/share/festival
MAKE_ENV+=  PKG_EST_HOME=${SPEECHTOOLS} \
        EST_HOME=${SPEECHTOOLS} \
        PKG_FESTIVAL_BUILD_HOME=${FESTIVAL} \
        PKG_FESTIVAL_HOME=${FHOME} \
        PKG_COMPILER="${CC}" \
        PKG_X11BASE=${X11BASE} \
        PKG_PREFIX=${PREFIX} \
        GCC27_CC="${CC}" \
        GCC27_CXX="${CXX}" \
        CC="${CC}" \
        CXX="${CXX}"
MAN1=       festival.1 festival_client.1
USE_GCC=    2.95
USE_GMAKE=  yes
SPEECHTOOLS=    ${WRKSRC}/speech_tools
WRKSRC=     ${WRKDIR}

pre-everything::
    @${ECHO_CMD} "* WARNING:  the source code for this port has not   *"
    @${ECHO_CMD} "* been properly reviewed by the FreeBSD maintainer. *"
    @${ECHO_CMD} "* Waiting ten seconds (control-C cancels build).    *"
    @sleep 10

post-extract:
    @${TAR} -C ${WRKSRC} -xzf \
        ${DISTDIR}/${DIST_SUBDIR}/OGIfestpatch-1.4.1.2.tar.gz

pre-patch:
    ${CP} ${FESTIVAL}/config/config-dist ${FESTIVAL}/config/config
    ${CP} ${SPEECHTOOLS}/config/config-dist ${SPEECHTOOLS}/config/config
    ${CHMOD} u+w ${FESTIVAL}/config/config ${SPEECHTOOLS}/config/config

.include <bsd.port.pre.mk>

post-patch:
.if ${OSVERSION} > 500112
.for ii in compilers/gcc27.mak config config-dist
    @${MV} ${SPEECHTOOLS}/config/${ii} ${SPEECHTOOLS}/config/${ii}.orig
    @${SED} -e "s:= gcc:= gcc295:g" < ${SPEECHTOOLS}/config/${ii}.orig \
        > ${SPEECHTOOLS}/config/${ii}
.endfor
.endif
    @${CP} ${FILESDIR}/top-Makefile ${WRKSRC}/Makefile
    @${CP} ${FILESDIR}/FreeBSD.mak ${SPEECHTOOLS}/config/systems/FreeBSD.mak
.for i in 4 5
    @${LN} -fs ${SPEECHTOOLS}/config/systems/ix86_FreeBSD3.3.mak \
        ${SPEECHTOOLS}/config/systems/${FESTIVAL_ARCH}_FreeBSD3.${i}.mak
.endfor
.for ii in 4 5
.for jj in 1 2 3 4 5 6 7 8 9 10 11
    @${LN} -fs ${SPEECHTOOLS}/config/systems/ix86_FreeBSD4.0.mak \
    ${SPEECHTOOLS}/config/systems/${FESTIVAL_ARCH}_FreeBSD${ii}.${jj}.mak
.endfor
.endfor

do-install:
    ${MKDIR} ${FHOME}/lib/voices/english/ ${FHOME}/lib/voices/spanish/ \
        ${FHOME}/lib/dicts
    ${CHMOD} -R u+w,a+r,og-w ${FESTIVAL}/lib
    ${FIND} ${FESTIVAL}/lib -type d -print0 | ${XARGS} -0 ${CHMOD} 755
    cd ${FESTIVAL} && ${CP} -pPR lib examples ${FHOME}
    ${RM} -rf ${FHOME}/lib/etc/*FreeBSD*
    ${INSTALL_PROGRAM} ${FESTIVAL}/lib/etc/*FreeBSD*/audsp ${PREFIX}/libexec
.for ii in festival festival_client
    ${INSTALL_PROGRAM} ${FESTIVAL}/src/main/${ii} \
        ${PREFIX}/libexec/${ii}.naked
.endfor
.for ii in festival.sh festival_client.sh sitevars.scm
    ${SED} "s%@PKG_FESTIVAL_LOCATION@%${FHOME}%; \
        s%@PKG_PREFIX@%${PREFIX}%" <${FILESDIR}/${ii} > ${WRKDIR}/${ii}
.endfor
    ${INSTALL_SCRIPT} ${WRKDIR}/festival.sh ${PREFIX}/bin/festival
    ${INSTALL_SCRIPT} ${WRKDIR}/festival_client.sh \
        ${PREFIX}/bin/festival_client
    ${INSTALL_DATA} ${WRKDIR}/sitevars.scm ${FHOME}/lib/sitevars.scm
.for ii in ${MAN1}
    ${INSTALL_MAN} ${FESTIVAL}/doc/${ii} ${PREFIX}/man/man1/
.endfor

.include <bsd.port.post.mk>