pkgsrc-wip/emacs27/Makefile.common

85 lines
2.5 KiB
Makefile

# $NetBSD: Makefile.common,v 1.3 2019/06/08 10:40:54 rillig Exp $
#
# used by editors/emacs27/Makefile
# used by editors/emacs27-nox11/Makefile
.include "../../mk/bsd.prefs.mk"
DISTNAME= emacs-${EMACS_VERSION}
PKGNAME?= ${DISTNAME:S/emacs/emacs27/}
CATEGORIES= editors
MASTER_SITES= ${MASTER_SITE_GNU:=emacs/}
EXTRACT_SUFX= .tar.xz
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= https://www.gnu.org/software/emacs/
COMMENT= GNU editing macros (editor)
LICENSE= gnu-gpl-v3
TEXINFO_REQD= 6.7
BUILD_DEPENDS+= gtexinfo-[0-9]*:../../devel/gtexinfo
WRKSRC= ${WRKDIR}/${DISTNAME:S/b$//}
GNU_CONFIGURE= yes
INFO_FILES= yes
USE_TOOLS+= autoconf automake gmake gzip makeinfo gm4 gsed
CONFIGURE_ARGS+= --srcdir=${WRKSRC}
CONFIGURE_ARGS+= --localstatedir=${VARBASE}
CONFIGURE_ARGS+= --disable-autodepend
CONFIGURE_ENV+= GAMEOWN=${GAMES_USER}
USE_GAMESGROUP= yes
BUILD_DEFS+= VARBASE
BUILD_DEFS+= GAMEDATAMODE
PLIST_SRC+= ../../wip/emacs27/PLIST
.include "../../wip/emacs27/version.mk"
BUILD_TARGET= bootstrap
EMACS_VERSION= ${_EMACS_VERSION_MAJOR}.${_EMACS_VERSION_MINOR}
PLIST_SUBST+= EMACS_VERSION=${EMACS_VERSION}
MAKE_DIRS_PERMS+= ${VARBASE}/games/emacs ${GAMES_USER} ${GAMES_GROUP} ${GAMEDIRMODE}
CONF_FILES_PERMS+= /dev/null ${VARBASE}/games/emacs/snake-scores \
${GAMES_USER} ${GAMES_GROUP} ${GAMEDATAMODE}
CONF_FILES_PERMS+= /dev/null ${VARBASE}/games/emacs/tetris-scores \
${GAMES_USER} ${GAMES_GROUP} ${GAMEDATAMODE}
SPECIAL_PERMS+= libexec/emacs/${EMACS_VERSION}/${MACHINE_GNU_PLATFORM}/update-game-score ${SETGID_GAMES_PERMS}
# build PATH in the dumped emacs is not a problem
CHECK_WRKREF_SKIP+= bin/emacs
CHECK_WRKREF_SKIP+= bin/emacs-${EMACS_VERSION}
CHECK_WRKREF_SKIP+= libexec/emacs/${EMACS_VERSION}/x86_64--netbsd/emacs.pdmp
PRINT_PLIST_AWK+= { gsub(/${MACHINE_GNU_PLATFORM}/, "$${MACHINE_GNU_PLATFORM}"); }
.if (${OPSYS} == "NetBSD") && \
!exists(/usr/lib/libgcc_s.so) && !exists(/usr/lib/libgcc.a)
# NetBSD with native Clang doesn't provide libgcc, everything is in libc.
pre-configure: fake-libgcc
.PHONY: fake-libgcc
fake-libgcc:
${AR} q ${BUILDLINK_DIR}/lib/libgcc.a
.endif
.if (${OPSYS} == "NetBSD") && exists(/usr/include/term.h)
CPPFLAGS+= -DTERMINFO
.elif ${OPSYS} == "FreeBSD" || ${OPSYS} == "Linux" || ${OPSYS} == "OpenBSD"
.include "../../mk/curses.buildlink3.mk"
.else
.include "../../mk/termcap.buildlink3.mk"
.endif
.include "../../mk/oss.buildlink3.mk"
post-extract:
cp ${.CURDIR}/../../wip/emacs27/files/site-init.el ${WRKSRC}/lisp
${CHMOD} -R go-w ${WRKSRC}
.include "../../devel/libgetopt/buildlink3.mk"