summaryrefslogtreecommitdiff
path: root/editors/emacs24/Makefile.common
blob: de18e72619bf6ae82e76461e95ef0289bbc470a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# $NetBSD: Makefile.common,v 1.7 2013/11/04 11:08:03 jperkin Exp $
#
# used by editors/emacs24/Makefile
# used by editors/emacs24-nox11/Makefile

DISTNAME=	emacs-${EMACS_VERSION}
PKGNAME?=	${DISTNAME:S/emacs/emacs24/}
CATEGORIES=	editors
MASTER_SITES=	${MASTER_SITE_GNU:=emacs/}

MAINTAINER=	pkgsrc-users@NetBSD.org
HOMEPAGE=	http://www.gnu.org/software/emacs/emacs.html
COMMENT=	GNU editing macros (editor)
LICENSE=	gnu-gpl-v3

WRKSRC=		${WRKDIR}/${DISTNAME:S/b$//}
MAKE_JOBS_SAFE=		no

GNU_CONFIGURE=	yes
INFO_FILES=	yes
USE_TOOLS+=	autoconf automake gmake makeinfo gzip

CONFIGURE_ARGS+=	--srcdir=${WRKSRC}
CONFIGURE_ARGS+=	--localstatedir=${VARBASE}
CONFIGURE_ENV+=		GAMEOWN=${GAMES_USER}

SETGIDGAME=	yes

BUILD_DEFS+=		VARBASE
BUILD_DEFS+=		GAMEDATAMODE
PLIST_SRC+=		../../editors/emacs24/PLIST

.include "../../editors/emacs24/version.mk"

BUILD_TARGET=		bootstrap
EMACS_VERSION=		${_EMACS_VERSION_MAJOR}.${_EMACS_VERSION_MINOR}
PLIST_SUBST+=		EMACS_VERSION=${EMACS_VERSION}

REPLACE_PERL=		lib-src/grep-changelog
CHECK_INTERPRETER_SKIP=	bin/grep-changelog

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}

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

.if (${OPSYS} == "Darwin")
# Disable address randomization to fix build with Xcode 4.1.  This is from
# upstream bug #8395.  Details in:
# http://lists.gnu.org/archive/html/emacs-bug-tracker/2011-07/msg00445.html
CFLAGS+=		-fno-pie
# Avoid 'malformed object' errors with older Xcode.
.  if ${OS_VERSION:R} < 11
INSTALL_UNSTRIPPED=	yes
.  endif
.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

fake-libgcc:
	${AR} q ${BUILDLINK_DIR}/lib/libgcc.a
.endif

.if (${OPSYS} == "NetBSD") && exists(/usr/include/term.h)
CPPFLAGS+=	-DTERMINFO
.elif ${OPSYS} == "DragonFly" || ${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}/../../editors/emacs23/files/site-init.el ${WRKSRC}/lisp
	${CHMOD} -R go-w ${WRKSRC}
	${CHMOD} ugo+rx ${WRKSRC}/leim/ja-dic ${WRKSRC}/leim/quail