aboutsummaryrefslogtreecommitdiff
path: root/editors/emacs/Makefile
diff options
context:
space:
mode:
authorAshish SHUKLA <ashish@FreeBSD.org>2014-11-05 13:17:17 +0000
committerAshish SHUKLA <ashish@FreeBSD.org>2014-11-05 13:17:17 +0000
commitb2edd3a92da509a28625510d638e2e83a570c490 (patch)
treec7a386097bbd1c919eace4a516335f22ffff5e7e /editors/emacs/Makefile
parentf1fb103c3f7437b31979eed6a3e00d7c4ac3c4b6 (diff)
downloadports-b2edd3a92da509a28625510d638e2e83a570c490.tar.gz
ports-b2edd3a92da509a28625510d638e2e83a570c490.zip
GNU Emacs Updates
editors/emacs: - Update to 24.4[1] - Remove all upstreamed diffs[1] - Switch to static pkg-plist[1] - Add OPTIONs for ACL, file notification, LTO, ALSA, and OSS[1] - Reword IGNORE messages for portlint[1] - Add fix for a Emacs TRAMP bug - Update CANNA patchset[2] editors/emacs-devel: - Update to bzr snapshot revision 118251 - Add pkg-install, and pkg-deinstall file missed from r364499 - Switch to static pkg-plist editors/emacs-nox11: - Remove PLIST_DIRSTRY Mk/bsd.emacs.mk: - Update Emacs version numbers - Remove deprecated XEmacs entries PR: 194624[1] Submitted by: Joseph Mingrone <jrm at ftfl.ca>[1], TAKANO Yuji <takachan at running-dog.net>[2]
Notes
Notes: svn path=/head/; revision=372190
Diffstat (limited to 'editors/emacs/Makefile')
-rw-r--r--editors/emacs/Makefile148
1 files changed, 79 insertions, 69 deletions
diff --git a/editors/emacs/Makefile b/editors/emacs/Makefile
index b83adaf28c00..61cdd6e03dd9 100644
--- a/editors/emacs/Makefile
+++ b/editors/emacs/Makefile
@@ -3,12 +3,11 @@
PORTNAME= emacs
PORTVERSION= ${EMACS_VER}
-PORTREVISION?= 8
PORTEPOCH= 3
CATEGORIES= editors ipv6
MASTER_SITES= ${MASTER_SITE_GNU}
MASTER_SITE_SUBDIR= ${PORTNAME}
-PKGNAMESUFFIX?= 24
+PKGNAMESUFFIX?= 24
PATCH_SITE_SUBDIR+= ashish
PATCH_DIST_STRIP= -p1
@@ -19,62 +18,65 @@ COMMENT= GNU editing macros
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
-MAKE_JOBS_SAFE= yes
-
CONFLICTS= emacs-19.* emacs21-[0-9]* emacs22-[0-9]* emacs23-[0-9]* \
- xemacs-[0-9]* xemacs-devel-[0-9]* \
- xemacs-mule-[0-9]* xemacs-devel-mule-[0-9]* \
+ xemacs-[0-9]* xemacs-devel-[0-9]* xemacs-mule-[0-9]* \
+ xemacs-devel-mule-[0-9]* \
emacs-devel-[0-9]*
-EMACS_VER= 24.3
+EMACS_VER= 24.4
GNU_CONFIGURE= yes
-USES= ncurses gmake makeinfo pkgconfig shebangfix tar:xz
+USES= desktop-file-utils gmake makeinfo ncurses pkgconfig shebangfix tar:xz
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
INFO_PATH= ${DATADIR_REL}/info
-CONFIGURE_ARGS= --localstatedir=/var --without-compress-info
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
SHEBANG_FILES= lib-src/grep-changelog
-PLIST_SUB= EMACS_VER=${EMACS_VER} INFODIR=${INFO_PATH}
+# Append --without-compress-install to prevent emacs from compressing info
+# which bsd.port.mk is not able to detect
+CONFIGURE_ARGS= --localstatedir=/var --without-compress-install
-EMACS_DIRS= ${DATADIR}/${EMACS_VER}/leim ${DATADIR}/${EMACS_VER}/lisp ${DATADIR}/${EMACS_VER}/src \
- ${PREFIX}/libexec/${PORTNAME}
+PLIST_SUB= EMACS_VER=${EMACS_VER} GNU_HOST=${CONFIGURE_TARGET}
MAKE_ENV= LC_ALL=C
INFO= ada-mode auth autotype bovine calc ccmode cl dbus dired-x \
- ebrowse ede ediff edt efaq eieio eintr elisp emacs-mime emacs-gnutls emacs epa \
- erc ert eshell eudc flymake forms gnus htmlfontify idlwave info \
- mairix-el message mh-e newsticker nxml-mode \
- org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses sieve \
- smtpmail speedbar srecode tramp url vip viper widget wisent woman
+ ebrowse ede ediff edt efaq eieio eintr elisp emacs-gnutls \
+ emacs-mime emacs epa erc ert eshell eudc eww flymake forms \
+ gnus htmlfontify idlwave ido info mairix-el message mh-e \
+ newsticker nxml-mode octave-mode org pcl-cvs pgg rcirc reftex \
+ remember sasl sc semantic ses sieve smtpmail speedbar srecode \
+ todo-mode tramp url vip viper widget wisent woman
-CONFLICTS+= emacs-nox11-[0-9]*
-OPTIONS_DEFINE= CANNA DBUS GCONF GIF JPEG M17N OTF PNG SOUND SOURCES SVG TIFF SYNC_INPUT SCROLLBARS X11 XFT \
- XIM XML XPM MAGICK GNUTLS GSETTINGS
+OPTIONS_DEFINE= CANNA X11 ACL DBUS GCONF GIF JPEG M17N OTF PNG SOUND SOURCES SVG TIFF SCROLLBARS \
+ XFT XIM XML XPM MAGICK GNUTLS GSETTINGS LTO FILENOTIFY
-OPTIONS_SINGLE= X11
+OPTIONS_SINGLE= X11 SOUND
CANNA_DESC= Canna support
-GSETTINGS_DESC= GSettings support (requires DBUS)
+ACL_DESC= ACL support
+GSETTINGS_DESC= GSettings support
SCROLLBARS_DESC= Toolkit scroll-bars
SOUND_DESC= Sound support
SOURCES_DESC= Install sources
-SYNC_INPUT_DESC= Synchronously process asynchronous input
XAW_DESC= Athena widgets
XAW3D_DESC= Athena3D widgets
XIM_DESC= X Input Method Support
M17N_DESC= M17N support for text-shaping
OTF_DESC= Opentype fonts suport
+FILENOTIFY_DESC= File notification support
+LTO_DESC= Enable link-time optimization (requires GCC 4.6+)
OPTIONS_SINGLE_X11= GTK2 GTK3 XAW XAW3D MOTIF
+OPTIONS_SINGLE_SOUND= ALSA OSS
.if !defined(EMACS_NO_X11_SLAVE)
OPTIONS_DEFAULT=DBUS GCONF GIF GTK2 JPEG M17N OTF PNG SOUND SOURCES SVG TIFF SYNC_INPUT \
SCROLLBARS XFT XIM XML XPM MAGICK GNUTLS GSETTINGS X11
+CONFLICTS+= emacs-nox11-[0-9]*
.else
OPTIONS_DEFAULT=SOURCES GNUTLS XML
+CONFLICTS+= emacs24-[0-9]*
.endif
OPTIONS_SUB= SOURCES
@@ -83,13 +85,15 @@ CANNA_CONFIGURE_ON= --with-canna \
--with-canna-includes=${LOCALBASE}/include \
--with-canna-libraries=${LOCALBASE}/lib
CANNA_PATCH_SITES= http://distfiles.pirateparty.in/%SUBDIR%/ ${MASTER_SITE_LOCAL}
-CANNA_PATCHFILES= emacs24.3canna-20140616.diff.gz
+CANNA_PATCHFILES= emacs24.4canna-20141030.diff.gz
CANNA_LIB_DEPENDS= libcanna.so:${PORTSDIR}/japanese/canna-lib
-SOUND_CONFIGURE_WITH= sound
+SOUND_CONFIGURE_OFF= --with-sound=no
+ALSA_CONFIGURE_ON= --with-sound=alsa
+OSS_CONFIGURE_ON= --with-sound=oss
-DBUS_LIB_DEPENDS= libdbus-1.so:${PORTSDIR}/devel/dbus
-DBUS_CONFIGURE_WITH= dbus
+DBUS_LIB_DEPENDS= libdbus-1.so:${PORTSDIR}/devel/dbus
+DBUS_CONFIGURE_WITH= dbus
GNUTLS_LIB_DEPENDS= libgnutls.so:${PORTSDIR}/security/gnutls
GNUTLS_CONFIGURE_WITH= gnutls
@@ -97,22 +101,40 @@ GNUTLS_CONFIGURE_WITH= gnutls
XML_USE= GNOME=libxml2
XML_CONFIGURE_WITH= xml2
-SVG_USE= GNOME=librsvg2
+SVG_USE= GNOME=librsvg2
SVG_CONFIGURE_WITH= rsvg
-GTK2_USE= GNOME=gtk20
+X11_CONFIGURE_WITH= x
+X11_USE= XORG=x11
+X11_PLIST_DIRSTRY_OFF= share/icons/hicolor/scalable/mimetypes \
+ share/icons/hicolor/scalable/apps \
+ share/icons/hicolor/scalable \
+ share/icons/hicolor/48x48/apps \
+ share/icons/hicolor/48x48 \
+ share/icons/hicolor/32x32/apps \
+ share/icons/hicolor/32x32 \
+ share/icons/hicolor/24x24/apps \
+ share/icons/hicolor/24x24 \
+ share/icons/hicolor/16x16/apps \
+ share/icons/hicolor/16x16 \
+ share/icons/hicolor/128x128/apps \
+ share/icons/hicolor/128x128 \
+ share/icons/hicolor \
+ share/icons
+
+GTK2_USE= GNOME=gtk20
GTK2_CONFIGURE_ON= --with-x-toolkit=gtk2
-GTK3_USE= GNOME=gtk30
+GTK3_USE= GNOME=gtk30
GTK3_CONFIGURE_ON= --with-x-toolkit=gtk3
XAW3D_LIB_DEPENDS= libXaw3d.so:${PORTSDIR}/x11-toolkits/Xaw3d
XAW3D_CONFIGURE_ON= --with-x-toolkit=athena
-XAW_USE= XORG=xaw
+XAW_USE= XORG=xaw
XAW_CONFIGURE_ON+= --with-x-toolkit=athena --without-xaw3d
-MOTIF_USES= motif
+MOTIF_USES= motif
MOTIF_CONFIGURE_ON+= --with-x-toolkit=motif
SCROLLBARS_CONFIGURE_WITH= toolkit-scroll-bars
@@ -147,29 +169,36 @@ OTF_CONFIGURE_WITH= libotf
MAGICK_LIB_DEPENDS= libMagickCore-6.Q*.so:${PORTSDIR}/graphics/ImageMagick
MAGICK_CONFIGURE_WITH= imagemagick
-GSETTINGS_USE= gnome=glib20
+GSETTINGS_USE= gnome=glib20
GSETTINGS_CONFIGURE_WITH= gsettings
-GCONF_USE= gnome=gconf2
-GCONF_CONFIGURE_WITH= gconf
+GCONF_USE= gnome=gconf2
+GCONF_CONFIGURE_WITH= gconf
+
+XIM_CONFIGURE_WITH= xim
-XIM_CONFIGURE_WITH= xim
+LTO_CONFIGURE_ON= --enable-link-time-optimization
+LTO_USE= GCC=4.6+
+
+ACL_CONFIGURE_OFF= --disable-acl
+
+FILENOTIFY_CONFIGURE_ON= --with-file-notification=gfile
+FILENOTIFY_CONFIGURE_OFF= --without-file-notification
+FILENOTIFY_USE= GNOME=glib20
.include <bsd.port.options.mk>
-# clang is broken on i386 platform in -O2, due to use of alloca
+# clang is broken on i386 platform in -O2, due to use of alloca, and stack realignment
# and %esi as frame pointer register
+# http://llvm.org/bugs/show_bug.cgi?id=18171
.if ${ARCH} == "i386"
-USE_GCC= any
+USE_GCC= any
.endif
DBUS_PTHREAD_LIBS= ${CC} -dumpspecs | ${GREP} -m 1 pthread: | ${SED} -e 's|^.*%{\!pg: %{pthread:||' -e 's|}.*$$||' || ${TRUE}
.if ${PORT_OPTIONS:MX11}
-CONFIGURE_ARGS+= --with-x
-USE_XORG= x11
-
INSTALLS_ICONS= yes
.if !${PORT_OPTIONS:MXFT}
@@ -182,11 +211,9 @@ IGNORE= opentype fonts support requires Xft. Please run 'make config'
.else
-CONFIGURE_ARGS+= --without-x
-
.for OPT in SVG GTK2 GTK3 XAW3D XAW MOTIF SCROLLBARS JPEG TIFF GIF PNG XPM XFT M17N MAGICK GCONF GSETTINGS XIM
.if ${PORT_OPTIONS:M${OPT}}
-IGNORE= ${OPT} option depends on X11 option
+IGNORE= option ${OPT} requires requires X11 option
.endif
.endfor
@@ -194,7 +221,7 @@ IGNORE= ${OPT} option depends on X11 option
.if !${PORT_OPTIONS:MDBUS}
.if ${PORT_OPTIONS:MGSETTINGS}
-IGNORE= GSettings support requires DBUS. Please run 'make config'
+IGNORE= support for GSettings requires DBUS. Please run 'make config'
.endif
.endif
@@ -210,45 +237,28 @@ BROKEN= Emacs 24.X does not currently build on ia64
.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 !${PORT_OPTIONS:MX11}
+.if empty(PORT_OPTIONS:MX11)
@${REINPLACE_CMD} -e 's/^Terminal=.*$$/Terminal=true/' ${WRKSRC}/etc/emacs.desktop
.endif
post-configure:
- @${REINPLACE_CMD} -e "s/^\(DBUS_LIBS.*\)-pthread\(.*\)$$/\1$$(${DBUS_PTHREAD_LIBS})\2/" ${WRKSRC}/src/Makefile
-
-add-plist-data:
-.for i in ${EMACS_DIRS}
- @${FIND} ${STAGEDIR}${i} -type f |${SED} -E -e 's,^${STAGEDIR}${PREFIX}/,,g' >>${TMPPLIST}
-.endfor
- @${FIND} ${WRKSRC}/etc -type f |${SED} -E -e 's,^${WRKSRC},${DATADIR_REL}/${EMACS_VER},g' -e '/etc\/(\..*|ChangeLog|DOC)$$/d' >>${TMPPLIST}
- @${FIND} ${WRKSRC}/etc -type d -depth |${SED} -E -e 's,^${WRKSRC},@dirrm ${DATADIR_REL}/${EMACS_VER},g' >>${TMPPLIST}
-.for i in ${EMACS_DIRS}
- @${FIND} ${STAGEDIR}${i} -type d -depth |${SED} -E -e 's,^${STAGEDIR}${PREFIX}/,@dirrm ,g' >>${TMPPLIST}
-.endfor
- @${ECHO} "@unexec rmdir %D/${DATADIR_REL}/${EMACS_VER} 2>/dev/null || true" >>${TMPPLIST}
+ @${REINPLACE_CMD} -e "s/^\(DBUS_LIBS.*\)-pthread\(.*\)$$/\1$$(${DBUS_PTHREAD_LIBS})\2/" \
+ ${WRKSRC}/src/Makefile
post-install:
@${RM} -rf ${STAGEDIR}/var/games/emacs
.if ${PORT_OPTIONS:MSOURCES}
@${MKDIR} ${STAGEDIR}${DATADIR}/${EMACS_VER}/src
- @${INSTALL_DATA} ${WRKSRC}/src/*.[ch] ${STAGEDIR}${DATADIR}/${EMACS_VER}/src
- @${INSTALL_DATA} ${WRKSRC}/sources.el ${STAGEDIR}${DATADIR}/${EMACS_VER}/site-lisp/site-start.el
+ ${INSTALL_DATA} ${WRKSRC}/src/*.[ch] ${STAGEDIR}${DATADIR}/${EMACS_VER}/src
+ ${INSTALL_DATA} ${WRKSRC}/sources.el ${STAGEDIR}${DATADIR}/${EMACS_VER}/site-lisp/site-start.el
.endif
+.if !defined(WITHOUT_X11)
pre-everything::
-.if ${PORT_OPTIONS:MX11}
@${ECHO_MSG}
- @${ECHO_MSG} "====> To disable X11 support, unset option: X11."
+ @${ECHO_MSG} "====> To disable X11 support, define: WITHOUT_X11."
@${ECHO_MSG}
.endif
-.if ${PORT_OPTIONS:MCANNA}
- @${ECHO_MSG} "====> Canna support is not part of standard distribution"
- @${ECHO_MSG} "====> of GNU Emacs and is therefore not supported by GNU"
- @${ECHO_MSG} "====> Emacs development team."
-.endif
- @${ECHO_MSG}
.include <bsd.port.post.mk>