Remove expired ports:
2014-03-18 databases/ludia: Broken since June 2013 2014-03-18 lang/schemetoc: Broken since July 2013
This commit is contained in:
parent
96af702aad
commit
b8220e44f1
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=348584
34 changed files with 2 additions and 3071 deletions
2
MOVED
2
MOVED
|
@ -5713,3 +5713,5 @@ multimedia/linux-huludesktop||2014-03-14|Removed
|
|||
multimedia/linux_v4l2wrapper-kmod||2014-03-16|Has expired: Included now in all supported FreeBSD versions
|
||||
devel/sgl||2014-03-16|Has expired: S/W never progressed beyond incomplete graduate project; library was never properly built - not worth fixing
|
||||
palm/jpilot-db||2014-03-16|Has expired
|
||||
databases/ludia||2014-03-18|Has expired: Broken since June 2013
|
||||
lang/schemetoc||2014-03-18|Has expired: Broken since July 2013
|
||||
|
|
|
@ -187,7 +187,6 @@
|
|||
SUBDIR += luasql-mysql
|
||||
SUBDIR += luasql-postgres
|
||||
SUBDIR += luasql-sqlite3
|
||||
SUBDIR += ludia
|
||||
SUBDIR += mantis
|
||||
SUBDIR += mariadb-client
|
||||
SUBDIR += mariadb-scripts
|
||||
|
|
|
@ -1,34 +0,0 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= ludia
|
||||
PORTVERSION= 1.5.2
|
||||
CATEGORIES= databases
|
||||
MASTER_SITES= SFJP
|
||||
MASTER_SITE_SUBDIR= ludia/38430
|
||||
|
||||
MAINTAINER= kuriyama@FreeBSD.org
|
||||
COMMENT= PostgreSQL extension for full-text search indexing
|
||||
|
||||
BUILD_DEPENDS= senna-cfg:${PORTSDIR}/textproc/senna
|
||||
RUN_DEPENDS= senna-cfg:${PORTSDIR}/textproc/senna
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
USE_AUTOTOOLS= libtool
|
||||
USE_PGSQL= server
|
||||
# WANT_PGSQL_VER= 83
|
||||
|
||||
BROKEN= Does not work with postgresql-9.0 or postgresql-8.4
|
||||
DEPRECATED= Broken since June 2013
|
||||
EXPIRATION_DATE=2014-03-18
|
||||
|
||||
# let configure find postgres stuff in non-standard places
|
||||
CONFIGURE_ARGS+=--with-pgconfigdir=${LOCALBASE}/bin \
|
||||
--with-pgbindir=${LOCALBASE}/bin \
|
||||
--with-pgincludedir=${LOCALBASE}/include \
|
||||
--with-pgincludeserverdir=${LOCALBASE}/include/postgresql/server \
|
||||
--with-pglibdir=${LOCALBASE}/lib \
|
||||
--with-pgpkglibdir=${LOCALBASE}/lib/postgresql \
|
||||
--with-pgsharedir=${LOCALBASE}/share/postgresql
|
||||
|
||||
NO_STAGE= yes
|
||||
.include <bsd.port.mk>
|
|
@ -1,2 +0,0 @@
|
|||
SHA256 (ludia-1.5.2.tar.gz) = 392b5f7137445668ab0114d58347043a4f3214f5760fb9cfc0379062a8ec4efe
|
||||
SIZE (ludia-1.5.2.tar.gz) = 422117
|
|
@ -1,17 +0,0 @@
|
|||
Fix from
|
||||
|
||||
http://decide.cocolog-nifty.com/blog/2009/03/postgresql-836-.html
|
||||
|
||||
to make it work with postgresql83
|
||||
|
||||
--- pgsenna2.c.orig 2012-03-27 18:32:05.393559930 +0100
|
||||
+++ pgsenna2.c 2012-03-27 18:32:34.261558703 +0100
|
||||
@@ -610,7 +610,7 @@
|
||||
bs.index = index_info_open(index, 1, flags);
|
||||
bs.oid_type = oid_type;
|
||||
reltuples = IndexBuildHeapScan(heap, index, indexInfo,
|
||||
- buildCallback, (void *) &bs);
|
||||
+ buildCallback, (void *) &bs, false);
|
||||
#if defined(POSTGRES82) || defined(POSTGRES83)
|
||||
result = (IndexBuildResult *) PGS2_PALLOC(sizeof(IndexBuildResult));
|
||||
result->heap_tuples = reltuples;
|
|
@ -1,3 +0,0 @@
|
|||
PostgreSQL extension for full-text search indexing.
|
||||
|
||||
WWW: http://sourceforge.jp/projects/ludia (Japanese)
|
|
@ -1,6 +0,0 @@
|
|||
lib/postgresql/pgsenna2.a
|
||||
lib/postgresql/pgsenna2.la
|
||||
lib/postgresql/pgsenna2.so
|
||||
lib/postgresql/pgsenna2.so.0
|
||||
share/postgresql/pgsenna2.sql
|
||||
share/postgresql/uninstall_pgsenna2.sql
|
|
@ -300,7 +300,6 @@
|
|||
SUBDIR += scala
|
||||
SUBDIR += scala-docs
|
||||
SUBDIR += scheme48
|
||||
SUBDIR += schemetoc
|
||||
SUBDIR += scm
|
||||
SUBDIR += scsh
|
||||
SUBDIR += sdcc
|
||||
|
|
|
@ -1,41 +0,0 @@
|
|||
# Created by: jmacd@uclink.berkeley.edu
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= schemetoc
|
||||
PORTVERSION= 93.3.15
|
||||
PORTREVISION= 2
|
||||
CATEGORIES= lang scheme
|
||||
MASTER_SITES= http://www.cs.indiana.edu/pub/scheme-repository/imp/Scheme-to-C/
|
||||
DISTNAME= 15mar93
|
||||
EXTRACT_SUFX= .tar.Z
|
||||
|
||||
MAINTAINER= erik@bz.bzflag.bz
|
||||
COMMENT= Scheme-to-C, a compiler and interpreter for compiling scheme into C
|
||||
|
||||
BROKEN= Does not build
|
||||
DEPRECATED= Broken since July 2013
|
||||
EXPIRATION_DATE=2014-03-18
|
||||
|
||||
ONLY_FOR_ARCHS= i386
|
||||
|
||||
MAKE_JOBS_UNSAFE= yes
|
||||
USE_LDCONFIG= yes
|
||||
NO_WRKSUBDIR= yes
|
||||
MAN1= scc.1 sci.1
|
||||
|
||||
NO_STAGE= yes
|
||||
post-extract:
|
||||
@${CP} ${FILESDIR}/Makefile ${WRKSRC}
|
||||
@${CP} ${FILESDIR}/README.FreeBSD ${WRKSRC}
|
||||
@${MV} ${WRKDIR}/scsc/main.c ${WRKSRC}/scsc/main.c.orig
|
||||
@${CP} ${FILESDIR}/main.c ${WRKSRC}/scsc/main.c
|
||||
@${MKDIR} ${WRKDIR}/ports/FREEBSD
|
||||
.for file in makefile-head options-server.h options.h x86.s
|
||||
@${CP} ${FILESDIR}/${file} ${WRKSRC}/ports/FREEBSD
|
||||
.endfor
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g; \
|
||||
s|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/scsc/*.sc
|
||||
|
||||
.include <bsd.port.mk>
|
|
@ -1,2 +0,0 @@
|
|||
SHA256 (15mar93.tar.Z) = fc04109965416b0b1fda39e0e4f69ef60efea8de065b6d0cf2e9e86599b106ca
|
||||
SIZE (15mar93.tar.Z) = 2218149
|
|
@ -1,37 +0,0 @@
|
|||
# Makefile for FreeBSD Scheme-to-C port
|
||||
#
|
||||
# give this a CVS ID to satisfy commit_prep.pl --tg
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
MAN_DIR = ${PREFIX}/man/man1
|
||||
BIN_DIR = ${PREFIX}/bin
|
||||
LIB_DIR = ${PREFIX}/lib
|
||||
SCHEME_DIR = ${LIB_DIR}/schemetoc
|
||||
|
||||
all:
|
||||
${MAKE} -f makefile forFREEBSD
|
||||
(cd FREEBSD; ${MAKE} port)
|
||||
(cd FREEBSD/cdecl; ${MAKE} all)
|
||||
(cd FREEBSD/xlib; ${MAKE} all)
|
||||
|
||||
install:
|
||||
mkdir -p ${SCHEME_DIR}/doc
|
||||
(cd FREEBSD/scrt; ${MAKE} "LIBDIR = ${LIB_DIR}" \
|
||||
"BINDIR = ${BIN_DIR}" install)
|
||||
(cd FREEBSD/scsc; ${MAKE} "LIBDIR = ${LIB_DIR}" \
|
||||
"BINDIR = ${BIN_DIR}" install)
|
||||
(cd FREEBSD/xlib; ${MAKE} "LIBDIR = ${LIB_DIR}" \
|
||||
"BINDIR = ${BIN_DIR}" install)
|
||||
(cd doc; ${BSD_INSTALL_DATA} index.psf \
|
||||
embedded.psf \
|
||||
intro.psf \
|
||||
r4rs.psf \
|
||||
smithnotes.psf \
|
||||
${SCHEME_DIR}/doc)
|
||||
${BSD_INSTALL_DATA} test/test51.sc ${SCHEME_DIR}/doc/test.sc
|
||||
${BSD_INSTALL_DATA} xlib/hello.sc ${SCHEME_DIR}/doc
|
||||
${BSD_INSTALL_DATA} xlib/puzzle.sc ${SCHEME_DIR}/doc
|
||||
${BSD_INSTALL_DATA} README.FreeBSD ${SCHEME_DIR}/doc
|
||||
${BSD_INSTALL_DATA} doc/scc.l ${MAN_DIR}/scc.1
|
||||
${BSD_INSTALL_DATA} doc/sci.l ${MAN_DIR}/sci.1
|
|
@ -1,29 +0,0 @@
|
|||
Notes for Scheme-to-C port for FreeBSD:
|
||||
|
||||
The documentation provided on the X library interface for Scheme-to-C
|
||||
was very limited and as a result I'm not sure if I've got it right.
|
||||
Instead of using having the compiler link the library archives libsc.a
|
||||
(the standard schemetoc library) or scxl.a (the x library), two shared
|
||||
libraries are included, libsc.so.1 and libscxl.so.1.
|
||||
|
||||
The syntax of the scc compiler has been extended to automatically
|
||||
use dynamic linking unless the -static flag is specified on the scc
|
||||
command line.
|
||||
|
||||
For compiling executables on the command line from only object files
|
||||
it has no method of knowing if you need the X library linked in,
|
||||
and will by default not. So, if you are building an application
|
||||
written for scheme->c which needs X support (such as ezd), you
|
||||
will need to supply a -lX11 flag on the command line. If you are
|
||||
compiling a single scheme file(not an object file) which has the
|
||||
(with xlib) line in the module statement it is not necessary to
|
||||
include -lX11.
|
||||
|
||||
Those not wishing to use the X library support can delete the following
|
||||
files:
|
||||
|
||||
libscxl.so.1 The shared lib.
|
||||
schemetoc/libscxl.a The library archive.
|
||||
bin/scixl The X lib interpreter.
|
||||
|
||||
Each is about 1.4 megabytes.
|
File diff suppressed because it is too large
Load diff
|
@ -1,32 +0,0 @@
|
|||
#
|
||||
# This is the header file for constructing make files for FreeBSD.
|
||||
#
|
||||
|
||||
# Default flags to use when invoking the C compiler.
|
||||
|
||||
CFLAGS ?= -O2
|
||||
CC ?= gcc
|
||||
|
||||
# Assembly language object files.
|
||||
|
||||
Aruntime = x86.o
|
||||
SAruntime = x86.so
|
||||
|
||||
# Profiled library
|
||||
|
||||
Plib = libsc_p.a
|
||||
|
||||
# Installation tools
|
||||
|
||||
RANLIB = ranlib
|
||||
AS = as
|
||||
CPP = cpp
|
||||
|
||||
# X library
|
||||
|
||||
XLIB = -L${LOCALBASE}/lib -lX11
|
||||
XLIBCFLAGS =
|
||||
PICFLAGS = -fpic -DPIC
|
||||
|
||||
|
||||
# End of FREEBSD header.
|
|
@ -1,426 +0,0 @@
|
|||
/* SCHEME->C */
|
||||
|
||||
/* Copyright 1989-1993 Digital Equipment Corporation
|
||||
* All Rights Reserved
|
||||
*
|
||||
* Permission to use, copy, and modify this software and its documentation is
|
||||
* hereby granted only under the following terms and conditions. Both the
|
||||
* above copyright notice and this permission notice must appear in all copies
|
||||
* of the software, derivative works or modified versions, and any portions
|
||||
* thereof, and both notices must appear in supporting documentation.
|
||||
*
|
||||
* Users of this software agree to the terms and conditions set forth herein,
|
||||
* and hereby grant back to Digital a non-exclusive, unrestricted, royalty-free
|
||||
* right and license under any changes, enhancements or extensions made to the
|
||||
* core functions of the software, including but not limited to those affording
|
||||
* compatibility with other hardware or software environments, but excluding
|
||||
* applications which incorporate this software. Users further agree to use
|
||||
* their best efforts to return to Digital any such changes, enhancements or
|
||||
* extensions that they make and inform Digital of noteworthy uses of this
|
||||
* software. Correspondence should be provided to Digital at:
|
||||
*
|
||||
* Director of Licensing
|
||||
* Western Research Laboratory
|
||||
* Digital Equipment Corporation
|
||||
* 250 University Avenue
|
||||
* Palo Alto, California 94301
|
||||
*
|
||||
* This software may be distributed (but not offered for sale or transferred
|
||||
* for compensation) to third parties, provided such third parties agree to
|
||||
* abide by the terms and conditions of this notice.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT
|
||||
* CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
|
||||
* ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
/* This file defines compilation options for a specific implementation */
|
||||
|
||||
#define CHECKSTACK 1 /* 0 = don't check stack height */
|
||||
/* 1 = check stack height */
|
||||
|
||||
#define TIMESLICE 1 /* 0 = don't time slice execution */
|
||||
/* 1 = time slice execution */
|
||||
|
||||
#define COMPACTPUSHTRACE 0 /* 0 = inline procedure entry checks.
|
||||
1 = emit procedure call for procedure
|
||||
entry checks.
|
||||
*/
|
||||
|
||||
#define COMPACTPOPTRACE 0 /* 0 = inline procedure exit cleanup.
|
||||
1 = emit procedure call for procedure exit
|
||||
cleanup.
|
||||
*/
|
||||
|
||||
#define S2CSIGNALS 0 /* 0 = Scheme->C doesn't handle signals */
|
||||
/* 1 = Scheme->C does handle signals */
|
||||
|
||||
#define MATHTRAPS 0 /* 0 = don't detect fixed point overflow */
|
||||
/* 1 = recover on fixed point overflow */
|
||||
|
||||
/* Define only one of the supported processor types:
|
||||
|
||||
AOSF Alpha AXP OSF/1
|
||||
HP700 HP 9000/700
|
||||
MAC Macintosh system 7.1 with Think-C 5.0
|
||||
MC680X0 HP 9000/300, Sun 3, Next
|
||||
MIPS DECstation, SGI, Sony News
|
||||
VAX Vax ULTRIX
|
||||
FREEBSD x86 FreeBSD
|
||||
WIN16 Microsoft Windows 3.1
|
||||
*/
|
||||
|
||||
#define FREEBSD 1
|
||||
|
||||
/* Attributes of the selected architecture:
|
||||
|
||||
The following four macros define specific aspects of the system. They
|
||||
are defined as strings, or specifically undefined:
|
||||
|
||||
IMPLEMENTATION_MACHINE machine type
|
||||
IMPLEMENTATION_CPU cpu type
|
||||
IMPLEMENTATION_OS operating system
|
||||
IMPLEMENTATION_FS file system
|
||||
|
||||
Big endian vs. little endian:
|
||||
|
||||
BIGENDIAN defined to 1 to denote bigendian systems
|
||||
|
||||
C compiler:
|
||||
|
||||
OLD_FASHIONED_C defined to 1 for pre-ANSI compilers
|
||||
|
||||
Alignment:
|
||||
|
||||
DOUBLE_ALIGN defined to 1 to force doubles to be aligned on
|
||||
an even S2CINT boundary
|
||||
|
||||
Macro expansion:
|
||||
|
||||
NEED_MACRO_ARGS defined to 1 to declare a macro like X() as
|
||||
X(dummy)
|
||||
|
||||
The types S2CINT and S2CUINT are defined to be signed and unsigned integers
|
||||
that are the same size as pointers. This is the basic "word" used by
|
||||
Scheme->C.
|
||||
|
||||
The machine state when a continuation is created is captured in the
|
||||
sc_jmp_buf data structure.
|
||||
|
||||
STACKPTR( x ) is a define that stores the address of the stack pointer
|
||||
in x.
|
||||
|
||||
Unix flavors:
|
||||
|
||||
POSIX POSIX.1 compliant
|
||||
SYSV System V or derivative
|
||||
SYSV4 System V release 4 (also define SYSV, POSIX)
|
||||
*/
|
||||
|
||||
/**************/
|
||||
/* AOSF */
|
||||
/**************/
|
||||
|
||||
#ifdef AOSF
|
||||
#define IMPLEMENTATION_MACHINE "Alpha AXP"
|
||||
#undef IMPLEMENTATION_CPU
|
||||
#define IMPLEMENTATION_OS "OSF/1"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
typedef long int S2CINT; /* Signed pointer size integer */
|
||||
typedef long unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffffffffffffL /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x8000000000000000L /* S2CUINT with 1 in the MSB */
|
||||
|
||||
typedef long int sc_jmp_buf[ 9 ]; /* The buffer contains the following items:
|
||||
s0-s6 saved registers
|
||||
ra return address
|
||||
sp stack pointer
|
||||
*/
|
||||
|
||||
#define STACKPTR( x ) x = sc_getsp()
|
||||
extern S2CINT* sc_getsp();
|
||||
|
||||
#define NEED_MACRO_ARGS 1
|
||||
#endif
|
||||
|
||||
/***************/
|
||||
/* HP700 */
|
||||
/***************/
|
||||
|
||||
#ifdef HP700
|
||||
|
||||
#ifdef __hp9000s700
|
||||
#define IMPLEMENTATION_MACHINE "HP9000/700"
|
||||
#else
|
||||
#ifdef __hp9000s800
|
||||
#define IMPLEMENTATION_MACHINE "HP9000/800"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define IMPLEMENTATION_CPU "HP-PA"
|
||||
|
||||
#define BIGENDIAN 1
|
||||
|
||||
#define DOUBLE_ALIGN 1
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#define STACKPTR(x) ((x) = (sc_processor_register (30)))
|
||||
|
||||
#define STACK_GROWS_POSITIVE 1
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef __hpux
|
||||
#define IMPLEMENTATION_OS "HP-UX"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
#ifdef __STDC__
|
||||
#undef OLD_FASHIONED_C
|
||||
#else
|
||||
#define OLD_FASHIONED_C 1
|
||||
#endif
|
||||
|
||||
#include <setjmp.h>
|
||||
typedef jmp_buf sc_jmp_buf;
|
||||
|
||||
#define SYSV 1
|
||||
#define POSIX 1
|
||||
|
||||
#endif
|
||||
|
||||
/*************/
|
||||
/* MAC */
|
||||
/*************/
|
||||
|
||||
#ifdef MAC
|
||||
#define IMPLEMENTATION_MACHINE "Apple Macintosh"
|
||||
#define IMPLEMENTATION_CPU "680x0"
|
||||
#define IMPLEMENTATION_OS "7.1"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
#define BIGENDIAN 1
|
||||
|
||||
typedef long int S2CINT; /* Signed pointer size integer */
|
||||
typedef long unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef short int PAGELINK; /* 16-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffffL /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000L /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#include <setjmp.h>
|
||||
typedef jmp_buf sc_jmp_buf;
|
||||
#undef TRUE
|
||||
#undef FALSE
|
||||
|
||||
#define STACKPTR( x ) x = sc_getsp()
|
||||
extern S2CINT* sc_getsp();
|
||||
|
||||
#define SCHEAP 1
|
||||
#define SCMAXHEAP 15
|
||||
#endif
|
||||
|
||||
/****************/
|
||||
/* MC680X0 */
|
||||
/****************/
|
||||
|
||||
#ifdef MC680X0
|
||||
#define IMPLEMENTATION_CPU "680x0"
|
||||
|
||||
#define BIGENDIAN 1
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#define STACKPTR(x) ((x) = (sc_processor_register (15)))
|
||||
|
||||
#ifdef __hp9000s400
|
||||
#define IMPLEMENTATION_MACHINE "HP9000/400"
|
||||
#else
|
||||
#ifdef __hp9000s300
|
||||
#define IMPLEMENTATION_MACHINE "HP9000/300"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* HP-UX dependent conditionalizations performed above. */
|
||||
|
||||
#endif
|
||||
|
||||
/**************/
|
||||
/* MIPS */
|
||||
/**************/
|
||||
|
||||
#ifdef MIPS
|
||||
#define IMPLEMENTATION_MACHINE "DECstation"
|
||||
#define IMPLEMENTATION_CPU "Rx000"
|
||||
#define IMPLEMENTATION_OS "ULTRIX"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
#define DOUBLE_ALIGN 1
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#ifndef MIPSEL
|
||||
#define BIGMIPS 1
|
||||
#define BIGENDIAN 1
|
||||
#undef IMPLEMENTATION_MACHINE
|
||||
#define IMPLEMENTATION_MACHINE "Big Endian MIPS"
|
||||
#undef IMPLEMENTATION_OS
|
||||
|
||||
/* Not sure what the correct conditionalization is here -- NEWS-OS
|
||||
5.xx defines both "sony" and "sonyrisc", but apparently NEWS-OS
|
||||
4.xx defines "sony_mips", because the previous version of Scheme->C
|
||||
was conditionalized on "sony_mips" which is *not* defined by
|
||||
NEWS-OS 5.xx. If there's an intersection between the symbols
|
||||
defined by 4.xx and 5.xx then a member of that intersection should
|
||||
be used for the conditionalization; otherwise test for both.
|
||||
*/
|
||||
#ifdef sonyrisc
|
||||
|
||||
#undef IMPLEMENTATION_MACHINE
|
||||
#define IMPLEMENTATION_MACHINE "Sony MIPS"
|
||||
#undef IMPLEMENTATION_CPU
|
||||
#define IMPLEMENTATION_CPU "R3000"
|
||||
#undef IMPLEMENTATION_OS
|
||||
#define IMPLEMENTATION_OS "NEWS-OS"
|
||||
|
||||
#ifdef SYSTYPE_SYSV
|
||||
|
||||
#define SYSV4 1
|
||||
#define SYSV 1
|
||||
#define POSIX 1
|
||||
|
||||
/* This can be implemented but requires generalizing the signal
|
||||
handler to know about SYSV4 siginfo structure.
|
||||
*/
|
||||
|
||||
#undef MATHTRAPS
|
||||
#define MATHTRAPS 0
|
||||
|
||||
#define NEED_MACRO_ARGS 1
|
||||
|
||||
#define COPY_STACK_BEFORE_LONGJMP 1
|
||||
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <setjmp.h>
|
||||
typedef jmp_buf sc_jmp_buf;
|
||||
|
||||
#define STACKPTR( x ) x = sc_processor_register( 29 )
|
||||
#endif
|
||||
|
||||
/*************/
|
||||
/* VAX */
|
||||
/*************/
|
||||
|
||||
#ifdef VAX
|
||||
#define IMPLEMENTATION_MACHINE "VAX"
|
||||
#undef IMPLEMENTATION_CPU
|
||||
#define IMPLEMENTATION_OS "ULTRIX"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
#define OLD_FASHIONED_C 1
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
typedef int sc_jmp_buf[ 16 ]; /* The buffer contains the following items:
|
||||
R2-R11 saved registers
|
||||
SIGM saved signal mask
|
||||
SP stack pointer on entry to
|
||||
setjmp
|
||||
PSW PSW word from stack frame
|
||||
AP saved argument ptr from frame
|
||||
FP saved frame ptr from frame
|
||||
PC saved program cntr from frame
|
||||
*/
|
||||
|
||||
#define STACKPTR( x ) x = sc_processor_register( 14 )
|
||||
#endif
|
||||
|
||||
/***************/
|
||||
/* FREEBSD */
|
||||
/***************/
|
||||
|
||||
#ifdef FREEBSD
|
||||
#define IMPLEMENTATION_MACHINE "Generic PC"
|
||||
#define IMPLEMENTATION_CPU "Intelx86"
|
||||
#define IMPLEMENTATION_OS "FreeBSD"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#define STACKPTR( x ) x = sc_processor_register( 0 )
|
||||
|
||||
#include <setjmp.h>
|
||||
typedef jmp_buf sc_jmp_buf;
|
||||
|
||||
/* Horrid kludge. See callcc.c for the full story: */
|
||||
#define LAZY_STACK_POP 1
|
||||
#define LAZY_STACK_INCREMENT 4
|
||||
|
||||
#endif
|
||||
|
||||
/***************/
|
||||
/* WIN16 */
|
||||
/***************/
|
||||
|
||||
#ifdef WIN16
|
||||
#define IMPLEMENTATION_MACHINE "Generic PC"
|
||||
#define IMPLEMENTATION_CPU "Intelx86"
|
||||
#define IMPLEMENTATION_OS "Microsoft Windows 3.1"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
typedef long int S2CINT; /* Signed pointer size integer */
|
||||
typedef long unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef short int PAGELINK; /* 16-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffffL /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000L /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#include <windows.h>
|
||||
#undef TRUE
|
||||
#undef FALSE
|
||||
typedef CATCHBUF sc_jmp_buf;
|
||||
|
||||
#define STACKPTR( x ) x = sc_processor_register( 0 )
|
||||
|
||||
#define MAXSTRINGSIZE ((S2CINT)65532)
|
||||
#define MAXVECTORSIZE ((S2CINT)16383)
|
||||
|
||||
#define SCHEAP 2
|
||||
#define SCMAXHEAP 15
|
||||
#endif
|
|
@ -1,426 +0,0 @@
|
|||
/* SCHEME->C */
|
||||
|
||||
/* Copyright 1989-1993 Digital Equipment Corporation
|
||||
* All Rights Reserved
|
||||
*
|
||||
* Permission to use, copy, and modify this software and its documentation is
|
||||
* hereby granted only under the following terms and conditions. Both the
|
||||
* above copyright notice and this permission notice must appear in all copies
|
||||
* of the software, derivative works or modified versions, and any portions
|
||||
* thereof, and both notices must appear in supporting documentation.
|
||||
*
|
||||
* Users of this software agree to the terms and conditions set forth herein,
|
||||
* and hereby grant back to Digital a non-exclusive, unrestricted, royalty-free
|
||||
* right and license under any changes, enhancements or extensions made to the
|
||||
* core functions of the software, including but not limited to those affording
|
||||
* compatibility with other hardware or software environments, but excluding
|
||||
* applications which incorporate this software. Users further agree to use
|
||||
* their best efforts to return to Digital any such changes, enhancements or
|
||||
* extensions that they make and inform Digital of noteworthy uses of this
|
||||
* software. Correspondence should be provided to Digital at:
|
||||
*
|
||||
* Director of Licensing
|
||||
* Western Research Laboratory
|
||||
* Digital Equipment Corporation
|
||||
* 250 University Avenue
|
||||
* Palo Alto, California 94301
|
||||
*
|
||||
* This software may be distributed (but not offered for sale or transferred
|
||||
* for compensation) to third parties, provided such third parties agree to
|
||||
* abide by the terms and conditions of this notice.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT
|
||||
* CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
|
||||
* ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
/* This file defines compilation options for a specific implementation */
|
||||
|
||||
#define CHECKSTACK 1 /* 0 = don't check stack height */
|
||||
/* 1 = check stack height */
|
||||
|
||||
#define TIMESLICE 0 /* 0 = don't time slice execution */
|
||||
/* 1 = time slice execution */
|
||||
|
||||
#define COMPACTPUSHTRACE 0 /* 0 = inline procedure entry checks.
|
||||
1 = emit procedure call for procedure
|
||||
entry checks.
|
||||
*/
|
||||
|
||||
#define COMPACTPOPTRACE 0 /* 0 = inline procedure exit cleanup.
|
||||
1 = emit procedure call for procedure exit
|
||||
cleanup.
|
||||
*/
|
||||
|
||||
#define S2CSIGNALS 1 /* 0 = Scheme->C doesn't handle signals */
|
||||
/* 1 = Scheme->C does handle signals */
|
||||
|
||||
#define MATHTRAPS 0 /* 0 = don't detect fixed point overflow */
|
||||
/* 1 = recover on fixed point overflow */
|
||||
|
||||
/* Define only one of the supported processor types:
|
||||
|
||||
AOSF Alpha AXP OSF/1
|
||||
HP700 HP 9000/700
|
||||
MAC Macintosh system 7.1 with Think-C 5.0
|
||||
MC680X0 HP 9000/300, Sun 3, Next
|
||||
MIPS DECstation, SGI, Sony News
|
||||
VAX Vax ULTRIX
|
||||
FREEBSD x86 FreeBSD
|
||||
WIN16 Microsoft Windows 3.1
|
||||
*/
|
||||
|
||||
#define FREEBSD 1
|
||||
|
||||
/* Attributes of the selected architecture:
|
||||
|
||||
The following four macros define specific aspects of the system. They
|
||||
are defined as strings, or specifically undefined:
|
||||
|
||||
IMPLEMENTATION_MACHINE machine type
|
||||
IMPLEMENTATION_CPU cpu type
|
||||
IMPLEMENTATION_OS operating system
|
||||
IMPLEMENTATION_FS file system
|
||||
|
||||
Big endian vs. little endian:
|
||||
|
||||
BIGENDIAN defined to 1 to denote bigendian systems
|
||||
|
||||
C compiler:
|
||||
|
||||
OLD_FASHIONED_C defined to 1 for pre-ANSI compilers
|
||||
|
||||
Alignment:
|
||||
|
||||
DOUBLE_ALIGN defined to 1 to force doubles to be aligned on
|
||||
an even S2CINT boundary
|
||||
|
||||
Macro expansion:
|
||||
|
||||
NEED_MACRO_ARGS defined to 1 to declare a macro like X() as
|
||||
X(dummy)
|
||||
|
||||
The types S2CINT and S2CUINT are defined to be signed and unsigned integers
|
||||
that are the same size as pointers. This is the basic "word" used by
|
||||
Scheme->C.
|
||||
|
||||
The machine state when a continuation is created is captured in the
|
||||
sc_jmp_buf data structure.
|
||||
|
||||
STACKPTR( x ) is a define that stores the address of the stack pointer
|
||||
in x.
|
||||
|
||||
Unix flavors:
|
||||
|
||||
POSIX POSIX.1 compliant
|
||||
SYSV System V or derivative
|
||||
SYSV4 System V release 4 (also define SYSV, POSIX)
|
||||
*/
|
||||
|
||||
/**************/
|
||||
/* AOSF */
|
||||
/**************/
|
||||
|
||||
#ifdef AOSF
|
||||
#define IMPLEMENTATION_MACHINE "Alpha AXP"
|
||||
#undef IMPLEMENTATION_CPU
|
||||
#define IMPLEMENTATION_OS "OSF/1"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
typedef long int S2CINT; /* Signed pointer size integer */
|
||||
typedef long unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffffffffffffL /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x8000000000000000L /* S2CUINT with 1 in the MSB */
|
||||
|
||||
typedef long int sc_jmp_buf[ 9 ]; /* The buffer contains the following items:
|
||||
s0-s6 saved registers
|
||||
ra return address
|
||||
sp stack pointer
|
||||
*/
|
||||
|
||||
#define STACKPTR( x ) x = sc_getsp()
|
||||
extern S2CINT* sc_getsp();
|
||||
|
||||
#define NEED_MACRO_ARGS 1
|
||||
#endif
|
||||
|
||||
/***************/
|
||||
/* HP700 */
|
||||
/***************/
|
||||
|
||||
#ifdef HP700
|
||||
|
||||
#ifdef __hp9000s700
|
||||
#define IMPLEMENTATION_MACHINE "HP9000/700"
|
||||
#else
|
||||
#ifdef __hp9000s800
|
||||
#define IMPLEMENTATION_MACHINE "HP9000/800"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define IMPLEMENTATION_CPU "HP-PA"
|
||||
|
||||
#define BIGENDIAN 1
|
||||
|
||||
#define DOUBLE_ALIGN 1
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#define STACKPTR(x) ((x) = (sc_processor_register (30)))
|
||||
|
||||
#define STACK_GROWS_POSITIVE 1
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef __hpux
|
||||
#define IMPLEMENTATION_OS "HP-UX"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
#ifdef __STDC__
|
||||
#undef OLD_FASHIONED_C
|
||||
#else
|
||||
#define OLD_FASHIONED_C 1
|
||||
#endif
|
||||
|
||||
#include <setjmp.h>
|
||||
typedef jmp_buf sc_jmp_buf;
|
||||
|
||||
#define SYSV 1
|
||||
#define POSIX 1
|
||||
|
||||
#endif
|
||||
|
||||
/*************/
|
||||
/* MAC */
|
||||
/*************/
|
||||
|
||||
#ifdef MAC
|
||||
#define IMPLEMENTATION_MACHINE "Apple Macintosh"
|
||||
#define IMPLEMENTATION_CPU "680x0"
|
||||
#define IMPLEMENTATION_OS "7.1"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
#define BIGENDIAN 1
|
||||
|
||||
typedef long int S2CINT; /* Signed pointer size integer */
|
||||
typedef long unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef short int PAGELINK; /* 16-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffffL /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000L /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#include <setjmp.h>
|
||||
typedef jmp_buf sc_jmp_buf;
|
||||
#undef TRUE
|
||||
#undef FALSE
|
||||
|
||||
#define STACKPTR( x ) x = sc_getsp()
|
||||
extern S2CINT* sc_getsp();
|
||||
|
||||
#define SCHEAP 1
|
||||
#define SCMAXHEAP 15
|
||||
#endif
|
||||
|
||||
/****************/
|
||||
/* MC680X0 */
|
||||
/****************/
|
||||
|
||||
#ifdef MC680X0
|
||||
#define IMPLEMENTATION_CPU "680x0"
|
||||
|
||||
#define BIGENDIAN 1
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#define STACKPTR(x) ((x) = (sc_processor_register (15)))
|
||||
|
||||
#ifdef __hp9000s400
|
||||
#define IMPLEMENTATION_MACHINE "HP9000/400"
|
||||
#else
|
||||
#ifdef __hp9000s300
|
||||
#define IMPLEMENTATION_MACHINE "HP9000/300"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* HP-UX dependent conditionalizations performed above. */
|
||||
|
||||
#endif
|
||||
|
||||
/**************/
|
||||
/* MIPS */
|
||||
/**************/
|
||||
|
||||
#ifdef MIPS
|
||||
#define IMPLEMENTATION_MACHINE "DECstation"
|
||||
#define IMPLEMENTATION_CPU "Rx000"
|
||||
#define IMPLEMENTATION_OS "ULTRIX"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
#define DOUBLE_ALIGN 1
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#ifndef MIPSEL
|
||||
#define BIGMIPS 1
|
||||
#define BIGENDIAN 1
|
||||
#undef IMPLEMENTATION_MACHINE
|
||||
#define IMPLEMENTATION_MACHINE "Big Endian MIPS"
|
||||
#undef IMPLEMENTATION_OS
|
||||
|
||||
/* Not sure what the correct conditionalization is here -- NEWS-OS
|
||||
5.xx defines both "sony" and "sonyrisc", but apparently NEWS-OS
|
||||
4.xx defines "sony_mips", because the previous version of Scheme->C
|
||||
was conditionalized on "sony_mips" which is *not* defined by
|
||||
NEWS-OS 5.xx. If there's an intersection between the symbols
|
||||
defined by 4.xx and 5.xx then a member of that intersection should
|
||||
be used for the conditionalization; otherwise test for both.
|
||||
*/
|
||||
#ifdef sonyrisc
|
||||
|
||||
#undef IMPLEMENTATION_MACHINE
|
||||
#define IMPLEMENTATION_MACHINE "Sony MIPS"
|
||||
#undef IMPLEMENTATION_CPU
|
||||
#define IMPLEMENTATION_CPU "R3000"
|
||||
#undef IMPLEMENTATION_OS
|
||||
#define IMPLEMENTATION_OS "NEWS-OS"
|
||||
|
||||
#ifdef SYSTYPE_SYSV
|
||||
|
||||
#define SYSV4 1
|
||||
#define SYSV 1
|
||||
#define POSIX 1
|
||||
|
||||
/* This can be implemented but requires generalizing the signal
|
||||
handler to know about SYSV4 siginfo structure.
|
||||
*/
|
||||
|
||||
#undef MATHTRAPS
|
||||
#define MATHTRAPS 0
|
||||
|
||||
#define NEED_MACRO_ARGS 1
|
||||
|
||||
#define COPY_STACK_BEFORE_LONGJMP 1
|
||||
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <setjmp.h>
|
||||
typedef jmp_buf sc_jmp_buf;
|
||||
|
||||
#define STACKPTR( x ) x = sc_processor_register( 29 )
|
||||
#endif
|
||||
|
||||
/*************/
|
||||
/* VAX */
|
||||
/*************/
|
||||
|
||||
#ifdef VAX
|
||||
#define IMPLEMENTATION_MACHINE "VAX"
|
||||
#undef IMPLEMENTATION_CPU
|
||||
#define IMPLEMENTATION_OS "ULTRIX"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
#define OLD_FASHIONED_C 1
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
typedef int sc_jmp_buf[ 16 ]; /* The buffer contains the following items:
|
||||
R2-R11 saved registers
|
||||
SIGM saved signal mask
|
||||
SP stack pointer on entry to
|
||||
setjmp
|
||||
PSW PSW word from stack frame
|
||||
AP saved argument ptr from frame
|
||||
FP saved frame ptr from frame
|
||||
PC saved program cntr from frame
|
||||
*/
|
||||
|
||||
#define STACKPTR( x ) x = sc_processor_register( 14 )
|
||||
#endif
|
||||
|
||||
/***************/
|
||||
/* FREEBSD */
|
||||
/***************/
|
||||
|
||||
#ifdef FREEBSD
|
||||
#define IMPLEMENTATION_MACHINE "Generic PC"
|
||||
#define IMPLEMENTATION_CPU "Intelx86"
|
||||
#define IMPLEMENTATION_OS "FreeBSD"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
typedef int S2CINT; /* Signed pointer size integer */
|
||||
typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#define STACKPTR( x ) x = sc_processor_register( 0 )
|
||||
|
||||
#include <setjmp.h>
|
||||
typedef jmp_buf sc_jmp_buf;
|
||||
|
||||
/* Horrid kludge. See callcc.c for the full story: */
|
||||
#define LAZY_STACK_POP 1
|
||||
#define LAZY_STACK_INCREMENT 4
|
||||
|
||||
#endif
|
||||
|
||||
/***************/
|
||||
/* WIN16 */
|
||||
/***************/
|
||||
|
||||
#ifdef WIN16
|
||||
#define IMPLEMENTATION_MACHINE "Generic PC"
|
||||
#define IMPLEMENTATION_CPU "Intelx86"
|
||||
#define IMPLEMENTATION_OS "Microsoft Windows 3.1"
|
||||
#undef IMPLEMENTATION_FS
|
||||
|
||||
typedef long int S2CINT; /* Signed pointer size integer */
|
||||
typedef long unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
|
||||
typedef short int PAGELINK; /* 16-bit sc_pagelink values */
|
||||
#define MAXS2CINT 0x7fffffffL /* Maximum value of an S2CINT */
|
||||
#define MSBS2CUINT 0x80000000L /* S2CUINT with 1 in the MSB */
|
||||
|
||||
#include <windows.h>
|
||||
#undef TRUE
|
||||
#undef FALSE
|
||||
typedef CATCHBUF sc_jmp_buf;
|
||||
|
||||
#define STACKPTR( x ) x = sc_processor_register( 0 )
|
||||
|
||||
#define MAXSTRINGSIZE ((S2CINT)65532)
|
||||
#define MAXVECTORSIZE ((S2CINT)16383)
|
||||
|
||||
#define SCHEAP 2
|
||||
#define SCMAXHEAP 15
|
||||
#endif
|
|
@ -1,16 +0,0 @@
|
|||
--- makefile.orig Wed Feb 17 04:20:09 1993
|
||||
+++ makefile Wed Feb 2 22:22:22 2000
|
||||
@@ -92,6 +92,13 @@
|
||||
cp ports/VAX/vax.s VAX/server
|
||||
cp ports/VAX/options-server.h VAX/server/options.h
|
||||
|
||||
+forFREEBSD:
|
||||
+ make "CPU=FREEBSD" forANY
|
||||
+ cp ports/FREEBSD/x86.s FREEBSD/scrt
|
||||
+ cp ports/FREEBSD/options.h FREEBSD/scrt
|
||||
+ cp ports/FREEBSD/x86.s FREEBSD/server
|
||||
+ cp ports/FREEBSD/options-server.h FREEBSD/server/options.h
|
||||
+
|
||||
forWIN16:
|
||||
make "CPU=WIN16" forANY
|
||||
rm -r WIN16/scsc
|
|
@ -1,14 +0,0 @@
|
|||
--- doc/scc.l.orig Tue Jan 12 10:43:14 1993
|
||||
+++ doc/scc.l Wed Feb 2 22:22:22 2000
|
||||
@@ -66,6 +66,11 @@
|
||||
.B -Ot
|
||||
Optimize code by omitting type error checks.
|
||||
.TP 18
|
||||
+.B -static
|
||||
+Use static linking instead of shared libraries. This will result in an executable
|
||||
+which is about 300k larger than the dynamic executable. For xlib programs the
|
||||
+executable will be about 1400k larger.
|
||||
+.TP 18
|
||||
.B -pg
|
||||
Produce profiled code for run-time measurement using
|
||||
.I gprof(1).
|
|
@ -1,46 +0,0 @@
|
|||
--- scrt/callcc.c.orig Wed Feb 24 08:25:41 1993
|
||||
+++ scrt/callcc.c Wed Feb 2 22:22:22 2000
|
||||
@@ -91,6 +91,11 @@
|
||||
#define SETJMP( x ) sc_setjmp( x )
|
||||
#endif
|
||||
|
||||
+#ifdef FREEBSD
|
||||
+#define LONGJMP( x, y ) longjmp( x, y )
|
||||
+#define SETJMP( x ) setjmp( x )
|
||||
+#endif
|
||||
+
|
||||
TSCP sc_clink; /* Pointer to inner most continuation on stack. */
|
||||
|
||||
/* Static declarations for data structures internal to the module. These
|
||||
@@ -192,6 +197,17 @@
|
||||
STACKPTR( tos );
|
||||
count = (((STACK_BYTES (bfp, tos)) + ((sizeof (S2CINT)) - 1))
|
||||
/ (sizeof (S2CINT)));
|
||||
+#ifdef LAZY_STACK_POP
|
||||
+ /* NOTE WELL!
|
||||
+ * For machines that must pop arguments after a function call,
|
||||
+ * the compiler may let arguments accumulate on the stack for several
|
||||
+ * function calls and pop them all at once.
|
||||
+ * If your compiler uses this optimization, 'count' must be incremented
|
||||
+ * by the number of S2CINTs pushed as arguments between this point and
|
||||
+ * the point where 'bcount' is computed.
|
||||
+ */
|
||||
+ count += LAZY_STACK_INCREMENT;
|
||||
+#endif
|
||||
save_fp = (S2CINT*)bfp;
|
||||
cp = sc_allocateheap( NULLCONTINUATIONSIZE+count+2+sc_maxdisplay,
|
||||
CONTINUATIONTAG,
|
||||
@@ -199,6 +215,13 @@
|
||||
STACKPTR( tos );
|
||||
fp = save_fp;
|
||||
bcount = (STACK_BYTES (fp, tos));
|
||||
+ if (bcount > count*sizeof(S2CINT))
|
||||
+ /* If you get this error, look above at LAZY_STACK_POP */
|
||||
+ sc_error( "CALL-WITH-CURRENT-CONTINUATION",
|
||||
+ "internal error: want to write ~s bytes of stack, "
|
||||
+ "but only ~s bytes allocated.",
|
||||
+ LIST2( C_FIXED( bcount ),
|
||||
+ C_FIXED( count*sizeof(S2CINT) ) ) );
|
||||
cp->continuation.continuation = sc_clink;
|
||||
cp->continuation.stackbytes = bcount;
|
||||
cp->continuation.stacktrace = sc_stacktrace;
|
|
@ -1,34 +0,0 @@
|
|||
--- scrt/cio.c.orig Wed Feb 24 08:26:58 1993
|
||||
+++ scrt/cio.c Wed Feb 2 22:22:22 2000
|
||||
@@ -143,6 +143,10 @@
|
||||
#define HAVE_RUSAGE
|
||||
#endif
|
||||
|
||||
+#ifdef FREEBSD
|
||||
+#define HAVE_RUSAGE
|
||||
+#endif
|
||||
+
|
||||
#ifdef SYSV
|
||||
#define HAVE_TIMES
|
||||
#else
|
||||
@@ -467,7 +471,11 @@
|
||||
struct timeval timeout;
|
||||
|
||||
stream = (FILE*)TSCP_POINTER( file );
|
||||
+#ifdef FREEBSD
|
||||
+ if (((stream)->_r) <= 0) {
|
||||
+#else
|
||||
if (((stream)->_cnt) <= 0) {
|
||||
+#endif
|
||||
FD_ZERO( &readfds );
|
||||
FD_SET( fileno( stream ), &readfds );
|
||||
timeout.tv_sec = 0;
|
||||
@@ -549,7 +557,7 @@
|
||||
break;
|
||||
|
||||
case 3:
|
||||
-#ifdef MAC
|
||||
+#if defined(MAC) || defined(FREEBSD)
|
||||
sprintf( format, "%%.%lilg", (long)TSCP_S2CINT( length ) );
|
||||
sprintf( buffer, format, TSCP_DOUBLE( number ) );
|
||||
#else
|
|
@ -1,44 +0,0 @@
|
|||
--- scrt/heap.c.orig Tue Feb 23 01:11:33 1993
|
||||
+++ scrt/heap.c Wed Feb 2 22:22:22 2000
|
||||
@@ -66,6 +66,9 @@
|
||||
#ifdef VAX
|
||||
extern sc_r2tor11( );
|
||||
#endif
|
||||
+#ifdef FREEBSD
|
||||
+extern sc_geti386regs( S2CINT* a );
|
||||
+#endif
|
||||
|
||||
/* Forward declarations */
|
||||
|
||||
@@ -368,6 +371,31 @@
|
||||
S2CINT r2tor11[10], *pp;
|
||||
|
||||
sc_r2tor11( r2tor11 );
|
||||
+ STACKPTR( pp );
|
||||
+ while (pp != sc_stackbase) move_continuation_ptr( ((SCP)*pp++) );
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+#ifdef FREEBSD
|
||||
+/* The following code is used to read the stack pointer. The register
|
||||
+ number is passed in to force an argument to be on the stack, which in
|
||||
+ turn can be used to find the address of the top of stack.
|
||||
+*/
|
||||
+
|
||||
+S2CINT *sc_processor_register( S2CINT reg )
|
||||
+{
|
||||
+ return( ® );
|
||||
+}
|
||||
+
|
||||
+/* All processor registers which might contain pointers are traced by the
|
||||
+ following procedure.
|
||||
+*/
|
||||
+
|
||||
+static trace_stack_and_registers()
|
||||
+{
|
||||
+ S2CINT i386regs[6], *pp;
|
||||
+
|
||||
+ sc_geti386regs( i386regs );
|
||||
STACKPTR( pp );
|
||||
while (pp != sc_stackbase) move_continuation_ptr( ((SCP)*pp++) );
|
||||
}
|
|
@ -1,131 +0,0 @@
|
|||
--- scrt/makefile.orig Wed Feb 17 10:55:48 1993
|
||||
+++ scrt/makefile Wed Feb 2 22:22:22 2000
|
||||
@@ -5,7 +5,9 @@
|
||||
#
|
||||
|
||||
.SUFFIXES:
|
||||
-.SUFFIXES: .o .c .sc .s
|
||||
+.SUFFIXES: .o .c .sc .s .so
|
||||
+
|
||||
+SOVER = 1
|
||||
|
||||
SCC = ../scsc/scc
|
||||
SCCFLAGS =
|
||||
@@ -14,6 +16,8 @@
|
||||
|
||||
Cruntime = scinit.o apply.o callcc.o cio.o heap.o objects.o mtraps.o
|
||||
|
||||
+SCruntime = scinit.so apply.so callcc.so cio.so heap.so objects.so mtraps.so
|
||||
+
|
||||
Cruntimec = scinit.c apply.c callcc.c cio.c heap.c objects.c mtraps.c
|
||||
|
||||
Chfiles = scinit.h apply.h callcc.h cio.h heap.h objects.h options.h
|
||||
@@ -22,6 +26,11 @@
|
||||
scqquote.o screp.o \
|
||||
scrt1.o scrt2.o scrt3.o scrt4.o scrt5.o scrt6.o scrt7.o scrtuser.o
|
||||
|
||||
+SSruntime = scdebug.so sceval.so scexpand.so scexpnd1.so scexpnd2.so \
|
||||
+ scqquote.so screp.so \
|
||||
+ scrt1.so scrt2.so scrt3.so scrt4.so scrt5.so scrt6.so scrt7.so \
|
||||
+ scrtuser.so
|
||||
+
|
||||
Sruntimec = scdebug.c sceval.c scexpand.c scexpnd1.c scexpnd2.c \
|
||||
scqquote.c screp.c \
|
||||
scrt1.c scrt2.c scrt3.c scrt4.c scrt5.c scrt6.c scrt7.c scrtuser.c
|
||||
@@ -43,17 +52,27 @@
|
||||
${SCC} -C ${SCCFLAGS} $*.sc
|
||||
|
||||
.c.o:
|
||||
- ${CC} -c ${CFLAGS} -I. $*.c
|
||||
+ ${CC} ${CFLAGS} -c ${.IMPSRC} -I. -o ${.TARGET}
|
||||
+
|
||||
+.c.so:
|
||||
+ ${CC} ${PICFLAGS} ${CFLAGS} -c ${.IMPSRC} -I. -o ${.TARGET}
|
||||
|
||||
.s.o:
|
||||
${CC} -c $*.s
|
||||
|
||||
+.s.so:
|
||||
+ ${CPP} -E -DPIC ${CFLAGS:M-[ID]*} ${.IMPSRC} | \
|
||||
+ ${AS} -k -o ${.TARGET}
|
||||
+
|
||||
sc-to-c: ${Sruntimec} sci.c
|
||||
|
||||
c-to-o: ${Sruntimec} ${Sruntime} ${Cruntime}
|
||||
|
||||
s-to-o: ${Aruntime}
|
||||
|
||||
+OBJS = ${Sruntime} ${Cruntime} ${Aruntime}
|
||||
+SHAREDOBJS = ${OBJS:.o=.so}
|
||||
+
|
||||
Xlibsc.a: ${Sruntimec} ${Sruntime} ${Cruntime} ${Aruntime}
|
||||
rm -f Xlibsc.a
|
||||
ar q Xlibsc.a ${Cruntime} ${Sruntime} ${Aruntime}
|
||||
@@ -75,36 +94,42 @@
|
||||
Xmv: Xsci Xlibsc.a
|
||||
mv Xsci sci
|
||||
mv Xlibsc.a libsc.a
|
||||
-
|
||||
+
|
||||
port:
|
||||
- make "CC = ${CC}" "CFLAGS = ${CFLAGS}" "SCC = echo" \
|
||||
- Xlibsc.a Xsci Xmv ${Plib}
|
||||
+ ${MAKE} "CC = ${CC}" "CFLAGS = ${CFLAGS}" "SCC = echo" \
|
||||
+ Xlibsc.a Xsci Xmv ${Plib} libsc.so.${SOVER}
|
||||
|
||||
libsc_p.a: libsc.a
|
||||
mkdir saveobj
|
||||
mv ${Sruntime} ${Cruntime} ${Aruntime} saveobj
|
||||
rm -f libsc_p.a
|
||||
- make "CC = ${CC}" "CFLAGS = ${CFLAGS} -pg" ${Sruntime} ${Cruntime} \
|
||||
+ ${MAKE} "CC = ${CC}" "CFLAGS = ${CFLAGS} -pg" ${Sruntime} ${Cruntime} \
|
||||
${Aruntime}
|
||||
ar q libsc_p.a ${Cruntime} ${Sruntime} ${Aruntime}
|
||||
${RANLIB} libsc_p.a
|
||||
mv saveobj/* .
|
||||
rmdir saveobj
|
||||
|
||||
+libsc.so.${SOVER}: ${SCruntime} ${SSruntime} ${SAruntime}
|
||||
+ rm -f libsc.so.${SOVER}
|
||||
+ ${CC} -shared -Wl,-x -Wl,-assert -Wl,pure-text -Wl,-soname,$@ -o $@ \
|
||||
+ ${SCruntime} ${SSruntime} ${SAruntime}
|
||||
+
|
||||
install-private:
|
||||
- make "LIBDIR = ${DESTDIR}" "BINDIR = ${DESTDIR}" \
|
||||
+ ${MAKE} "LIBDIR = ${DESTDIR}" "BINDIR = ${DESTDIR}" \
|
||||
"OWNER = -o `whoami`" install
|
||||
|
||||
install:
|
||||
- -mkdir ${LIBDIR}/schemetoc
|
||||
- cp libsc.a ${LIBDIR}/schemetoc/libsc.a
|
||||
- ${RANLIB} ${LIBDIR}/schemetoc/libsc.a
|
||||
- -cp libsc_p.a ${LIBDIR}/schemetoc/libsc_p.a
|
||||
- -${RANLIB} ${LIBDIR}/schemetoc/libsc_p.a
|
||||
- cp objects.h ${LIBDIR}/schemetoc
|
||||
- cp options.h ${LIBDIR}/schemetoc
|
||||
- cp predef.sc ${LIBDIR}/schemetoc
|
||||
- cp sci ${BINDIR}/sci
|
||||
+ ${BSD_INSTALL_DATA} libsc.a ${LIBDIR}
|
||||
+ -${RANLIB} ${LIBDIR}/libsc.a
|
||||
+ ${BSD_INSTALL_DATA} libsc_p.a ${LIBDIR}
|
||||
+ -${RANLIB} ${LIBDIR}/libsc_p.a
|
||||
+ ${BSD_INSTALL_DATA} objects.h ${LIBDIR}/schemetoc
|
||||
+ ${BSD_INSTALL_DATA} options.h ${LIBDIR}/schemetoc
|
||||
+ ${BSD_INSTALL_DATA} predef.sc ${LIBDIR}/schemetoc
|
||||
+ ${BSD_INSTALL_PROGRAM} sci ${BINDIR}
|
||||
+ ${BSD_INSTALL_DATA} libsc.so.${SOVER} ${LIBDIR}
|
||||
+ ln -sf libsc.so.${SOVER} ${LIBDIR}/libsc.so
|
||||
|
||||
clean:
|
||||
rm -f ${Sruntime} ${Cruntime} ${Aruntime} sci.o embedded.o \
|
||||
@@ -124,8 +149,8 @@
|
||||
libsc.a ${Plib} sci ${destdir}
|
||||
|
||||
all:
|
||||
- make "CC = ${CC}" "CFLAGS = ${CFLAGS}" "SCC = ${SCC}" \
|
||||
- "SCCFLAGS = ${SCCFLAGS}" Xlibsc.a Xsci Xmv ${Plib}
|
||||
+ ${MAKE} "CC = ${CC}" "CFLAGS = ${CFLAGS}" "SCC = ${SCC}" \
|
||||
+ "SCCFLAGS = ${SCCFLAGS}" Xlibsc.a Xsci Xmv ${Plib} libsc.so.${SOVER}
|
||||
|
||||
srclinks:
|
||||
for x in ${Cruntimec} ${Chfiles} ${Sruntimec} ${Sruntimesc} ${Smisc}; \
|
|
@ -1,53 +0,0 @@
|
|||
--- scrt/options.h.orig Tue Feb 23 01:14:40 1993
|
||||
+++ scrt/options.h Wed Feb 2 22:22:22 2000
|
||||
@@ -71,6 +71,7 @@
|
||||
MC680X0 HP 9000/300, Sun 3, Next
|
||||
MIPS DECstation, SGI, Sony News
|
||||
VAX Vax ULTRIX
|
||||
+ FREEBSD x86 FreeBSD
|
||||
WIN16 Microsoft Windows 3.1
|
||||
*/
|
||||
|
||||
@@ -80,6 +81,7 @@
|
||||
#define MC680X0 1
|
||||
#define MIPS 1
|
||||
#define VAX 1
|
||||
+#define FREEBSD 1
|
||||
#define WIN16 1
|
||||
|
||||
/* Attributes of the selected architecture:
|
||||
@@ -369,6 +371,34 @@
|
||||
*/
|
||||
|
||||
#define STACKPTR( x ) x = sc_processor_register( 14 )
|
||||
+#endif
|
||||
+
|
||||
+/***************/
|
||||
+/* FREEBSD */
|
||||
+/***************/
|
||||
+
|
||||
+#ifdef FREEBSD
|
||||
+#define IMPLEMENTATION_MACHINE "Generic PC"
|
||||
+#define IMPLEMENTATION_CPU "Intelx86"
|
||||
+#define IMPLEMENTATION_OS "FreeBSD"
|
||||
+#undef IMPLEMENTATION_FS
|
||||
+
|
||||
+typedef int S2CINT; /* Signed pointer size integer */
|
||||
+typedef unsigned S2CUINT; /* Unsigned pointer size interger */
|
||||
+
|
||||
+typedef int PAGELINK; /* 32-bit sc_pagelink values */
|
||||
+#define MAXS2CINT 0x7fffffff /* Maximum value of an S2CINT */
|
||||
+#define MSBS2CUINT 0x80000000 /* S2CUINT with 1 in the MSB */
|
||||
+
|
||||
+#define STACKPTR( x ) x = sc_processor_register( 0 )
|
||||
+
|
||||
+#include <setjmp.h>
|
||||
+typedef jmp_buf sc_jmp_buf;
|
||||
+
|
||||
+/* Horrid kludge. See callcc.c for the full story: */
|
||||
+#define LAZY_STACK_POP 1
|
||||
+#define LAZY_STACK_INCREMENT 4
|
||||
+
|
||||
#endif
|
||||
|
||||
/***************/
|
|
@ -1,126 +0,0 @@
|
|||
--- scsc/main.sc.orig Tue Feb 23 00:59:07 1993
|
||||
+++ scsc/main.sc Wed Feb 2 22:22:22 2000
|
||||
@@ -59,7 +59,9 @@
|
||||
readtext
|
||||
transform))
|
||||
|
||||
-(define SCC-VERSION "15mar93jfb")
|
||||
+(define scheme_dir "%%PREFIX%%/lib/schemetoc/")
|
||||
+
|
||||
+(define SCC-VERSION "15mar93-FreeBSD")
|
||||
; Compiler version string.
|
||||
|
||||
(define FORCE-LD-OF-REP read-eval-print)
|
||||
@@ -69,23 +71,28 @@
|
||||
;;; The following top-level variables define the implementation dependent
|
||||
;;; information:
|
||||
|
||||
-(define PREDEF-DEFAULT "../scrt/predef.sc")
|
||||
+(define PREDEF-DEFAULT (string-append scheme_dir "predef.sc"))
|
||||
+
|
||||
; File holding the declarations for predefined
|
||||
; functions.
|
||||
|
||||
(define C-INCLUDE-FILE "objects.h")
|
||||
; #include file for the predefined functions.
|
||||
|
||||
-(define C-INCLUDE-DIR "../scrt")
|
||||
+(define C-INCLUDE-DIR scheme_dir)
|
||||
; directory containing #include file for
|
||||
; predefined functions.
|
||||
|
||||
-(define SC-LIBRARY "../scrt/libsc.a")
|
||||
+(define SC-LIBRARY (string-append scheme_dir "libsc.a"))
|
||||
; Scheme->C library file.
|
||||
|
||||
-(define SC-LIBRARY_P "../scrt/libsc_p.a")
|
||||
+(define SCXL-LIBRARY (string-append scheme_dir "scxl.a"))
|
||||
+
|
||||
+(define SC-LIBRARY_P (string-append scheme_dir "libsc_p.a"))
|
||||
; Scheme->C profiled library file.
|
||||
|
||||
+(define compile-static #f)
|
||||
+
|
||||
;;; When the compiler is invoked directly from the shell, the following
|
||||
;;; function is invoked to control compilation. It will interprete the flags,
|
||||
;;; invoke the compiler and then exit. Any compilation errors or Scheme errors
|
||||
@@ -123,6 +130,8 @@
|
||||
;;;
|
||||
;;; -Ot optimize C code by omitting type checks.
|
||||
;;;
|
||||
+;;; -static compile static executable.
|
||||
+;;;
|
||||
;;; -pg compile for gprof profiling.
|
||||
;;;
|
||||
;;; -LIBDIR directory
|
||||
@@ -161,13 +170,9 @@
|
||||
(c-flags '())
|
||||
(sc-to-c.c "SC-TO-C.c")
|
||||
(sc-to-c.o "SC-TO-C.o")
|
||||
- (directory-separator
|
||||
- (if (equal? (list-ref (implementation-information) 5)
|
||||
- "Microsoft Windows 3.x")
|
||||
- "\\"
|
||||
- "/"))
|
||||
+ (directory-separator "/")
|
||||
(log '())
|
||||
- (cc "cc"))
|
||||
+ (cc "gcc"))
|
||||
|
||||
;;; 1. Pick up the command line arguments.
|
||||
|
||||
@@ -233,6 +238,9 @@
|
||||
(cons "(define-constant *type-check* #f)"
|
||||
flags))
|
||||
(loop (cdr args)))
|
||||
+ ((equal? arg "-static")
|
||||
+ (set! compile-static #t)
|
||||
+ (loop (cdr args)))
|
||||
((equal? arg "-Ob")
|
||||
(set! flags
|
||||
(cons "(define-constant *bounds-check* #f)"
|
||||
@@ -295,20 +303,27 @@
|
||||
;;; C compiler to do the rest.
|
||||
|
||||
(unless (eq? 0
|
||||
- (system (apply string-append
|
||||
- `(,cc " -I" ,c-include-dir
|
||||
- ,@(map (lambda (x)
|
||||
- (string-append " " x))
|
||||
- (append (reverse c-flags)
|
||||
- (if (member "-pg"
|
||||
- c-flags)
|
||||
- `(,sc-library_p
|
||||
- "-lm")
|
||||
- `(,sc-library
|
||||
- "-lm"))))))))
|
||||
+ (system (apply string-append
|
||||
+ `(,cc " -I" ,c-include-dir
|
||||
+ ,@(map (lambda (x)
|
||||
+ (string-append " " x))
|
||||
+ (append (reverse c-flags)
|
||||
+ (if compile-static
|
||||
+ (if (member "-pg" c-flags)
|
||||
+ (list sc-library_p "-lm")
|
||||
+ (if (member "-c" c-flags)
|
||||
+ '()
|
||||
+ (if (member "xlib" with-modules)
|
||||
+ (list "-lm" sc-library scxl-library "-L%%LOCALBASE%%/lib -lX11")
|
||||
+ (list "-lm" sc-library))))
|
||||
+ (if (member "-c" c-flags)
|
||||
+ '()
|
||||
+ (if (member "xlib" with-modules)
|
||||
+ (list "-L%%LOCALBASE%%/lib -lm -lsc -lscxl -lX11")
|
||||
+ (list "-lm -lsc"))))))))))
|
||||
(reset))
|
||||
(catch-error
|
||||
- (lambda ()
|
||||
+ (lambda ()
|
||||
(remove-file sc-to-c.c)
|
||||
(remove-file sc-to-c.o)))))
|
||||
|
||||
@@ -351,3 +366,4 @@
|
||||
root.c)
|
||||
;;; Pass argument to C.
|
||||
(else arg))))
|
||||
+
|
|
@ -1,11 +0,0 @@
|
|||
--- scsc/makefile.orig Sat Jan 30 08:17:02 1993
|
||||
+++ scsc/makefile Wed Feb 2 22:22:22 2000
|
||||
@@ -82,7 +82,7 @@
|
||||
done
|
||||
echo '#! /bin/csh -f' > scc
|
||||
echo `pwd`'/sccomp -scl ${SCL} -scmh ${SCMH} \
|
||||
- -cc ${CC} -LIBDIR ' `pwd`'/${RTDIR} $$argv' >> scc
|
||||
+ -cc ${CC} -static -LIBDIR ' `pwd`'/${RTDIR} $$argv' >> scc
|
||||
chmod +x scc
|
||||
echo '#! /bin/csh -f' > Xscc
|
||||
echo `pwd`'/Xsccomp -scl ${SCL} -scmh ${SCMH} \
|
|
@ -1,121 +0,0 @@
|
|||
--- xlib/makefile.orig Tue Mar 2 02:24:36 1993
|
||||
+++ xlib/makefile Wed Feb 2 22:22:22 2000
|
||||
@@ -1,5 +1,7 @@
|
||||
.SUFFIXES:
|
||||
-.SUFFIXES: .sc .cdecl .o .c
|
||||
+.SUFFIXES: .sc .cdecl .o .c .so
|
||||
+
|
||||
+SOVER = 1
|
||||
|
||||
CDECL = ../cdecl/cdecl
|
||||
SIZEOF = ../cdecl/sizeof
|
||||
@@ -58,6 +60,16 @@
|
||||
xvisualinfo.o xwindowattributes.o xwindowchanges.o xwmhints.o \
|
||||
xpixmapformatvalues.o xtextproperty.o
|
||||
|
||||
+sxdo = depth.so screen.so visual.so xarc.so xchar2b.so xcharstruct.so \
|
||||
+ xclasshint.so xcomposestatus.so xcolor.so xlibCONSTANTS.so xevent.so \
|
||||
+ xfontprop.so xfontstruct.so xgcvalues.so xhostaddress.so xiconsize.so \
|
||||
+ ximage.so xkeyboardcontrol.so xkeyboardstate.so xmodifierkeymap.so \
|
||||
+ xpoint.so xrectangle.so xrmoptiondescrec.so xrmvalue.so xsegment.so \
|
||||
+ xsetwindowattributes.so xsizehints.so xstandardcolormap.so \
|
||||
+ xlibSTUBS.so xtextitem.so xtextitem16.so xtimecoord.so xlibTYPES.so \
|
||||
+ xvisualinfo.so xwindowattributes.so xwindowchanges.so xwmhints.so \
|
||||
+ xpixmapformatvalues.so xtextproperty.so
|
||||
+
|
||||
xdpsc = xws2.sc xws3.sc xws4.sc xws5.sc xws6.sc xws7.sc \
|
||||
xws8.sc xws9.sc xws10.sc xwsr4.sc
|
||||
|
||||
@@ -76,6 +88,10 @@
|
||||
xwso = xwss.o xws2.o xws3.o xws4.o xws5.o xws6.o xws7.o xws8.o xws9.o xws10.o \
|
||||
xlib.o xwsr4.o
|
||||
|
||||
+sxwso = xwss.so xws2.so xws3.so xws4.so xws5.so xws6.so xws7.so xws8.so \
|
||||
+ xws9.so xws10.so xlib.so xwsr4.so
|
||||
+
|
||||
+
|
||||
sizeof.cdecl:
|
||||
${SIZEOF} > sizeof.cdecl
|
||||
|
||||
@@ -101,28 +117,52 @@
|
||||
.c.o:
|
||||
${SCC} -c ${XLIBCFLAGS} $*.c
|
||||
|
||||
+.c.so:
|
||||
+ ${CC} ${PICFLAGS} ${CFLAGS} -c ${XLIBCFLAGS} -I../scrt ${.IMPSRC} -o ${.TARGET}
|
||||
+
|
||||
scixl: xlibTYPES.o ${xwssc} ${xwsc} ${xwso}
|
||||
${SCC} -o scixl -i -m xlib ${xwso} ${xdo} ${XLIB}
|
||||
-
|
||||
-scxl.a: xlibTYPES.o ${xwssc} ${xwsc} ${xwso}
|
||||
- rm -f scxl.a
|
||||
- ar q scxl.a ${xdo} ${xwso}
|
||||
- ${RANLIB} scxl.a
|
||||
+
|
||||
+libscxl.a: xlibTYPES.o ${xwssc} ${xwsc} ${xwso}
|
||||
+ rm -f libscxl.a
|
||||
+ mv -f xmodifierkeymap.o xmodifier.o
|
||||
+ mv -f xstandardcolormap.o xstandard.o
|
||||
+ mv -f xwindowattributes.o xwindowatt.o
|
||||
+ mv -f xpixmapformatvalues.o xpixmap.o
|
||||
+ ar q libscxl.a depth.o screen.o visual.o xarc.o xchar2b.o xcharstruct.o \
|
||||
+ xclasshint.o xcomposestatus.o xcolor.o xlibCONSTANTS.o xevent.o \
|
||||
+ xfontprop.o xfontstruct.o xgcvalues.o xhostaddress.o xiconsize.o \
|
||||
+ ximage.o xkeyboardcontrol.o xkeyboardstate.o xmodifier.o \
|
||||
+ xpoint.o xrectangle.o xrmoptiondescrec.o xrmvalue.o xsegment.o \
|
||||
+ xsetwindowattributes.o xsizehints.o xstandard.o \
|
||||
+ xlibSTUBS.o xtextitem.o xtextitem16.o xtimecoord.o xlibTYPES.o \
|
||||
+ xvisualinfo.o xwindowatt.o xwindowchanges.o xwmhints.o \
|
||||
+ xpixmap.o xtextproperty.o \
|
||||
+ xwss.o xws2.o xws3.o xws4.o xws5.o xws6.o xws7.o xws8.o \
|
||||
+ xws9.o xws10.o xlib.o xwsr4.o
|
||||
+ ${RANLIB} libscxl.a
|
||||
+
|
||||
+Xlibscxl.so.${SOVER}: xlibTYPES.so ${xwssc} ${xwsc} ${xwso} ${sxdo} ${sxwso}
|
||||
+ rm -f libscxl.so.${SOVER}
|
||||
+ ${CC} -shared -Wl,-x -Wl,-assert -Wl,pure-text -Wl,-soname,libscxl.so.${SOVER} -o libscxl.so.${SOVER} ${sxdo} ${sxwso}
|
||||
+
|
||||
+libscxl.so.${SOVER}:
|
||||
+ ${MAKE} Xlibscxl.so.${SOVER}
|
||||
|
||||
clear:
|
||||
- ${SCC} -o clear clear.sc scxl.a ${XLIB}
|
||||
+ ${SCC} -o clear clear.sc libscxl.a ${XLIB}
|
||||
|
||||
hello:
|
||||
- ${SCC} -o hello hello.sc scxl.a ${XLIB}
|
||||
+ ${SCC} -o hello hello.sc libscxl.a ${XLIB}
|
||||
|
||||
puzzle:
|
||||
- ${SCC} -o puzzle puzzle.sc scxl.a ${XLIB}
|
||||
+ ${SCC} -o puzzle puzzle.sc libscxl.a ${XLIB}
|
||||
|
||||
clean:
|
||||
rm -f *.BAK *.CKP core
|
||||
|
||||
noprogs:
|
||||
- rm -f *.o scixl scxl.a hello puzzle clear
|
||||
+ rm -f *.o scixl libscxl.a hello puzzle clear
|
||||
|
||||
clean-cdecl:
|
||||
rm -f ${xdsc} ${xdsch} ${xdc} ${xdpsc} ${xdpsch} ${xdpc} sizeof.cdecl
|
||||
@@ -132,10 +172,17 @@
|
||||
puzzle.c npuzzle.c
|
||||
|
||||
all:
|
||||
- make scixl scxl.a
|
||||
+ ${MAKE} scixl libscxl.a libscxl.so.${SOVER}
|
||||
+
|
||||
+install:
|
||||
+ ${BSD_INSTALL_DATA} libscxl.a ${LIBDIR}
|
||||
+ -${RANLIB} ${LIBDIR}/libscxl.a
|
||||
+ ${BSD_INSTALL_PROGRAM} scixl ${BINDIR}
|
||||
+ ${BSD_INSTALL_DATA} libscxl.so.${SOVER} ${LIBDIR}
|
||||
+ ln -sf libscxl.so.${SOVER} ${LIBDIR}/libscxl.so
|
||||
|
||||
gensource:
|
||||
- make ${xwssc} ${xwsc}
|
||||
+ ${MAKE} ${xwssc} ${xwsc}
|
||||
|
||||
srclinks:
|
||||
for x in ${XD} ${XDP} ${XMISC}; \
|
|
@ -1,78 +0,0 @@
|
|||
*** scrt/apply.c.orig Mon Feb 22 11:10:06 1993
|
||||
--- scrt/apply.c Sat Mar 14 21:49:29 2009
|
||||
***************
|
||||
*** 50,56 ****
|
||||
#include "scinit.h"
|
||||
#include "heap.h"
|
||||
#include "apply.h"
|
||||
! #include <varargs.h>
|
||||
|
||||
/* Data structures used by UNKNOWNCALL. These values must be pushed on the
|
||||
stack and then restored by interrupt handlers or when calling finalization
|
||||
--- 50,56 ----
|
||||
#include "scinit.h"
|
||||
#include "heap.h"
|
||||
#include "apply.h"
|
||||
! #include <stdarg.h>
|
||||
|
||||
/* Data structures used by UNKNOWNCALL. These values must be pushed on the
|
||||
stack and then restored by interrupt handlers or when calling finalization
|
||||
***************
|
||||
*** 283,290 ****
|
||||
in the call, or the procedure takes a variable number of arguments.
|
||||
*/
|
||||
|
||||
! TSCP sc_unknowncall( va_alist )
|
||||
! va_dcl
|
||||
{
|
||||
va_list argl; /* List of arguments on stack */
|
||||
int req; /* # of required arguments */
|
||||
--- 283,289 ----
|
||||
in the call, or the procedure takes a variable number of arguments.
|
||||
*/
|
||||
|
||||
! TSCP sc_unknowncall( TSCP arg0, ... )
|
||||
{
|
||||
va_list argl; /* List of arguments on stack */
|
||||
int req; /* # of required arguments */
|
||||
***************
|
||||
*** 293,299 ****
|
||||
TSCP tail; /* Tail of optional argument list */
|
||||
SCP utproc; /* Untagged version of proc */
|
||||
|
||||
! va_start( argl );
|
||||
utproc = T_U( sc_unknownproc[ 1 ] );
|
||||
if ((TSCPTAG( sc_unknownproc[ 1 ] ) != EXTENDEDTAG) ||
|
||||
(utproc->procedure.tag != PROCEDURETAG))
|
||||
--- 292,298 ----
|
||||
TSCP tail; /* Tail of optional argument list */
|
||||
SCP utproc; /* Untagged version of proc */
|
||||
|
||||
! va_start( argl, arg0 );
|
||||
utproc = T_U( sc_unknownproc[ 1 ] );
|
||||
if ((TSCPTAG( sc_unknownproc[ 1 ] ) != EXTENDEDTAG) ||
|
||||
(utproc->procedure.tag != PROCEDURETAG))
|
||||
***************
|
||||
*** 304,313 ****
|
||||
((utproc->procedure.optional == 0) && (sc_unknownargc != req)))
|
||||
sc_error( "APPLY", "PROCEDURE requires ~s arguments, ~s supplied",
|
||||
LIST2( C_FIXED( req ), C_FIXED( sc_unknownargc ) ) );
|
||||
! for (i = 0; i < req; i++) sc_arg[ i ] = va_arg( argl, TSCP );
|
||||
optl = EMPTYLIST;
|
||||
! if (i++ < sc_unknownargc) {
|
||||
! tail = (optl = sc_cons( va_arg( argl, TSCP ), EMPTYLIST ));
|
||||
while (i++ < sc_unknownargc)
|
||||
tail = (TP_U( tail )->pair.cdr = sc_cons( va_arg( argl, TSCP ),
|
||||
EMPTYLIST ));
|
||||
--- 303,313 ----
|
||||
((utproc->procedure.optional == 0) && (sc_unknownargc != req)))
|
||||
sc_error( "APPLY", "PROCEDURE requires ~s arguments, ~s supplied",
|
||||
LIST2( C_FIXED( req ), C_FIXED( sc_unknownargc ) ) );
|
||||
! for (i = 0; i < req; i++) sc_arg[ i ] = !i ? arg0 : va_arg( argl, TSCP );
|
||||
optl = EMPTYLIST;
|
||||
! if (i < sc_unknownargc) {
|
||||
! tail = (optl = sc_cons( !i ? arg0 : va_arg( argl, TSCP ), EMPTYLIST ));
|
||||
! ++i;
|
||||
while (i++ < sc_unknownargc)
|
||||
tail = (TP_U( tail )->pair.cdr = sc_cons( va_arg( argl, TSCP ),
|
||||
EMPTYLIST ));
|
|
@ -1,13 +0,0 @@
|
|||
*** scrt/apply.h.orig Mon Feb 22 11:13:08 1993
|
||||
--- scrt/apply.h Sat Mar 14 20:18:50 2009
|
||||
***************
|
||||
*** 60,63 ****
|
||||
|
||||
extern TSCP sc_apply_2dtwo();
|
||||
|
||||
! extern TSCP sc_unknowncall();
|
||||
--- 60,63 ----
|
||||
|
||||
extern TSCP sc_apply_2dtwo();
|
||||
|
||||
! extern TSCP sc_unknowncall( TSCP arg0, ... );
|
|
@ -1,55 +0,0 @@
|
|||
*** scrt/objects.c.orig Mon Feb 22 11:12:04 1993
|
||||
--- scrt/objects.c Sat Mar 14 20:28:00 2009
|
||||
***************
|
||||
*** 48,54 ****
|
||||
#include "heap.h"
|
||||
#include "apply.h"
|
||||
#include "cio.h"
|
||||
! #include <varargs.h>
|
||||
|
||||
#ifndef NULL
|
||||
#define NULL 0
|
||||
--- 48,54 ----
|
||||
#include "heap.h"
|
||||
#include "apply.h"
|
||||
#include "cio.h"
|
||||
! #include <stdarg.h>
|
||||
|
||||
#ifndef NULL
|
||||
#define NULL 0
|
||||
***************
|
||||
*** 293,310 ****
|
||||
allocate variables and is visible within the compiler as MAKECLOSURE.
|
||||
*/
|
||||
|
||||
! TSCP sc_makeclosure( va_alist )
|
||||
! va_dcl
|
||||
{
|
||||
va_list argl;
|
||||
- TSCP prevclosure;
|
||||
int count;
|
||||
SCP cp;
|
||||
PATSCP vars;
|
||||
|
||||
MUTEXON;
|
||||
! va_start( argl );
|
||||
! prevclosure = va_arg( argl, TSCP );
|
||||
count = va_arg( argl, int );
|
||||
cp = sc_allocateheap( CLOSURESIZE( count ), CLOSURETAG, count );
|
||||
cp->closure.closure = prevclosure;
|
||||
--- 293,307 ----
|
||||
allocate variables and is visible within the compiler as MAKECLOSURE.
|
||||
*/
|
||||
|
||||
! TSCP sc_makeclosure( TSCP prevclosure, ... )
|
||||
{
|
||||
va_list argl;
|
||||
int count;
|
||||
SCP cp;
|
||||
PATSCP vars;
|
||||
|
||||
MUTEXON;
|
||||
! va_start( argl, prevclosure );
|
||||
count = va_arg( argl, int );
|
||||
cp = sc_allocateheap( CLOSURESIZE( count ), CLOSURETAG, count );
|
||||
cp->closure.closure = prevclosure;
|
|
@ -1,19 +0,0 @@
|
|||
*** scrt/objects.h.orig Tue Feb 23 18:29:09 1993
|
||||
--- scrt/objects.h Sat Mar 14 20:21:00 2009
|
||||
***************
|
||||
*** 798,804 ****
|
||||
extern TSCP sc_makeclosure(...);
|
||||
extern TSCP sc_makeprocedure(...);
|
||||
#else
|
||||
! extern TSCP sc_makeclosure();
|
||||
extern TSCP sc_makeprocedure();
|
||||
#endif
|
||||
|
||||
--- 798,804 ----
|
||||
extern TSCP sc_makeclosure(...);
|
||||
extern TSCP sc_makeprocedure(...);
|
||||
#else
|
||||
! extern TSCP sc_makeclosure( TSCP prevclosure, ... );
|
||||
extern TSCP sc_makeprocedure();
|
||||
#endif
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
*** test/test23.sc.orig Mon Feb 22 11:27:23 1993
|
||||
--- test/test23.sc Sat Mar 14 22:05:08 2009
|
||||
***************
|
||||
*** 330,338 ****
|
||||
|
||||
;;; Access to an external array.
|
||||
|
||||
! (define-c-external _\i\o\b* ARRAY "_iob")
|
||||
! (eval-when (load) (define _iob _\i\o\b*))
|
||||
! (eval-when (eval) (define _iob 0))
|
||||
|
||||
;;; Access to an external procedure pointer.
|
||||
|
||||
--- 330,338 ----
|
||||
|
||||
;;; Access to an external array.
|
||||
|
||||
! ;(define-c-external _\i\o\b* ARRAY "_iob")
|
||||
! ;(eval-when (load) (define _iob _\i\o\b*))
|
||||
! ;(eval-when (eval) (define _iob 0))
|
||||
|
||||
;;; Access to an external procedure pointer.
|
||||
|
||||
***************
|
||||
*** 409,415 ****
|
||||
|
||||
(chk 130 (string-ref "" 0) (integer->char #o21))
|
||||
|
||||
! (chk 140 (number? _iob) #t)
|
||||
(chk 141 (number? hypot) #t)
|
||||
|
||||
(chk 150 (letrec ((x 1)) (define x 2) x) 2)
|
||||
--- 409,415 ----
|
||||
|
||||
(chk 130 (string-ref "" 0) (integer->char #o21))
|
||||
|
||||
! ;(chk 140 (number? _iob) #t)
|
||||
(chk 141 (number? hypot) #t)
|
||||
|
||||
(chk 150 (letrec ((x 1)) (define x 2) x) 2)
|
|
@ -1,34 +0,0 @@
|
|||
/*
|
||||
* SCHEME->C
|
||||
*
|
||||
* x86 assembly code.
|
||||
*
|
||||
* This code originally came from the Linux port, so someone else gets
|
||||
* the credit for writing it.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifdef __i486__
|
||||
.align 4
|
||||
#else
|
||||
.align 2
|
||||
#endif
|
||||
.globl sc_geti386regs
|
||||
|
||||
sc_geti386regs:
|
||||
pushl %ebp
|
||||
movl %esp,%ebp
|
||||
pushl %ecx
|
||||
movl %eax,%ecx
|
||||
movl 8(%ebp),%eax
|
||||
movl %ecx,(%eax)
|
||||
popl %ecx
|
||||
movl %ecx,4(%eax)
|
||||
movl %edx,8(%eax)
|
||||
movl %ebx,12(%eax)
|
||||
movl %esi,16(%eax)
|
||||
movl %edi,20(%eax)
|
||||
movl %ebp,%esp
|
||||
popl %ebp
|
||||
ret
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
Scheme->C is an implementation of the language Scheme as described
|
||||
in the Revised^4 Report on the Algorithmic Language Scheme (Lisp
|
||||
Pointers, Volume Iv, Number 3, July-September 1991).
|
||||
|
||||
This implementation has certain extensions to the language which
|
||||
allows Scheme to be compiled to C into standalone programs, combined
|
||||
with other languages, or compiled into the interpreter itself.
|
||||
|
||||
Scheme->C also includes an X interface library.
|
||||
|
||||
This port includes shared libs.
|
||||
|
||||
Ported to FreeBSD by Josh MacDonald, jmacd@uclink.berkeley.edu
|
|
@ -1,25 +0,0 @@
|
|||
bin/sci
|
||||
bin/scc
|
||||
bin/sccomp
|
||||
bin/scixl
|
||||
lib/libsc.a
|
||||
lib/libsc_p.a
|
||||
lib/libsc.so
|
||||
lib/libsc.so.1
|
||||
lib/libscxl.a
|
||||
lib/libscxl.so
|
||||
lib/libscxl.so.1
|
||||
lib/schemetoc/doc/README.FreeBSD
|
||||
lib/schemetoc/doc/embedded.psf
|
||||
lib/schemetoc/doc/hello.sc
|
||||
lib/schemetoc/doc/index.psf
|
||||
lib/schemetoc/doc/intro.psf
|
||||
lib/schemetoc/doc/puzzle.sc
|
||||
lib/schemetoc/doc/r4rs.psf
|
||||
lib/schemetoc/doc/smithnotes.psf
|
||||
lib/schemetoc/doc/test.sc
|
||||
lib/schemetoc/objects.h
|
||||
lib/schemetoc/options.h
|
||||
lib/schemetoc/predef.sc
|
||||
@dirrm lib/schemetoc/doc
|
||||
@dirrm lib/schemetoc
|
Loading…
Reference in a new issue