1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-03 02:31:03 -08:00
Commit graph

1182 commits

Author SHA1 Message Date
Andrea Corallo
e5095f0fd3 Merge remote-tracking branch 'savannah/master' into HEAD 2020-08-02 17:36:29 +02:00
Philipp Stephani
06310cf912 Use a more precise check for '__lsan_ignore_object'
* configure.ac: Add check for __lsan_ignore_object.

* src/buffer.c (enlarge_buffer_text):
* src/data.c (make_blv):
* src/emacs-module.c (Fmodule_load, initialize_environment):
* src/regex-emacs.c (regex_compile):
* src/search.c (newline_cache_on_off): Use new configuration macro.
2020-08-01 17:12:30 +02:00
Philipp Stephani
c3b5355996 Suppress leak detector in some cases
We intentionally leak some objects.  Prevent the ASan leak detector
from raising false alarms in these cases.

* configure.ac: Search for lsan_interface.h header.

* src/data.c (make_blv): Allow leaking of buffer-local values.

* src/buffer.c (enlarge_buffer_text): Allow leaking of buffer text.

* src/emacs-module.c (Fmodule_load, initialize_environment): Allow
intentional leak of runtime and environment objects if module
assertions are enabled.
2020-08-01 14:16:22 +02:00
Nicolas Petton
44888c95b0
Bump Emacs version to 27.1
* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version.
2020-07-28 22:27:07 +02:00
Andrea Corallo
79ed903805 * Add NATIVE_COMP to `system-configuration-features'
* configure.ac (emacs_config_features): Add NATIVE_COMP
2020-07-26 09:38:14 +02:00
Andrea Corallo
5be335e6b5 Merge remote-tracking branch 'savahnna/master' into HEAD 2020-07-13 15:13:46 +02:00
Paul Eggert
c8b6006d82 Use Gnulib libgmp module
Instead of doing GMP by hand, use the Gnulib libgmp module.
* .gitignore: Add lib/gmp.h.
* admin/merge-gnulib (GNULIB_MODULES): Add libgmp.
* configure.ac (GMP_LIB, GMP_OBJ): Remove.  Gnulib uses the name
LIB_GMP, so all uses changed.  All uses of GMP_OBJ removed.
(HAVE_GMP): Set this from Gnulib’s variables.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/mini-gmp-gnulib.c, lib/mini-gmp.c, lib/mini-gmp.h, m4/libgmp.m4:
New files, copied from Gnulib.
* src/bignum.h, test/data/emacs-module/mod-test.c:
Include gmp.h unconditionally.
* src/mini-gmp-emacs.c, src/mini-gmp.c, src/mini-gmp.h:
Remove.  This moves these files from src to lib, and
updates them to the current GMP version.
* test/Makefile.in (GMP_H): New macro.
($(test_module)): Use it to decide whether to compile
mini-gmp-gnulib.c too.
2020-07-09 16:38:45 -07:00
Paul Eggert
501306557c Speed up GCC 10.1 compilation in default Git builds
* configure.ac (nw): GCC 10.1 introduced warnings enabled by -fanalyzer
that slow down compilation considerably.  Generate these warnings only
if --enable-gcc-warnings is explicitly given.  Also, do not bother to
eliminate warnings that Gnulib’s revised manywarnings module no longer
generates.
2020-07-09 16:38:44 -07:00
Andrea Corallo
25bdf99713 Merge remote-tracking branch 'savahnna/master' into HEAD 2020-07-02 22:30:37 +02:00
YASUOKA Masahiko
af313f5b9e Support pty's on OpenBSD
* configure.ac (PTY_TTY_NAME_SPRINTF): OpenBSD has posix_openpt
nowadays.  (Bug#42059)

Copyright-paperwork-exempt: yes
2020-07-01 17:22:25 +03:00
Andrea Corallo
98196b03c1 Merge remote-tracking branch 'savannah/master' into uninterned 2020-06-28 15:54:57 +01:00
Timo Myyrä
e4028d1515 Add thread-naming support for OpenBSD
OpenBSD has pthread_set_name_np; FreeBSD appears to have both
this call and pthread_setname_np (the latter call is used in preference).

* configure.ac: Detect pthread_set_name_np.
* sys/systhread.c:
Include <pthread_np.h> and call pthread_set_name_np if available.
2020-06-28 10:27:21 +02:00
Andrea Corallo
eeebbd5fcb Merge remote-tracking branch 'savannah/master' into HEAD 2020-05-30 11:52:27 +01:00
Paul Eggert
9d11f127f1 --with-wide-int is a no-op on 64-bit hosts
* configure.ac: Clarify wording for --with-wide-int help.
* src/pdumper.c (dump_vectorlike_generic):
Do the eassert even if --with-wide-int was specified unnecessarily.
2020-05-27 09:51:12 -07:00
Nicolás Bértolo
483cdf7a79 Load libgccjit dynamically in Windows.
* configure.ac: don't add linker flags if compiling on
Windows. Compile dynlib.c if modules or native compilation are
enabled. Always compile comp.c
* lisp/term/w32-win.el: Map 'gccjit to "libgccjit.dll" in
`dynamic-library-alist`.
* src/Makefile.in: Update comments. Update to handle changes in
configure.ac.
* src/comp.c: Add declarations of used libgccjit functions using
DEF_DLL_FN. Add calls to load_gccjit_if_necessary() where necessary.
Add `native-comp-available-p`
* src/comp.h: Remove Fnative_elisp_load. Add syms_of_comp().
* src/emacs.c (main): Always call syms_of_comp()
* src/w32.c (globals_of_w32): Clear Vlibrary_cache when starting
because the libraries loaded when dumping will not be loaded when
starting.
* src/w32fns.c: Add Qgccjit symbol.
2020-05-23 08:02:14 +01:00
Andrea Corallo
6d25de46f7 * configure.ac: Fix var usage + better messaging. 2020-05-05 15:50:30 +01:00
Andrea Corallo
a261db1711 * configure.ac: Better messaging when libgccjit fails smoke test
* configure.ac: Fix libgccjit test LDFLAGS plus better messaging
	in case of its fail.
2020-05-05 08:57:47 +01:00
Andrea Corallo
766f4b96ee * configure.ac: Add a better libgccjit test plus some morw err message
* configure.ac (libgccjit_smoke_test, libgccjit_not_found)
	(libgccjit_broken): New functions.
2020-05-04 21:32:03 +01:00
Andrea Corallo
301cf0d278 Merge remote-tracking branch 'savannah/master' into HEAD 2020-04-23 08:41:15 +01:00
Alan Third
e105d01c95 Use native image API for NS
* configure.ac (NATIVE_IMAGE_API): Move above NS definitions.
(HAVE_NATIVE_IMAGE_API): Set for NS.
(HAVE_PNG, HAVE_JPEG, HAVE_GIF, HAVE_TIFF): Enable on NS builds.
* src/image.c (HAVE_NS): Fix a number of #if's so they no longer rely
on HAVE_NS.
(PIX_MASK_DRAW): Add for HAVE_NS so libpng support will compile.
(image_can_use_native_api):
(native_image_load): Add NS support.
(png_load):
(jpeg_load):
(tiff_load):
(gif_load): Remove NS specific definitions.
* src/nsimage.m (ns_can_use_native_image_api): New function.
* src/nsterm.h: (ns_can_use_native_image_api): New function.
2020-04-16 19:11:05 +01:00
Andrea Corallo
d432cbeb27 Merge remote-tracking branch 'savannah/master' into HEAD 2020-04-16 17:35:35 +01:00
Nicolas Petton
399c20d2e0
Bump Emacs version to 27.0.91
* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version.
2020-04-16 11:06:14 +02:00
Eli Zaretskii
afa542c914 Fix small glitches in documenting the native image API feature
* etc/NEWS: Fix wording of the entry for native image API support.
Reported by Juanma Barranquero <lekktu@gmail.com>.

* configure.ac (native-image-api): Fix the "--help" description.
2020-04-15 16:54:38 +03:00
Andrea Corallo
208a11d3f0 Merge remote-tracking branch 'savannah/master' into HEAD 2020-04-14 18:25:23 +01:00
Eli Zaretskii
e94206aaf6 Make use of MS-Windows native image API be selectable at run time
* configure.ac: Minor cleanup in how w32image.o is added to the
build when native image APIs are requested.

* src/w32gui.h (w32_load_image, w32_can_use_native_image_api)
(w32_gdiplus_shutdown): Move prototypes from w32term.h here, since
w32.c doesn't include w32term.h.
* src/image.c (struct image_type): No need to pass TYPE to the
'valid_p' method.  All callers changed.
(initialize_image_type) [HAVE_NATIVE_IMAGE_API]: Call
'image_can_use_native_api' before trying image-specific methods.
(image_can_use_native_api): New function.
(image_types): Remove the native_image_type parts.
(syms_of_image): New symbol 'native-image'.
(parse_image_spec): Accept native-image "type" for any image type.
* src/w32term.c (syms_of_w32term): New variable
'w32-use-native-image-API'.
* src/w32image.c: (w32_can_use_native_image_api): New function.
(gdiplus_init): Rename from w32_gdiplus_startup. Simplify code.
Move the call to GdiplusStartup to a separate function.  Use
ordinal number for SHCreateMemStream if cannot load it by name.
(w32_load_image): Ignore Win32Error status from
w32_select_active_frame.
Move DEFSYMs from here...
* src/image.c (syms_of_image) [HAVE_NATIVE_IMAGE_API]: ...to here.

* etc/NEWS: Update the entry about native image API use.
2020-04-14 18:10:41 +03:00
Juan José García-Ripoll
df254a7445 Initial version of native image API support for MS-Windows
* src/w32image.c: New file.
* src/w32term.h: Add prototypes of 'w32_load_image',
'w32_gdiplus_startup', 'w32_gdiplus_shutdown', and
'w32_query_frame_background_color'.
* src/w32term.c (w32_query_frame_background_color): No longer
static.
* src/w32.c (term_ntproc) [HAVE_GDIPLUS]: Call
'w32_gdiplus_shutdown'.
* src/image.c (struct image_type) <valid_p>: Accept an additional
argument, the image type.  All implementations changed.
(init_native_image_functions, native_image_p, native_image_load)
[HAVE_NATIVE_IMAGE_API]: New methods for "native image type".
(initialize_image_type) [HAVE_NATIVE_IMAGE_API]: Call
'init_native_image_functions'.
(image_types) [HAVE_NATIVE_IMAGE_API]: Add settings for native
image API.
(lookup_image_type) [HAVE_NATIVE_IMAGE_API]: Initialize native
functions if needed.

* lisp/term/w32-win.el (dynamic-library-alist): Add gdiplus and
shlwapi.

* etc/NEWS: Announce the new feature.

* configure.ac (native-image-api): New option, OFF by default.
(HAVE_NATIVE_IMAGE_API): If native-image-api is selected, add
w32image.o to W32_OBJ.
2020-04-14 09:52:55 +03:00
Paul Eggert
4b4da58e8c Revert unneeded part of gcc -Og change
* configure.ac (DEFINE_KEY_OPS_AS_MACROS):
Undo this recent change to configure.ac; it’s not needed.
2020-04-04 17:05:05 -07:00
Paul Eggert
15853707c8 Default gcc -Og to inlining key ops
Problem reported by Martin Rudalics in:
https://lists.gnu.org/r/emacs-devel/2020-04/msg00195.html
* configure.ac (DEFINE_KEY_OPS_AS_MACROS): Define if -Og.
* src/Makefile.in (KEY_OPS_CFLAGS): New macro.
(EMACS_CFLAGS): Use it.
* src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): Let the gcc command line
specify it.  Remove use of undocumented INLINING macro.
2020-04-04 16:57:43 -07:00
Andrea Corallo
3cc0438629 Merge remote-tracking branch 'savannah/master' into HEAD 2020-04-03 11:15:55 +01:00
Ashish SHUKLA
63af801ed3 configure.ac: switch to POSIX sh behaviour 2020-04-03 11:14:30 +01:00
Eli Zaretskii
1276c8e10b Use hard links to Emacs executable in "make install" on MS-Windows
* configure.ac (LN_S_FILEONLY): Set to "/bin/ln" for MinGW
unconditionally.
2020-03-29 16:43:56 +03:00
Adam Porter
46a4ca4774 comp.el: Minor improvements
Change: (comp-start-async-worker) Refactor slightly

Change: (comp-start-async-worker) Inline (comp-to-file-p)

Change: (comp-source-files) Rename from comp-src-pool

Add: (comp-start-async-worker) Assertion

Change: (comp-async-processes) Rename from comp-prc-pool

Tidy: (native-compile)

Rename variables, improve docstring, adjust log message, simplify
filename code.

Tidy: (batch-native-compile) Docstring

Tidy: whitespace-cleanup

Tidy: (comp-start-async-worker) Use () instead of nil

Tidy: (comp-files-queue) Rename from comp-source-files

Change: (native-compile-async) Improve paths support

Tidy: Comment

Save a line for one word.  :)

Change: (comp-log) Rewrite without macro, follow tail

Change: (native-compile-async) Use end-of-string in filename regexps

Change: (native-compile-async) Use cl-loop instead of dotimes

Add/Change: (comp-log-to-buffer) And use in comp-log

Comment: Tidy comment

Fix: (configure.ac) Option description

Fix: (comp-log) Argument

Fix: (comp-start-async-worker) Variable name

Change: Undo whitespace changes

Some of them included incorrect indentation because the
macros' (declare (indent)) forms were not loaded.  The
whitespace-cleanup should be run from Emacs 27+ with the file loaded.
2020-03-15 10:24:08 +00:00
Nicolas Petton
d096bab787
Bump Emacs version to 27.0.90
* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version.
2020-02-27 18:22:18 +01:00
Andrea Corallo
ec5d95782d Verify '--with-nativecomp' has also '--with-dumping=pdumper' 2020-02-21 15:26:45 +00:00
Andrea Corallo
f1bc8e480c Merge remote-tracking branch 'savannah/master' into HEAD 2020-02-14 23:22:10 +01:00
Glenn Morris
68d43392a6 Merge from origin/emacs-27
09eed01afb Wrap some set-auto-mode calls with delay-mode-hooks (bug#3...
4a0a114505 Support ido-vertical-mode better
ef5fba9f40 Fix faces tab-bar and tab-line.
831508422e Cater for 3-argument version of pthread_setname_np
f27187f963 Clarify lexvar restrictions for add-to-ordered-list, add-t...
32763dac46 Replace add-to-list to lexical variable with push (bug#39373)
d07f177382 Clarify add-to-list documentation (bug#39373)
d3d2ea927c MH-E: alter content in mh-display-msg, not mh-show-mode
db7fa2546f Update documentation for mh-show-mode-hook
d10be6bf28 Example goto-addr hook: MH-E already uses goto-address

# Conflicts:
#	etc/NEWS
2020-02-06 07:50:29 -08:00
Andrea Corallo
15aedf3e3d Merge remote-tracking branch 'savannah/master' into HEAD 2020-02-04 15:11:20 +01:00
Robert Pluim
831508422e Cater for 3-argument version of pthread_setname_np
Fixes Bug#39363.

* configure.ac: Add check for 3-argument version of
pthread_setname_np.
* src/systhread.c (sys_thread_set_name)
[HAVE_PTHREAD_SETNAME_NP_3ARG]: Call pthread_setname_np with
3 arguments.
2020-02-03 16:40:25 +01:00
Glenn Morris
1083e5243f Merge from origin/emacs-27
cdf8c31844 Extend workaround for Cygwin O_PATH bug
2020-02-01 07:50:10 -08:00
Ken Brown
cdf8c31844 Extend workaround for Cygwin O_PATH bug
* configure.ac (HAVE_CYGWIN_O_PATH_BUG): Extend to Cygwin versions
3.1.0 through 3.1.2.  (Bug#39371)
2020-01-31 11:28:56 -05:00
Glenn Morris
60a3c5d56c Merge from origin/emacs-27
1bcac29b2f (origin/emacs-27) dns-mode-soa-auto-increment-serial: safe...
abf0f8666d * lisp/wdired.el: Clean out isearch-filter-predicate (bug#...
c31c31e57f ; Spelling and URL fixes
066aad7b9d Finish the documentation for c-noise-macro-{,with-parens-}...
c8fcabf245 Correct regexp for flags in `format' doc string
2e9a153b26 Moderate recommendation to escape '(' in doc strings
d7cd4ab7d9 Objective C Mode: Make c-forward-type work with "unsigned ...
1705e32ebc Fix help text about configure module support
baca81e641 * doc/lispref/streams.texi (Output Functions): Improve ind...
568a560fce Improve doc string of 'newline'
7f50698505 Improve doc of eq on bignums etc.
e5327a569c Do not refer to obsolete alias
fd09196781 ; Clarify what time-stamp-active enables

# Conflicts:
#	etc/NEWS
2020-01-28 07:50:22 -08:00
Paul Eggert
a02b179242 Revert the --with-install-srcdir patch
Also, update description of debuginfo and sources to match
Debian and Red Hat more accurately, and move this sad tale
from INSTALL to etc/PROBLEMS which is a better home for it.
* Makefile.in (emacs_srcdir, install-c-src):
* configure.ac (emacs_srcdir, --with-install-srcdir):
* src/epaths.in (PATH_EMACS_SOURCE):
* src/lread.c (emacs-source-directory):
Remove.  All uses removed.
* lisp/emacs-lisp/find-func.el (find-function-C-source):
Do not worry about compressed C sources.
* src/lread.c: Do not include <dosname.h>.
2020-01-27 23:17:10 -08:00
Marco Wahl
1705e32ebc Fix help text about configure module support 2020-01-26 01:07:13 -08:00
Paul Eggert
f42d57c7db Install C source code for C-h f etc.
Without this change, on typical GNU/Linux distributions
like Debian, the first button of ‘C-h f car RET’ does not work
because the source code for ‘car’ is not installed (Bug#37527).
Fix this by installing the (compressed) C source code alongside
the (compressed) Lisp source code that is already installed.
This adds about 3 MB (about 2%) to the size of the installed files
on my platform.
* Makefile.in (emacs_srcdir): New macro.
(epaths-force): Substitute PATH_EMACS_SOURCE.
(install-c-src): New rule, that installs a copy of the C source
code if emacs_srcdir says to.
(install-arch-indep): Depend on it.
* configure.ac (emacs_srcdir): New var.
Add support for --disable-install-srcdir.
* lisp/emacs-lisp/find-func.el (find-function-C-source-directory):
Look in emacs-source-directory first.
(find-function-C-source): Also look for gzipped source files.
* lisp/startup.el (normal-top-level):
Also recode emacs-source-directory.
* src/epaths.in (PATH_EMACS_SOURCE): New macro.
* src/lread.c: Include dosname.h, for IS_ABSOLUTE_FILE_NAME.
(syms_of_lread): New var emacs-source-directory.
2020-01-24 16:46:42 -08:00
Robert Pluim
9ba7abe243 Expand Cairo and HarfBuzz descriptions
* etc/NEWS:
* configure.ac: Expand description of Cairo and Harfbuzz
2020-01-24 12:04:50 +01:00
Robert Pluim
1ebe160577 Warn about XFT and about Cairo without HarfBuzz
* configure.ac: Warn about libXFT usage.  Warn about using Cairo
without HarfBuzz.

* etc/NEWS: Announce XFT and HarfBuzz warnings.
2020-01-24 10:46:00 +01:00
Paul Eggert
35a1a007bb Remove Gnulib putenv code
It’s not needed, since Emacs always uses the system putenv and all
platforms have putenv.  This improves on the fix for Bug#19874.
Suggested by Bruno Haible.
* admin/merge-gnulib (GNULIB_MODULES): Remove putenv.
* configure.ac: Remove workarounds for Gnulib putenv module.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/putenv.c, m4/putenv.m4: Remove.
2020-01-18 20:55:09 -08:00
Alan Third
1e291a05f3 Don't error on non-toolkit NS scrollbars (bug#37042)
* configure.ac (HAVE_NS): Don't error, but warn, on non-toolkit
scrollbars.
2020-01-18 15:35:17 +00:00
Stefan Kangas
576dfc8aa2 Remove unused ftx font backend driver
* src/ftxfont.c: Remove file.
* admin/notes/font-backend:
* configure.ac:
* src/Makefile.in:
* src/deps.mk (ftxfont.o):
* src/font.c (syms_of_font):
* src/font.h (top-level, font_property_index):
* src/xfns.c (Fx_create_frame, x_create_tip_frame): Remove unused ftx
font backend driver.  Thanks to Glenn Morris for pointing out that it
can be removed.  (Bug#34663)
2020-01-15 19:57:27 +01:00
Robert Pluim
88efc736f5 Default cairo to enabled
* configure.ac (USE_CAIRO): Default cairo to enabled.

* etc/NEWS: Announce the change to use cairo if found.
2020-01-14 11:19:28 +01:00