# $NetBSD: Makefile.common,v 1.19 2021/10/03 17:53:11 hauke Exp $
#
# used by editors/xemacs-current/Makefile
# used by editors/xemacs-current-nox11/Makefile

DISTNAME=	xemacs-21.5.34
EMACSVERSION=	21.5-b34
EMACS_DISTNAME=	xemacs-${EMACSVERSION}
CATEGORIES=	editors
MASTER_SITES=	${MASTER_SITE_XEMACS:=${DISTNAME:C/[.][^.]*$//}/}

MAINTAINER=	hauke@NetBSD.org
HOMEPAGE=	https://www.xemacs.org/
LICENSE=	gnu-gpl-v3

MKPIE_SUPPORTED=	no

.include "../../mk/bsd.prefs.mk"

PATCHDIR=	${.CURDIR}/../../editors/xemacs-current/patches
DISTINFO_FILE=	${.CURDIR}/../../editors/xemacs-current/distinfo
PLIST_SRC=	${.CURDIR}/../../editors/xemacs-current/PLIST

USE_TOOLS+=		gtar makeinfo perl

# The portable dumper creates a dump file with a build ID in its name
GENERATE_PLIST+=	${ECHO} bin/${EMACS_DISTNAME}-`${WRKSRC}/src/xemacs -sd`.dmp ;

# Having the build path in the dumped emacs is not a problem.
CHECK_WRKREF_SKIP+=	bin/xemacs*

PRINT_PLIST_AWK+=	{ gsub(/${EMACS_DISTNAME}/, "$${DISTNAME}"); }
PRINT_PLIST_AWK+=	{ gsub(/${MACHINE_GNU_PLATFORM}/, "$${MACHINE_GNU_PLATFORM}"); }

PLIST_SUBST+=		DISTNAME=${EMACS_DISTNAME}
FILES_SUBST+=		DISTNAME=${EMACS_DISTNAME}
MESSAGE_SUBST+=		DISTNAME=${EMACS_DISTNAME}
INFO_FILES=		yes

GNU_CONFIGURE=		yes
CONFIGURE_ARGS+=	--datadir=${PREFIX}/lib
CONFIGURE_ARGS+=	--with-infopath=${PREFIX}/${PKGINFODIR}
CONFIGURE_ARGS+=	--with-clash-detection
CONFIGURE_ARGS+=	--with-mule
CONFIGURE_ARGS+=	--with-zlib
CONFIGURE_ARGS+=	--with-bignum=gmp
CONFIGURE_ARGS+=	--without-msw
CONFIGURE_ARGS+=	--with-pdump
CONFIGURE_ARGS+=	--with-system-malloc
CONFIGURE_ARGS+=	--with-newgc
CONFIGURE_ARGS+=	--with-kkcc
CONFIGURE_ARGS+=	--with-postgresql=no

CFLAGS+=		-Dunix

INSTALL_MAKE_FLAGS+=	TAR=${TOOLS_PATH.gtar}

# Use terminfo on NetBSD-6 and newer.
# We cannot use terminfo.*.mk as XEmacs enforces a link to termcap,
# but this is fine for us.
.if (${OPSYS} == "NetBSD" || ${OPSYS} == "FreeBSD") && exists(/usr/include/term.h)
CPPFLAGS+=	-DTERMINFO
.endif

.include "../../databases/gdbm/buildlink3.mk"
.include "../../devel/gmp/buildlink3.mk"
.include "../../mk/oss.buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../mk/termcap.buildlink3.mk"
