# $NetBSD: Makefile.common,v 1.7 2016/12/30 22:25:46 wiz Exp $ # # used by editors/emacs22/Makefile # used by editors/emacs22-nox11/Makefile COMMENT?= GNU editing macros (editor) DISTNAME= emacs-22.3 PKGNAME?= ${DISTNAME:S/emacs/emacs22/} CATEGORIES= editors MASTER_SITES= ${MASTER_SITE_GNU:=emacs/} MAINTAINER= pkgsrc-users@NetBSD.org HOMEPAGE= http://www.gnu.org/software/emacs/emacs.html LICENSE= gnu-gpl-v3 CONFLICTS+= elisp-manual-[0-9]* CONFLICTS+= mule-[0-9]* USE_TOOLS+= gmake gzip mktemp:run perl:run pkg-config GNU_CONFIGURE= yes INFO_FILES= yes SETGIDGAME= yes MAKEFLAGS+= EMACSLOADPATH=${WRKSRC}/lisp CONFIGURE_ARGS+= --localstatedir=${VARBASE:Q} CONFIGURE_ENV+= GAMEOWN=${GAMEOWN:Q} BUILD_DEFS+= VARBASE BUILD_DEFS+= GAMEDATAMODE # build PATH in the dumped emacs is not a problem CHECK_WRKREF_SKIP+= bin/emacs CHECK_WRKREF_SKIP+= bin/emacs-[0-9]* REPLACE_PERL= lib-src/grep-changelog SUBST_CLASSES+= test_equal SUBST_STAGE.test_equal= pre-configure SUBST_MESSAGE.test_equal= Fixing bashisms in test(1) usage. SUBST_FILES.test_equal= mac/make-package SUBST_SED.test_equal= -e 's/ == / = /g' MAKE_DIRS_PERMS+= ${VARBASE}/games/emacs \ ${GAMES_USER} ${GAMES_GROUP} ${GAMEDIRMODE:Q} CONF_FILES_PERMS+= /dev/null ${VARBASE}/games/emacs/snake-scores \ ${GAMES_USER} ${GAMES_GROUP} ${GAMEDATAMODE:Q} CONF_FILES_PERMS+= /dev/null ${VARBASE}/games/emacs/tetris-scores \ ${GAMES_USER} ${GAMES_GROUP} ${GAMEDATAMODE:Q} SPECIAL_PERMS+= libexec/emacs/${PKGVERSION_NOREV}/${MACHINE_GNU_PLATFORM}/update-game-score ${SETGID_GAMES_PERMS} .include "../../mk/bsd.prefs.mk" .if (${OPSYS} == "DragonFly") && exists(/usr/lib/crtn.o) CPPFLAGS+= -DDFLY_CRT_USRLIB .endif .include "../../mk/compiler.mk" # "emacs" uses the C pre-processor to generate makefiles. The C pre-processor # of newer GCC version is designed to break this by purpose. We work around # that using the traditional mode to generate makefiles. .if !empty(CC_VERSION:Mgcc-[4-9].*) CPP+= -P CONFIGURE_ENV+= CPP=${CPP:Q} .endif .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 LDFLAGS+= -L${PREFIX}/lib fake-libgcc: ${AR} q ${BUILDLINK_DIR}/lib/libgcc.a .endif post-extract: cp ${FILESDIR}/site-init.el ${WRKSRC}/lisp cp ${FILESDIR}/dragonfly.h ${WRKSRC}/src/s ${CHMOD} -R go-w ${WRKSRC} # These dirs are installed by tar-copy and can sometimes come out mode # 754, which if PKG_DEVELOPER is set causes the build to fail. post-install: .for file in leim leim/ja-dic leim/quail ${CHMOD} 755 ${DESTDIR}${PREFIX}/share/emacs/${PKGVERSION_NOREV}/${file} .endfor .include "../../mk/oss.buildlink3.mk" .include "../../mk/termcap.buildlink3.mk"