# Created by: Kenneth Vestergaard Schmidt # $FreeBSD$ PORTNAME= emacs PORTVERSION= ${EMACS_VER} PORTREVISION= 1 PORTEPOCH= 2 CATEGORIES= editors ipv6 MASTER_SITES= GNU_ALPHA/emacs/pretest PKGNAMESUFFIX= -devel MAINTAINER= ashish@FreeBSD.org COMMENT= GNU editing macros LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING BROKEN_sparc64= fails to compile at bootstrap phase BROKEN_ia64= Emacs 24.X does not currently build on ia64 CONFLICTS= emacs-19.* emacs21-[0-9]* emacs22-[0-9]* \ emacs23-[0-9]* emacs24-[0-9]* xemacs-[0-9]* \ xemacs-devel-[0-9]* xemacs-mule-[0-9]* \ xemacs-devel-mule-[0-9]* emacs-nox11-[0-9]* EMACS_VER= 25.0.92 GNU_CONFIGURE= yes USES= cpe gmake makeinfo ncurses pkgconfig tar:xz INFO_PATH= ${DATADIR_REL}/info CPE_VENDOR= gnu SUB_LIST+= ARCHLIBDIR=${PREFIX}/libexec/emacs/${EMACS_VER}/\ ${CONFIGURE_TARGET} CONFIGURE_ARGS= --localstatedir=/var --with-gameuser=games:games 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 emacs-gnutls emacs-mime 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 vhdl-mode vip viper widget wisent \ woman OPTIONS_DEFINE= X11 ACL DBUS GCONF GIF JPEG M17N OTF PNG SOUND \ SOURCES SVG TIFF SCROLLBARS XFT XIM XML XPM MAGICK \ GNUTLS GSETTINGS LTO FILENOTIFY LLDB CAIRO MODULES XWIDGETS OPTIONS_SINGLE= X11 SOUND ACL_DESC= ACL support GSETTINGS_DESC= GSettings support SCROLLBARS_DESC=Toolkit scroll-bars SOUND_DESC= Sound support SOURCES_DESC= Install sources 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+) LLDB_DESC= Enable lldb support for GUD (from llvm.org) MODULES_DESC= Dynamic modules support XWIDGETS_DESC= Enable use of some GTK widgets in Emacs buffers OPTIONS_SINGLE_X11= GTK2 GTK3 XAW XAW3D MOTIF OPTIONS_SINGLE_SOUND= ALSA OSS OPTIONS_DEFAULT=ACL DBUS FILENOTIFY GCONF GIF GNUTLS GSETTINGS GTK2 \ JPEG M17N MAGICK MODULES OSS OTF PNG SCROLLBARS SOUND \ SOURCES SVG TIFF X11 XFT XIM XML XPM OPTIONS_SUB= YES LLDB_EXTRA_PATCHES= ${PATCHDIR}/extrapatch-lldb-gud.el SOUND_CONFIGURE_OFF= --with-sound=no ALSA_CONFIGURE_ON= --with-sound=alsa ALSA_LIB_DEPENDS= libasound.so:${PORTSDIR}/audio/alsa-lib OSS_CONFIGURE_ON= --with-sound=oss 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 XML_USE= GNOME=libxml2 XML_CONFIGURE_WITH= xml2 SVG_USE= GNOME=librsvg2 SVG_CONFIGURE_WITH= rsvg X11_CONFIGURE_WITH= x X11_USE= XORG=x11 X11_USES= desktop-file-utils GTK2_USE= GNOME=gtk20 GTK2_CONFIGURE_ON= -with-x-toolkit=gtk2 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_CONFIGURE_ON+= --with-x-toolkit=athena --without-xaw3d MOTIF_USES= motif MOTIF_CONFIGURE_ON+= --with-x-toolkit=motif SCROLLBARS_CONFIGURE_WITH=toolkit-scroll-bars SYNC_INPUT_CONFIGURE_WITH=sync-input JPEG_USES= jpeg JPEG_CONFIGURE_WITH= jpeg TIFF_LIB_DEPENDS= libtiff.so:${PORTSDIR}/graphics/tiff TIFF_CONFIGURE_WITH= tiff GIF_LIB_DEPENDS= libgif.so:${PORTSDIR}/graphics/giflib GIF_CONFIGURE_WITH= gif PNG_LIB_DEPENDS+= libpng.so:${PORTSDIR}/graphics/png PNG_CONFIGURE_WITH= png XPM_USE= XORG=xpm XPM_CONFIGURE_WITH= xpm XFT_USE= XORG=xft XFT_LIB_DEPENDS= libfreetype.so:${PORTSDIR}/print/freetype2 XFT_CONFIGURE_WITH= xft M17N_LIB_DEPENDS= libm17n.so:${PORTSDIR}/devel/m17n-lib M17N_CONFIGURE_WITH= m17n-flt OTF_LIB_DEPENDS= libotf.so:${PORTSDIR}/print/libotf OTF_CONFIGURE_WITH= libotf MAGICK_LIB_DEPENDS=libMagickCore-6.so:${PORTSDIR}/graphics/ImageMagick MAGICK_CONFIGURE_WITH= imagemagick GSETTINGS_USE= gnome=glib20 GSETTINGS_CONFIGURE_WITH=gsettings GCONF_USE= gnome=gconf2 GCONF_CONFIGURE_WITH= gconf 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 CAIRO_USE= GNOME=cairo CAIRO_CONFIGURE_ON= --with-cairo MODULES_CONFIGURE_ON= --with-modules XWIDGETS_CONFIGURE_ON= --with-xwidgets XWIDGETS_LIB_DEPENDS= libwebkitgtk-3.0.so:${PORTSDIR}/www/webkit-gtk3 .include # 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 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:MX11} INSTALLS_ICONS= yes .if !${PORT_OPTIONS:MXFT} .if ${PORT_OPTIONS:MM17N} IGNORE= m17n requires Xft. Please run 'make config' .elif ${PORT_OPTIONS:MOTF} IGNORE= support for Opentype fonts require Xft. Please run 'make config' .endif .endif .else .for OPT in GCONF GIF GSETTINGS GTK2 GTK3 JPEG M17N MAGICK MOTIF \ PNG SCROLLBARS SVG TIFF XAW XAW3D XFT XIM XPM .if ${PORT_OPTIONS:M${OPT}} IGNORE= option ${OPT} requires X11 option .endif .endfor .endif .if !${PORT_OPTIONS:MDBUS} .if ${PORT_OPTIONS:MGSETTINGS} IGNORE= support for GSettings requires DBUS. Please run 'make config' .endif .endif .if !${PORT_OPTIONS:MGTK3} .if ${PORT_OPTIONS:MXWIDGETS} IGNORE= support for XWidgets requires GTK3. Please run 'make config' .endif .endif .include # Building with GCC 4.6+ requires it .if ${ncurses_ARGS} == "port" LDFLAGS+= -ltinfo .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 empty(PORT_OPTIONS:MX11) @${REINPLACE_CMD} -e 's/^Terminal=.*$$/Terminal=true/' \ ${WRKSRC}/etc/emacs.desktop .endif post-install: .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 .endif @${FIND} ${STAGEDIR}${PREFIX}/${INFO_PATH} -type f -name \ '*.gz' -exec ${GUNZIP_CMD} '{}' \; .if !defined(WITHOUT_X11) pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "====> Define WITHOUT_X11 to disable X11 support." @${ECHO_MSG} .endif .include