Anonymous committed 1bc91af

Rebuilding VM requires make. To support rebuilding in place, the
original Makefile is supplied as Makefile-kj, and a README.bytecompile
added to explain the procedure (very brief, we assume you know what
you're doing!) in the list of files included in the binary package.

Comments (0)

Files changed (2)

 	vm-summary.elc vm-thread.elc vm-toolbar.elc vm-undo.elc vm-user.elc \
 	vm-vars.elc vm-virtual.elc vm-window.elc
-EXTRA_SOURCES = vm.elc vm-autoload.el vm-autoload.elc
+EXTRA_SOURCES = vm.elc vm-autoload.el vm-autoload.elc Makefile-kj \
+	README.bytecompile
 PRELOADS =-l ./vm-byteopts.el -l ./vm-version.el -l ./vm-message.el \
 	-l ./vm-macro.el -l ./vm-misc.el -l ./vm-vars.el


+Kyle sez:
+    Rebuild VM with make, always, or there will be trouble.  The
+    compiler has to know about every macro used in a Lisp source
+    file so that they can be expanded.  If the bytecode interpreter
+    encounters a macro at runtime, it will testily bark the exception
+    Invalid function: (macro . #<compiled-function (pos &optional buffer) "...(9)" [set-marker (make-marker) pos buffer] 4>)
+So, if you must edit and rebuild VM from the installed package, edit
+Makefile-kj and use `make -f Makefile-kj ...'.