Skip to content

Commit

Permalink
Merge branch 'master' into configure-cc
Browse files Browse the repository at this point in the history
  • Loading branch information
akeep authored Jun 19, 2017
2 parents dd610ce + 1de3815 commit 33765fa
Show file tree
Hide file tree
Showing 95 changed files with 2,159 additions and 1,104 deletions.
13 changes: 8 additions & 5 deletions BUILDING
Original file line number Diff line number Diff line change
Expand Up @@ -167,15 +167,18 @@ The make file supports several targets:

WINDOWS

Building Chez Scheme under Windows with Cygwin follows the
instructions above except that make install is not supported:
Building Chez Scheme under Windows with Cygwin or Bash/WSL follows the
instructions above, except that 'make install' is not supported, and
the 'OS' environment variable must be set to 'Windows_NT' on Bash/WSL
(to indicate a build for Windows, as opposed to a build for Linux on
Windows):

./configure
make
env OS=Windows_NT ./configure
env OS=Windows_NT make

Prerequisites:

* Cygwin with bash, grep, make, sed, etc.
* Cygwin or Bash/WSL with bash, grep, make, sed, etc.
* Microsoft Visual Studio 2015
* WiX Toolset (for making an install)

Expand Down
43 changes: 43 additions & 0 deletions LOG
Original file line number Diff line number Diff line change
Expand Up @@ -477,4 +477,47 @@
- fix strip-fasl-file for immutable strings and vectors,
fix an $oops call, and fix a vector-index increment in hashing
strip.ss, 7.ss, newhash.ss, misc.ms
- fix signature of fxbit-set?
primdata.ss
- more optimizations for map and for-each with explicit list
extend the reductions for map and for-each when the arguments are
explicit lists like (list 1 2 3 ...) or '(1 2 3 ...).
cp0.ss,
4.ms
- reverted to the preceding version of cp0 due to failure to preserve
the expected evaluation order in one of the mats; removed the
corresponding equivalent-expansion tests.
cp0.ss,
4.ms
- restored the map and for-each optimizations with a fix for the
evaluation-order bug.
cp0.ss,
4.ms
- added date-dst? to access the previously-hidden DST information in
date records, and added date-zone-name to provide a time zone name.
date.ss, primdata.ss,
stats.c,
date.ms, root-experr*, patch-compile*,
system.stex
- fixed a bug in flonum-extractor, which on 64-bit machines was using an
8-byte read instead of a 4-byte read to pick up the 4 highest-order
bytes of a little-endian flonum, potentially reading past the end of
mapped memory for flonums produced by taking the imaginary part of an
inexact complexnum (which, unlike other flonums, are not aligned on
16-byte boundaries). The 8-byte load would also have failed to produce
correct results on 64-bit big-endian machines (of which we presently
have none) because the offsets passed to flonum-extractor assume the
bits are in the lowest-order 4 bytes of the extracted field.
cp0.ss,
misc.ms,
release_notes.stex
- support Windows build on Bash/WSL
BUILDING, configure, workarea, c/vs.bat (new), mats/vs.bat (new),
c/Mf-*nt, mats/Mf-*, s/Mf-base
- fix c/version.h for FreeBDS (machine types i3fb, ti3fb, a6fb, ta6fb)
- fix reference to libc.so to be libc.so.7 for FreeBSD (machine types
i3fb, ti3fb, a6fb, ta6fb)
foreign.ms
- added CC option to configure for selecting the compiler
configure,
c/Mf-*
3 changes: 2 additions & 1 deletion boot/a6le/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,8 @@ typedef unsigned long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/a6le/petite.boot
Binary file not shown.
Binary file modified boot/a6le/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/a6nt/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,8 @@ typedef unsigned long long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/a6nt/petite.boot
Binary file not shown.
Binary file modified boot/a6nt/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/a6osx/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,8 @@ typedef unsigned long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/a6osx/petite.boot
Binary file not shown.
Binary file modified boot/a6osx/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/i3le/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,8 @@ typedef unsigned long long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/i3le/petite.boot
Binary file not shown.
Binary file modified boot/i3le/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/i3nt/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,8 @@ typedef unsigned __int64 U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/i3nt/petite.boot
Binary file not shown.
Binary file modified boot/i3nt/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/i3osx/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,8 @@ typedef unsigned long long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/i3osx/petite.boot
Binary file not shown.
Binary file modified boot/i3osx/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/ta6le/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,8 @@ typedef unsigned long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/ta6le/petite.boot
Binary file not shown.
Binary file modified boot/ta6le/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/ta6nt/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,8 @@ typedef unsigned long long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/ta6nt/petite.boot
Binary file not shown.
Binary file modified boot/ta6nt/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/ta6osx/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,8 @@ typedef unsigned long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/ta6osx/petite.boot
Binary file not shown.
Binary file modified boot/ta6osx/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/ti3le/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,8 @@ typedef unsigned long long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/ti3le/petite.boot
Binary file not shown.
Binary file modified boot/ti3le/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/ti3nt/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,8 @@ typedef unsigned __int64 U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/ti3nt/petite.boot
Binary file not shown.
Binary file modified boot/ti3nt/scheme.boot
Binary file not shown.
3 changes: 2 additions & 1 deletion boot/ti3osx/equates.h
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,8 @@ typedef unsigned long long U64;
#define dtvec_mon 0x5
#define dtvec_nsec 0x0
#define dtvec_sec 0x1
#define dtvec_size 0xB
#define dtvec_size 0xC
#define dtvec_tzname 0xB
#define dtvec_tzoff 0xA
#define dtvec_wday 0x7
#define dtvec_yday 0x8
Expand Down
Binary file modified boot/ti3osx/petite.boot
Binary file not shown.
Binary file modified boot/ti3osx/scheme.boot
Binary file not shown.
20 changes: 2 additions & 18 deletions c/Mf-a6nt
Original file line number Diff line number Diff line change
Expand Up @@ -25,27 +25,11 @@ mdclean=vs.bat make.bat scheme.res ../bin/$m/*.exp mtscheme.exe* mdscheme.exe*
include Mf-base

${Scheme}: make.bat
./make.bat
cmd.exe /c make.bat
cp ../bin/$m/scheme.exe ../bin/$m/petite.exe

vs.bat:
echo '@echo off' > $@
echo 'if "%VS140COMNTOOLS%" neq "" goto :VS' >> $@
echo 'echo Visual Studio 2015 must be installed.' >> $@
echo 'exit 1' >> $@
echo ':VS' >> $@
echo 'set INCLUDE=' >> $@
echo 'set LIB=' >> $@
echo 'set LIBPATH=' >> $@
echo 'set MACHINETYPE=amd64' >> $@
echo 'if exist "%VS140COMNTOOLS%..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat" set MACHINETYPE=x86_amd64' >> $@
echo 'if exist "%VS140COMNTOOLS%..\..\VC\bin\amd64\vcvars64.bat" set MACHINETYPE=amd64' >> $@
echo 'call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" %MACHINETYPE%' >> $@
echo '%*' >> $@
chmod +x $@

make.bat: vs.bat
echo '@echo off' > $@
echo 'set MAKEFLAGS=' >> $@
echo 'call vs.bat nmake /f Makefile.$m /nologo %*' >> $@
echo 'vs.bat x86_amd64 amd64 && nmake /f Makefile.$m /nologo %*' >> $@
chmod +x $@
17 changes: 2 additions & 15 deletions c/Mf-i3nt
Original file line number Diff line number Diff line change
Expand Up @@ -25,24 +25,11 @@ mdclean=vs.bat make.bat scheme.res ../bin/$m/*.exp mtscheme.exe* mdscheme.exe*
include Mf-base

${Scheme}: make.bat
./make.bat
cmd.exe /c make.bat
cp ../bin/$m/scheme.exe ../bin/$m/petite.exe

vs.bat:
echo '@echo off' > $@
echo 'if "%VS140COMNTOOLS%" neq "" goto :VS' >> $@
echo 'echo Visual Studio 2015 must be installed.' >> $@
echo 'exit 1' >> $@
echo ':VS' >> $@
echo 'set INCLUDE=' >> $@
echo 'set LIB=' >> $@
echo 'set LIBPATH=' >> $@
echo 'call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" x86' >> $@
echo '%*' >> $@
chmod +x $@

make.bat: vs.bat
echo '@echo off' > $@
echo 'set MAKEFLAGS=' >> $@
echo 'call vs.bat nmake /f Makefile.$m /nologo %*' >> $@
echo 'vs.bat x86 && nmake /f Makefile.$m /nologo %*' >> $@
chmod +x $@
20 changes: 2 additions & 18 deletions c/Mf-ta6nt
Original file line number Diff line number Diff line change
Expand Up @@ -25,27 +25,11 @@ mdclean=vs.bat make.bat scheme.res ../bin/$m/*.exp mtscheme.exe* mdscheme.exe*
include Mf-base

${Scheme}: make.bat
./make.bat
cmd.exe /c make.bat
cp ../bin/$m/scheme.exe ../bin/$m/petite.exe

vs.bat:
echo '@echo off' > $@
echo 'if "%VS140COMNTOOLS%" neq "" goto :VS' >> $@
echo 'echo Visual Studio 2015 must be installed.' >> $@
echo 'exit 1' >> $@
echo ':VS' >> $@
echo 'set INCLUDE=' >> $@
echo 'set LIB=' >> $@
echo 'set LIBPATH=' >> $@
echo 'set MACHINETYPE=amd64' >> $@
echo 'if exist "%VS140COMNTOOLS%..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat" set MACHINETYPE=x86_amd64' >> $@
echo 'if exist "%VS140COMNTOOLS%..\..\VC\bin\amd64\vcvars64.bat" set MACHINETYPE=amd64' >> $@
echo 'call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" %MACHINETYPE%' >> $@
echo '%*' >> $@
chmod +x $@

make.bat: vs.bat
echo '@echo off' > $@
echo 'set MAKEFLAGS=' >> $@
echo 'call vs.bat nmake /f Makefile.$m /nologo %*' >> $@
echo 'vs.bat x86_amd64 amd64 && nmake /f Makefile.$m /nologo %*' >> $@
chmod +x $@
17 changes: 2 additions & 15 deletions c/Mf-ti3nt
Original file line number Diff line number Diff line change
Expand Up @@ -25,24 +25,11 @@ mdclean=vs.bat make.bat scheme.res ../bin/$m/*.exp mtscheme.exe* mdscheme.exe*
include Mf-base

${Scheme}: make.bat
./make.bat
cmd.exe /c make.bat
cp ../bin/$m/scheme.exe ../bin/$m/petite.exe

vs.bat:
echo '@echo off' > $@
echo 'if "%VS140COMNTOOLS%" neq "" goto :VS' >> $@
echo 'echo Visual Studio 2015 must be installed.' >> $@
echo 'exit 1' >> $@
echo ':VS' >> $@
echo 'set INCLUDE=' >> $@
echo 'set LIB=' >> $@
echo 'set LIBPATH=' >> $@
echo 'call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" x86' >> $@
echo '%*' >> $@
chmod +x $@

make.bat: vs.bat
echo '@echo off' > $@
echo 'set MAKEFLAGS=' >> $@
echo 'call vs.bat nmake /f Makefile.$m /nologo %*' >> $@
echo 'vs.bat x86 && nmake /f Makefile.$m /nologo %*' >> $@
chmod +x $@
Loading

0 comments on commit 33765fa

Please sign in to comment.