freebsd-ports/comms/svxlink/Makefile
Diane Bruce 166e7c3312 Update to 17.12.2
This version supports qt5

SvxLink release 17.12 -- 30 Dec 2017
------------------------------------
The biggest news in this release is the initial revision of the SvxReflector
application. The SvxReflector application is meant to be used as a center point
to link SvxLink nodes together. The new SvxLink ReflectorLogic logic core is
used to connect a SvxLink node to the reflector server. One or more logics can
then be connected to the refelctor using normal logic linking.

In addition a lot of smaller feature additions have been made and also a number
of bugs have been fixed. The full list of changes and more details can be found
below. Information on configuration of new features can be found in the manual
pages.
2019-03-12 15:51:24 +00:00

116 lines
4.6 KiB
Makefile

# Created by: shurd
# $FreeBSD$
PORTNAME?= svxlink
PORTVERSION= 17.12.2
CATEGORIES= comms hamradio
MAINTAINER= hamradio@FreeBSD.org
COMMENT?= General purpose ham radio voice services
LICENSE= GPLv2
LIB_DEPENDS?= libgsm.so:audio/gsm \
libspeex.so:audio/speex \
libgpg-error.so:security/libgpg-error \
libgcrypt.so:security/libgcrypt \
libsigc-2.0.so:devel/libsigc++20 \
libpopt.so:devel/popt \
libopus.so:audio/opus \
librtlsdr.so:comms/rtl-sdr
BUILD_DEPENDS= ${LOCALBASE}/include/linux/input.h:devel/evdev-proto
USES+= cmake:noninja compiler:c++11-lang groff pkgconfig tcl
USE_GITHUB= yes
GH_ACCOUNT= sm0svx
GH_PROJECT= svxlink
CMAKE_SOURCE_PATH= ${WRKSRC}/src
CMAKE_ARGS+= -DMAN_INSTALL_DIR:FILEPATH=${MANDIRS} \
-DLOCAL_STATE_DIR=/var
.if ${PORTNAME}==svxlink
CMAKE_ARGS+= -DUSE_QT:BOOL=NO
.endif
USE_LDCONFIG= yes
ALL_TARGET?= all man
OPTIONS_DEFINE= DOXYGEN STATIC DOCS
STATIC_DESC= Build and install static libraries
STATIC_CMAKE_ON= -DBUILD_STATIC_LIBS=YES
.if ${PORTNAME}==svxlink
OPTIONS_DEFAULT=OSS ALSA
OPTIONS_MULTI= SOUND
OPTIONS_MULTI_SOUND= ALSA OSS
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib
ALSA_CMAKE_OFF= -DUSE_ALSA:BOOL=OFF
ALSA_CMAKE_ON= -DUSE_ALSA:BOOL=ON
OSS_CMAKE_OFF= -DUSE_OSS:BOOL=OFF
OSS_CMAKE_ON= -DUSE_OSS:BOOL=ON
.endif
DOXYGEN_IMPLIES= DOCS
DOXYGEN_ALL_TARGET=doc
DOXYGEN_CMAKE_OFF= -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen:BOOL=TRUE
DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen \
dot:graphics/graphviz
OPTIONS_SUB= yes
PORTDOCS= *
post-patch:
@${GREP} -lr /dev/ttyS0 ${WRKSRC} | ${GREP} -v .bak | ${GREP} -v .orig | ${XARGS} \
${REINPLACE_CMD} -e 's|/dev/ttyS0|/dev/ttyu0|'
@${REINPLACE_CMD} -e 's|/usr/share/icons|${PREFIX}/share/icons|' \
${WRKSRC}/src/qtel/qtel.desktop
@${REINPLACE_CMD} -e 's|/usr/share/svxlink|${DOCSDIR}|' \
${WRKSRC}/src/doc/man/svxlink.conf.5
@${REINPLACE_CMD} -e 's|/usr/bin/|${PREFIX}/bin/|' ${WRKSRC}/src/qtel/qtel.desktop \
${WRKSRC}/src/doc/man/svxlink.conf.5 \
${WRKSRC}/src/svxlink/svxlink/svxlink.conf.in
@${REINPLACE_CMD} -e 's|/usr/lib|${PREFIX}/lib|' \
${WRKSRC}/src/doc/man/svxlink.conf.5 \
${WRKSRC}/src/svxlink/svxlink/svxlink.conf.in
post-patch-OSS-on:
@${GREP} -lr alsa:default ${WRKSRC} | ${GREP} -v .bak | ${GREP} -v .orig | ${XARGS} \
${REINPLACE_CMD} -e 's|alsa:default|oss:/dev/dsp|'
@${GREP} -lr alsa:plughw:0 ${WRKSRC} | ${GREP} -v .bak | ${GREP} -v .orig | ${XARGS} \
${REINPLACE_CMD} -e 's|alsa:plughw:0|oss:/dev/dsp|'
.if ${PORTNAME}==svxlink
post-install:
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/.procmailrc \
${STAGEDIR}${PREFIX}/etc/svxlink/.procmailrc.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/gpio.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/gpio.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/TclVoiceMail.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/TclVoiceMail.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/remotetrx.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/remotetrx.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxreflector.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxreflector.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleDtmfRepeater.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleDtmfRepeater.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleEchoLink.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleEchoLink.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleFrn.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleFrn.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleHelp.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleHelp.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleMetarInfo.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleMetarInfo.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleParrot.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleParrot.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModulePropagationMonitor.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModulePropagationMonitor.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleSelCallEnc.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleSelCallEnc.conf.sample
${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleTclVoiceMail.conf \
${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleTclVoiceMail.conf.sample
.endif
.if ${PORTNAME}==qtel
post-install:
${RM} ${STAGEDIR}${PREFIX}/include/svxlink/CppStdCompat.h
${RM} ${STAGEDIR}${PREFIX}/include/svxlink/common.h
${RM} ${STAGEDIR}${PREFIX}/lib/libsvxmisc.a
.endif
.include <bsd.port.mk>