pkgsrc/lang/scm/files/buildscm.sh

23 lines
1.3 KiB
Bash
Raw Normal View History

You can never have enough scheme interpreters. Initial import of scm-5d8 into the NetBSD Packages Collection. Provided in PR 22186 by David S., modified slighly by myself. Scm is a portable R5RS Scheme implementation written in C. * Support for SICP, R2RS, R3RS, and R5RS scheme code. * Is fully documented in TeXinfo form, allowing documentation to be generated in info, TeX, html, nroff, and troff formats. * Supports inexact real and complex numbers, 30 bit immediate integers and large precision integers. * Many Common Lisp functions: logand, logor, logxor, lognot, ash, logcount, integer-length, bit-extract, defmacro, macroexpand, macroexpand1, gentemp, defvar, force-output, software-type, get-decoded-time, get-internal-run-time, get-internal-real-time, delete-file, rename-file, copy-tree, acons, and eval. * Char-code-limit, most-positive-fixnum, most-negative-fixnum, and internal-time-units-per-second constants. *Features* and *load-pathname* variables. * Arrays and bit-vectors. String ports and software emulation ports. I/O extensions providing ANSI C and POSIX.1 facilities. * Interfaces to standard libraries * Available add-on packages including an interactive debugger, database, X-window graphics, BGI graphics, Motif, and Open-Windows packages. * A compiler (HOBBIT) and dynamic linking of compiled modules. * User definable responses to interrupts and errors, Process-syncronization primitives. Setable levels of monitoring and timing information printed interactively (the verbose function).
2003-10-04 22:31:23 +02:00
#! /bin/sh
# unix (unix) script created by SLIB/batch Thu Jul 17 21:20:04 2003
# ================ Write file with C defines
rm -f scmflags.h
2005-10-25 11:39:30 +02:00
echo '#define IMPLINIT "@PREFIX@/share/scm/Init5e1.scm"'>>scmflags.h
You can never have enough scheme interpreters. Initial import of scm-5d8 into the NetBSD Packages Collection. Provided in PR 22186 by David S., modified slighly by myself. Scm is a portable R5RS Scheme implementation written in C. * Support for SICP, R2RS, R3RS, and R5RS scheme code. * Is fully documented in TeXinfo form, allowing documentation to be generated in info, TeX, html, nroff, and troff formats. * Supports inexact real and complex numbers, 30 bit immediate integers and large precision integers. * Many Common Lisp functions: logand, logor, logxor, lognot, ash, logcount, integer-length, bit-extract, defmacro, macroexpand, macroexpand1, gentemp, defvar, force-output, software-type, get-decoded-time, get-internal-run-time, get-internal-real-time, delete-file, rename-file, copy-tree, acons, and eval. * Char-code-limit, most-positive-fixnum, most-negative-fixnum, and internal-time-units-per-second constants. *Features* and *load-pathname* variables. * Arrays and bit-vectors. String ports and software emulation ports. I/O extensions providing ANSI C and POSIX.1 facilities. * Interfaces to standard libraries * Available add-on packages including an interactive debugger, database, X-window graphics, BGI graphics, Motif, and Open-Windows packages. * A compiler (HOBBIT) and dynamic linking of compiled modules. * User definable responses to interrupts and errors, Process-syncronization primitives. Setable levels of monitoring and timing information printed interactively (the verbose function).
2003-10-04 22:31:23 +02:00
echo '#define INITS init_sc2();init_ramap();init_gsubr();init_ioext();init_posix();init_record();init_rgx();init_socket();init_unix();'>>scmflags.h
echo '#define COMPILED_INITS init_edline();'>>scmflags.h
echo '#define ARRAYS'>>scmflags.h
echo '#define BIGNUMS'>>scmflags.h
echo '#define CAUTIOUS'>>scmflags.h
echo '#define CHEAP_CONTINUATIONS'>>scmflags.h
echo '#define CAN_DUMP'>>scmflags.h
echo '#define ENGNOT'>>scmflags.h
echo '#define FLOATS'>>scmflags.h
echo '#define MACRO'>>scmflags.h
echo '#define CCLO'>>scmflags.h
echo '#define TICKS'>>scmflags.h
# ================ Compile C source files
2005-10-25 11:32:15 +02:00
@CC@ @CFLAGS@ -c -Wall sc2.c ramap.c dynl.c edline.c gsubr.c ioext.c posix.c record.c rgx.c socket.c unix.c continue.c scm.c scmmain.c findexec.c script.c time.c repl.c scl.c eval.c sys.c subr.c debug.c unif.c rope.c unexelf.c
You can never have enough scheme interpreters. Initial import of scm-5d8 into the NetBSD Packages Collection. Provided in PR 22186 by David S., modified slighly by myself. Scm is a portable R5RS Scheme implementation written in C. * Support for SICP, R2RS, R3RS, and R5RS scheme code. * Is fully documented in TeXinfo form, allowing documentation to be generated in info, TeX, html, nroff, and troff formats. * Supports inexact real and complex numbers, 30 bit immediate integers and large precision integers. * Many Common Lisp functions: logand, logor, logxor, lognot, ash, logcount, integer-length, bit-extract, defmacro, macroexpand, macroexpand1, gentemp, defvar, force-output, software-type, get-decoded-time, get-internal-run-time, get-internal-real-time, delete-file, rename-file, copy-tree, acons, and eval. * Char-code-limit, most-positive-fixnum, most-negative-fixnum, and internal-time-units-per-second constants. *Features* and *load-pathname* variables. * Arrays and bit-vectors. String ports and software emulation ports. I/O extensions providing ANSI C and POSIX.1 facilities. * Interfaces to standard libraries * Available add-on packages including an interactive debugger, database, X-window graphics, BGI graphics, Motif, and Open-Windows packages. * A compiler (HOBBIT) and dynamic linking of compiled modules. * User definable responses to interrupts and errors, Process-syncronization primitives. Setable levels of monitoring and timing information printed interactively (the verbose function).
2003-10-04 22:31:23 +02:00
# ================ Link C object files
mv -f scm scm~
2005-10-25 11:32:15 +02:00
@CC@ -o scm sc2.o ramap.o dynl.o edline.o gsubr.o ioext.o posix.o record.o rgx.o socket.o unix.o continue.o scm.o scmmain.o findexec.o script.o time.o repl.o scl.o eval.o sys.o subr.o debug.o unif.o rope.o unexelf.o -lm -ledit -ltermcap