247 lines
10 KiB
Makefile
247 lines
10 KiB
Makefile
# $NetBSD$
|
|
|
|
DISTNAME= freeswitch-${VERSION}
|
|
VERSION= 1.6.19
|
|
CATEGORIES= net
|
|
MASTER_SITES= http://files.freeswitch.org/releases/freeswitch/
|
|
EXTRACT_SUFX= .tar.xz
|
|
|
|
MAINTAINER= angelmadames@gmail.com
|
|
HOMEPAGE= http://www.freeswitch.org/
|
|
COMMENT= FreeSwitch SoftSwitch
|
|
LICENSE= mpl-1.1
|
|
|
|
GNU_CONFIGURE= yes
|
|
USE_LANGUAGES= c c++
|
|
USE_TOOLS+= aclocal automake autoconf gmake perl pkg-config bash
|
|
|
|
BUILD_DEFS+= VARBASE
|
|
|
|
.include "../../wip/freeswitch-core/options.mk"
|
|
|
|
CONFIGURE_ARGS+= --prefix=${PREFIX}
|
|
CONFIGURE_ARGS+= --exec-prefix=${PREFIX}/bin
|
|
CONFIGURE_ARGS+= --bindir=${PREFIX}/bin
|
|
CONFIGURE_ARGS+= --libexecdir=${PREFIX}/libexec
|
|
CONFIGURE_ARGS+= --sysconfdir=${PREFIX}/etc
|
|
CONFIGURE_ARGS+= --libdir=${PREFIX}/lib
|
|
CONFIGURE_ARGS+= --localstatedir=${VARBASE}/db/freeswitch
|
|
CONFIGURE_ARGS+= --datarootdir=${PREFIX}/share
|
|
CONFIGURE_ARGS+= --includedir=${PREFIX}/include
|
|
CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR}
|
|
CONFIGURE_ARGS+= --docdir=${PREFIX}/share/doc
|
|
CONFIGURE_ARGS+= --htmldir=${PREFIX}/doc
|
|
CONFIGURE_ARGS+= --dvidir=${PREFIX}/doc
|
|
CONFIGURE_ARGS+= --psdir=${PREFIX}/doc
|
|
CONFIGURE_ARGS+= --with-cachedir=${VARBASE}/cache/freeswitch
|
|
CONFIGURE_ARGS+= --with-storagedir=${VARBASE}/db/freeswitch
|
|
CONFIGURE_ARGS+= --with-rundir=${VARBASE}/run/freeswitch
|
|
CONFIGURE_ARGS+= --with-logfiledir=${VARBASE}/log/freeswitch
|
|
CONFIGURE_ARGS+= --with-dbdir=${VARBASE}/db/freeswitch
|
|
CONFIGURE_ARGS+= --with-imagesdir=${PREFIX}/share/freeswitch/images
|
|
CONFIGURE_ARGS+= --with-recordingsdir=${PREFIX}/freeswitch/recordings
|
|
CONFIGURE_ARGS+= --with-modinstdir=${PREFIX}/freeswitch/modules
|
|
CONFIGURE_ARGS+= --disable-libvpx
|
|
CONFIGURE_ARGS+= --enable-64
|
|
|
|
REPLACE_PERL+= scripts/rss/*.pl
|
|
REPLACE_PERL+= scripts/perl/*.pl
|
|
REPLACE_PERL+= scripts/perl/*.cgi
|
|
REPLACE_PERL+= scripts/perl/multicast/send.pl
|
|
REPLACE_PERL+= scripts/perl/add_user
|
|
REPLACE_PERL+= scripts/perl/sendmail
|
|
REPLACE_PERL+= scripts/perl/fslog
|
|
REPLACE_PERL+= scripts/perl/g729_activate
|
|
REPLACE_PERL+= scripts/perl/FreeSWITCH/debian/rules
|
|
REPLACE_PERL+= scripts/perl/POE-Filter-FSSocket/lib/POE/Filter/FSSocket.pm
|
|
REPLACE_PERL+= scripts/perl/POE-Filter-FSSocket/examples/*.pl
|
|
REPLACE_PERL+= scripts/perl/POE-Filter-FSSocket/Makefile.PL
|
|
REPLACE_PERL+= scripts/trace/sipgrep
|
|
REPLACE_PERL+= scripts/fsxs.in
|
|
REPLACE_PERL+= support-d/utils/*.pl
|
|
REPLACE_PERL+= support-d/utils/gl
|
|
REPLACE_PERL+= support-d/utils/btgrep
|
|
REPLACE_PERL+= support-d/utils/hashfinder
|
|
REPLACE_PERL+= build/*.pl
|
|
REPLACE_PERL+= docs/phrase/phrase.pl
|
|
REPLACE_PERL+= docs/Doxygen.conf
|
|
REPLACE_PERL+= libs/sofia-sip/utils/Doxyfile.in
|
|
REPLACE_PERL+= libs/sofia-sip/libsofia-sip-ua/tport/*.pl
|
|
REPLACE_PERL+= libs/libzrtp/create_pack.pl
|
|
REPLACE_PERL+= libs/libzrtp/doc/Doxyfile.in
|
|
REPLACE_PERL+= libs/freetdm/docs/Doxygen.conf
|
|
REPLACE_PERL+= libs/libvpx/libs.doxy_template
|
|
REPLACE_PERL+= libs/libg722_1/doc/libg722_1-doxygen
|
|
REPLACE_PERL+= libs/spandsp/doc/doxygen.in
|
|
REPLACE_PERL+= libs/ilbc/doc/libilbc-doxygen
|
|
REPLACE_PERL+= libs/libdingaling/docs/Doxygen.conf
|
|
REPLACE_PERL+= libs/broadvoice/doc/broadvoice-doxygen
|
|
REPLACE_PERL+= libs/xmlrpc-c/tools/binmode-rpc-kit/binmode-rpc2xml-rpc
|
|
REPLACE_PERL+= libs/xmlrpc-c/tools/binmode-rpc-kit/oct2bin
|
|
REPLACE_PERL+= libs/srtp/doc/Doxyfile
|
|
REPLACE_PERL+= libs/esl/test.pl
|
|
REPLACE_PERL+= libs/esl/perl/*.pl
|
|
REPLACE_PERL+= libs/apr/helpers/apr_rename.pl
|
|
REPLACE_PERL+= libs/libtpl-1.5/lang/perl/tests/*
|
|
REPLACE_PERL+= libs/libtpl-1.5/doc/html/*.html
|
|
REPLACE_PERL+= libs/libtpl-1.5/doc/txt/*.txt
|
|
REPLACE_PERL+= libs/libtpl-1.5/tests/other/do_tests
|
|
REPLACE_PERL+= libs/libtpl-1.5/tests/do_tests.cygwin
|
|
REPLACE_PERL+= libs/libtpl-1.5/tests/do_tests
|
|
REPLACE_PERL+= libs/libtpl-1.5/tests/sizes
|
|
REPLACE_PERL+= src/mod/applications/mod_httapi/examples/perl/*.cgi
|
|
REPLACE_PERL+= src/mod/applications/mod_avmd/scripts/*.pl
|
|
REPLACE_PERL+= src/mod/endpoints/mod_skypopen/install/install.pl
|
|
REPLACE_PERL+= src/mod/endpoints/mod_gsmopen/asterisk/ciapalo
|
|
REPLACE_PERL+= src/mod/endpoints/mod_skinny/test-skinny.pl
|
|
|
|
REPLACE_BASH+= devel-bootstrap.sh
|
|
REPLACE_BASH+= scripts/*.sh
|
|
REPLACE_BASH+= debian/*.sh
|
|
REPLACE_BASH+= build/*.sh
|
|
REPLACE_BASH+= src/mod/say/mod_say_pl/create_sound_files.sh
|
|
REPLACE_BASH+= src/mod/endpoints/mod_khomp/tools/*.sh
|
|
REPLACE_BASH+= src/mod/endpoints/mod_gsmopen/alsa_nogsmlib_nocplusplus/mod_gsmopen/configs/setmixers
|
|
REPLACE_BASH+= src/mod/endpoints/mod_gsmopen/libctb-0.16/python/src/linux/makepy.sh
|
|
REPLACE_BASH+= src/mod/endpoints/mod_gsmopen/gsmlib/gsmlib-1.10-patched-13ubuntu/contrib/gsmsmsrequeue
|
|
REPLACE_BASH+= src/mod/endpoints/mod_gsmopen/gsmlib/gsmlib-1.10-patched-13ubuntu/contrib/gsmsmsspool
|
|
REPLACE_BASH+= src/mod/endpoints/mod_skypopen/configs/old-stuff/multiple-instance-same-skype-username/multi.sh
|
|
REPLACE_BASH+= build/fs_ivrd.init.redhat
|
|
REPLACE_BASH+= build/freeswitch.init.redhat
|
|
REPLACE_BASH+= build/standalone_module/bootstrap.sh
|
|
REPLACE_BASH+= support-d/utils/pcap-extract.sh
|
|
REPLACE_BASH+= libs/libcodec2/script/menu.sh
|
|
REPLACE_BASH+= libs/libcodec2/unittest/run_tests.sh
|
|
REPLACE_BASH+= libs/libsndfile/src/make-static-lib-hidden-privates.sh
|
|
REPLACE_BASH+= libs/libsndfile/Octave/octave_test.sh
|
|
REPLACE_BASH+= libs/libsndfile/tests/pedantic-header-test.sh.in
|
|
REPLACE_BASH+= libs/libsndfile/Scripts/*.sh
|
|
REPLACE_BASH+= libs/libvpx/tools/author_first_release.sh
|
|
REPLACE_BASH+= libs/libvpx/tools/gen_authors.sh
|
|
REPLACE_BASH+= libs/libvpx/build/make/*.sh
|
|
REPLACE_BASH+= libs/freetdm/mod_freetdm/clean.sh
|
|
REPLACE_BASH+= libs/freetdm/cyginstall.sh
|
|
REPLACE_BASH+= libs/freetdm/mkrelease.sh
|
|
REPLACE_BASH+= libs/libyuv/tools/valgrind-libyuv/libyuv_tests.sh
|
|
REPLACE_BASH+= libs/silk/test_vectors/test_*.sh
|
|
REPLACE_BASH+= html5/verto/verto_communicator/debian8-install.sh
|
|
REPLACE_BASH+= scripts/ci/test_build.sh
|
|
|
|
RCD_SCRIPTS= freeswitch
|
|
|
|
INSTALLATION_DIRS+= share/freeswitch/scripts
|
|
INSTALLATION_DIRS+= share/freeswitch/grammar
|
|
INSTALLATION_DIRS+= freeswitch/modules
|
|
INSTALLATION_DIRS+= freeswitch/sounds
|
|
INSTALLATION_DIRS+= freeswitch/recordings
|
|
|
|
CONFLICTS= xmlrpc-c-[0-9]*
|
|
|
|
DEPENDS+= flite-[0-9]*:../../audio/flite
|
|
DEPENDS+= libyaml-[0-9]*:../../textproc/libyaml
|
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
.if !empty(PKGSRC_COMPILER:Mclang)
|
|
USE_LIBTOOL= yes
|
|
LIBTOOL_OVERRIDE= libtool */libtool */*/libtool */*/*/libtool
|
|
|
|
BUILDLINK_TRANSFORM+= rm:-Werror
|
|
CFLAGS+= -Wno-c11-extensions -Wno-deprecated-declarations \
|
|
-Wno-zero-length-array -Wno-incompatible-pointer-types
|
|
.endif
|
|
|
|
FS_USER?= freeswitch
|
|
FS_GROUP?= freeswitch
|
|
PKG_USERS_VARS= FS_USER
|
|
PKG_GROUPS_VARS= FS_GROUP
|
|
PKG_GROUPS= ${FS_GROUP}
|
|
PKG_USERS= ${FS_USER}:${FS_GROUP}
|
|
|
|
PKG_GECOS.${FS_USER}= FreeSWITCH
|
|
PKG_SHELL.${FS_USER}= ${NOLOGIN}
|
|
|
|
MAKE_DIRS+= ${PREFIX}/freeswitch
|
|
MAKE_DIRS+= ${PREFIX}/share/freeswitch
|
|
MAKE_DIRS_PERMS+= ${PREFIX}/freeswitch ${FS_USER} ${FS_GROUP} 0755
|
|
MAKE_DIRS_PERMS+= ${PREFIX}/share/freeswitch ${FS_USER} ${FS_GROUP} 0755
|
|
|
|
OWN_DIRS= ${VARBASE}/log/freeswitch
|
|
OWN_DIRS+= ${VARBASE}/db/freeswitch
|
|
OWN_DIRS_PERMS+= ${VARBASE}/log/freeswitch ${FS_USER} ${FS_GROUP} 0644
|
|
OWN_DIRS_PERMS+= ${VARBASE}/db/freeswitch ${FS_USER} ${FS_GROUP} 0755
|
|
|
|
PKG_SYSCONFSUBDIR= freeswitch
|
|
PKG_SYSCONFDIR_PERMS= ${FS_USER} ${FS_GROUP} 0755
|
|
|
|
#############################################################
|
|
# WIP: Use of CONF_FILES according to pkgsrc best practices #
|
|
#############################################################
|
|
|
|
#EGDIR= ${PREFIX}/share/examples/freeswitch
|
|
|
|
#CONF_FILES+= ${EGDIR}/extensions.conf ${PKG_SYSCONFDIR}/extensions.conf
|
|
#CONF_FILES+= ${EGDIR}/freetdm.conf ${PKG_SYSCONFDIR}/freetdm.conf
|
|
#CONF_FILES+= ${EGDIR}/magic ${PKG_SYSCONFDIR}/magic
|
|
#CONF_FILES+= ${EGDIR}/freeswitch.xml ${PKG_SYSCONFDIR}/freeswitch.xml
|
|
#CONF_FILES+= ${EGDIR}/vars.xml ${PKG_SYSCONFDIR}/vars.xml
|
|
|
|
#CONF_FILES+= ${EGDIR}/chatplan/default.xml ${PKG_SYSCONFDIR}/chatplan/default.xml
|
|
#CONF_FILES+= ${EGDIR}/dialplan/empty.xml ${PKG_SYSCONFDIR}/dialplan/empty.xml
|
|
#CONF_FILES+= ${EGDIR}/directory/empty.xml ${PKG_SYSCONFDIR}/directory/empty.xml
|
|
|
|
#.for a in alsa blacklist cdr_mongodb cdr_pg_csv cdr_sqlite \
|
|
# cepstral conference.conf console db dialplan_directory \
|
|
# dingaling directory distributor easyroute enum erlang_event \
|
|
# event_multicast event_socket fax fifo freetdm hash httapi http_cache \
|
|
# ivr java json_cdr lcr local_stream logfile lua modules mongo \
|
|
# nibblebill opal osp perl pocketsphinx portaudio post_load_modules \
|
|
# presence_map python redis rss rtmp sangoma_codec shout skinny sofia \
|
|
# spandsp spidermonkey switch syslog timezones translate tts_commandline \
|
|
# unicall unimrcp verto voicemail voicemail_ivr xml_cdr xml_curl \
|
|
# xml_rpc zeroconf
|
|
#CONF_FILES+= ${EGDIR}/autoload_configs/${a}.conf.xml \
|
|
${PKG_SYSCONFDIR}/autoload_configs/${a}.conf.xml
|
|
#.endfor
|
|
|
|
#.for b in default 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 \
|
|
1011 1012 1013 1014 1015 1016 1017 1018 1019 example.com brian \
|
|
skinny-example
|
|
#CONF_FILES+= ${EGDIR}/directory/default/${b}.xml \
|
|
${PKG_SYSCONFDIR}/directory/default/${b}.xml
|
|
#.endfor
|
|
|
|
#############################################################
|
|
|
|
#.if !empty(PKGSRC_COMPILER:Mgcc)
|
|
pre-configure:
|
|
cd ${WRKSRC} && ${SH} rebootstrap.sh -j
|
|
#.endif
|
|
|
|
post-install:
|
|
${LIBTOOL} --mode=install ${INSTALL_LIB} ${WRKSRC}/libs/srtp/libsrtp.la ${DESTDIR}${PREFIX}/lib
|
|
${LIBTOOL} --mode=install ${INSTALL_LIB} ${WRKSRC}/libs/spandsp/src/libspandsp.la ${DESTDIR}${PREFIX}/lib
|
|
${LIBTOOL} --mode=install ${INSTALL_LIB} ${WRKSRC}/libs/tiff-4.0.2/libtiff/libtiff.la ${DESTDIR}${PREFIX}/lib
|
|
${LIBTOOL} --mode=install ${INSTALL_LIB} ${WRKSRC}/libs/tiff-4.0.2/libtiff/libtiffxx.la ${DESTDIR}${PREFIX}/lib
|
|
${LIBTOOL} --finish ${PREFIX}/lib
|
|
|
|
.include "../../mk/jpeg.buildlink3.mk"
|
|
.include "../../devel/pcre/buildlink3.mk"
|
|
.include "../../devel/libmemcached/buildlink3.mk"
|
|
.include "../../lang/lua52/buildlink3.mk"
|
|
.include "../../multimedia/libvpx/buildlink3.mk"
|
|
.include "../../graphics/freetype2/buildlink3.mk"
|
|
.include "../../audio/libsndfile/buildlink3.mk"
|
|
.include "../../net/ldns/buildlink3.mk"
|
|
.include "../../audio/speexdsp/buildlink3.mk"
|
|
.include "../../audio/mpg123/buildlink3.mk"
|
|
.include "../../audio/libopus/buildlink3.mk"
|
|
.include "../../audio/libvorbis/buildlink3.mk"
|
|
.include "../../audio/portaudio/buildlink3.mk"
|
|
.include "../../databases/sqlite3/buildlink3.mk"
|
|
.include "../../devel/libltdl/buildlink3.mk"
|
|
.include "../../devel/libuuid/buildlink3.mk"
|
|
.include "../../mk/pthread.buildlink3.mk"
|
|
.include "../../mk/dlopen.buildlink3.mk"
|
|
.include "../../mk/bsd.pkg.mk"
|