summaryrefslogtreecommitdiff
path: root/src/lisp.h
diff options
context:
space:
mode:
authorAurélien Aptel <aurelien.aptel@gmail.com>2015-11-16 00:47:04 +0100
committerTed Zlatanov <tzz@lifelogs.com>2015-11-18 14:24:19 -0500
commit307e76c79979736c109cfa6de07b1567700231f3 (patch)
tree02105101ce7cad65e199c32cb902167687a73066 /src/lisp.h
parentf69cd6bfa114ea02f3d10ddb2fe809a26eafb9a4 (diff)
downloademacs-307e76c79979736c109cfa6de07b1567700231f3.tar.gz
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/lisp.h')
-rw-r--r--src/lisp.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 02c19690adf..3b6ea76943d 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -3916,6 +3916,10 @@ extern bool let_shadows_global_binding_p (Lisp_Object symbol);
/* Defined in alloc.c. */
extern Lisp_Object make_user_ptr (void (*finalizer) (void*), void *p);
+/* Defined in module.c. */
+extern void module_init (void);
+extern void mark_modules (void);
+extern void syms_of_module (void);
#endif
/* Defined in editfns.c. */