1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-25 00:51:21 +00:00

editors/emacs-devel: Update to 2022-04-16 snapshot

* Enable NATIVECOMP option by default [1]
* If Emacs is build with NATIVECOMP enabled, display message as
  following at installation and upgrading time [2]
  - There are some elisp applications that don't work collectly if it
    is native compiled
  - If user uses such applications there is workaround to disable
    nativecompilation by user configuration [3]
  - Native compilation often results in high CPU
  - It is also possible to throttle it by user configuration
* Tidy up Makefile with portfmt

Discussed with:	ashish, jrm [1],[2]
Reference:	https://lists.gnu.org/archive/html/help-gnu-emacs/2022-04/msg00129.html [3]
Reviewed by:	ashish, jrm
Differential Revision:	https://reviews.freebsd.org/D34935
This commit is contained in:
Yasuhiro Kimura 2022-04-16 16:39:03 +09:00
parent 00aa78389b
commit d04f04b14c
5 changed files with 94 additions and 26 deletions

View File

@ -1,8 +1,7 @@
# Created by: Kenneth Vestergaard Schmidt <kvs@pil.dk>
PORTNAME= emacs
DISTVERSION= 29.0.50.20220331
PORTREVISION= 1
DISTVERSION= 29.0.50.20220416
PORTEPOCH= 2
CATEGORIES= editors
PKGNAMESUFFIX= -devel
@ -26,7 +25,7 @@ USES= autoreconf:build cpe gmake localbase:ldflags ncurses pkgconfig
CPE_VENDOR= gnu
USE_GITHUB= yes
GH_ACCOUNT= emacs-mirror
GH_TAGNAME= c5af19c
GH_TAGNAME= 1fed6e7
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-build-details \
@ -64,8 +63,10 @@ CONFIGURE_ENV= ac_cv_header_sys_sysinfo_h=no
CONFLICTS_INSTALL= emacs emacs-canna emacs-nox
SUB_FILES= sources.el
SUB_LIST= EMACS_VER=${DISTVERSION:R}
SUB_FILES= pkg-message sources.el
SUB_LIST= EMACS_VER=${DISTVERSION:R} \
NATIVECOMP_COMMENT_END=${NATIVECOMP_COMMENT_END} \
NATIVECOMP_COMMENT_START=${NATIVECOMP_COMMENT_START}
INFO= auth autotype bovine calc ccmode cl dbus dired-x ebrowse ede \
ediff edt efaq eieio eintr elisp emacs emacs-gnutls emacs-mime \
@ -85,8 +86,8 @@ OPTIONS_DEFINE= ACL DBUS GCONF GNUTLS GSETTINGS HARFBUZZ JSON \
XML XWIDGETS
OPTIONS_DEFAULT= ACL CAIRO DBUS GIF GNUTLS GSETTINGS GTK3 \
HARFBUZZ JPEG JSON KQUEUE LCMS2 MAILUTILS \
MODULES OSS PGTK PNG SCROLLBARS SOURCES SQLITE3 \
SVG THREADS TIFF WEBP XML
MODULES NATIVECOMP OSS PGTK PNG SCROLLBARS \
SOURCES SQLITE3 SVG THREADS TIFF WEBP XML
OPTIONS_GROUP= GRAPHICS
OPTIONS_GROUP_GRAPHICS= CAIRO GIF JPEG MAGICK PNG SVG TIFF WEBP XPM
OPTIONS_RADIO= FILENOTIFY SOUND X11TOOLKIT
@ -223,6 +224,14 @@ XWIDGETS_CONFIGURE_WITH= xwidgets
USE_GCC= yes
.endif
.if ${PORT_OPTIONS:MNATIVECOMP}
NATIVECOMP_COMMENT_END=
NATIVECOMP_COMMENT_START=
.else
NATIVECOMP_COMMENT_END= '*/'
NATIVECOMP_COMMENT_START= '/*'
.endif
.if ${PORT_OPTIONS:MNATIVECOMP} && !defined(_GCC_PORT_CHOSEN)
_GCC_PORT!= ${BSDMAKE} -V_GCC_PORT USE_GCC=11+ _GCC_PORT_CHOSEN=yes
.endif
@ -243,7 +252,7 @@ CONFIGURE_ARGS+= --with-x-toolkit=no
# Schema generation is dependent on both PGTK, and GSETTINGS options
# as per https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=183936ee8e5
.if ${PORT_OPTIONS:MGSETTINGS} && ${PORT_OPTIONS:MPGTK}
GLIB_SCHEMAS+= org.gnu.emacs.defaults.gschema.xml
GLIB_SCHEMAS+= org.gnu.emacs.defaults.gschema.xml
.endif
.if ${FLAVOR} == nox

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1648744019
SHA256 (emacs-mirror-emacs-29.0.50.20220331-c5af19c_GH0.tar.gz) = 6caccc85ea3c4446f4ae0878d8ae2c70209e37064fc6ee02b7294698a12de1a7
SIZE (emacs-mirror-emacs-29.0.50.20220331-c5af19c_GH0.tar.gz) = 45440509
TIMESTAMP = 1650071980
SHA256 (emacs-mirror-emacs-29.0.50.20220416-1fed6e7_GH0.tar.gz) = a44463477213111797b8b0a090334c3f3b3801d2f3b4162038ffb181f142a079
SIZE (emacs-mirror-emacs-29.0.50.20220416-1fed6e7_GH0.tar.gz) = 45503871

View File

@ -0,0 +1,73 @@
[
%%NATIVECOMP_COMMENT_START%%
{ type: install
message: <<EOM
Emacs is now built with native compilation enabled, however it is
known that some elisp applications don't work correctly when compiled.
You can work any such issues by disabling native compilation using
the following steps.
1. Add the following lines at the top of your Emacs configuration:
(setq native-comp-deferred-compilation nil
comp-enable-subr-trampolines nil)
2. Exit emacs
3. rm -rf ~/.emacs.d/eln-cache
4. Start emacs again
Whereas all elisp files included in the Emacs source archive are
native compiled at build time, 3rd party elisp files (for example,
from elisp ports/packages) are native compiled at run time. This will
result in high CPU usage when they are compiled. If this annoys you,
you can throttle the number of jobs by changing the value of the
variable 'native-comp-async-jobs-number' in your emacs
configuration. See the output of `C-h v native-comp-async-jobs-number`
for details.
EOM
}
{ type: upgrade
message: <<EOM
Emacs is now built with native compilation enabled, however it is
known that some elisp applications don't work correctly when compiled.
You can work any such issues by disabling native compilation using
the following steps.
1. Add the following lines at the top of your Emacs configuration:
(setq native-comp-deferred-compilation nil
comp-enable-subr-trampolines nil)
2. Exit emacs
3. rm -rf ~/.emacs.d/eln-cache
4. Start emacs again
Whereas all elisp files included in the Emacs source archive are
native compiled at build time, 3rd party elisp files (for example,
from elisp ports/packages) are native compiled at run time. This will
result in high CPU usage when they are compiled. If this annoys you,
you can throttle the number of jobs by changing the value of the
variable 'native-comp-async-jobs-number' in your emacs
configuration. See the output of `C-h v native-comp-async-jobs-number`
for details.
EOM
}
%%NATIVECOMP_COMMENT_END%%
{ type: upgrade
maximum_version: "28.0.50.20210302,2"
message: <<EOM
If you get the error
Symbol's value as variable is void: minor-modes
rebuild the offending Emacs packages.
See https://lists.gnu.org/archive/html/emacs-devel/2021-02/msg01164.html
for details.
EOM
}
]

View File

@ -1,15 +0,0 @@
[
{ type: upgrade
maximum_version: "28.0.50.20210302,2"
message: <<EOM
If you get the error
Symbol's value as variable is void: minor-modes
rebuild the offending Emacs packages.
See https://lists.gnu.org/archive/html/emacs-devel/2021-02/msg01164.html
for details.
EOM
}
]

View File

@ -4199,6 +4199,7 @@ share/applications/emacsclient-mail.desktop
%%SOURCES%%%%DATADIR%%/%%EMACS_VER%%/src/search.c
%%SOURCES%%%%DATADIR%%/%%EMACS_VER%%/src/sheap.c
%%SOURCES%%%%DATADIR%%/%%EMACS_VER%%/src/sheap.h
%%SOURCES%%%%DATADIR%%/%%EMACS_VER%%/src/sort.c
%%SOURCES%%%%DATADIR%%/%%EMACS_VER%%/src/sound.c
%%SOURCES%%%%DATADIR%%/%%EMACS_VER%%/src/sqlite.c
%%SOURCES%%%%DATADIR%%/%%EMACS_VER%%/src/syntax.c