aboutsummaryrefslogtreecommitdiffstats
path: root/editors/emacs/Makefile
blob: b6717c834ca282a49b3e6b5b6ef6f5a93dfe4c30 (plain) (blame)
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
# New ports collection makefile for:    GNU emacs
# Date created:     11 October 2001
# Whom:         MANTANI Nobutaka <nobutaka@nobutaka.com>
#
# $FreeBSD$
#

PORTNAME=   emacs
PORTVERSION=    ${EMACS_VER}
PORTREVISION=   6
PORTEPOCH=  1
CATEGORIES= editors ipv6
MASTER_SITES=   ${MASTER_SITE_GNU}
MASTER_SITE_SUBDIR= ${PORTNAME}

MAINTAINER= keramida@ceid.upatras.gr
COMMENT=    GNU editing macros

.if !defined(WITHOUT_X11)
USE_XORG=   x11
USE_GNOME=  librsvg2
.if defined(WITHOUT_GTK)
USE_XORG=   xaw xft xpm
.else
USE_GNOME+= gtk20
.endif
LIB_DEPENDS+=   jpeg.11:${PORTSDIR}/graphics/jpeg \
        tiff.4:${PORTSDIR}/graphics/tiff \
        ungif.5:${PORTSDIR}/graphics/libungif \
        png.6:${PORTSDIR}/graphics/png
.endif

MAKE_JOBS_UNSAFE=   yes

CONFLICTS=  emacs-19.* emacs-21.* emacs-22.* \
        xemacs-[0-9]* xemacs-devel-[0-9]* \
        xemacs-mule-[0-9]* xemacs-devel-mule-[0-9]*

INSTALLS_ICONS= yes

EMACS_VER=  23.1
GNU_CONFIGURE=  yes
USE_AUTOTOOLS=  autoconf:262
USE_GMAKE=  yes
USE_BZIP2=  yes

.if defined(WITHOUT_X11)
CONFIGURE_ARGS=     --with-x=no
.else
.if !defined(WITHOUT_GTK)
CONFIGURE_ARGS=     --with-x-toolkit=gtk
.else
CONFIGURE_ARGS=     --with-x-toolkit=athena
.endif
LIB_DEPENDS+=       freetype.9:${PORTSDIR}/print/freetype2 \
            m17n.4:${PORTSDIR}/devel/m17n-lib
# also libotf, which is pulled in by m17n

# m17n depends on libintl.so too
CONFIGURE_ENV+= CPPFLAGS="-I${LOCALBASE}/include" \
        LDFLAGS="-L${LOCALBASE}/lib -lintl"
USE_GETTEXT=    yes
.endif

.if defined(WITHOUT_XIM)
CONFIGURE_ARGS+=    --without-xim
.endif

MAN1=       b2m.1 ctags.1 ebrowse.1 emacs.1 emacsclient.1 etags.1 \
        grep-changelog.1 rcs-checkin.1
PLIST_SUB=  EMACS_VER=${EMACS_VER} EMACS_ARCH=${CONFIGURE_TARGET}

MAKE_ENV=   LC_ALL=C

INFO=       ada-mode auth autotype calc ccmode cl dbus dired-x \
        ebrowse ediff efaq eintr elisp emacs-mime emacs epa \
        erc eshell eudc flymake forms gnus idlwave info \
        mairix-el message mh-e newsticker nxml-mode \
        org pcl-cvs pgg rcirc reftex remember sasl sc ses sieve \
        smtpmail speedbar tramp url vip viper widget woman

OPTIONS=    SOURCES "Install source code"   ON

.include <bsd.port.pre.mk>

.if defined(WITH_SOURCES)
PLIST_SUB+= SOURCES=""
.else
PLIST_SUB+= SOURCES="@comment "
.endif

.if ${ARCH} == "ia64"
BROKEN= Emacs 22.X does not currently build on ia64
.endif

pre-everything::
.if !defined(WITHOUT_X11) && !defined(WITHOUT_GTK)
    @${ECHO_MSG} "====>"
    @${ECHO_MSG} "====> To disable GTK+ interface support, define WITHOUT_X11 or WITHOUT_GTK"
    @${ECHO_MSG} "====>"
.endif
.if !defined(WITHOUT_X11) && !defined(WITHOUT_XIM)
    @${ECHO_MSG} "====>"
    @${ECHO_MSG} "====> To disable X11 Input Method support, define WITHOUT_XIM"
    @${ECHO_MSG} "====>"
.endif

post-patch:
    @${RM} -f ${WRKSRC}/info/*
    @${REINPLACE_CMD} -e "s/%%EMACS_VER%%/${EMACS_VER}/g" -e "s/%%DATADIR%%/${DATADIR:C/\//\\\//g}/g" ${WRKSRC}/sources.el

.if defined(WITH_SOURCES)
post-install:
    @${MKDIR} ${DATADIR}/${EMACS_VER}/src
    @${INSTALL_DATA} ${WRKSRC}/src/*.[ch] ${DATADIR}/${EMACS_VER}/src
    @${INSTALL_DATA} ${WRKSRC}/sources.el ${DATADIR}/${EMACS_VER}/site-lisp/site-start.el
.endif

.include <bsd.port.post.mk>