8fba1543b2
modules were enabled. Add missing file to plist when python module is enabled. Approved by: Richard E. Neese <r.neese@gmail.com> (maintainer) Pointyhat: jpaetzel
304 lines
12 KiB
Makefile
304 lines
12 KiB
Makefile
# Ports collection makefile for: freeswitch-core
|
|
# Date created: May 11, 2010
|
|
# Whom: Richard Neese<r.neese@gmail.com>
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
PORTNAME= freeswitch-core
|
|
PORTVERSION= 201044
|
|
PORTREVISION= 3
|
|
CATEGORIES= net
|
|
MASTER_SITES= ftp://ftp.secure-computing.net/pub/freeswitch/ \
|
|
ftp://ftp2.secure-computing.net/pub/freeswitch/ \
|
|
http://files.freeswitch.org/downloads/libs/:2
|
|
DISTFILES= ${BASE_PORTNAME}-${PORTVERSION}.tar.gz \
|
|
celt-0.7.1.tar.gz:2 \
|
|
flite-1.3.99-latest.tar.gz:2 \
|
|
json-c-0.9.tar.gz:2 \
|
|
lame-3.97.tar.gz:2 \
|
|
libmemcached-0.32.tar.gz:2 \
|
|
libshout-2.2.2.tar.gz:2 \
|
|
mpg123.tar.gz:2 \
|
|
openldap-2.4.11.tar.gz:2 \
|
|
pocketsphinx-0.5.99-20091212.tar.gz:2 \
|
|
soundtouch-1.3.1.tar.gz:2 \
|
|
sphinxbase-0.4.99-20091212.tar.gz:2 \
|
|
communicator_semi_6000_20080321.tar.gz:2
|
|
DIST_SUBDIR= ${BASE_PORTNAME}
|
|
EXTRACT_ONLY= ${BASE_PORTNAME}-${PORTVERSION}.tar.gz
|
|
|
|
MAINTAINER= r.neese@gmail.com
|
|
COMMENT= FreeSwitch SoftSwitch Port
|
|
|
|
BUILD_DEPENDS= pkg-config:${PORTSDIR}/devel/pkg-config
|
|
LIB_DEPENDS= curl:${PORTSDIR}/ftp/curl \
|
|
gnutls:${PORTSDIR}/security/gnutls \
|
|
odbc:${PORTSDIR}/databases/unixODBC
|
|
|
|
WRKSRC= ${WRKDIR}/${BASE_PORTNAME}-${PORTVERSION}
|
|
|
|
ONLY_FOR_ARCHS= i386 amd64
|
|
|
|
USE_AUTOTOOLS= autoconf:env automake:env libtool:env
|
|
|
|
USE_PERL5_BUILD=yes
|
|
|
|
USE_GMAKE= yes
|
|
SUB_FILES= pkg-install pkg-message
|
|
USE_RC_SUBR= freeswitch
|
|
HAS_CONFIGURE= yes
|
|
VARBASE?= /var
|
|
CONFIGURE_ARGS= --prefix=${PREFIX} \
|
|
--bindir=${PREFIX}/bin \
|
|
--sysconfdir=${PREFIX}/etc/${BASE_PORTNAME}/conf \
|
|
--includedir=${PREFIX}/include/${BASE_PORTNAME} \
|
|
--libdir=${PREFIX}/lib/${BASE_PORTNAME}/lib \
|
|
--localstatedir="${VARBASE}" \
|
|
--with-modinstdir=${PREFIX}/lib/${BASE_PORTNAME}/mod \
|
|
--with-libgnutls-prefix=${LOCALBASE} \
|
|
--with-ogg=${LOCALBASE} \
|
|
--with-ogg-libraries=${LOCALBASE}/lib \
|
|
--with-ogg-includes=${LOCALBASE}/include
|
|
|
|
CONFIGURE_ENV+= CPPFLAGS="${CXXFLAGS} -I${LOCALBASE}/include" \
|
|
LDFLAGS="-L${LOCALBASE}/lib"
|
|
USE_LDCONFIG= yes
|
|
CPPFLAGS+= -I${PREFIX}/include
|
|
|
|
FREESWITCH_USER= freeswitch
|
|
FREESWITCH_GROUP= ${FREESWITCH_USER}
|
|
|
|
SUB_LIST= FREESWITCH_USER=${FREESWITCH_USER} FREESWITCH_GROUP=${FREESWITCH_GROUP}
|
|
|
|
BASE_PORTNAME= ${FREESWITCH_USER}
|
|
|
|
OPTIONS= MODSHOUT "Enable mod_shout (streaming audio/mp3)" on \
|
|
MODFLITE "Enable mod_flite (Text to Speech)" on \
|
|
MODUNIMRCP "Enable mod_unimrcp tts" off \
|
|
MODTTSCMDLINE "Enable mod_tts_commandline" off \
|
|
MODPOCKETSPHINX "Enable mod_pockectsphinx (voice control)" on \
|
|
MODCIDLOOKUP "Enable mod_cidlookup" on \
|
|
MODDPDIRECTORY "Enable mod_dialplan_directory" off \
|
|
MODDIRECTORY "Enable mod_directory" on \
|
|
MODDINGALING "Enable mod_dingaling(google talk)" on \
|
|
MODEASYROUTE "Enable mod_easyroute(routing tool)" on \
|
|
MODERLANGEVENT "Enable mod_erlang_event (Call Center Dist)" off \
|
|
MODFAX "Enable mod_fax" on \
|
|
MODLCR "Enable mod_lcr (least cost routing)" on \
|
|
MODSOUNDTOUCH "Enable mod_soundtouch" on \
|
|
MODRSS "Enable mod_rss (rss feed reader)" on \
|
|
MODSNOM "Enable mod_snom (snom control)" off \
|
|
MODAVMD "Enable mod_avmd (Adavced v-mail detection)" on \
|
|
MODVMD "Enable mod_vmd (voice mail detection)" on \
|
|
MODSPY "Enable mod_spy" on \
|
|
MODAMRWB "Enable mod_amrwb (amrwb codec)" on \
|
|
MODCELT "Enable mod_celt (celt 48k codec)" on \
|
|
MODSILK "Enable mod_silk (New Silk Codec)" on \
|
|
MODCODEC2 "Enable mod_codec2 (new codec)" on \
|
|
MODFREETDM "Enable mod_freetdm dahdi support (Testing)" off \
|
|
MODSKINNY "Enable mod_skinny Skinny Support" on \
|
|
MODMEMCACHE "Enable mod_memcache" on \
|
|
MODMULTICAST "Enable mod_event_multicast" on \
|
|
MODNIBBLEBILL "Enable mod_nibblebill (billing)" on \
|
|
MODPORTAUDIO "Enable mod_portaudio" on \
|
|
MODPASTREAM "Enable mod_portaudio_stream (new)" on \
|
|
MODSHELLSTREAM "Enable mod_shell_stream (new)" on \
|
|
MODPERL "Enable mod_perl (perl support)" off \
|
|
MODPYTHON "Enable mod_python (python)" off \
|
|
MODCURL "Enable mod_curl" off \
|
|
MODXMLCURL "Enable mod_xml_curl" off \
|
|
MODDISTRIBUTOR "Enable mod_distributor " off \
|
|
MODSNAPSHOT "Enable mod_snapshot (testing)" off \
|
|
MODSAYDE "Enable mod_say_de (German support)" off \
|
|
MODSAYES "Enable mod_say_se (Spanish support)" off \
|
|
MODSAYEN "Enable mod_say_en (English support)" on \
|
|
MODSAYHU "Enable mod_say_hu (Hungarian support)" off \
|
|
MODSAYFR "Enable mod_say_fr (French support)" off \
|
|
MODSAYIT "Enable mod_say_it (Italian support)" off \
|
|
MODSAYNL "Enable mod_say_nl (Dutch support)" off \
|
|
MODSAYRU "Enable mod_say_ru (Russian support)" on \
|
|
MODSAYTH "Enable mod_say_th (Thi support)" off \
|
|
MODSAYZH "Enable mod_say_zh (Chinese support)" off \
|
|
EXTENSIONS "Include Default User Extensions" off \
|
|
MODCALLCENTER "Enable mod_callcenter (new)" on \
|
|
ZRTP "ENABLE ZRTP (VOIP ENCRYPTION)(NEW)(TEST)" off
|
|
|
|
.include <bsd.port.options.mk>
|
|
|
|
.if ${OSVERSION} < 700000
|
|
BROKEN= Does not compile on FreeBSD < 7.0
|
|
.endif
|
|
|
|
.if ${ARCH} == "amd64"
|
|
CFLAGS+= -fPIC
|
|
.endif
|
|
|
|
.for i in MODFLITE MODPOCKETSPHINX MODCIDLOOKUP MODDPDIRECTORY MODEASYROUTE MODLCR MODSOUNDTOUCH \
|
|
MODRSS MODSNOM MODAVMD MODVMD MODSPY MODAMRWB MODCELT MODMULTICAST MODPORTAUDIO MODCURL MODXMLCURL \
|
|
MODSAYDE MODSAYEN MODSAYES MODSAYFR MODSAYHU MODSAYIT MODSAYNL MODSAYRU MODSAYTH MODSAYZH \
|
|
MODNIBBLEBILL MODDINGALING MODDIRECTORY MODMEMCACHE MODPASTREAM MODSHELLSTREAM \
|
|
MODSILK MODUNIMRCP MODTTSCMDLINE MODDISTRIBUTOR MODSNAPSHOT MODSKINNY EXTENSIONS MODCALLCENTER MODCODEC2
|
|
.if !defined(WITH_${i})
|
|
PLIST_SUB+= WITH_${i}="@comment "
|
|
.else
|
|
PLIST_SUB+= WITH_${i}=""
|
|
.endif
|
|
.endfor
|
|
|
|
.if !defined(WITH_MODFREETDM)
|
|
PLIST_SUB+= WITH_MODFREETDM="@comment "
|
|
.else
|
|
.if ${OSVERSION} < 703000 || (${OSVERSION} >= 800000 && ${OSVERSION} < 800108)
|
|
IGNORE= sorry you can not use mod_freetdm on this version of freebsd ( dahdi support broken ) please update
|
|
.endif
|
|
PLIST_SUB+= WITH_MODFREETDM=""
|
|
CONFIGURE_ARGS+= --with-libpri
|
|
BUILD_DEPENDS+= libpri>=1.2.0:${PORTSDIR}/misc/libpri \
|
|
${LOCALBASE}/include/dahdi/wctdm_user.h:${PORTSDIR}/misc/dahdi
|
|
LIB_DEPENDS+= pri:${PORTSDIR}/misc/libpri
|
|
RUN_DEPENDS+= ${LOCALBASE}/include/dahdi/wctdm_user.h:${PORTSDIR}/misc/dahdi
|
|
.endif
|
|
|
|
.if !defined(WITH_MODSHOUT)
|
|
PLIST_SUB+= WITH_MODSHOUT="@comment "
|
|
.else
|
|
PLIST_SUB+= WITH_MODSHOUT=""
|
|
LIB_DEPENDS+= vorbis:${PORTSDIR}/audio/libvorbis
|
|
.endif
|
|
|
|
.if !defined(WITH_MODPERL)
|
|
PLIST_SUB+= WITH_MODPERL="@comment "
|
|
.else
|
|
PLIST_SUB+= WITH_MODPERL=""
|
|
LIB_DEPENDS+= gdbm:${PORTSDIR}/databases/gdbm \
|
|
db:${PORTSDIR}/databases/db42
|
|
.endif
|
|
|
|
.if !defined(WITH_MODFAX)
|
|
PLIST_SUB+= WITH_MODFAX="@comment "
|
|
.else
|
|
PLIST_SUB+= WITH_MODFAX=""
|
|
LIB_DEPENDS+= jpeg:${PORTSDIR}/graphics/jpeg
|
|
.endif
|
|
|
|
.if !defined(WITH_MODERLANGEVENT)
|
|
PLIST_SUB+= WITH_MODERLANGEVENT="@comment "
|
|
.else
|
|
PLIST_SUB+= WITH_MODERLANGEVENT=""
|
|
BUILD_DEPENDS+= ${LOCALBASE}/lib/erlang/usr/include/erl_driver.h:${PORTSDIR}/lang/erlang-lite
|
|
.endif
|
|
|
|
.if !defined(WITH_ZRTP)
|
|
PLIST_SUB+= WITH_ZRTP="@comment "
|
|
.else
|
|
PLIST_SUB+= WITH_ZRTP=""
|
|
CONFIGURE_ARGS+= --enable-zrtp
|
|
BUILD_DEPENDS+= ${LOCALBASE}/lib/libzrtp.a:${PORTSDIR}/devel/libzrtp
|
|
RUN_DEPENDS+= ${LOCALBASE}/lib/libzrtp.a:${PORTSDIR}/devel/libzrtp
|
|
.endif
|
|
|
|
.if !defined(WITH_MODPYTHON)
|
|
PLIST_SUB+= WITH_MODPYTHON="@comment "
|
|
.else
|
|
PLIST_SUB+= WITH_MODPYTHON=""
|
|
USE_PYTHON= yes
|
|
.endif
|
|
|
|
pre-configure:
|
|
@${REINPLACE_CMD} -e 's|pkgconfigdir = $$(libdir)/pkgconfig|pkgconfigdir = ${PREFIX}/libdata/pkgconfig|g' ${WRKSRC}/libs/*/Makefile.am
|
|
@${REINPLACE_CMD} -e 's|pkgconfigdir = $$(libdir)/pkgconfig|pkgconfigdir = ${PREFIX}/libdata/pkgconfig|g' ${WRKSRC}/libs/*/Makefile.am
|
|
@${REINPLACE_CMD} -e 's|pkgconfigdir = $$(libdir)/pkgconfig|pkgconfigdir = ${PREFIX}/libdata/pkgconfig|g' ${WRKSRC}/Makefile.am
|
|
@${REINPLACE_CMD} -e 's|base=http://files.freeswitch.org/downloads/libs/|base=file://${DISTDIR}/${DIST_SUBDIR}/|g' ${WRKSRC}/build/getlib.sh.in
|
|
cd ${WRKSRC} && ./rebootstrap.sh
|
|
|
|
post-configure:
|
|
.for i in mod_unimrcp mod_flite mod_pocketsphinx
|
|
.if defined(WITH_${i:C/_//g:U})
|
|
@${REINPLACE_CMD} -e 's|#\(asr_tts/${i}\)|\1|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.endfor
|
|
.if defined(WITH_MODTTSCMDLINE)
|
|
@${REINPLACE_CMD} -e 's|#asr_tts/mod_tts_commandline|asr_tts/mod_tts_commandline|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.for i in mod_cidlookup mod_easyroute mod_fax mod_lcr mod_soundtouch mod_rss mod_snom \
|
|
mod_vmd mod_avmd mod_spy mod_curl mod_nibblebill mod_memcache mod_directory mod_distributor \
|
|
mod_snapshot mod_callcenter
|
|
.if defined(WITH_${i:C/_//g:U})
|
|
@${REINPLACE_CMD} -e 's|#\(applications/${i}\)|\1|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.endfor
|
|
.for i in mod_amrwb mod_celt mod_silk mod_codec2
|
|
.if defined(WITH_${i:C/_//g:U})
|
|
@${REINPLACE_CMD} -e 's|#\(codecs/${i}\)|\1|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.endfor
|
|
.for i in mod_shell_stream mod_shout
|
|
.if defined(WITH_${i:C/_//g:U})
|
|
@${REINPLACE_CMD} -e 's|#\(formats/${i}\)|\1|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.endfor
|
|
.if defined(WITH_MODPASTREAM)
|
|
@${REINPLACE_CMD} -e 's|#formats/mod_portaudio_stream|formats/mod_portaudio_stream|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.for i in mod_say_de mod_say_es mod_say_en mod_say_fr mod_say_hu mod_say_it mod_say_nl mod_say_ru mod_say_th mod_say_zh
|
|
.if defined(WITH_${i:C/_//g:U})
|
|
@${REINPLACE_CMD} -e 's|#\(say/${i}\)|\1|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.endfor
|
|
.for i in mod_perl mod_python
|
|
.if defined(WITH_${i:C/_//g:U})
|
|
@${REINPLACE_CMD} -e 's|#\(languages/${i}\)|\1|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.endfor
|
|
.for i in mod_skinny mod_portaudio mod_dingaling
|
|
.if defined(WITH_${i:C/_//g:U})
|
|
@${REINPLACE_CMD} -e 's|#\(endpoints/${i}\)|\1|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.endfor
|
|
.if defined(WITH_MODDPDIRECTORY)
|
|
@${REINPLACE_CMD} -e 's|#dialplans/mod_dialplan_directory|dialplans/mod_dialplan_directory|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.if defined(WITH_MODFREETDM)
|
|
@${REINPLACE_CMD} -e 's|#../../libs/freetdm/mod_freetdm|../../libs/freetdm/mod_freetdm|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.if defined(WITH_MODMULTICAST)
|
|
@${REINPLACE_CMD} -e 's|#event_handlers/mod_event_multicast|event_handlers/mod_event_multicast|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.if defined(WITH_MODERLANGEVENT)
|
|
@${REINPLACE_CMD} -e 's|#event_handlers/mod_erlang_event|event_handlers/mod_erlang_event|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
.if defined(WITH_MODXMLCURL)
|
|
@${REINPLACE_CMD} -e 's|#xml_int/mod_xml_curl|xml_int/mod_xml_curl|g' ${WRKSRC}/modules.conf
|
|
.endif
|
|
|
|
pre-install:
|
|
@${SH} ${PKGINSTALL} ${BASE_PORTNAME} PRE-INSTALL
|
|
|
|
.if !defined(WITH_EXTENSIONS)
|
|
@${FIND} ${WRKSRC}/conf/directory/default -type f -name '*.xml' -delete
|
|
.endif
|
|
|
|
post-install:
|
|
.if !defined(WITH_EXTENSIONS)
|
|
@${MKDIR} ${PREFIX}/etc/${BASE_PORTNAME}/conf/directory/default
|
|
.endif
|
|
@${MKDIR} ${PREFIX}/share/${BASE_PORTNAME}/sounds
|
|
@${CHOWN} -R ${FREESWITCH_USER}:${FREESWITCH_GROUP} ${PREFIX}/etc/${BASE_PORTNAME}
|
|
@${CHOWN} -R ${FREESWITCH_USER}:${FREESWITCH_GROUP} ${PREFIX}/share/${BASE_PORTNAME}
|
|
@${CHOWN} -R ${FREESWITCH_USER}:${FREESWITCH_GROUP} ${VARBASE}/db/${BASE_PORTNAME}
|
|
@${CHOWN} -R ${FREESWITCH_USER}:${FREESWITCH_GROUP} ${VARBASE}/log/${BASE_PORTNAME}
|
|
@${CHOWN} -R ${FREESWITCH_USER}:${FREESWITCH_GROUP} ${VARBASE}/${BASE_PORTNAME}
|
|
@${CHOWN} -R ${FREESWITCH_USER}:${FREESWITCH_GROUP} ${VARBASE}/run/${BASE_PORTNAME}
|
|
@${CHOWN} -R ${FREESWITCH_USER}:${FREESWITCH_GROUP} ${VARBASE}/spool/${BASE_PORTNAME}
|
|
@for i in $$(${FIND} ${PREFIX}/etc/${BASE_PORTNAME}/conf/ -type f -name '*.sample'); do if [ ! -f $${i%.sample} ]; then ${CP} -p $$i $${i%.sample}; fi; done
|
|
@${CHMOD} -R 775 ${PREFIX}/etc/${BASE_PORTNAME}/conf
|
|
@${CHMOD} -R 775 ${VARBASE}/log/${BASE_PORTNAME}
|
|
@${CHMOD} -R 775 ${VARBASE}/${BASE_PORTNAME}
|
|
@${ECHO_MSG} "This port chown -R various directories ${FREESWITCH_USER}:${FREESWITCH_GROUP} "
|
|
@${ECHO_MSG} "this is for port security . in the event something should stop working."
|
|
@${ECHO_MSG} "Please take the time to check chownership of the dir's"
|
|
@${ECHO_MSG} "${VARBASE}/db/${BASE_PORTNAME} ${VARBASE}/log/${BASE_PORTNAME} ${VARBASE}/${BASE_PORTNAME} ${PREFIX}/etc/${BASE_PORTNAME}"
|
|
@${CAT} ${PKGMESSAGE}
|
|
|
|
.include <bsd.port.mk>
|