blob: f25726733ead5af06daa3e288ffba9762e2a7bfb (
plain) (
tree)
|
|
# Created by: MANTANI Nobutaka <nobutaka@nobutaka.com>
# $FreeBSD$
PORTNAME= emacs
PORTVERSION= ${EMACS_VER}
PORTREVISION= 2
PORTEPOCH= 3
CATEGORIES= editors ipv6
MASTER_SITES= GNU
PKGNAMESUFFIX?= 25
PATCH_DIST_STRIP= -p1
MAINTAINER= ashish@FreeBSD.org
COMMENT= GNU editing macros
LICENSE= GPLv3+
LICENSE_FILE= ${WRKSRC}/COPYING
CONFLICTS_INSTALL?= emacs-devel-[0-9]* emacs-nox11-[0-9]*
BROKEN_aarch64= Fails to link: missing sbrk
EMACS_VER= 25.2
GNU_CONFIGURE= yes
USES= cpe gmake makeinfo ncurses pkgconfig tar:xz
# Building with GCC 4.6+ requires it; remove after 9.3 EOL
LDFLAGS+= ${ncurses_ARGS:Mport:C/.+/-ltinfo/}
INFO_PATH= ${DATADIR_REL}/info
CPE_VENDOR= gnu
SUB_FILES= sources.el
SUB_LIST+= ARCHLIBDIR=${PREFIX}/libexec/emacs/${EMACS_VER}/${CONFIGURE_TARGET}
SUB_LIST+= EMACS_VER=${EMACS_VER} # sources.el
CONFIGURE_ARGS= --localstatedir=/var \
--with-gameuser=games:games
PLIST_SUB= EMACS_VER=${EMACS_VER} GNU_HOST=${CONFIGURE_TARGET}
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= ACL CANNA DBUS GNUTLS LLDB MODULES SOURCES X11 XML
OPTIONS_RADIO= FILENOTIFY SOUND X11TOOLKIT
OPTIONS_RADIO_FILENOTIFY= GFILE KQUEUE
OPTIONS_RADIO_SOUND= ALSA OSS
OPTIONS_RADIO_X11TOOLKIT= GTK2 GTK3 MOTIF XAW XAW3D
OPTIONS_GROUP= GRAPHICS NEEDX11
OPTIONS_GROUP_GRAPHICS= CAIRO GIF JPEG MAGICK PNG SVG TIFF XPM
OPTIONS_GROUP_NEEDX11= GCONF GSETTINGS M17N OTF SCROLLBARS XFT XIM \
XWIDGETS
OPTIONS_DEFAULT?= ACL DBUS GCONF GIF GNUTLS GSETTINGS GTK3 JPEG KQUEUE \
M17N MAGICK MODULES OSS OTF PNG SCROLLBARS SOURCES SVG \
TIFF X11 XFT XIM XML XPM
ACL_DESC= Access control list support
CAIRO_DESC= Experimental Cairo library support (implies PNG, XFT)
CANNA_DESC= Japanese input support
FILENOTIFY_DESC=File notification support
GFILE_DESC= File notification via gfile
GRAPHICS_DESC= Graphics support (each implies X11)
GSETTINGS_DESC= GSettings API for application settings
KQUEUE_DESC= File notification via kqueue
LLDB_DESC= LLDB support for GUD
#LTO_DESC= Enable link-time optimization
MAGICK_DESC= ImageMagick image processing support
M17N_DESC= M17N for text-shaping (implies XFT)
MODULES_DESC= Dynamic modules support
NEEDX11_DESC= Other X11-dependent (each implies X11)
OTF_DESC= Opentype fonts (implies XFT)
SCROLLBARS_DESC=Toolkit scroll-bars
SOURCES_DESC= Install sources
SVG_DESC= Scalable vector graphics support (implies PNG)
X11_DESC= X window system support
X11TOOLKIT_DESC=X11 toolkit (each implies X11)
XAW3D_DESC= Athena3D widgets
XAW_DESC= Athena widgets
XIM_DESC= X Input Method
XWIDGETS_DESC= GTK widgets in Emacs buffers (requires GTK3)
OPTIONS_SUB= YES
ACL_CONFIGURE_ENABLE= acl
ALSA_CONFIGURE_ON= --with-sound=alsa
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib
CAIRO_USE= GNOME=cairo
CAIRO_CONFIGURE_WITH= cairo
CAIRO_IMPLIES= PNG XFT X11
CANNA_CONFIGURE_WITH= canna
CANNA_PATCH_SITES= http://www.gentei.org/~yuuji/software/emacs25canna/ \
http://distfiles.pirateparty.in/ashish/ \
LOCAL/ashish
CANNA_PATCHFILES= emacs25.1canna-20160919.diff.gz
CANNA_LIB_DEPENDS= libcanna.so:japanese/canna-lib
DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus
DBUS_CONFIGURE_WITH= dbus
GCONF_USE= GNOME=gconf2
GCONF_CONFIGURE_WITH= gconf
GCONF_IMPLIES= X11
GFILE_CONFIGURE_ON= --with-file-notification=gfile
GIF_LIB_DEPENDS= libgif.so:graphics/giflib
GIF_CONFIGURE_WITH= gif
GIF_IMPLIES= X11
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls
GNUTLS_CONFIGURE_WITH= gnutls
GSETTINGS_USE= GNOME=glib20
GSETTINGS_CONFIGURE_WITH=gsettings
GSETTINGS_IMPLIES= DBUS X11
GTK2_USE= GNOME=cairo,gtk20
GTK2_USES= gettext-runtime
GTK2_CONFIGURE_ON= --with-x-toolkit=gtk2
GTK2_IMPLIES= X11
GTK2_LIB_DEPENDS= libfreetype.so:print/freetype2 \
libfontconfig.so:x11-fonts/fontconfig
GTK3_USE= GNOME=cairo,gtk30
GTK3_USES= gettext-runtime
GTK3_CONFIGURE_ON= --with-x-toolkit=gtk3
GTK3_IMPLIES= X11
JPEG_USES= jpeg
JPEG_CONFIGURE_WITH= jpeg
JPEG_IMPLIES= X11
KQUEUE_CONFIGURE_ON= --with-file-notification=kqueue
LLDB_EXTRA_PATCHES= ${PATCHDIR}/extrapatch-lldb-gud.el
#LTO_CONFIGURE_ON= --enable-link-time-optimization
M17N_LIB_DEPENDS= libm17n.so:devel/m17n-lib
M17N_CONFIGURE_WITH= m17n-flt
M17N_IMPLIES= XFT X11
MAGICK_LIB_DEPENDS= libMagickCore-6.so:graphics/ImageMagick
MAGICK_CONFIGURE_WITH= imagemagick
MAGICK_IMPLIES= X11
MODULES_CONFIGURE_WITH= modules
MOTIF_USES= motif
MOTIF_CONFIGURE_ON= --with-x-toolkit=motif
MOTIF_IMPLIES= X11
MOTIF_LIB_DEPENDS= libXp.so:x11/libXp
OSS_CONFIGURE_ON= --with-sound=oss
OTF_LIB_DEPENDS= libotf.so:print/libotf
OTF_CONFIGURE_WITH= libotf
OTF_IMPLIES= X11 XFT
PNG_LIB_DEPENDS= libpng.so:graphics/png
PNG_CONFIGURE_WITH= png
PNG_IMPLIES= X11
SCROLLBARS_CONFIGURE_WITH=toolkit-scroll-bars
SCROLLBARS_IMPLIES= X11
SVG_USE= GNOME=cairo,librsvg2
SVG_CONFIGURE_WITH= rsvg
SVG_IMPLIES= X11 PNG
SVG_USES= gettext-runtime
TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff
TIFF_CONFIGURE_WITH= tiff
TIFF_IMPLIES= X11
X11_CONFIGURE_OFF= --without-x --with-x-toolkit=no
X11_CONFIGURE_ON= --with-x
X11_USE= XORG=ice,sm,x11,xcb,xext,xfixes,xinerama,xmu,xrandr,xt
X11_USES= desktop-file-utils
X11_VARS= installs_icons=yes
X11_VARS_OFF= without_x11=yes
XAW_USE= XORG=xaw
XAW_CONFIGURE_ON= --with-x-toolkit=athena --without-xaw3d
XAW_IMPLIES= X11
XAW3D_LIB_DEPENDS= libXaw3d.so:x11-toolkits/Xaw3d
XAW3D_CONFIGURE_ON= --with-x-toolkit=athena
XAW3D_IMPLIES= X11
XFT_USE= XORG=xft,xrender
XFT_CONFIGURE_WITH= xft
XFT_IMPLIES= X11
XFT_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
libfreetype.so:print/freetype2
XIM_CONFIGURE_WITH= xim
XIM_IMPLIES= X11
XML_USE= GNOME=libxml2
XML_CONFIGURE_WITH= xml2
XPM_USE= XORG=xpm
XPM_CONFIGURE_WITH= xpm
XPM_IMPLIES= X11
XWIDGETS_USE= XORG=xcomposite
XWIDGETS_CONFIGURE_WITH=xwidgets
XWIDGETS_LIB_DEPENDS= libwebkitgtk-3.0.so:www/webkit-gtk3
XWIDGETS_IMPLIES= GTK3
# 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,
# but don't pull in those dependencies when X11 is off.
post-patch-X11-off:
@${REINPLACE_CMD} -e 's/^Terminal=.*$$/Terminal=true/' ${WRKSRC}/etc/emacs.desktop
post-install-SOURCES-on:
@${MKDIR} ${STAGEDIR}${DATADIR}/${EMACS_VER}/src
${INSTALL_DATA} ${WRKSRC}/src/*.[ch] ${STAGEDIR}${DATADIR}/${EMACS_VER}/src
${INSTALL_DATA} ${WRKDIR}/sources.el ${STAGEDIR}${DATADIR}/${EMACS_VER}/site-lisp/site-start.el
.include <bsd.port.mk>
|