aboutsummaryrefslogtreecommitdiffstats
path: root/src/alloc.c
diff options
context:
space:
mode:
authorAurélien Aptel2015-11-16 00:47:04 +0100
committerTed Zlatanov2015-11-18 14:24:19 -0500
commit307e76c79979736c109cfa6de07b1567700231f3 (patch)
tree02105101ce7cad65e199c32cb902167687a73066 /src/alloc.c
parentf69cd6bfa114ea02f3d10ddb2fe809a26eafb9a4 (diff)
downloademacs-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.c4
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. */