# Created by: David # $FreeBSD: head/comms/ncid/Makefile 525714 2020-02-10 16:28:23Z egypcio $ PORTNAME= ncid PORTVERSION= 1.11 CATEGORIES= comms MASTER_SITES= SF DISTNAME= ${PORTNAME}-${PORTVERSION}-src MAINTAINER= egypcio@FreeBSD.org COMMENT= Network based Caller ID package LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/doc/GPL.md BUILD_DEPENDS= ${RUN_DEPENDS} LIB_DEPENDS= libpcre.so:devel/pcre RUN_DEPENDS= bash:shells/bash USES= compiler:c11 gmake perl5 tk shebangfix USE_GCC= yes SHEBANG_FILES= client/ncid.sh \ desktop/xml \ doc/mk* \ extensions/*.sh \ gateway/*.pl gateway/*.sh \ logrotate/*.sh \ man/mk-pdf \ modules/*.sh \ setup/*.sh \ tools/*.pl tools/*.sh ALL_TARGET= local MAKE_ARGS= WISH=${WISH} TCLSH=${TCLSH} \ CC=${CC} HOSTCC=${CC} AR=${AR} INSTALL_TARGET= freebsd-install SUB_FILES= pkg-message OPTIONS_DEFINE= DOCS LOGROTATE OPTIONS_SUB= yes LOGROTATE_DESC= Install logrotate scripts LOGROTATE_RUN_DEPENDS= logrotate:sysutils/logrotate WRKSRC= ${WRKDIR}/${PORTNAME} post-extract: @cd ${WRKSRC}/FreeBSD;for i in *.rc; do \ x=`echo $$i | cut -f 1 -d .`; ${CP} $$i $$x; done .include post-patch: @${GREP} -lr 'etc/ncid' ${WRKSRC}/ | ${XARGS} ${REINPLACE_CMD} -Ee \ 's,(/usr/local/etc/ncid | /etc/ncid),${ETCDIR},g' @${FIND} ${WRKSRC}/ -name Makefile | ${XARGS} ${REINPLACE_CMD} -Ee \ '/install:/s,install-(etc|logrotate),,' @${REINPLACE_CMD} -Ee '/mkdir.*(INIT|ROTATE|BIN|LOG|ETC)/d ;\ /CFLAGS.*=/s|=|+=|' ${WRKSRC}/Makefile # Respect PREFIX/MANPREFIX/DATADIR @${REINPLACE_CMD} -e 's|prefix.*= /usr/local|prefix=$${PREFIX}|g' \ -e 's|$$(prefix)/bin|$${PREFIX}/bin|g' \ -e 's|$$(prefix)/sbin|$${PREFIX}/sbin|g' \ -e 's|$$(prefix)/share|$${PREFIX}/share|g' \ -e 's|$$(SHARE)/man|$${MANPREFIX}/man/|g' \ -e 's|$$(SHARE)/ncid|$${DATADIR}|g' ${WRKSRC}/Makefile .if ${CHOSEN_COMPILER_TYPE} == gcc @${REINPLACE_CMD} -e 's|-Wno-stringop-truncation||g' \ ${WRKSRC}/Makefile ${WRKSRC}/server/Makefile .endif do-install: @${MKDIR} ${STAGEDIR}${ETCDIR} ${INSTALL_PROGRAM} ${WRKSRC}/server/ncidd ${STAGEDIR}${PREFIX}/sbin ${INSTALL_PROGRAM} ${WRKSRC}/gateway/ncid2ncid ${STAGEDIR}${PREFIX}/bin ${INSTALL_PROGRAM} ${WRKSRC}/gateway/sip2ncid ${STAGEDIR}${PREFIX}/sbin ${INSTALL_SCRIPT} ${WRKSRC}/client/ncid ${STAGEDIR}${PREFIX}/bin ${INSTALL_DATA} ${WRKSRC}/client/ncid.conf ${STAGEDIR}${ETCDIR}/ncid.conf.sample ${INSTALL_DATA} ${WRKSRC}/gateway/ncid2ncid.conf ${STAGEDIR}${ETCDIR}/ncid2ncid.conf.sample ${INSTALL_DATA} ${WRKSRC}/gateway/sip2ncid.conf ${STAGEDIR}${ETCDIR}/sip2ncid.conf.sample .for d in ncidd.alias ncidd.conf ncidd.blacklist ncidd.whitelist ${INSTALL_DATA} ${WRKSRC}/server/${d} ${STAGEDIR}${ETCDIR}/${d}.sample .endfor .for e in hangup-calls hangup-fakenum hangup-fcc hangup-nohangup \ hangup-closed-skel hangup-combo-skel hangup-message-skel hangup-skel @${MKDIR} ${STAGEDIR}${PREFIX}/share/ncid/extensions ${INSTALL_SCRIPT} ${WRKSRC}/extensions/${e} ${STAGEDIR}${PREFIX}/share/ncid/extensions .endfor # ncid2ncid and sip2ncid are installed and stripped before this loop with ${INSTALL_PROGRAM} .for f in email2ncid obi2ncid rn2ncid wc2ncid xdmf2ncid yac2ncid ${INSTALL_SCRIPT} ${WRKSRC}/gateway/${f} ${STAGEDIR}${PREFIX}/bin ${INSTALL_DATA} ${WRKSRC}/gateway/${f}.conf ${STAGEDIR}${ETCDIR}/${f}.conf.sample .endfor ${INSTALL_DATA} ${WRKSRC}/client/ncid.gif ${STAGEDIR}${PREFIX}/share/pixmaps/ncid @${MKDIR} ${STAGEDIR}${PREFIX}/share/ncid/modules .for g in ncid-alert ncid-initmodem ncid-kpopup ncid-mysql ncid-mythtv ncid-notify ncid-page \ ncid-samba ncid-skel ncid-speak ncid-wakeup ncid-yac ${INSTALL_SCRIPT} ${WRKSRC}/modules/${g} ${STAGEDIR}${PREFIX}/share/ncid/modules .endfor ${INSTALL_DATA} ${WRKSRC}/server/ncidd.alias ${STAGEDIR}${ETCDIR}/ncidd.alias.sample .for h in cidcall cidalias cidupdate wct ncidutil ${INSTALL_SCRIPT} ${WRKSRC}/tools/${h} ${STAGEDIR}${PREFIX}/bin .endfor .for i in ncid-initmodem ncid-mysql ncid-mythtv ncid-notify ncid-page ncid-samba ncid-speak ncid-yac \ ncid2ncid ncidd obi2ncid rn2ncid sip2ncid wc2ncid xdmf2ncid yac2ncid ${INSTALL_DATA} ${WRKSRC}/FreeBSD/${i} ${STAGEDIR}${PREFIX}/etc/rc.d .endfor .for j in CallingDeposit.rmd CannotBeCompleted.rmd DisconnectedNotInService.rmd NotInService.rmd @${MKDIR} ${STAGEDIR}${PREFIX}/share/ncid/recordings ${INSTALL_DATA} ${WRKSRC}/recordings/${j} ${STAGEDIR}${PREFIX}/share/ncid/recordings .endfor .for k in ncid-email2ncid-setup ncid-mysql-setup ncid-setup ${INSTALL_SCRIPT} ${WRKSRC}/setup/${k} ${STAGEDIR}${PREFIX}/bin .endfor ${INSTALL_MAN} ${WRKSRC}/man/*.1 ${STAGEDIR}${MAN1PREFIX}/man/man1 ${INSTALL_MAN} ${WRKSRC}/man/*.5 ${STAGEDIR}${MAN5PREFIX}/man/man5 ${INSTALL_MAN} ${WRKSRC}/man/*.7 ${STAGEDIR}${MAN7PREFIX}/man/man7 ${INSTALL_MAN} ${WRKSRC}/man/*.8 ${STAGEDIR}${MAN8PREFIX}/man/man8 do-install-DOCS-on: ${MKDIR} ${STAGEDIR}${DOCSDIR}/recordings ${INSTALL_DATA} ${WRKSRC}/doc/*.md ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/FreeBSD/README-FreeBSD ${STAGEDIR}${DOCSDIR} .for l in README-recordings CallingDeposit.pvf CannotBeCompleted.pvf DisconnectedNotInService.pvf NotInService.pvf ${INSTALL_DATA} ${WRKSRC}/recordings/${l} ${STAGEDIR}${DOCSDIR}/recordings .endfor post-install: ${STRIP_CMD} ${STAGEDIR}${LOCALBASE}/bin/cidupdate post-install-LOGROTATE-on: @${MKDIR} ${STAGEDIR}${PREFIX}/share/ncid/sys ${INSTALL_SCRIPT} ${WRKSRC}/tools/ncid-yearlog ${STAGEDIR}${PREFIX}/share/ncid/sys ${INSTALL_SCRIPT} ${WRKSRC}/logrotate/ncidrotate ${STAGEDIR}${PREFIX}/share/ncid/sys ${INSTALL_DATA} ${WRKSRC}/logrotate/ncidrotate.conf ${STAGEDIR}${ETCDIR}/ncidrotate.conf.sample @${MKDIR} ${STAGEDIR}${PREFIX}/etc/logrotate.d ${INSTALL_DATA} ${WRKSRC}/logrotate/ncid ${STAGEDIR}${PREFIX}/etc/logrotate.d ${INSTALL_MAN} ${WRKSRC}/logrotate/*.1 ${STAGEDIR}${MAN1PREFIX}/man/man1 ${INSTALL_MAN} ${WRKSRC}/logrotate/*.5 ${STAGEDIR}${MAN5PREFIX}/man/man5 .include