Changeset View
Changeset View
Standalone View
Standalone View
head/editors/emacs-devel/Makefile
# Created by: Kenneth Vestergaard Schmidt <kvs@pil.dk> | # Created by: Kenneth Vestergaard Schmidt <kvs@pil.dk> | ||||
# $FreeBSD$ | # $FreeBSD$ | ||||
PORTNAME= emacs | PORTNAME= emacs | ||||
DISTVERSION= ${EMACS_VER}.${EMACS_REV} | DISTVERSION= ${EMACS_VER}.${EMACS_REV} | ||||
PORTREVISION= 1 | |||||
PORTEPOCH= 2 | PORTEPOCH= 2 | ||||
CATEGORIES= editors ipv6 | CATEGORIES= editors ipv6 | ||||
PKGNAMESUFFIX= -devel | PKGNAMESUFFIX= -devel | ||||
MAINTAINER= ashish@FreeBSD.org | MAINTAINER= ashish@FreeBSD.org | ||||
COMMENT= GNU editing macros | COMMENT= GNU editing macros | ||||
LICENSE= GPLv3 | LICENSE= GPLv3+ | ||||
LICENSE_FILE= ${WRKSRC}/COPYING | LICENSE_FILE= ${WRKSRC}/COPYING | ||||
CONFLICTS= emacs25-[0-9]* emacs-nox11-[0-9]* | CONFLICTS= emacs25-[0-9]* emacs-nox11-[0-9]* | ||||
USE_GITHUB= yes | USE_GITHUB= yes | ||||
GH_ACCOUNT= emacs-mirror | GH_ACCOUNT= emacs-mirror | ||||
GH_TAGNAME= 25dca60d | GH_TAGNAME= 2dae636 | ||||
EMACS_VER= 25.2.50 | EMACS_VER= 26.0.50 | ||||
EMACS_REV= 20161001 | EMACS_REV= 20161225 | ||||
GNU_CONFIGURE= yes | GNU_CONFIGURE= yes | ||||
USES= autoreconf cpe gmake makeinfo ncurses pkgconfig | USES= autoreconf cpe gmake makeinfo ncurses pkgconfig | ||||
INFO_PATH= ${DATADIR_REL}/info | INFO_PATH= ${DATADIR_REL}/info | ||||
CPE_VENDOR= gnu | CPE_VENDOR= gnu | ||||
SUB_FILES+= sources.el | SUB_FILES= sources.el | ||||
SUB_LIST+= ARCHLIBDIR=${PREFIX}/libexec/emacs/${EMACS_VER}/${CONFIGURE_TARGET} | SUB_LIST= EMACS_VER=${EMACS_VER} | ||||
SUB_LIST+= EMACS_VER=${EMACS_VER} | |||||
CONFIGURE_ARGS= --localstatedir=/var \ | CONFIGURE_ARGS= --localstatedir=/var \ | ||||
--with-gameuser=games:games | --with-gameuser=games:games | ||||
PLIST_SUB= EMACS_VER=${EMACS_VER} GNU_HOST=${CONFIGURE_TARGET} | PLIST_SUB= EMACS_VER=${EMACS_VER} GNU_HOST=${CONFIGURE_TARGET} | ||||
MAKE_ENV= LC_ALL=C | MAKE_ENV= LC_ALL=C | ||||
INFO= ada-mode auth autotype bovine calc ccmode cl dbus dired-x ebrowse ede \ | INFO= ada-mode auth autotype bovine calc ccmode cl dbus dired-x ebrowse ede \ | ||||
ediff edt efaq eieio eintr elisp emacs emacs-gnutls emacs-mime epa erc \ | ediff edt efaq eieio eintr elisp emacs emacs-gnutls emacs-mime epa erc \ | ||||
ert eshell eudc eww flymake forms gnus htmlfontify idlwave ido info \ | 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 \ | mairix-el message mh-e newsticker nxml-mode octave-mode org pcl-cvs pgg \ | ||||
rcirc reftex remember sasl sc semantic ses sieve smtpmail speedbar \ | rcirc reftex remember sasl sc semantic ses sieve smtpmail speedbar \ | ||||
srecode todo-mode tramp url vhdl-mode vip viper widget wisent woman | srecode todo-mode tramp url vhdl-mode vip viper widget wisent woman | ||||
OPTIONS_DEFINE= ACL DBUS GNUTLS LLDB MODULES SOURCES X11 XML | OPTIONS_DEFINE= ACL DBUS GNUTLS LLDB MODULES SOURCES THREADS X11 XML | ||||
OPTIONS_RADIO= FILENOTIFY SOUND X11TOOLKIT | OPTIONS_RADIO= FILENOTIFY SOUND X11TOOLKIT | ||||
OPTIONS_RADIO_FILENOTIFY= GFILE KQUEUE | OPTIONS_RADIO_FILENOTIFY= GFILE KQUEUE | ||||
OPTIONS_RADIO_SOUND= ALSA OSS | OPTIONS_RADIO_SOUND= ALSA OSS | ||||
OPTIONS_RADIO_X11TOOLKIT= GTK2 GTK3 MOTIF XAW XAW3D | OPTIONS_RADIO_X11TOOLKIT= GTK2 GTK3 MOTIF XAW XAW3D | ||||
OPTIONS_GROUP= GRAPHICS NEEDX11 | OPTIONS_GROUP= GRAPHICS NEEDX11 | ||||
OPTIONS_GROUP_GRAPHICS= CAIRO GIF JPEG MAGICK PNG SVG TIFF XPM | OPTIONS_GROUP_GRAPHICS= CAIRO GIF JPEG MAGICK PNG SVG TIFF XPM | ||||
OPTIONS_GROUP_NEEDX11= GCONF GSETTINGS M17N OTF SCROLLBARS XFT XIM \ | OPTIONS_GROUP_NEEDX11= GCONF GSETTINGS M17N OTF SCROLLBARS XFT XIM \ | ||||
XWIDGETS | XWIDGETS | ||||
OPTIONS_DEFAULT= ACL DBUS FREEDESKTOP GCONF GIF GNUTLS GSETTINGS GTK2 \ | |||||
JPEG KQUEUE M17N MAGICK MODULES OSS OTF PNG SCROLLBARS \ | |||||
SOURCES SVG THREADS TIFF X11 XFT XIM XML XPM | |||||
ACL_DESC= Access control list support | ACL_DESC= Access control list support | ||||
CAIRO_DESC= Experimental Cairo support (implies PNG, XFT) | CAIRO_DESC= Experimental Cairo support (implies PNG, XFT) | ||||
FILENOTIFY_DESC=File notification support | FILENOTIFY_DESC=File notification support | ||||
GCONF_DESC= GConf configuration support | GCONF_DESC= GConf configuration support | ||||
GFILE_DESC= File notification via gfile | GFILE_DESC= File notification via gfile | ||||
GRAPHICS_DESC= Graphics support (each implies X11) | GRAPHICS_DESC= Graphics support (each implies X11) | ||||
GSETTINGS_DESC= GSettings support (implies DBUS) | GSETTINGS_DESC= GSettings support (implies DBUS) | ||||
KQUEUE_DESC= File notification via kqueue | KQUEUE_DESC= File notification via kqueue | ||||
LLDB_DESC= Enable LLDB support for GUD | LLDB_DESC= Enable LLDB support for GUD | ||||
#LTO_DESC= Enable link-time optimization | #LTO_DESC= Enable link-time optimization | ||||
MAGICK_DESC= ImageMagick support | MAGICK_DESC= ImageMagick support | ||||
M17N_DESC= M17N support for text-shaping (implies XFT) | M17N_DESC= M17N support for text-shaping (implies XFT) | ||||
MODULES_DESC= Dynamic modules support | MODULES_DESC= Dynamic modules support | ||||
NEEDX11_DESC= Other X11-dependent (each implies X11) | NEEDX11_DESC= Other X11-dependent (each implies X11) | ||||
OTF_DESC= Opentype fonts support (implies XFT) | OTF_DESC= Opentype fonts support (implies XFT) | ||||
SCROLLBARS_DESC=Toolkit scroll-bars | SCROLLBARS_DESC=Toolkit scroll-bars | ||||
SOURCES_DESC= Install sources | SOURCES_DESC= Install sources | ||||
SVG_DESC= SVG support (implies PNG) | SVG_DESC= SVG support (implies PNG) | ||||
THREADS_DESC= Emacs Lisp threading support | |||||
X11_DESC= X11 support | X11_DESC= X11 support | ||||
X11TOOLKIT_DESC=X11 toolkit (each implies X11) | X11TOOLKIT_DESC=X11 toolkit (each implies X11) | ||||
XAW3D_DESC= Athena3D widgets | XAW3D_DESC= Athena3D widgets | ||||
XAW_DESC= Athena widgets | XAW_DESC= Athena widgets | ||||
XIM_DESC= X Input Method Support | XIM_DESC= X Input Method Support | ||||
XWIDGETS_DESC= GTK widgets in Emacs buffers (requires GTK3) | XWIDGETS_DESC= GTK widgets in Emacs buffers (requires GTK3) | ||||
OPTIONS_DEFAULT=ACL DBUS FREEDESKTOP GCONF GIF GNUTLS GSETTINGS GTK2 JPEG \ | |||||
KQUEUE M17N MAGICK MODULES OSS OTF PNG SCROLLBARS SOURCES SVG \ | |||||
TIFF X11 XFT XIM XML XPM | |||||
OPTIONS_SUB= YES | OPTIONS_SUB= YES | ||||
ACL_CONFIGURE_ENABLE= acl | ACL_CONFIGURE_ENABLE= acl | ||||
ALSA_CONFIGURE_ON= --with-sound=alsa | ALSA_CONFIGURE_ON= --with-sound=alsa | ||||
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib | ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib | ||||
CAIRO_USE= GNOME=cairo | CAIRO_USE= GNOME=cairo | ||||
CAIRO_CONFIGURE_WITH= cairo | CAIRO_CONFIGURE_WITH= cairo | ||||
CAIRO_IMPLIES= PNG XFT X11 | CAIRO_IMPLIES= PNG XFT X11 | ||||
DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus | DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus | ||||
DBUS_CONFIGURE_WITH= dbus | DBUS_CONFIGURE_WITH= dbus | ||||
GCONF_USE= GNOME=gconf2 | GCONF_USE= GNOME=gconf2 | ||||
GCONF_CONFIGURE_WITH= gconf | GCONF_CONFIGURE_WITH= gconf | ||||
GCONF_IMPLIES= X11 | GCONF_IMPLIES= X11 | ||||
GFILE_CONFIGURE_ON= --with-file-notification=gfile | GFILE_CONFIGURE_ON= --with-file-notification=gfile | ||||
GIF_LIB_DEPENDS= libgif.so:graphics/giflib | GIF_LIB_DEPENDS= libgif.so:graphics/giflib | ||||
GIF_CONFIGURE_WITH= gif | GIF_CONFIGURE_WITH= gif | ||||
GIF_IMPLIES= X11 | GIF_IMPLIES= X11 | ||||
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls | GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls | ||||
GNUTLS_CONFIGURE_WITH= gnutls | GNUTLS_CONFIGURE_WITH= gnutls | ||||
GSETTINGS_USE= GNOME=glib20 | GSETTINGS_USE= GNOME=glib20 | ||||
GSETTINGS_CONFIGURE_WITH=gsettings | GSETTINGS_CONFIGURE_WITH=gsettings | ||||
GSETTINGS_IMPLIES= DBUS X11 | GSETTINGS_IMPLIES= DBUS X11 | ||||
GTK2_USE= GNOME=cairo,gtk20 | GTK2_USE= GNOME=cairo,gtk20 | ||||
GTK2_USES= gettext | GTK2_USES= gettext | ||||
GTK2_CONFIGURE_ON= --with-x-toolkit=gtk2 | GTK2_CONFIGURE_ON= --with-x-toolkit=gtk2 | ||||
GTK2_IMPLIES= X11 | GTK2_IMPLIES= X11 | ||||
GTK2_LIB_DEPENDS= libfreetype.so:print/freetype2 \ | GTK2_LIB_DEPENDS= libfreetype.so:print/freetype2 \ | ||||
libfontconfig.so:x11-fonts/fontconfig | libfontconfig.so:x11-fonts/fontconfig | ||||
GTK3_USE= GNOME=cairo,gtk30 | GTK3_USE= GNOME=cairo,gtk30 | ||||
GTK3_USES= gettext | GTK3_USES= gettext | ||||
GTK3_CONFIGURE_ON= --with-x-toolkit=gtk3 | GTK3_CONFIGURE_ON= --with-x-toolkit=gtk3 | ||||
GTK3_IMPLIES= X11 | GTK3_IMPLIES= X11 | ||||
JPEG_USES= jpeg | JPEG_USES= jpeg | ||||
JPEG_CONFIGURE_WITH= jpeg | JPEG_CONFIGURE_WITH= jpeg | ||||
JPEG_IMPLIES= X11 | JPEG_IMPLIES= X11 | ||||
KQUEUE_CONFIGURE_ON= --with-file-notification=kqueue | KQUEUE_CONFIGURE_ON= --with-file-notification=kqueue | ||||
LLDB_EXTRA_PATCHES= ${PATCHDIR}/extrapatch-lldb-gud.el | LLDB_EXTRA_PATCHES= ${PATCHDIR}/extrapatch-lldb-gud.el | ||||
#LTO_CONFIGURE_ON= --enable-link-time-optimization | #LTO_CONFIGURE_ON= --enable-link-time-optimization | ||||
M17N_LIB_DEPENDS= libm17n.so:devel/m17n-lib | M17N_LIB_DEPENDS= libm17n.so:devel/m17n-lib | ||||
M17N_CONFIGURE_WITH= m17n-flt | M17N_CONFIGURE_WITH= m17n-flt | ||||
M17N_IMPLIES= XFT X11 | M17N_IMPLIES= XFT X11 | ||||
MAGICK_LIB_DEPENDS= libMagickCore-6.so:graphics/ImageMagick | MAGICK_LIB_DEPENDS= libMagickCore-6.so:graphics/ImageMagick | ||||
MAGICK_CONFIGURE_WITH= imagemagick | MAGICK_CONFIGURE_WITH= imagemagick | ||||
MAGICK_IMPLIES= X11 | MAGICK_IMPLIES= X11 | ||||
MODULES_CONFIGURE_WITH= modules | MODULES_CONFIGURE_WITH= modules | ||||
MOTIF_USES= motif | MOTIF_USES= motif | ||||
MOTIF_CONFIGURE_ON= --with-x-toolkit=motif | MOTIF_CONFIGURE_ON= --with-x-toolkit=motif | ||||
MOTIF_IMPLIES= X11 | MOTIF_IMPLIES= X11 | ||||
MOTIF_LIB_DEPENDS= libXp.so:x11/libXp | MOTIF_LIB_DEPENDS= libXp.so:x11/libXp | ||||
OSS_CONFIGURE_ON= --with-sound=oss | OSS_CONFIGURE_ON= --with-sound=oss | ||||
OTF_LIB_DEPENDS= libotf.so:print/libotf | OTF_LIB_DEPENDS= libotf.so:print/libotf | ||||
OTF_CONFIGURE_WITH= libotf | OTF_CONFIGURE_WITH= libotf | ||||
OTF_IMPLIES= X11 XFT | OTF_IMPLIES= X11 XFT | ||||
PNG_LIB_DEPENDS= libpng.so:graphics/png | PNG_LIB_DEPENDS= libpng.so:graphics/png | ||||
PNG_CONFIGURE_WITH= png | PNG_CONFIGURE_WITH= png | ||||
PNG_IMPLIES= X11 | PNG_IMPLIES= X11 | ||||
SCROLLBARS_CONFIGURE_WITH=toolkit-scroll-bars | SCROLLBARS_CONFIGURE_WITH=toolkit-scroll-bars | ||||
SCROLLBARS_IMPLIES= X11 | SCROLLBARS_IMPLIES= X11 | ||||
SVG_USE= GNOME=cairo,librsvg2 | SVG_USE= GNOME=cairo,librsvg2 | ||||
SVG_CONFIGURE_WITH= rsvg | SVG_CONFIGURE_WITH= rsvg | ||||
SVG_IMPLIES= X11 PNG | SVG_IMPLIES= X11 PNG | ||||
SVG_USES= gettext | SVG_USES= gettext | ||||
THREADS_CONFIGURE_WITH= threads | |||||
TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff | TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff | ||||
TIFF_CONFIGURE_WITH= tiff | TIFF_CONFIGURE_WITH= tiff | ||||
TIFF_IMPLIES= X11 | TIFF_IMPLIES= X11 | ||||
X11_CONFIGURE_OFF= --without-x --with-x-toolkit=no | X11_CONFIGURE_OFF= --without-x --with-x-toolkit=no | ||||
X11_CONFIGURE_ON= --with-x | X11_CONFIGURE_ON= --with-x | ||||
X11_USE= XORG=ice,sm,x11,xcb,xext,xfixes,xinerama,xmu,xrandr,xt | X11_USE= XORG=ice,sm,x11,xcb,xext,xfixes,xinerama,xmu,xrandr,xt | ||||
X11_USES= desktop-file-utils | X11_USES= desktop-file-utils | ||||
X11_VARS= installs_icons=yes | X11_VARS= installs_icons=yes | ||||
X11_VARS_OFF= without_x11=yes | X11_VARS_OFF= without_x11=yes | ||||
XAW_USE= XORG=xaw | XAW_USE= XORG=xaw | ||||
XAW_CONFIGURE_ON= --with-x-toolkit=athena --without-xaw3d | XAW_CONFIGURE_ON= --with-x-toolkit=athena --without-xaw3d | ||||
XAW_IMPLIES= X11 | XAW_IMPLIES= X11 | ||||
XAW3D_LIB_DEPENDS= libXaw3d.so:x11-toolkits/Xaw3d | XAW3D_LIB_DEPENDS= libXaw3d.so:x11-toolkits/Xaw3d | ||||
XAW3D_CONFIGURE_ON= --with-x-toolkit=athena | XAW3D_CONFIGURE_ON= --with-x-toolkit=athena | ||||
XAW3D_IMPLIES= X11 | XAW3D_IMPLIES= X11 | ||||
XFT_USE= XORG=xft,xrender | XFT_USE= XORG=xft,xrender | ||||
XFT_CONFIGURE_WITH= xft | XFT_CONFIGURE_WITH= xft | ||||
XFT_IMPLIES= X11 | XFT_IMPLIES= X11 | ||||
XFT_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ | XFT_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ | ||||
libfreetype.so:print/freetype2 | libfreetype.so:print/freetype2 | ||||
XIM_CONFIGURE_WITH= xim | XIM_CONFIGURE_WITH= xim | ||||
XIM_IMPLIES= X11 | XIM_IMPLIES= X11 | ||||
XML_USE= GNOME=libxml2 | XML_USE= GNOME=libxml2 | ||||
XML_CONFIGURE_WITH= xml2 | XML_CONFIGURE_WITH= xml2 | ||||
XPM_USE= XORG=xpm | XPM_USE= XORG=xpm | ||||
XPM_CONFIGURE_WITH= xpm | XPM_CONFIGURE_WITH= xpm | ||||
XPM_IMPLIES= X11 | XPM_IMPLIES= X11 | ||||
XWIDGETS_USE= XORG=xcomposite | XWIDGETS_USE= XORG=xcomposite | ||||
XWIDGETS_CONFIGURE_WITH=xwidgets | XWIDGETS_CONFIGURE_WITH=xwidgets | ||||
XWIDGETS_LIB_DEPENDS= libwebkitgtk-3.0.so:www/webkit-gtk3 | XWIDGETS_LIB_DEPENDS= libwebkitgtk-3.0.so:www/webkit-gtk3 | ||||
XWIDGETS_IMPLIES= GTK3 | XWIDGETS_IMPLIES= GTK3 | ||||
.include <bsd.port.options.mk> | # With a desktop entry stage-qa will give a warning about requiring | ||||
# desktop-file-utils and portlint -C will give a warning about INSTALL_ICONS, | |||||
# clang is broken on i386 platform in -O2, due to use of alloca, and | # but don't pull in those dependencies when X11 is off. | ||||
# stack realignment and %esi as frame pointer register | |||||
# http://llvm.org/bugs/show_bug.cgi?id=18171 fixed in r263312 | |||||
# (11-CURRENT), and fixed in r263765 (10-STABLE) | |||||
.if ${ARCH} == "i386" | |||||
.if (${OSVERSION} < 1000706) || (${OSVERSION} >= 1100000 && \ | |||||
${OSVERSION} < 1100015) | |||||
USE_GCC=any | |||||
.endif | |||||
.endif | |||||
.if ! ${PORT_OPTIONS:MGTK2} && ! ${PORT_OPTIONS:MGTK3} && \ | |||||
! ${PORT_OPTIONS:MMOTIF} && ! ${PORT_OPTIONS:MXAW} && ! ${PORT_OPTIONS:MXAW3D} | |||||
CONFIGURE_ARGS+= --with-x-toolkit=no | |||||
.endif | |||||
.include <bsd.port.pre.mk> | |||||
# Building with GCC 4.6+ requires it | |||||
.if ${ncurses_ARGS} == "port" | |||||
LDFLAGS+=-ltinfo | |||||
.endif | |||||
post-patch: | |||||
@${RM} ${WRKSRC}/info/* | |||||
## stage-qa will give a warning, but don't pull in desktop-file-utils | |||||
## portlint -AC will give a warning about INSTALL_ICONS, but don't pull in those | |||||
## dependencies | |||||
post-patch-X11-off: | post-patch-X11-off: | ||||
@${REINPLACE_CMD} -e 's/^Terminal=.*$$/Terminal=true/' \ | @${REINPLACE_CMD} -e 's/^Terminal=.*$$/Terminal=true/' \ | ||||
${WRKSRC}/etc/emacs.desktop | ${WRKSRC}/etc/emacs.desktop | ||||
pre-configure: | |||||
@cd ${WRKSRC} && ./autogen.sh | |||||
post-install-SOURCES-on: | post-install-SOURCES-on: | ||||
@${MKDIR} ${STAGEDIR}${DATADIR}/${EMACS_VER}/src | @${MKDIR} ${STAGEDIR}${DATADIR}/${EMACS_VER}/src | ||||
${INSTALL_DATA} ${WRKSRC}/src/*.[ch] \ | ${INSTALL_DATA} ${WRKSRC}/src/*.[ch] ${STAGEDIR}${DATADIR}/${EMACS_VER}/src | ||||
${STAGEDIR}${DATADIR}/${EMACS_VER}/src | ${INSTALL_DATA} ${WRKDIR}/sources.el ${STAGEDIR}${DATADIR}/${EMACS_VER}/site-lisp/site-start.el | ||||
${INSTALL_DATA} ${WRKDIR}/sources.el \ | |||||
${STAGEDIR}${DATADIR}/${EMACS_VER}/site-lisp/site-start.el | |||||
.include <bsd.port.post.mk> | .include <bsd.port.mk> |