| Port details |
- emacs GNU editing macros
- 31.1_1,3 editors
=97 30.2_3,3Version of this port present on the latest quarterly branch. - Maintainer: emacs@FreeBSD.org
 - Port Added: unknown
- Last Update: 2026-08-25 05:23:52
- Commit Hash: f9566b8
- People watching this port, also watch:: gmake, freetype2, unzip, libiconv, expat
- License: GPLv3+
- WWW:
- https://www.gnu.org/software/emacs/
- Description:
- GNU Emacs is an extensible, customizable, free/libre text editor. At its
core is an interpreter for Emacs Lisp, a dialect of the Lisp programming
language with extensions to support text editing.
The features of GNU Emacs include:
- content-aware editing modes, including syntax coloring, for many file
types
- complete built-in documentation, including a tutorial for new users
- full Unicode support for nearly all human scripts
- powerful customizability, using Emacs Lisp code or a graphical
interface
- a vast ecosystem of functionality beyond text editing, including a
project planner, mail and news reader, debugger interface, calendar,
even a psychotherapist, and more
- a packaging system for downloading and installing extensions.
¦ ¦ ¦ ¦ 
- Manual pages:
- FreshPorts has no man page information for this port.
- pkg-plist: as obtained via:
make generate-plist - There is no configure plist information for this port.
- USE_RC_SUBR (Service Scripts)
- no SUBR information found for this port
- Dependency lines:
-
- Conflicts:
- CONFLICTS_INSTALL:
- emacs-devel
- emacs-devel-nox
- emacs-canna
- emacs-nox
- emacs-wayland
- To install the port:
- cd /usr/ports/editors/emacs/ && make install clean
- To add the package, run one of these commands:
- pkg install editors/emacs
- pkg install emacs
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above.- PKGNAME: emacs
- Package flavors (<flavor>: <package>)
- full: emacs
- canna: emacs-canna
- nox: emacs-nox
- wayland: emacs-wayland
- distinfo:
- TIMESTAMP = 1787624629
SHA256 (emacs-31.1.tar.xz) = 1da5790d9580c81932b5bf700633114468da7b3412d69faa767daebf974f4586
SIZE (emacs-31.1.tar.xz) = 57977476
Packages (timestamps in pop-ups are UTC):
- Dependencies
- NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
- Build dependencies:
-
- gmake>=4.4.1 : devel/gmake
- pkgconf>=1.3.0_1 : devel/pkgconf
- update-desktop-database : devel/desktop-file-utils
- gcc13 : lang/gcc13
- as : devel/binutils
- xpm.pc : x11/libXpm
- ice.pc : x11/libICE
- sm.pc : x11/libSM
- x11.pc : x11/libX11
- xcb.pc : x11/libxcb
- xcomposite.pc : x11/libXcomposite
- xext.pc : x11/libXext
- xfixes.pc : x11/libXfixes
- xi.pc : x11/libXi
- xinerama.pc : x11/libXinerama
- xmu.pc : x11-toolkits/libXmu
- xrandr.pc : x11/libXrandr
- xrender.pc : x11/libXrender
- xt.pc : x11-toolkits/libXt
- Runtime dependencies:
-
- mailutils : mail/mailutils
- update-desktop-database : devel/desktop-file-utils
- gcc13 : lang/gcc13
- xpm.pc : x11/libXpm
- ice.pc : x11/libICE
- sm.pc : x11/libSM
- x11.pc : x11/libX11
- xcb.pc : x11/libxcb
- xcomposite.pc : x11/libXcomposite
- xext.pc : x11/libXext
- xfixes.pc : x11/libXfixes
- xi.pc : x11/libXi
- xinerama.pc : x11/libXinerama
- xmu.pc : x11-toolkits/libXmu
- xrandr.pc : x11/libXrandr
- xrender.pc : x11/libXrender
- xt.pc : x11-toolkits/libXt
- indexinfo : print/indexinfo
- Library dependencies:
-
- libgmp.so : math/gmp
- libfontconfig.so : x11-fonts/fontconfig
- libfreetype.so : print/freetype2
- libdbus-1.so : devel/dbus
- libgif.so : graphics/giflib
- libgnutls.so : security/gnutls
- libfontconfig.so : x11-fonts/fontconfig
- libfreetype.so : print/freetype2
- libharfbuzz.so : print/harfbuzz
- liblcms2.so : graphics/lcms2
- libpng16.so : graphics/png
- libtiff.so : graphics/tiff
- libtree-sitter.so : devel/tree-sitter
- libwebpdemux.so : graphics/webp
- libjpeg.so : graphics/jpeg-turbo
- libsqlite3.so : databases/sqlite3
- libatk-1.0.so : accessibility/at-spi2-core
- libcairo.so : graphics/cairo
- libgdk_pixbuf-2.0.so : graphics/gdk-pixbuf2
- libglib-2.0.so : devel/glib20
- libintl.so : devel/gettext-runtime
- libgtk-3.so : x11-toolkits/gtk30
- librsvg-2.so : graphics/librsvg2-rust
- libxml2.so : textproc/libxml2
- libharfbuzz.so : print/harfbuzz
- libpango-1.0.so : x11-toolkits/pango
- This port is required by:
- for Build
-
- audio/emms
- databases/bbdb
- databases/closql
- databases/emacsql
- devel/cond-let
- devel/forge
- devel/ghub
-
Deleted ports which required this port:
- for Run
-
Deleted ports which required this port:
- * - deleted ports are only shown under the This port is required by section. It was harder to do for the Required section. Perhaps later...
Configuration Options:
- ===> The following configuration options are available for emacs-31.1_1,3:
ACL=on: Access control list support
DBUS=on: D-Bus IPC system support
GNUTLS=on: SSL/TLS support via GnuTLS
GSETTINGS=on: GSettings API for application settings
HARFBUZZ=on: HarfBuzz for text shaping
LCMS2=on: Little CMS 2.x support
M17N=off: M17N support for text-shaping [implies XFT]
MAILUTILS=on: Mail framework via GNU Mailutils
MODULES=on: Dynamic modules support
NATIVECOMP=on: Emacs Lisp native compiler support
OTF=off: Opentype fonts
PGTK=off: Pure GTK GUI [implies CAIRO, GTK3]
SCROLLBARS=on: Toolkit scroll-bars
SOURCES=on: Install sources
SQLITE3=on: SQLite 3 database support
THREADS=on: Threading support
TREESITTER=on: tree-sitter support
XFT=off: Xft font library support
XIM=on: X Input Method
XML=on: XML format or parser support
XWIDGETS=off: Experimental GTK widgets [implies GTK3]
====> Graphics support
CAIRO=on: Cairo graphics library support [implies PNG, prevents XFT]
GIF=on: GIF image format support
JPEG=on: JPEG image format support
MAGICK=off: ImageMagick image processing support (deprecated)
PNG=on: PNG image format support
SVG=on: Scalable vector graphics support [implies PNG]
TIFF=on: TIFF image format support
WEBP=on: WebP image format support
XPM=on: XPM pixmap image format support
====> File notification support: you can only select none or one of them
GFILE=off: File notification via gfile
KQUEUE=on: File notification via kqueue
====> Sound (audio) support: you can only select none or one of them
ALSA=off: ALSA audio architecture support
OSS=on: Open Sound System support
====> X11 toolkit: you can only select none or one of them
GTK2=off: GTK 2 GUI toolkit support
GTK3=on: GTK 3 GUI toolkit support
MOTIF=off: Motif widget library support
XAW=off: Athena widgets
XAW3D=off: Athena3D widgets
===> Use 'make config' to modify these settings
- Options name:
- editors_emacs
- USES:
- cpe gmake localbase:ldflags ncurses pkgconfig tar:xz jpeg sqlite:3 gnome desktop-file-utils gnome xorg
- FreshPorts was unable to extract/find any pkg message
- Master Sites:
|
| Commit History - (may be incomplete: for full details, see links to repositories near top of page) |
| Commit | Credits | Log message |
23.1,1 22 Dec 2009 20:11:47
 |
bsam  |
Assign LATEST_LINK to apropriate directory names for ports:
. editors/emacs;
. editors/emacs-devel;
. editors/emacs-nox11;
. editors/emacs22.
Approved by: keramida (maintainer via e-mail) |
23.1,1 20 Dec 2009 20:19:24
 |
bsam  |
Changes to editors/emacs and Mk/bsd.emacs.mk were taken from
PR/137956 by Ashish SHUKLA (thanks!). [1]
Those ports which define EMACS_PORT_NAME to be "emacs21" were
not touched (this time). They may be converted to the new
world order by removing the above mentioned assignment.
Four ports were marked as BROKEN with EMACS_PORT_NAME=emacs23
(they do not compile):
. lang/bigloo;
. mail/wanderlust;
. mail/wanderlust-devel;
. www/emacs-w3m.
Three ports were marked as IGNORE with EMACS_PORT_NAME=emacs23: (Only the first 15 lines of the commit message are shown above ) |
22.3_1,1 08 Sep 2009 11:36:22
 |
bsam  |
. backout previous commit (revert editors/emacs to version 22.3)
since the commit broke dependencies and the ports infrastructure
was not fully prepared (a new emacs/editors22 port is needed
for compatibility reasons);
. bump PORTEPOCH.
Reported by: Jan Henrik Sylvester <me at janh.de>, kostik
Pointy hat to: bsam (me) |
23.1 07 Sep 2009 19:33:30
 |
bsam  |
Updat GNU Emacs to v. 23.1.
Emacs 23 has a wide variety of new features, including:
* Improved Unicode support.
* Font rendering with Fontconfig and Xft.
* Support for using X displays and text terminals in one session,
and for running as a daemon.
* Support for multi-file commits in distributed version-control
systems (VC-dir).
* New modes and packages for viewing PDF and postscript files
(Doc-view mode), connecting to processes through D-Bus (dbus),
connecting to the GNU Privacy Guard (EasyPG), editing XML
documents (nXML mode), editing Ruby programs (Ruby mode), and more.
Detailed list is available at: http://www.gnu.org/software/emacs/NEWS.23.1
PR: ports/137956
Submitted by: Ashish SHUKLA <wahjava at gmail.com>
Approved by: keramida@ceid.upatras.gr (maintainer tineout, 19 days) |
22.3_1 18 Jul 2009 11:11:29
 |
dinoex  |
- update to jpeg7
Tested by: pav on pointyhat |
22.3 14 Nov 2008 13:00:19
 |
pav  |
- Do not explicitly set LATEST_LINK to the default value. Slave ports need to
be able to override this. |
22.3 10 Nov 2008 22:30:51
 |
bsam  |
. update to version 22.3 (includes a security fix in the way Emacs
interacts with Python);
. change EMACS_VER at bsd.emacs.mk.
While I'm here: remove old PORTREVISION.
PR: 127168
Submitted by: keramida (maintainer) |
22.2_1 21 Aug 2008 06:18:49
 |
rafan  |
Update CONFIGURE_ARGS for how we pass CONFIGURE_TARGET to configure script.
Specifically, newer autoconf (> 2.13) has different semantic of the
configure target. In short, one should use --build=CONFIGURE_TARGET
instead of CONFIGURE_TARGET directly. Otherwise, you will get a warning
and the old semantic may be removed in later autoconf releases.
To workaround this issue, many ports hack the CONFIGURE_TARGET variable
so that it contains the ``--build='' prefix.
To solve this issue, under the fact that some ports still have
configure script generated by the old autoconf, we use runtime detection
in the do-configure target so that the proper argument can be used.
Changes to Mk/*:
- Add runtime detection magic in bsd.port.mk (Only the first 15 lines of the commit message are shown above ) |
22.2_1 06 Jun 2008 13:25:59
 |
edwin  |
Bump portrevision due to upgrade of devel/gettext.
The affected ports are the ones with gettext as a run-dependency
according to ports/INDEX-7 (5007 of them) and the ones with USE_GETTEXT
in Makefile (29 of them).
PR: ports/124340
Submitted by: edwin@
Approved by: portmgr (pav) |
22.2 03 Jun 2008 14:36:50
 |
bsam  |
- Update editors/emacs to 22.2.
- Change bsd.emacs.mk accordingly.
- Fix comment about emacs-devel in bsd.emacs.mk.
- Some lisp directories are changed, add a note to UPDATING.
PR: 122783
Submitted by: KIMURA Yasuhiro <yasu at utahime.org>
Approved by: keramida (maintainer timeout, 6 weeks) |
22.1_5 14 May 2008 23:58:28
 |
edwin  |
As pointed out by mjl @ #bsdports: The patch I commited was a patch
on itself. Extracted the patch and recommit it.
PR: ports/120370 |
22.1_4 12 May 2008 00:57:10
 |
edwin  |
[patch] editors/emacs build on arm
PR: ports/120370
Submitted by: Matthew Luckie <mjl@luckie.org.nz>
Approved by: Giorgos Keramidas <keramida@ceid.upatras.gr> |
22.1_3 19 Apr 2008 17:56:05
 |
miwi  |
- Remove unneeded dependency from gtk12/gtk20 [1]
- Remove USE_XLIB/USE_X_PREFIX/USE_XPM in favor of USE_XORG
- Remove X11BASE support in favor of LOCALBASE or PREFIX
- Use USE_LDCONFIG instead of INSTALLS_SHLIB
- Remove unneeded USE_GCC 3.4+
Thanks to all Helpers:
Dmitry Marakasov, Chess Griffin, beech@, dinoex, rafan, gahr,
ehaupt, nox, itetcu, flz, pav
PR: 116263
Tested on: pointyhat
Approved by: portmgr (pav) |
22.1_2 08 Oct 2007 23:29:47
 |
keramida  |
Port the gmalloc.c allocator from the CVS trunk of Emacs.
This includes various enhancements and fixes, including a
serious bug caused by using gmalloc's allocation and free
functions and the system version of posix_memalign().
PR: ports/114993
Submitted by: Gardner Bell
Reviewed by: pav |
22.1_1 27 Sep 2007 06:16:36
 |
pav  |
- Kill packaged info files, they are splitted. We need to generate our own,
non-splitted, from texinfo.
PR: ports/115209
Submitted by: NIIMI Satoshi <sa2c@sa2c.net>
Approved by: maintainer timeout (keramida; 7 weeks) |
22.1 24 Jul 2007 15:10:14
 |
rafan  |
- Remove --mandir and --infodir from CONFIGURE_ARGS. They are now default
in bsd.port.mk.
Tested with: my tinderbox on i386 6
Approved by: portmgr |
22.1 16 Jul 2007 17:06:45
 |
nobutaka  |
Update to 22.1.
Hand over maintainership to keramida. |
21.3_10 19 May 2007 20:32:57
 |
flz  |
- Welcome X.org 7.2 \o/.
- Set X11BASE to ${LOCALBASE} for recent ${OSVERSION}.
- Bump PORTREVISION for ports intalling files in ${X11BASE}. |
21.3_9 03 May 2007 17:15:47
 |
nobutaka  |
Add emacs-22.* to CONFLICTS.
PR: ports/111814
Submitted by: NIIMI Satoshi <sa2c@sa2c.net> |
21.3_9 12 Nov 2006 02:50:07
 |
nobutaka  |
Change PATCH_SITES. |
21.3_9 22 Jan 2006 11:02:41
 |
edwin  |
SHA256ify (manually updated and checked)
Approved by: krion@ |
21.3_9 18 Dec 2005 13:39:43
 |
nobutaka  |
Remove emacs20 from CONFLICTS.
PR: ports/90475
Submitted by: NIIMI Satoshi <sa2c@sa2c.net> |
21.3_9 08 Dec 2005 17:01:46
 |
nobutaka  |
- Add .info suffix to filename of info files.
- Use INFO macro.
Requested by: edwin |
21.3_8 15 Nov 2005 06:52:12
 |
ade  |
Mass-conversion to the USE_AUTOTOOLS New World Order. The code present
in bsd.autotools.mk essentially makes this a no-op given that all the
old variables set a USE_AUTOTOOLS_COMPAT variable, which is parsed in
exactly the same way as USE_AUTOTOOLS itself.
Moreover, USE_AUTOTOOLS has already been extensively tested by the GNOME
team -- all GNOME 2.12.x ports use it.
Preliminary documentation can be found at:
http://people.FreeBSD.org/~ade/autotools.txt
which is in the process of being SGMLized before introduction into the
Porters Handbook.
Light blue touch-paper. Run. |
21.3_8 05 Sep 2005 15:15:47
 |
nobutaka  |
Fix build error.
PR: ports/85508
Submitted by: NIIMI Satoshi <sa2c@sa2c.net> |
21.3_7 15 Jul 2005 16:08:40
 |
nobutaka  |
Add powerpc support.
PR: ports/83074
Submitted by: Dario Freni <saturnero@freesbie.org> |
21.3_7 15 May 2005 15:32:14
 |
nobutaka  |
Disable optimization on ia64 to avoid elisp processing errors.
Submitted by: yoichi |
21.3_6 06 May 2005 18:35:07
 |
nobutaka  |
Bump PORTREVISION to reflect changes in rev. 1.59 in package building.
Pointed out by: yoichi |
21.3_5 06 May 2005 08:56:30
 |
jylefort  |
Add CONFLICTS variable, since this port conflicts with other
emacs/xemacs ports.
Approved by: nobutaka (maintainer) |
21.3_5 05 May 2005 17:22:06
 |
nobutaka  |
Replace -O(2|3|s) CFLAGS with -O on ia64 for a workaround to fix elisp
processing errors.
PR: ports/75832
Submitted by: KIMURA Yasuhiro <yasu@utahime.org>
Fix submitted by: yoichi |
21.3_5 12 Apr 2005 03:26:57
 |
obrien  |
At Kris's request, back out the MACHINE_ARCH spelling correction until
after 5.4-RELEASE. |
21.3_5 11 Apr 2005 08:04:41
 |
obrien  |
Assist getting more ports working on AMD64 by obeying the
Ports Collection documentation and use 'ARCH' rather than 'MACHINE_ARCH'. |
21.3_5 02 Mar 2005 15:05:55
 |
nobutaka  |
Fix problems with AltGr-Modifier on several keyboards.
PR: ports/78209
Submitted by: Kay Lehmann <kay_lehmann@web.de> |
21.3_4 14 Feb 2005 15:32:30
 |
nobutaka  |
Fix format string vulnerability in the movemail utility.
Security: CAN-2005-0100
Security:
http://www.vuxml.org/freebsd/3e3c860d-7dae-11d9-a9e7-0001020eed82.html
Security: Malicious POP3 servers can execute arbitrary code. |
21.3_3 15 Nov 2004 05:19:30
 |
sf  |
farewell to libxpg4. |
21.3_3 05 Sep 2004 21:38:16
 |
marcel  |
Fix runtime breakage on ia64, which was introduced with binutils 2.15.
Note that emacs is run as part of the build, so it shows as a build
failure...
To explain (for maintainer's benefit):
Previously the linker would put the text segment in region 2 and the
data segment in region 3. This was changed for FreeBSD (due to me
sending a patch :-) to load the text segment in region 1 with the data
segment immediately following the text segment in the same region (or
subsequent regions of the text segment is larger than 2^61 bytes in
size -- fat chance :-)
So, the previous value of DATA_SEG_BITS (=0x6000000000000000, the
region base of the data segment prior to the binutils 2.15 import),
needed to be changed to match the current layout (=0x2000000000000000,
the region 1 base address).
Approved by: portmgr (krion -- thank!) |
21.3_3 24 May 2004 14:11:16
 |
nobutaka  |
Enable interruption with C-g key while opening network connection.
PR: ports/65910
Submitted by: NIIMI Satoshi <sa2c@sa2c.net> |
21.3_2 25 Mar 2004 13:32:31
 |
nobutaka  |
Add SIZE to distinfo.
Submitted by: trevor |
21.3_2 21 Mar 2004 07:39:49
 |
kris  |
Move the ancient emacs 19.x port from editors/emacs to
editors/emacs19, and update the main emacs port to 21.x by copying from
editors/emacs21. Retire the editors/emacs21 port.
PR: ports/24983 |
21.3_2 21 Mar 2004 07:38:56
 |
kris  |
Move the ancient emacs 19.x port from editors/emacs to
editors/emacs19, and update the main emacs port to 21.x by copying from
editors/emacs21. Retire the editors/emacs21 port.
PR: ports/24983 |
19.34b_1 25 Feb 2004 10:34:28
 |
kris  |
BROKEN on !i386 5.x: Does not compile |
19.34b_1 04 Feb 2004 05:21:48
 |
marcus  |
Bump PORTREVISION on all ports that depend on gettext to aid with upgrading.
(Part 2) |
19.34b 29 Jan 2004 07:24:56
 |
trevor  |
SIZEify. |
19.34b 24 Sep 2003 09:37:11
 |
osa  |
Make portlint(1) happy by changing strip to ${STRIP_CMD}
Submitted by: Oleg Karachevtsev <ok@etrust.ru>
PR: 56998 |
19.34b 20 Feb 2003 17:12:51
 |
knu  |
De-pkg-comment. |
19.34b 07 Sep 2002 00:32:47
 |
kris  |
Fix build on -current (remove duplicate declarations of things in system
headers) |
01 Jan 2001 10:15:17
    |
will  |
Goodbye, YEAR2000. Hello, 2001. |
08 Oct 2000 02:02:27
    |
asami  |
Convert category editors to new layout. |
12 Jul 2000 16:13:08
    |
shige  |
Fix termcap problem. |
05 Jul 2000 13:37:07
    |
tg  |
As threatened on freebsd-ports: all startup scripts know about the two options
`start' and `stop' now (unless I have forgotten any). This allows us to call
the scripts from /etc/rc.shutdown with the correct option. |