mit-scheme.git
11 years agodist/make-src-files: Fix $plugin-config log file names.
Matt Birkholz [Tue, 15 Oct 2013 17:55:39 +0000 (10:55 -0700)]
dist/make-src-files: Fix $plugin-config log file names.

11 years agoRevert 13b5bca. Use the host's runtime, not a cross runtime.
Matt Birkholz [Tue, 15 Oct 2013 17:19:42 +0000 (10:19 -0700)]
Revert 13b5bca.  Use the host's runtime, not a cross runtime.

Revert 41c0070 and 5cf6bfc too, and the "training" in cref/make.scm
(for the compiler) and runtime.sf (for a cross runtime).

11 years agodist/make-src-files: Autoconf plugins (FFI wrappers).
Matt Birkholz [Tue, 15 Oct 2013 16:18:50 +0000 (09:18 -0700)]
dist/make-src-files: Autoconf plugins (FFI wrappers).

Fix a confusing error message too.

11 years agoffi: Add DESTDIR support.
Matt Birkholz [Tue, 15 Oct 2013 16:15:54 +0000 (09:15 -0700)]
ffi: Add DESTDIR support.

11 years agoFix LIAR/svm build to cross from 9.1.1.
Matt Birkholz [Sun, 13 Oct 2013 08:03:15 +0000 (01:03 -0700)]
Fix LIAR/svm build to cross from 9.1.1.

As for LIAR/C, do not cross compile host .bins containing sequence-3s.
Chuck them to STAGEX/ and re-syntax with cross runtime.  And syntax
compiler/base/crsend AFTER said chucking.

11 years agoMake compile-xml dependent on cref-star-parser.
Matt Birkholz [Sun, 13 Oct 2013 07:48:19 +0000 (00:48 -0700)]
Make compile-xml dependent on cref-star-parser.

xml.pkg wants (global-definitions "../star-parser/parser") else
;Warning: Could not find global definitions: ...

11 years agoFix LIAR/C build to cross from 9.1.1.
Matt Birkholz [Sun, 13 Oct 2013 07:44:16 +0000 (00:44 -0700)]
Fix LIAR/C build to cross from 9.1.1.

Toss the .bins generated by the host runtime (which include
sequence-3).  Only cross-compile .bins generated by the cross runtime.

11 years agoMore FFI cleanups: no need to include microcode/achost.ac.
Matt Birkholz [Sun, 13 Oct 2013 02:58:57 +0000 (19:58 -0700)]
More FFI cleanups: no need to include microcode/achost.ac.

11 years agoFix new build to cross from 9.1.1.
Matt Birkholz [Sun, 13 Oct 2013 01:17:44 +0000 (18:17 -0700)]
Fix new build to cross from 9.1.1.

On a 9.1.1 host, the new build dies while compiling the compiler.

    ;  Generating SCode for file: "fggen/canon.scm" => "fggen/canon.bin"...
    ;MICROCODE-TYPE: Unknown name sequence

The usual remedies did not suffice.  In fact now the temporary code in
cref/make.scm is not needed.  The compiler is compiled with a cross
runtime that provides the necessary patch via its utabs.scm, where
access to type-aliases and returns-aliases is easy, though
insufficient to train the host.  9.1.1 still needs the training in
runtime.sf.

Unlike a cross compile, a cross runtime was not used by this build(?).
Use a new compile-cross-runtime target and --fasl make.com to make
tools/syntaxer.com.  Make syntax-cross-cref and syntax-cross-sf
dependent on syntax-cross-runtime for its runtime.pkd (pinching off a
little parallelism, but allowing them to proceed while the runtime
compiles).  Did not try to syntax anything but the new compiler with
the new star-parser.

11 years agoEliminate compile-system.
Matt Birkholz [Wed, 9 Oct 2013 18:59:26 +0000 (11:59 -0700)]
Eliminate compile-system.

11 years agoAutomatically clean tree and build tools if necessary.
Taylor R Campbell [Tue, 8 Oct 2013 02:56:57 +0000 (02:56 +0000)]
Automatically clean tree and build tools if necessary.

11 years agoTurn some phony rules into explicit file rules to reduce rebuilds. [retry]
Taylor R Campbell [Tue, 8 Oct 2013 02:55:57 +0000 (02:55 +0000)]
Turn some phony rules into explicit file rules to reduce rebuilds.  [retry]

Unfinished conversion; some of the explicit file rules still depend
on phony rules.  Finishing this is left as an exercise for the
reader.

11 years agoRevert "Turn some phony rules into explicit file rules to reduce rebuilds."
Taylor R Campbell [Tue, 8 Oct 2013 02:54:21 +0000 (02:54 +0000)]
Revert "Turn some phony rules into explicit file rules to reduce rebuilds."

This reverts commit 54e7f433ab16f65cd12779b7a672edf713c72427.

That commit wasn't supposed to revert an earlier change to SVM1; not
sure how that snuck in there.

11 years agoTurn some phony rules into explicit file rules to reduce rebuilds.
Taylor R Campbell [Mon, 7 Oct 2013 22:57:53 +0000 (22:57 +0000)]
Turn some phony rules into explicit file rules to reduce rebuilds.

Unfinished conversion; some of the explicit file rules still depend
on phony rules.  Finishing this is left as an exercise for the
reader.

11 years agoReduce SVM1 address decoding indirection.
Taylor R Campbell [Mon, 7 Oct 2013 22:35:16 +0000 (22:35 +0000)]
Reduce SVM1 address decoding indirection.

This must have hammered horrendously on the CPU's branch target
predictor.  No measurements yet but I'm sure SVM1 should be a lot
faster now.

11 years agoTweak svm1-interp a little.
Taylor R Campbell [Mon, 7 Oct 2013 22:07:19 +0000 (22:07 +0000)]
Tweak svm1-interp a little.

- Mark several routines inline.
- Add branch predictions.
- Fail gracefully, don't abort, on illegal instructions.

11 years agoAdd a few more file types for save/restore targets.
Taylor R Campbell [Mon, 7 Oct 2013 21:07:26 +0000 (21:07 +0000)]
Add a few more file types for save/restore targets.

11 years agoIn COMPILE-SYSTEM, load the bin if cross-compiling too.
Taylor R Campbell [Mon, 7 Oct 2013 20:54:45 +0000 (20:54 +0000)]
In COMPILE-SYSTEM, load the bin if cross-compiling too.

XXX COMPILE-SYSTEM is completely wrong; it needs to be eliminated in
favour of a principled way to identify macro dependencies, like in
Scheme48 and Racket.

11 years agoCall it `saved-objects', not `obj', to avoid confusing BSD make.
Taylor R Campbell [Mon, 7 Oct 2013 20:52:57 +0000 (20:52 +0000)]
Call it `saved-objects', not `obj', to avoid confusing BSD make.

11 years agoDon't list compiler twice in SUBDIRS.
Taylor R Campbell [Mon, 7 Oct 2013 20:46:08 +0000 (20:46 +0000)]
Don't list compiler twice in SUBDIRS.

11 years agoLoad ffimacro.bin in win32.sf, not ffimacro.
Taylor R Campbell [Mon, 7 Oct 2013 20:36:55 +0000 (20:36 +0000)]
Load ffimacro.bin in win32.sf, not ffimacro.

Avoids accidentally loading cross-compiled gobbledegook which the
toolchain barfs on.

11 years agoExplain what the `cross-target' target does.
Taylor R Campbell [Mon, 7 Oct 2013 19:16:33 +0000 (19:16 +0000)]
Explain what the `cross-target' target does.

11 years agotoolchain target should really depend on tools/syntaxer.com too.
Taylor R Campbell [Mon, 7 Oct 2013 18:43:19 +0000 (18:43 +0000)]
toolchain target should really depend on tools/syntaxer.com too.

11 years agoRemove unfinished kludge to build IMAIL with LIARC.
Taylor R Campbell [Mon, 7 Oct 2013 18:37:10 +0000 (18:37 +0000)]
Remove unfinished kludge to build IMAIL with LIARC.

11 years agoRecompile edwin/edwin.bld only if necessary.
Taylor R Campbell [Mon, 7 Oct 2013 18:32:32 +0000 (18:32 +0000)]
Recompile edwin/edwin.bld only if necessary.

11 years agoRecompile *.pkd files for liarc only if necessary.
Taylor R Campbell [Mon, 7 Oct 2013 17:30:55 +0000 (17:30 +0000)]
Recompile *.pkd files for liarc only if necessary.

11 years agoFasload errors should fail gracefully, not terminate Scheme.
Taylor R Campbell [Mon, 7 Oct 2013 17:30:11 +0000 (17:30 +0000)]
Fasload errors should fail gracefully, not terminate Scheme.

11 years agoLots of changes toward making liarc build use new structure.
Taylor R Campbell [Mon, 7 Oct 2013 17:17:47 +0000 (17:17 +0000)]
Lots of changes toward making liarc build use new structure.

Doesn't fully work yet, but it's progress!

Old build system is still all there; you must use `make all-native'
to try the new one.

11 years agoUse $@ and $< for liarc .c.o rule, not $*.o and $*.c.
Taylor R Campbell [Mon, 7 Oct 2013 17:14:23 +0000 (17:14 +0000)]
Use $@ and $< for liarc .c.o rule, not $*.o and $*.c.

Otherwise, it won't work in subdirectories.

11 years agoUpdate links created by Setup.sh to reflect installed lib directory.
Taylor R Campbell [Mon, 7 Oct 2013 14:25:20 +0000 (14:25 +0000)]
Update links created by Setup.sh to reflect installed lib directory.

11 years agoCompile IMAIL in --batch-mode.
Taylor R Campbell [Mon, 7 Oct 2013 02:26:29 +0000 (02:26 +0000)]
Compile IMAIL in --batch-mode.

11 years agoOOPS! Don't forget to build compiler/rtlopt...
Taylor R Campbell [Sun, 6 Oct 2013 23:07:37 +0000 (23:07 +0000)]
OOPS!  Don't forget to build compiler/rtlopt...

11 years agoDependents of cross-target must be conditionalized on @IF_CROSS@.
Taylor R Campbell [Sun, 6 Oct 2013 22:23:48 +0000 (22:23 +0000)]
Dependents of cross-target must be conditionalized on @IF_CROSS@.

11 years agoFirst whack at making new build system work for liarc.
Taylor R Campbell [Sun, 6 Oct 2013 22:22:09 +0000 (22:22 +0000)]
First whack at making new build system work for liarc.

11 years agoRename cross-barrier/cross-end to cross-host/cross-target.
Taylor R Campbell [Sun, 6 Oct 2013 22:21:43 +0000 (22:21 +0000)]
Rename cross-barrier/cross-end to cross-host/cross-target.

11 years agoAdd cast to avoid negative arguments to isalnum.
Taylor R Campbell [Sun, 6 Oct 2013 22:21:13 +0000 (22:21 +0000)]
Add cast to avoid negative arguments to isalnum.

11 years agocompile-imail needs cross-end, not just cross-barrier.
Taylor R Campbell [Sun, 6 Oct 2013 21:46:08 +0000 (21:46 +0000)]
compile-imail needs cross-end, not just cross-barrier.

11 years agoJust cast to long; don't check whether %td will work for ptrdiff_t.
Taylor R Campbell [Sun, 6 Oct 2013 21:14:04 +0000 (21:14 +0000)]
Just cast to long; don't check whether %td will work for ptrdiff_t.

11 years agoDon't reset AS_FLAGS and M4_FLAGS to empty in microcode/configure.
Taylor R Campbell [Sun, 6 Oct 2013 18:15:08 +0000 (18:15 +0000)]
Don't reset AS_FLAGS and M4_FLAGS to empty in microcode/configure.

11 years agoUse a compile-test, not a run-test, for __ELF__.
Taylor R Campbell [Sun, 6 Oct 2013 18:14:53 +0000 (18:14 +0000)]
Use a compile-test, not a run-test, for __ELF__.

11 years agoUse CAREFUL-OBJECT-DATUM in i386 MULTIPLY-OBJECT-BY-2.
Taylor R Campbell [Sun, 6 Oct 2013 18:14:28 +0000 (18:14 +0000)]
Use CAREFUL-OBJECT-DATUM in i386 MULTIPLY-OBJECT-BY-2.

11 years agoMerge branch 'make-cross-tools'
Taylor R Campbell [Sun, 6 Oct 2013 18:11:00 +0000 (18:11 +0000)]
Merge branch 'make-cross-tools'

11 years agoMake the `save' makefile targets fail noisily.
Taylor R Campbell [Sun, 6 Oct 2013 18:10:33 +0000 (18:10 +0000)]
Make the `save' makefile targets fail noisily.

11 years agoFix missing close paren in Makefile.in.
Taylor R Campbell [Sun, 6 Oct 2013 16:17:19 +0000 (16:17 +0000)]
Fix missing close paren in Makefile.in.

11 years agoCall it the toolchain, not the bootstrap toolchain.
Taylor R Campbell [Sun, 6 Oct 2013 16:07:06 +0000 (16:07 +0000)]
Call it the toolchain, not the bootstrap toolchain.

Rename Makefile.boot -> Makefile.tools, boot/ -> tools/.

`Bootstrap toolchain' sounds like something that is useful only to
bootstrap MIT Scheme, when in fact the object of the exercise is to
make it a general-purpose cross-compilation toolchain application
that you can use to cross-compile anything.

11 years agoTweak native rules so they work for svm too.
Taylor R Campbell [Sat, 5 Oct 2013 21:55:06 +0000 (21:55 +0000)]
Tweak native rules so they work for svm too.

11 years agoRename @CROSS@ to @IF_CROSS@.
Taylor R Campbell [Sat, 5 Oct 2013 21:54:52 +0000 (21:54 +0000)]
Rename @CROSS@ to @IF_CROSS@.

11 years agoLoad crsend.scm into the right environment.
Taylor R Campbell [Sat, 5 Oct 2013 21:42:03 +0000 (21:42 +0000)]
Load crsend.scm into the right environment.

11 years agoRemove Makefile.boot on distclean too.
Taylor R Campbell [Sat, 5 Oct 2013 20:53:11 +0000 (20:53 +0000)]
Remove Makefile.boot on distclean too.

11 years agoAvoid CBF in win32.sf.
Taylor R Campbell [Sat, 5 Oct 2013 20:33:00 +0000 (20:33 +0000)]
Avoid CBF in win32.sf.

11 years agoUse CREF/GENERATE-TRIVIAL-CONSTRUCTOR for makefile cref-* rules.
Taylor R Campbell [Sat, 5 Oct 2013 20:28:33 +0000 (20:28 +0000)]
Use CREF/GENERATE-TRIVIAL-CONSTRUCTOR for makefile cref-* rules.

That way cref-foo need not wait for syntax-foo to complete, which
substantially increases parallelism of the build.

11 years agoMake cross-compilation a configure-time option.
Taylor R Campbell [Sat, 5 Oct 2013 19:59:04 +0000 (19:59 +0000)]
Make cross-compilation a configure-time option.

Eventually I would like to get rid of non-cross-compilation, but it's
probably a good idea to keep it for now.

11 years agoMake every build a cross-build.
Taylor R Campbell [Sat, 5 Oct 2013 19:03:49 +0000 (19:03 +0000)]
Make every build a cross-build.

11 years agoParallelize compiling compiler subdirectories.
Taylor R Campbell [Sat, 5 Oct 2013 19:02:13 +0000 (19:02 +0000)]
Parallelize compiling compiler subdirectories.

All the compiler.cbfs are the same except for the machine directory,
which is available as a symlink.

11 years agoSeparate tools from target in the build.
Taylor R Campbell [Sat, 5 Oct 2013 18:06:59 +0000 (18:06 +0000)]
Separate tools from target in the build.

To build a native Scheme, instead of just running `make', you must
first run

make -f Makefile.boot

to get a bootstrap toolchain in boot/, every time you want to use a
new compiler or cref or sf or star-parser to compile Scheme.

11 years agoWrite files atomically in the microcode makefile.
Taylor R Campbell [Mon, 30 Sep 2013 22:56:19 +0000 (22:56 +0000)]
Write files atomically in the microcode makefile.

Use a temporary file and rename it over the permanent one only if the
command succeeded.  That way, we don't leave truncated files around
on failure.

11 years agoUse <ucontext.h>, not <sys/ucontext.h>, on Linux.
Taylor R Campbell [Mon, 30 Sep 2013 20:07:42 +0000 (20:07 +0000)]
Use <ucontext.h>, not <sys/ucontext.h>, on Linux.

11 years agoLinux defines NGREG in <sys/ucontext.h>, which <signal.h> may not get.
Taylor R Campbell [Mon, 30 Sep 2013 18:43:29 +0000 (18:43 +0000)]
Linux defines NGREG in <sys/ucontext.h>, which <signal.h> may not get.

11 years agoUse <poll.h>, not <sys/poll.h>, per POSIX.
Taylor R Campbell [Mon, 30 Sep 2013 17:48:29 +0000 (17:48 +0000)]
Use <poll.h>, not <sys/poll.h>, per POSIX.

11 years agosynchronous-process-wait: (copy-output) can be #f
Matt Birkholz [Tue, 17 Sep 2013 17:15:23 +0000 (10:15 -0700)]
synchronous-process-wait: (copy-output) can be #f

Fix intermittent error: wrong-type-argument #f to integer-zero?.

11 years agoffi/build.scm.in: Simplify commandline echoing.
Matt Birkholz [Tue, 17 Sep 2013 17:14:32 +0000 (10:14 -0700)]
ffi/build.scm.in: Simplify commandline echoing.

11 years agomd5/Makefile.in, mhash/Makefile.in: missing line continuation chars
Matt Birkholz [Tue, 17 Sep 2013 04:27:23 +0000 (21:27 -0700)]
md5/Makefile.in, mhash/Makefile.in: missing line continuation chars

11 years agoffi: Fix install-shim's installation directory.
Matt Birkholz [Tue, 17 Sep 2013 03:56:47 +0000 (20:56 -0700)]
ffi: Fix install-shim's installation directory.

Write to the first directory on the library-directory-path.

11 years agogdbm/Makefile: missing close paren.
Matt Birkholz [Tue, 17 Sep 2013 01:00:41 +0000 (18:00 -0700)]
gdbm/Makefile: missing close paren.

11 years agoffi: install-load-option needs file list, not install-shim.
Matt Birkholz [Mon, 16 Sep 2013 23:55:05 +0000 (16:55 -0700)]
ffi: install-load-option needs file list, not install-shim.

11 years agostandard-system-loader: typo
Matt Birkholz [Mon, 16 Sep 2013 19:16:32 +0000 (12:16 -0700)]
standard-system-loader: typo

11 years agoffi: Remove old generate-shim export.
Matt Birkholz [Sun, 15 Sep 2013 06:49:04 +0000 (23:49 -0700)]
ffi: Remove old generate-shim export.

11 years agoAdd install-load-option.
Matt Birkholz [Sun, 15 Sep 2013 03:48:26 +0000 (20:48 -0700)]
Add install-load-option.

Use install-load-option in the four FFI wrappers' Makefiles (and the
GNU convention of lowercasing internal makefile variables).  Delete
corresponding instruction from their READMEs.  Presume there is an
optiondb.scm in the system library path and that its directory is
writable by the installer.

11 years agoAdd xstring-byte-ref and xstring-byte-set!.
Matt Birkholz [Thu, 12 Sep 2013 19:07:57 +0000 (12:07 -0700)]
Add xstring-byte-ref and xstring-byte-set!.

Made external-string-ref and external-string-set! integrable.

11 years agotests/ffi/: Symlinks in src/lib/ are no longer necessary.
Matt Birkholz [Thu, 12 Sep 2013 17:05:25 +0000 (10:05 -0700)]
tests/ffi/: Symlinks in src/lib/ are no longer necessary.

11 years agochannel-read/write: apply channel-blocking? to a closed channel NOT.
Matt Birkholz [Thu, 12 Sep 2013 16:45:50 +0000 (09:45 -0700)]
channel-read/write: apply channel-blocking? to a closed channel NOT.

11 years agoffi-test: Catch up with the new (old) generate-shim behavior.
Matt Birkholz [Tue, 10 Sep 2013 00:11:50 +0000 (17:11 -0700)]
ffi-test: Catch up with the new (old) generate-shim behavior.

Add 4 tedious little rules to the Makefile and copyright notices.
Make the test definition conditional on the wrapper build.

11 years agoffi: generate-shim no longer produces -const.bin.
Matt Birkholz [Mon, 9 Sep 2013 19:57:16 +0000 (12:57 -0700)]
ffi: generate-shim no longer produces -const.bin.

Some -const.c files require library-specific cc and ld flags, so
generate-shim cannot work the whole process.  Re-introduced the "4
tedious little rules" that compile, link and execute the -const
program, and fasdump the resulting -const.scm.

11 years agomhash: A separately buildable FFI wrapper.
Matt Birkholz [Sun, 8 Sep 2013 19:34:54 +0000 (12:34 -0700)]
mhash: A separately buildable FFI wrapper.

11 years agogdbm: Add event:after-restart receiver reset-open-gdbfs.
Matt Birkholz [Sun, 8 Sep 2013 19:32:30 +0000 (12:32 -0700)]
gdbm: Add event:after-restart receiver reset-open-gdbfs.

11 years agoblowfish,gdbm,md5: Expand on note about importing bindings.
Matt Birkholz [Sun, 8 Sep 2013 19:30:32 +0000 (12:30 -0700)]
blowfish,gdbm,md5: Expand on note about importing bindings.

11 years agomd5: A separately buildable FFI wrapper.
Matt Birkholz [Sun, 8 Sep 2013 01:46:56 +0000 (18:46 -0700)]
md5: A separately buildable FFI wrapper.

11 years agoblowfish: Random cleanup. Use guarantee-substring.
Matt Birkholz [Sat, 7 Sep 2013 23:56:48 +0000 (16:56 -0700)]
blowfish: Random cleanup.  Use guarantee-substring.

11 years agosrc/etc/std-makefile-prefix: Punt SHIM variables.
Matt Birkholz [Sat, 7 Sep 2013 23:50:44 +0000 (16:50 -0700)]
src/etc/std-makefile-prefix: Punt SHIM variables.

FFIs are no longer built inside the core build tree.

11 years agoinstall-shim: Create directory in first directory of library path.
Matt Birkholz [Sat, 7 Sep 2013 23:30:18 +0000 (16:30 -0700)]
install-shim: Create directory in first directory of library path.

Also, locate the directory for the -I CFLAG by searching the library
path for mit-scheme.h.

11 years agowith-system-library-directories: prepend to library directory path.
Matt Birkholz [Sat, 7 Sep 2013 22:59:44 +0000 (15:59 -0700)]
with-system-library-directories: prepend to library directory path.

This is for test scripts that want a new FFI shim to shadow an
installed shim, and requires canonicalize-debug-info-pathname to be
fixed to deal -- to SEARCH the library-directory-path.  At least, for
relative pathnames with at least one directory name, it now searches
the directory path for that name.

11 years agoblowfish: Typo in blowfish.cdecls.
Matt Birkholz [Sat, 7 Sep 2013 04:36:17 +0000 (21:36 -0700)]
blowfish: Typo in blowfish.cdecls.

11 years agosrc/Makefile.in: Punt $(FFIS) and build-ffis target.
Matt Birkholz [Sat, 7 Sep 2013 04:33:06 +0000 (21:33 -0700)]
src/Makefile.in: Punt $(FFIS) and build-ffis target.

Moved the test wrapper to tests/ffi/ though it is still commented out
of tests/check.scm.

11 years agogdbm: Update README. Fix test. Nomenclature.
Matt Birkholz [Fri, 6 Sep 2013 23:55:50 +0000 (16:55 -0700)]
gdbm: Update README.  Fix test.  Nomenclature.

Add installation instructions from the previous commit message.  Test
with the newly built shim (not an installed shim).  Call the Scheme
code that interfaces to C "the wrapper", as in blowfish/README.

11 years agoblowfish: A separately buildable FFI wrapper.
Matt Birkholz [Fri, 6 Sep 2013 23:52:14 +0000 (16:52 -0700)]
blowfish: A separately buildable FFI wrapper.

11 years agogdbm: Add generate-shim. Drop compile-bundle and install-bundle.
Matt Birkholz [Thu, 5 Sep 2013 17:19:56 +0000 (10:19 -0700)]
gdbm: Add generate-shim.  Drop compile-bundle and install-bundle.

LIAR/C's bundles cannot be built outside the core build tree.  So
compile-bundle is just e.g. compile.scm, and install-bundle is merged
with install-shim.  Generate-shim actually handles the whole process
from *.cdecl's to -shim.c and -const.bin, eliminating 4 tedious little
rules from every wrapper's Makefile.

11 years agogdbm: A separately buildable FFI wrapper.
Matt Birkholz [Sun, 1 Sep 2013 01:12:05 +0000 (18:12 -0700)]
gdbm: A separately buildable FFI wrapper.

This is a drop-in replacement for the gdbm microcode module and
runtime/gdbm.scm.  Run `make install' and install the following in
your optiondb.scm.

(define-load-option 'GDBM2 (guarded-system-loader '(gdbm) "gdbm"))

You will need to call it GDBM2 while GDBM refers to the original
microcode module wrapper.

11 years agoffi/build.scm.in: Support building shims separately.
Matt Birkholz [Sun, 1 Sep 2013 01:10:40 +0000 (18:10 -0700)]
ffi/build.scm.in: Support building shims separately.

A handful of new top-level bindings make a portickle Makefile.

gdbm-shim.so: gdbm-shim.o gdbm-adapter.o
echo "(link-shim)" | mit-scheme --batch-mode -- -o $@ $^ -lgdbm

The new procedures (generate-shim, compile-shim, link-shim and
install-shim) autoload ffi/build.scm, which captured the build
configuration of the machine.  Compile-bundle and install-bundle are
also provided.

11 years agoffi: Search the library path for shims and their C types/const.
Matt Birkholz [Sat, 31 Aug 2013 22:18:27 +0000 (15:18 -0700)]
ffi: Search the library path for shims and their C types/const.

11 years agoInstall all .pkd, not just <various>-unx.pkd.
Matt Birkholz [Sat, 31 Aug 2013 22:13:48 +0000 (15:13 -0700)]
Install all .pkd, not just <various>-unx.pkd.

11 years agocref: (package-set-pathname "dir/") => "dir/dir-OS.pkd"
Matt Birkholz [Sat, 31 Aug 2013 22:10:22 +0000 (15:10 -0700)]
cref: (package-set-pathname "dir/") => "dir/dir-OS.pkd"

11 years agocref: (global-definitions symbol) looks in library path.
Matt Birkholz [Sat, 31 Aug 2013 22:05:40 +0000 (15:05 -0700)]
cref: (global-definitions symbol) looks in library path.

(global-definitions "string") is still relative to the .pkg file's
directory.

11 years agoruntime/unxpth: Remove ./ when simplifying.
Matt Birkholz [Sat, 31 Aug 2013 21:59:26 +0000 (14:59 -0700)]
runtime/unxpth: Remove ./ when simplifying.

11 years agoCapitalize word after `Caution:'.
Taylor R Campbell [Fri, 30 Aug 2013 15:52:18 +0000 (15:52 +0000)]
Capitalize word after `Caution:'.

11 years agotexinfo strong note
Barak A. Pearlmutter [Mon, 12 Aug 2013 13:22:26 +0000 (15:22 +0200)]
texinfo strong note

Mollify makeinfo with regard to this issue:

$ makeinfo --output=mit-scheme-user.info user.texinfo
user.texinfo:1552: warning: @strong{Note...} produces a spurious cross-reference in Info; reword to avoid that.

The relevant portion of the manual states:

    Caution: Do not use `@strong' with the word `Note'; Info will
    mistake the combination for a cross reference.  (It's usually
    redundant, anyway.)  Use a phrase such as *Please notice* or
    *Caution* instead, or ...

11 years agoUse `texi2dvi --pdf', not `texi2pdf'.
Taylor R Campbell [Fri, 30 Aug 2013 15:45:21 +0000 (15:45 +0000)]
Use `texi2dvi --pdf', not `texi2pdf'.

No functional difference, but texi2pdf is a newer utility not found
in older versions of GNU Texinfo that are still prevalent.

11 years agoFix missing * in one definition of OS_nanotime_since_utc_epoch.
Taylor R Campbell [Fri, 30 Aug 2013 15:32:10 +0000 (15:32 +0000)]
Fix missing * in one definition of OS_nanotime_since_utc_epoch.

From Igor Pashev.

11 years agoMake `news-select-buffer' select in other window by default.
Taylor R Campbell [Fri, 30 Aug 2013 15:30:20 +0000 (15:30 +0000)]
Make `news-select-buffer' select in other window by default.

From Rich Loveland.

11 years agoShow procedure name too in Edwin `show-parameter-list' command.
Taylor R Campbell [Fri, 30 Aug 2013 15:27:12 +0000 (15:27 +0000)]
Show procedure name too in Edwin `show-parameter-list' command.

From Rich Loveland.

11 years agosvm: Add lost flonum-pred-2-args rule.
Matt Birkholz [Sat, 24 Aug 2013 22:03:06 +0000 (15:03 -0700)]
svm: Add lost flonum-pred-2-args rule.

The "new" rule escaped the copying from i386/rulflo.scm(?).  Also
added symlink src/lib/compiler, useful when debugging a broken build.