110 lines
3.2 KiB
Makefile
110 lines
3.2 KiB
Makefile
# New ports collection makefile for: libspf
|
|
# Date created: 28 February 2004
|
|
# Whom: Daniel Roethlisberger <daniel@roe.ch>
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
PORTNAME= libspf
|
|
PORTVERSION= 0.25.b
|
|
CATEGORIES= mail
|
|
MASTER_SITES= http://www.libspf.org/files/
|
|
DISTNAME= ${PORTNAME}.${PORTVERSION}eta
|
|
|
|
MAINTAINER= daniel@roe.ch
|
|
COMMENT= Sender Policy Framework (SPF) library and client
|
|
|
|
# Require getopt_long_only - USE_GETOPT_LONG is *not* sufficient
|
|
LIB_DEPENDS= gnugetopt.1:${PORTSDIR}/devel/libgnugetopt
|
|
|
|
USE_BZIP2= yes
|
|
WRKSRC= ${WRKDIR}/${PORTNAME}.25
|
|
USE_GMAKE= yes
|
|
USE_REINPLACE= yes
|
|
INSTALLS_SHLIB= yes
|
|
LIBSPF_REV= 1
|
|
PLIST_SUB= PORTNAME=${PORTNAME} LIBSPF_REV=${LIBSPF_REV}
|
|
MAKE_ENV= CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \
|
|
LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib -L${WRKSRC}"
|
|
|
|
# Supported tunables:
|
|
#
|
|
# WITH_SPF_LOG_FILE=/foo/bar enable transaction logfile (if unset: no log)
|
|
# WITH_SPF_DEBUG=yes enable debugging
|
|
# WITH_SPF_DEBUG_FILE=/foo/baz enable debug logfile (if unset: stdout/stderr)
|
|
|
|
.if defined(WITH_SPF_LOG_FILE)
|
|
SPF_LOG_FILE= ${WITH_SPF_LOG_FILE}
|
|
.else
|
|
SPF_LOG_FILE= /dev/null
|
|
.endif
|
|
|
|
.if defined(WITH_SPF_DEBUG)
|
|
SPF_CFLAGS= -ggdb -DDEBUG -D_SPF_DEBUG
|
|
.if defined(WITH_SPF_DEBUG_FILE)
|
|
SPF_CFLAGS+= -D_SPF_DEBUG_LOGFILE
|
|
.endif
|
|
.endif
|
|
|
|
.if defined(WITH_SPF_DEBUG_FILE)
|
|
SPF_DEBUG_FILE= ${WITH_SPF_DEBUG_FILE}
|
|
.else
|
|
SPF_DEBUG_FILE= /dev/null
|
|
.endif
|
|
|
|
SPF_CFLAGS+= -DDEBUG_LOG_FILE=\\\"${SPF_DEBUG_FILE}\\\" \
|
|
-DOUTPUT_LOG_FILE=\\\"${SPF_LOG_FILE}\\\"
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
.if ${ARCH} == "amd64"
|
|
BROKEN= "Does not compile on amd64"
|
|
.endif
|
|
|
|
# This is all a bit messy, but given the inconvenient original Makefile,
|
|
# this seems to be the best way to make this port work in this version.
|
|
# The author of libspf is working on autotools support, so this ugliness
|
|
# should have an end soon.
|
|
post-patch:
|
|
@${REINPLACE_CMD} \
|
|
-e 's,^CFLAGS:=.*,CFLAGS+=-Wall -D_BSD_SOURCE ${SPF_CFLAGS},' \
|
|
-e 's/^CPPFLAGS:=/#CPPFLAGS:=/' \
|
|
-e 's/^LDFLAGS:=/#LDFLAGS:=/' \
|
|
-e 's/make/gmake/g' \
|
|
-e 's/-lresolv//g' \
|
|
-e 's/libspf.a : -lc/libspf.a :/g' \
|
|
-e 's/libspf\.so\.1\.0\.1/libspf.so.${LIBSPF_REV}/g' \
|
|
-e 's/-soname,libspf\.so\.1/-soname,libspf.so.${LIBSPF_REV}/g' \
|
|
${WRKSRC}/Makefile
|
|
@${REINPLACE_CMD} \
|
|
-e 's/^CFLAGS:=/#CFLAGS:=/' \
|
|
-e 's/^CPPFLAGS:=/#CPPFLAGS:=/' \
|
|
-e 's/^LDFLAGS:=/#LDFLAGS:=/' \
|
|
-e 's/make/gmake/g' \
|
|
-e 's/\(-o spfquery ..\)/\1 -lgnugetopt/g' \
|
|
-e 's/-o spfquery/-o spfquery-${PORTNAME}/g' \
|
|
${WRKSRC}/tools/Makefile
|
|
@${REINPLACE_CMD} \
|
|
-e 's/#include "error.h"//' \
|
|
${WRKSRC}/main.c ${WRKSRC}/dns.c
|
|
@${REINPLACE_CMD} \
|
|
-e 's,\(#define DEBUG_LOG_FILE.*\),/* \1 */,' \
|
|
-e 's,\(#define OUTPUT_LOG_FILE.*\),/* \1 */,' \
|
|
${WRKSRC}/util.h
|
|
@${REINPLACE_CMD} \
|
|
-e 's/spfquery /spfquery-${PORTNAME} /' \
|
|
${WRKSRC}/tools/spfquery.c
|
|
|
|
post-build:
|
|
@(cd ${WRKSRC}/tools; ${SETENV} ${MAKE_ENV} ${GMAKE} shared )
|
|
|
|
do-install:
|
|
${INSTALL_DATA} ${WRKSRC}/spf.h ${PREFIX}/include
|
|
${INSTALL_DATA} ${WRKSRC}/libspf.a ${PREFIX}/lib
|
|
${INSTALL_DATA} ${WRKSRC}/libspf.so.${LIBSPF_REV} ${PREFIX}/lib
|
|
(cd ${PREFIX}/lib ; ${LN} -sf libspf.so.${LIBSPF_REV} libspf.so)
|
|
${INSTALL_PROGRAM} ${WRKSRC}/tools/spfquery-${PORTNAME} ${PREFIX}/bin
|
|
@${CAT} ${PKGMESSAGE}
|
|
|
|
.include <bsd.port.post.mk>
|