diff options
| author | Aurélien Aptel | 2015-11-16 00:47:04 +0100 |
|---|---|---|
| committer | Ted Zlatanov | 2015-11-18 14:24:19 -0500 |
| commit | 307e76c79979736c109cfa6de07b1567700231f3 (patch) | |
| tree | 02105101ce7cad65e199c32cb902167687a73066 /src/alloc.c | |
| parent | f69cd6bfa114ea02f3d10ddb2fe809a26eafb9a4 (diff) | |
| download | emacs-307e76c79979736c109cfa6de07b1567700231f3.tar.gz emacs-307e76c79979736c109cfa6de07b1567700231f3.zip | |
Add dynamic module module support
* configure.ac: Add '--with-modules' option. Conditionally add
dynlib.o and module.o to the list of objects. Add any system
specific flags to the linker flags to support dynamic libraries.
* m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
attributes.
* src/Makefile.in: Conditionally add module objects and linker flags.
* src/alloc.c (garbage_collect_1): protect module local values from
GC.
* src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
* src/emacs_module.h: New header file included by modules. Public
module API.
* src/module.c: New module implementation file.
Co-authored-by: Philipp Stephani <phst@google.com>
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/alloc.c b/src/alloc.c index 48ce3f120f5..53f974533a8 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -5574,6 +5574,10 @@ garbage_collect_1 (void *end) | |||
| 5574 | mark_fringe_data (); | 5574 | mark_fringe_data (); |
| 5575 | #endif | 5575 | #endif |
| 5576 | 5576 | ||
| 5577 | #ifdef HAVE_MODULES | ||
| 5578 | mark_modules (); | ||
| 5579 | #endif | ||
| 5580 | |||
| 5577 | /* Everything is now marked, except for the data in font caches, | 5581 | /* Everything is now marked, except for the data in font caches, |
| 5578 | undo lists, and finalizers. The first two are compacted by | 5582 | undo lists, and finalizers. The first two are compacted by |
| 5579 | removing an items which aren't reachable otherwise. */ | 5583 | removing an items which aren't reachable otherwise. */ |