# Created by: Dwight Spencer <dwight@dapla.net>
# $FreeBSD$
#
# FreeBSD ports skeleton for mlisp. Generated by the release workflow
# (.github/workflows/release.yml) into a tarball attached to each
# GitHub Release; not (yet) submitted to the FreeBSD ports tree.
#
# PORTVERSION is substituted from the release tag at build time
# (e.g. v0.7.0 -> 0.7.0). distinfo is generated via `make makesum`
# against the tagged source tarball.

PORTNAME=	mlisp
PORTVERSION=	@PORTVERSION@
CATEGORIES=	mail lisp

MAINTAINER=	denzuko@dapla.net
COMMENT=	Common Lisp mailing list manager and Debbugs-compatible bug tracker

LICENSE=	BSD2CLAUSE

USES=		gmake
USE_GITHUB=	yes
GH_ACCOUNT=	denzuko
GH_PROJECT=	mlisp
GH_TAGNAME=	v${PORTVERSION}

# mlisp builds standalone SBCL executables via save-lisp-and-die
# (see build.lisp, build-admin.lisp, build-bugs.lisp,
# build-distrib.lisp, build-procmail-gen.lisp); SBCL itself is the
# only build-time dependency.
BUILD_DEPENDS=	sbcl:lang/sbcl
RUN_DEPENDS=	sbcl:lang/sbcl

NO_ARCH=	yes

PLIST_FILES=	bin/mlisp \
		bin/mlisp-admin \
		bin/mlisp-bugs \
		bin/mlisp-distrib \
		bin/mlisp-procmail-gen \
		man/man1/mlisp.1.gz \
		man/man1/mlisp-admin.1.gz \
		man/man1/mlisp-bugs.1.gz \
		man/man1/mlisp-distrib.1.gz \
		man/man1/mlisp-procmail-gen.1.gz \
		man/man7/mlisp-intro.7.gz

do-build:
	cd ${WRKSRC} && sbcl --non-interactive --load build.lisp
	cd ${WRKSRC} && sbcl --non-interactive --load build-admin.lisp
	cd ${WRKSRC} && sbcl --non-interactive --load build-bugs.lisp
	cd ${WRKSRC} && sbcl --non-interactive --load build-distrib.lisp
	cd ${WRKSRC} && sbcl --non-interactive --load build-procmail-gen.lisp

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/bin/mlisp ${STAGEDIR}${PREFIX}/bin/
	${INSTALL_PROGRAM} ${WRKSRC}/bin/mlisp-admin ${STAGEDIR}${PREFIX}/bin/
	${INSTALL_PROGRAM} ${WRKSRC}/bin/mlisp-bugs ${STAGEDIR}${PREFIX}/bin/
	${INSTALL_PROGRAM} ${WRKSRC}/bin/mlisp-distrib ${STAGEDIR}${PREFIX}/bin/
	${INSTALL_PROGRAM} ${WRKSRC}/bin/mlisp-procmail-gen ${STAGEDIR}${PREFIX}/bin/
	${INSTALL_MAN} ${WRKSRC}/src/man/mlisp.1 ${STAGEDIR}${PREFIX}/man/man1/
	${INSTALL_MAN} ${WRKSRC}/src/man/mlisp-admin.1 ${STAGEDIR}${PREFIX}/man/man1/
	${INSTALL_MAN} ${WRKSRC}/src/man/mlisp-bugs.1 ${STAGEDIR}${PREFIX}/man/man1/
	${INSTALL_MAN} ${WRKSRC}/src/man/mlisp-distrib.1 ${STAGEDIR}${PREFIX}/man/man1/
	${INSTALL_MAN} ${WRKSRC}/src/man/mlisp-procmail-gen.1 ${STAGEDIR}${PREFIX}/man/man1/
	${INSTALL_MAN} ${WRKSRC}/src/man/mlisp-intro.7 ${STAGEDIR}${PREFIX}/man/man7/

.include <bsd.port.mk>
