XEmacs 21.2.40 "Persephone".
authortomo <tomo>
Tue, 14 Aug 2001 15:06:24 +0000 (15:06 +0000)
committertomo <tomo>
Tue, 14 Aug 2001 15:06:24 +0000 (15:06 +0000)
info/emodules.info

index 2fc6147..c527ed0 100644 (file)
@@ -252,7 +252,14 @@ place-holder, not an actual function name.
      `DEFVAR_LISP()', `DEFVAR_BOOL()' etc, and its purpose is to
      declare and initialize all and any variables that your module
      defines.  They syntax for declaring variables is identical to the
      `DEFVAR_LISP()', `DEFVAR_BOOL()' etc, and its purpose is to
      declare and initialize all and any variables that your module
      defines.  They syntax for declaring variables is identical to the
-     syntax used for all internal XEmacs source code.
+     syntax used for all internal XEmacs source code.  If the module is
+     intended to be usable statically linked into XEmacs, the actions
+     of this function are severely restricted.  *Note General Coding
+     Rules: (internals)General Coding Rules.  Also see the comments in
+     `src/emacs.c' (`main_1').  Modules which perform initializations
+     not permitted by these rules will probably work, but dual-use
+     (dynamic loading and static linking) modules will require very
+     careful, and possibly fragile, coding.
 
 `modules_of_module'
      This optional function should be used to load in any modules which
 
 `modules_of_module'
      This optional function should be used to load in any modules which
@@ -553,7 +560,7 @@ Link Mode
    Once all of your source code files have been compiled (including the
 generated init file) you need to link them all together to create the
 loadable module.  To do this, you invoke `ellcc' in link mode, by
    Once all of your source code files have been compiled (including the
 generated init file) you need to link them all together to create the
 loadable module.  To do this, you invoke `ellcc' in link mode, by
-passing the `--mode-link' option.  You need to specify the final output
+passing the `--mode=link' option.  You need to specify the final output
 file using the `--mod-output=NAME' option, but other than that all
 other arguments are passed on directly to the system compiler or
 linker, along with any other required arguments to create the loadable
 file using the `--mod-output=NAME' option, but other than that all
 other arguments are passed on directly to the system compiler or
 linker, along with any other required arguments to create the loadable
@@ -935,18 +942,18 @@ Node: Introduction\7f2883
 Node: Anatomy of a Module\7f7391
 Node: Required Header File\7f8205
 Node: Required Functions\7f10124
 Node: Anatomy of a Module\7f7391
 Node: Required Header File\7f8205
 Node: Required Functions\7f10124
-Node: Required Variables\7f12371
-Node: Loading other Modules\7f15057
-Node: Using ellcc\7f17114
-Node: Compile Mode\7f18908
-Node: Initialization Mode\7f20276
-Node: Link Mode\7f25310
-Node: Other ellcc options\7f26455
-Node: Environment Variables\7f29034
-Node: Defining Functions\7f30725
-Node: Using DEFUN\7f32736
-Node: Declaring Functions\7f34447
-Node: Defining Variables\7f35790
-Node: Index\7f38033
+Node: Required Variables\7f12848
+Node: Loading other Modules\7f15534
+Node: Using ellcc\7f17591
+Node: Compile Mode\7f19385
+Node: Initialization Mode\7f20753
+Node: Link Mode\7f25787
+Node: Other ellcc options\7f26932
+Node: Environment Variables\7f29511
+Node: Defining Functions\7f31202
+Node: Using DEFUN\7f33213
+Node: Declaring Functions\7f34924
+Node: Defining Variables\7f36267
+Node: Index\7f38510
 \1f
 End Tag Table
 \1f
 End Tag Table