b1a3c5a116
The pkg-message contains a security note that is necessary on new installs and on updates alike. Since per the porter's handbook, the UCL does not support enumeration of types, and this is not relevant on removal, the UCL change must be reverted. While here, remove formatting. Failure inducing commit: |------------------------------------------------------------------------ |r508835 | mat | 2019-08-13 18:01:59 +0200 (Tue, 13 Aug 2019) | 2 lines | |Convert to UCL & cleanup pkg-message (categories d) | |------------------------------------------------------------------------ NOTE: The UCL conversion of files/pkg-message.in was not authorized and damaging and no heads-up was sent to the maintainer. portmgr@ MUST act more carefully with sweeping changes and hand them out for review first.
145 lines
4.3 KiB
Makefile
145 lines
4.3 KiB
Makefile
# Created by: Steven Honson
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= dnsmasq
|
|
DISTVERSION= 2.81
|
|
# Leave the PORTREVISION in even if 0 to avoid accidental PORTEPOCH bumps:
|
|
PORTREVISION= 1
|
|
PORTEPOCH= 1
|
|
CATEGORIES= dns
|
|
MASTER_SITES= http://www.thekelleys.org.uk/dnsmasq/ \
|
|
LOCAL/mandree/
|
|
|
|
MAINTAINER= mandree@FreeBSD.org
|
|
COMMENT= Lightweight DNS forwarder, DHCP, and TFTP server
|
|
|
|
LICENSE= GPLv2
|
|
|
|
USES= cpe shebangfix tar:xz
|
|
CPE_VENDOR= thekelleys
|
|
|
|
SHEBANG_FILES= contrib/dnslist/dnslist.pl \
|
|
contrib/dynamic-dnsmasq/dynamic-dnsmasq.pl
|
|
|
|
MAKE_ARGS= CC="${CC}" \
|
|
CFLAGS="${CFLAGS}" \
|
|
COPTS="${CFLAGS}" \
|
|
LIBS="${LDFLAGS}" \
|
|
PREFIX="${PREFIX}" \
|
|
RPM_OPT_FLAGS="${CPPFLAGS}"
|
|
CFLAGS+= -Wall -Wno-unused-function -Wno-unused-parameter \
|
|
-Wno-unused-value -Wno-unused-variable
|
|
CPPFLAGS+= -I${LOCALBASE}/include
|
|
|
|
CONFLICTS_INSTALL= dnsmasq-devel-*
|
|
|
|
SUB_FILES= pkg-message
|
|
|
|
PORTDOCS= CHANGELOG CHANGELOG.archive FAQ doc.html setup.html
|
|
|
|
OPTIONS_DEFINE= DBUS DNSSEC DOCS IPSET IPV6 LUA
|
|
OPTIONS_DEFAULT= DNSSEC IPSET
|
|
OPTIONS_RADIO= INTL
|
|
OPTIONS_RADIO_INTL= IDN NLS
|
|
OPTIONS_EXCLUDE+= EXAMPLES
|
|
|
|
DNSSEC_DESC= Enable DNSSEC caching and validation (needs nettle)
|
|
IDN_DESC= IDN: Int'l Domain Names WITHOUT full NLS
|
|
INTL_DESC= Internationalization Support Level
|
|
IPSET_DESC= Dynamic firewall management of resolved names (needs PF)
|
|
LUA_DESC= Support lease-change scripts written in Lua
|
|
NLS_DESC= IDN+NLS: Int'l Domain Names & National Language support
|
|
|
|
IPSET_CFLAGS_OFF= -DNO_IPSET
|
|
IPV6_CFLAGS_OFF= -DNO_IPV6
|
|
|
|
.include <bsd.port.options.mk>
|
|
|
|
.if ${PORT_OPTIONS:MNLS}
|
|
USES+= gettext gmake iconv pkgconfig
|
|
CFLAGS+= -DHAVE_LIBIDN2
|
|
LIB_DEPENDS+= libidn2.so:dns/libidn2
|
|
PLIST_SUB+= NLS=""
|
|
ALL_TARGET= all-i18n
|
|
_intllibs= -lidn2 -lintl
|
|
.else
|
|
_intllibs=
|
|
PLIST_SUB+= NLS="@comment "
|
|
.if ${PORT_OPTIONS:MIDN}
|
|
USES+= iconv
|
|
CFLAGS+= -DHAVE_LIBIDN2
|
|
LIB_DEPENDS+= libidn2.so:dns/libidn2
|
|
_intllibs+= -lidn2
|
|
.endif
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MDBUS}
|
|
LIB_DEPENDS+= libdbus-1.so:devel/dbus
|
|
USES+= pkgconfig
|
|
CPPFLAGS+= `pkg-config --cflags dbus-1`
|
|
CFLAGS+= -DHAVE_DBUS
|
|
LDFLAGS+= `pkg-config --libs dbus-1`
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MLUA}
|
|
CPPFLAGS+= -I${LUA_INCDIR}
|
|
CFLAGS+= -DHAVE_LUASCRIPT
|
|
LDFLAGS+= -L${LUA_LIBDIR} -llua-${LUA_VER}
|
|
USES+= lua pkgconfig
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MDNSSEC}
|
|
CFLAGS+= -DHAVE_DNSSEC -I${LOCALBASE}/include
|
|
USES+= pkgconfig
|
|
LIB_DEPENDS+= libgmp.so:math/gmp \
|
|
libnettle.so:security/nettle
|
|
.endif
|
|
|
|
USE_RC_SUBR= dnsmasq
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
LDFLAGS+= -L${LOCALBASE}/lib ${_intllibs} ${ICONV_LIB}
|
|
|
|
post-patch:
|
|
${REINPLACE_CMD} -e '/^lua_/s/lua5\.2/lua-${LUA_VER}/' ${WRKSRC}/Makefile
|
|
|
|
pre-configure: pretty-print-config
|
|
.if ${PORT_OPTIONS:MIDN}
|
|
.if empty(PORT_OPTIONS:MNLS)
|
|
@if ${READELF} -d ${LOCALBASE}/lib/libidn2.so \
|
|
| ${EGREP} -q '\<NEEDED\>.*\[libintl\.so' ; \
|
|
then ${ECHO} ; ${ECHO} 'WARNING: dns/libidn2 was compiled with NLS support!' ; \
|
|
${ECHO} 'Recompile libidn2 WITHOUT_NLS to get rid of NLS dependencies.' ; ${ECHO} ; \
|
|
fi
|
|
.else
|
|
@${ECHO} 'WARNING: IDN and NLS enabled, building IDN WITH NLS.'
|
|
.endif
|
|
.endif
|
|
|
|
do-install:
|
|
${INSTALL_PROGRAM} ${WRKSRC}/src/dnsmasq ${STAGEDIR}${PREFIX}/sbin
|
|
${INSTALL_DATA} ${WRKSRC}/dnsmasq.conf.example ${STAGEDIR}${PREFIX}/etc/dnsmasq.conf.sample
|
|
${REINPLACE_CMD} -i '' 's}%%PREFIX%%}${PREFIX}}' ${STAGEDIR}${PREFIX}/etc/dnsmasq.conf.sample
|
|
${INSTALL_MAN} ${WRKSRC}/man/${PORTNAME}.8 ${STAGEDIR}${PREFIX}/man/man8
|
|
${MKDIR} ${STAGEDIR}${DATADIR}
|
|
${INSTALL_DATA} ${WRKSRC}/trust-anchors.conf ${STAGEDIR}${DATADIR}/
|
|
.if ${PORT_OPTIONS:MDOCS}
|
|
@${MKDIR} ${STAGEDIR}${DOCSDIR}
|
|
cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
|
|
.endif
|
|
.if ${PORT_OPTIONS:MNLS}
|
|
.for i in de es fi fr id it no pl pt_BR ro
|
|
${MKDIR} ${STAGEDIR}${PREFIX}/share/locale/${i}/LC_MESSAGES
|
|
${INSTALL_DATA} ${WRKSRC}/src/${i}.mo \
|
|
${STAGEDIR}${PREFIX}/share/locale/${i}/LC_MESSAGES/${PORTNAME}.mo
|
|
.endfor
|
|
.endif
|
|
${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/dynamic-dnsmasq ${STAGEDIR}${EXAMPLESDIR}/dnslist
|
|
${INSTALL_SCRIPT} ${WRKSRC}/contrib/dynamic-dnsmasq/dynamic-dnsmasq.pl ${STAGEDIR}${EXAMPLESDIR}/dynamic-dnsmasq/
|
|
${INSTALL_SCRIPT} ${WRKSRC}/contrib/dnslist/dnslist.pl ${STAGEDIR}${EXAMPLESDIR}/dnslist/
|
|
${INSTALL_DATA} ${WRKSRC}/contrib/dnslist/dhcp.css ${STAGEDIR}${EXAMPLESDIR}/dnslist/
|
|
${INSTALL_DATA} ${WRKSRC}/contrib/dnslist/dnslist.tt2 ${STAGEDIR}${EXAMPLESDIR}/dnslist/
|
|
|
|
.include <bsd.port.post.mk>
|