9.5.2 changes:
- updated version to 9.5.2 bintar/Makefile rpm/Makefile pkg/Makefile BUILDING NOTICE makefiles/Mf-install.in makefiles/Makefile-csug.in scheme.1.in c/Makefile.a6nt c/Makefile.i3nt c/Makefile.ta6nt c/Makefile.ti3nt mats/Mf-a6nt mats/Mf-i3nt mats/Mf-ta6nt mats/Mf-ti3nt workarea c/scheme.rc s/7.ss s/cmacros.ss release_notes/release_notes.stex csug/copyright.stex csug/csug.stex rpm/Makefile pkg/Makefile wininstall/Makefile wininstall/a6nt.wxs wininstall/i3nt.wxs wininstall/ta6nt.wxs wininstall/ti3nt.wxs - fixed handling of bintar, rpm, pkg make files newrelease - fixed a bug in the fasl representation and reading of mutually recursive ftypes where one of the members of the cycle is the parent of another, which manifested in the fasl reader raising bogus "incompatible record type" exceptions. (The bug could also affect other record-type descriptors with cycles involving parent rtds and "extra" fields.) object files created before this fix are incompatible with builds with this fix, and objects files created after this fix are incompatible builds without this fix. fasl.ss, strip.ss, fasl.c, ftype.ms, release_notes.stex original commit: 766d591c18c2779866d1a059700e6ff1c02cb3c5
This commit is contained in:
parent
bae0681d2b
commit
b2cecd2c0f
4
BUILDING
4
BUILDING
|
@ -1,5 +1,5 @@
|
||||||
Building Chez Scheme Version 9.5.1
|
Building Chez Scheme Version 9.5.2
|
||||||
Copyright 1984-2017 Cisco Systems, Inc.
|
Copyright 1984-2019 Cisco Systems, Inc.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
|
|
25
LOG
25
LOG
|
@ -1207,3 +1207,28 @@
|
||||||
- added library-search-handler, compile-whole-library, and improved
|
- added library-search-handler, compile-whole-library, and improved
|
||||||
packaging to the release notes.
|
packaging to the release notes.
|
||||||
release_notes/release_notes.stex
|
release_notes/release_notes.stex
|
||||||
|
|
||||||
|
9.5.2 changes:
|
||||||
|
- updated version to 9.5.2
|
||||||
|
bintar/Makefile rpm/Makefile pkg/Makefile BUILDING NOTICE
|
||||||
|
makefiles/Mf-install.in makefiles/Makefile-csug.in scheme.1.in
|
||||||
|
c/Makefile.a6nt c/Makefile.i3nt c/Makefile.ta6nt c/Makefile.ti3nt
|
||||||
|
mats/Mf-a6nt mats/Mf-i3nt mats/Mf-ta6nt mats/Mf-ti3nt workarea
|
||||||
|
c/scheme.rc s/7.ss s/cmacros.ss release_notes/release_notes.stex
|
||||||
|
csug/copyright.stex csug/csug.stex rpm/Makefile pkg/Makefile
|
||||||
|
wininstall/Makefile wininstall/a6nt.wxs wininstall/i3nt.wxs
|
||||||
|
wininstall/ta6nt.wxs wininstall/ti3nt.wxs
|
||||||
|
- fixed handling of bintar, rpm, pkg make files
|
||||||
|
newrelease
|
||||||
|
- fixed a bug in the fasl representation and reading of mutually
|
||||||
|
recursive ftypes where one of the members of the cycle is the
|
||||||
|
parent of another, which manifested in the fasl reader raising
|
||||||
|
bogus "incompatible record type" exceptions. (The bug could also
|
||||||
|
affect other record-type descriptors with cycles involving parent
|
||||||
|
rtds and "extra" fields.) object files created before this fix
|
||||||
|
are incompatible with builds with this fix, and objects files
|
||||||
|
created after this fix are incompatible builds without this fix.
|
||||||
|
fasl.ss, strip.ss,
|
||||||
|
fasl.c,
|
||||||
|
ftype.ms,
|
||||||
|
release_notes.stex
|
||||||
|
|
4
NOTICE
4
NOTICE
|
@ -1,5 +1,5 @@
|
||||||
Chez Scheme Version 9.5.1
|
Chez Scheme Version 9.5.2
|
||||||
Copyright 1984-2017 Cisco Systems, Inc.
|
Copyright 1984-2019 Cisco Systems, Inc.
|
||||||
|
|
||||||
This product includes code developed by Cisco Systems, Inc.
|
This product includes code developed by Cisco Systems, Inc.
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
version = 9.5.1
|
version = 9.5.2
|
||||||
m := $(shell find ../bin/* -type d | xargs basename)
|
m := $(shell find ../bin/* -type d | xargs basename)
|
||||||
|
|
||||||
R = csv$(version)
|
R = csv$(version)
|
||||||
|
|
|
@ -17,11 +17,11 @@ m = a6nt
|
||||||
|
|
||||||
# following have to use \ for directory separator
|
# following have to use \ for directory separator
|
||||||
SchemeInclude = ..\boot\$m
|
SchemeInclude = ..\boot\$m
|
||||||
KernelDll = ..\bin\$m\csv951.dll
|
KernelDll = ..\bin\$m\csv952.dll
|
||||||
KernelLib = ..\bin\$m\csv951.lib
|
KernelLib = ..\bin\$m\csv952.lib
|
||||||
MTKernelLib = ..\boot\$m\csv951mt.lib
|
MTKernelLib = ..\boot\$m\csv952mt.lib
|
||||||
MDKernelLib = ..\boot\$m\csv951md.lib
|
MDKernelLib = ..\boot\$m\csv952md.lib
|
||||||
KernelExp = ..\bin\$m\csv951.exp
|
KernelExp = ..\bin\$m\csv952.exp
|
||||||
Exec = ..\bin\$m\scheme.exe
|
Exec = ..\bin\$m\scheme.exe
|
||||||
MTMain = ..\boot\$m\mainmt.obj
|
MTMain = ..\boot\$m\mainmt.obj
|
||||||
MDMain = ..\boot\$m\mainmd.obj
|
MDMain = ..\boot\$m\mainmd.obj
|
||||||
|
|
|
@ -17,11 +17,11 @@ m = i3nt
|
||||||
|
|
||||||
# following have to use \ for directory separator
|
# following have to use \ for directory separator
|
||||||
SchemeInclude = ..\boot\$m
|
SchemeInclude = ..\boot\$m
|
||||||
KernelDll = ..\bin\$m\csv951.dll
|
KernelDll = ..\bin\$m\csv952.dll
|
||||||
KernelLib = ..\bin\$m\csv951.lib
|
KernelLib = ..\bin\$m\csv952.lib
|
||||||
MTKernelLib = ..\boot\$m\csv951mt.lib
|
MTKernelLib = ..\boot\$m\csv952mt.lib
|
||||||
MDKernelLib = ..\boot\$m\csv951md.lib
|
MDKernelLib = ..\boot\$m\csv952md.lib
|
||||||
KernelExp = ..\bin\$m\csv951.exp
|
KernelExp = ..\bin\$m\csv952.exp
|
||||||
Exec = ..\bin\$m\scheme.exe
|
Exec = ..\bin\$m\scheme.exe
|
||||||
MTMain = ..\boot\$m\mainmt.obj
|
MTMain = ..\boot\$m\mainmt.obj
|
||||||
MDMain = ..\boot\$m\mainmd.obj
|
MDMain = ..\boot\$m\mainmd.obj
|
||||||
|
|
|
@ -17,11 +17,11 @@ m = ta6nt
|
||||||
|
|
||||||
# following have to use \ for directory separator
|
# following have to use \ for directory separator
|
||||||
SchemeInclude = ..\boot\$m
|
SchemeInclude = ..\boot\$m
|
||||||
KernelDll = ..\bin\$m\csv951.dll
|
KernelDll = ..\bin\$m\csv952.dll
|
||||||
KernelLib = ..\bin\$m\csv951.lib
|
KernelLib = ..\bin\$m\csv952.lib
|
||||||
MTKernelLib = ..\boot\$m\csv951mt.lib
|
MTKernelLib = ..\boot\$m\csv952mt.lib
|
||||||
MDKernelLib = ..\boot\$m\csv951md.lib
|
MDKernelLib = ..\boot\$m\csv952md.lib
|
||||||
KernelExp = ..\bin\$m\csv951.exp
|
KernelExp = ..\bin\$m\csv952.exp
|
||||||
Exec = ..\bin\$m\scheme.exe
|
Exec = ..\bin\$m\scheme.exe
|
||||||
MTMain = ..\boot\$m\mainmt.obj
|
MTMain = ..\boot\$m\mainmt.obj
|
||||||
MDMain = ..\boot\$m\mainmd.obj
|
MDMain = ..\boot\$m\mainmd.obj
|
||||||
|
|
|
@ -17,11 +17,11 @@ m = ti3nt
|
||||||
|
|
||||||
# following have to use \ for directory separator
|
# following have to use \ for directory separator
|
||||||
SchemeInclude = ..\boot\$m
|
SchemeInclude = ..\boot\$m
|
||||||
KernelDll = ..\bin\$m\csv951.dll
|
KernelDll = ..\bin\$m\csv952.dll
|
||||||
KernelLib = ..\bin\$m\csv951.lib
|
KernelLib = ..\bin\$m\csv952.lib
|
||||||
MTKernelLib = ..\boot\$m\csv951mt.lib
|
MTKernelLib = ..\boot\$m\csv952mt.lib
|
||||||
MDKernelLib = ..\boot\$m\csv951md.lib
|
MDKernelLib = ..\boot\$m\csv952md.lib
|
||||||
KernelExp = ..\bin\$m\csv951.exp
|
KernelExp = ..\bin\$m\csv952.exp
|
||||||
Exec = ..\bin\$m\scheme.exe
|
Exec = ..\bin\$m\scheme.exe
|
||||||
MTMain = ..\boot\$m\mainmt.obj
|
MTMain = ..\boot\$m\mainmt.obj
|
||||||
MDMain = ..\boot\$m\mainmd.obj
|
MDMain = ..\boot\$m\mainmd.obj
|
||||||
|
|
23
c/fasl.c
23
c/fasl.c
|
@ -71,7 +71,7 @@
|
||||||
*
|
*
|
||||||
* -> {base-rtd}
|
* -> {base-rtd}
|
||||||
*
|
*
|
||||||
* -> {rtd}<faslrecord>
|
* -> {rtd}<fasl uid><faslrecord>
|
||||||
*
|
*
|
||||||
* -> {record}<faslrecord>
|
* -> {record}<faslrecord>
|
||||||
*
|
*
|
||||||
|
@ -696,24 +696,25 @@ static void faslin(ptr tc, ptr *x, ptr t, ptr *pstrbuf, faslFile f) {
|
||||||
} case fasl_type_rtd: {
|
} case fasl_type_rtd: {
|
||||||
ptr rtd, rtd_uid, plist, ls;
|
ptr rtd, rtd_uid, plist, ls;
|
||||||
|
|
||||||
fasl_record(tc, x, t, pstrbuf, f);
|
faslin(tc, &rtd_uid, t, pstrbuf, f);
|
||||||
rtd = *x;
|
|
||||||
rtd_uid = RECORDDESCUID(rtd);
|
|
||||||
|
|
||||||
/* see if uid's property list already registers an rtd */
|
/* look for rtd on uid's property list */
|
||||||
plist = SYMSPLIST(rtd_uid);
|
plist = SYMSPLIST(rtd_uid);
|
||||||
for (ls = plist; ls != Snil; ls = Scdr(Scdr(ls))) {
|
for (ls = plist; ls != Snil; ls = Scdr(Scdr(ls))) {
|
||||||
if (Scar(ls) == S_G.rtd_key) {
|
if (Scar(ls) == S_G.rtd_key) {
|
||||||
ptr old_rtd = Scar(Scdr(ls));
|
ptr tmp;
|
||||||
/* if so, check new rtd against old rtd and return old rtd */
|
*x = rtd = Scar(Scdr(ls));
|
||||||
if (!rtd_equiv(rtd, old_rtd))
|
fasl_record(tc, &tmp, t, pstrbuf, f);
|
||||||
S_error2("", "incompatible record type ~s in ~a", RECORDDESCNAME(rtd), f->uf->path);
|
if (!rtd_equiv(tmp, rtd))
|
||||||
*x = old_rtd;
|
S_error2("", "incompatible record type ~s in ~a", RECORDDESCNAME(tmp), f->uf->path);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* if not, register it */
|
fasl_record(tc, x, t, pstrbuf, f);
|
||||||
|
rtd = *x;
|
||||||
|
|
||||||
|
/* register rtd on uid's property list */
|
||||||
SETSYMSPLIST(rtd_uid, Scons(S_G.rtd_key, Scons(rtd, plist)));
|
SETSYMSPLIST(rtd_uid, Scons(S_G.rtd_key, Scons(rtd, plist)));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
12
c/scheme.rc
12
c/scheme.rc
|
@ -1,8 +1,8 @@
|
||||||
#include "winver.h"
|
#include "winver.h"
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
VS_VERSION_INFO VERSIONINFO
|
||||||
FILEVERSION 9,5,1,0
|
FILEVERSION 9,5,2,0
|
||||||
PRODUCTVERSION 9,5,1,0
|
PRODUCTVERSION 9,5,2,0
|
||||||
FILEFLAGSMASK 0x3fL
|
FILEFLAGSMASK 0x3fL
|
||||||
FILEFLAGS 0x0L
|
FILEFLAGS 0x0L
|
||||||
FILEOS VOS__WINDOWS32
|
FILEOS VOS__WINDOWS32
|
||||||
|
@ -12,13 +12,13 @@ VS_VERSION_INFO VERSIONINFO
|
||||||
BLOCK "StringFileInfo" {
|
BLOCK "StringFileInfo" {
|
||||||
BLOCK "04090000" {
|
BLOCK "04090000" {
|
||||||
VALUE "CompanyName", "Cisco Systems, Inc."
|
VALUE "CompanyName", "Cisco Systems, Inc."
|
||||||
VALUE "FileDescription", "Chez Scheme Version 9.5.1"
|
VALUE "FileDescription", "Chez Scheme Version 9.5.2"
|
||||||
VALUE "FileVersion", "9.5.1"
|
VALUE "FileVersion", "9.5.2"
|
||||||
VALUE "InternalName", "scheme.exe"
|
VALUE "InternalName", "scheme.exe"
|
||||||
VALUE "LegalCopyright", "Copyright 1984-2017 Cisco Systems, Inc. Licensed under the Apache License, Version 2.0."
|
VALUE "LegalCopyright", "Copyright 1984-2019 Cisco Systems, Inc. Licensed under the Apache License, Version 2.0."
|
||||||
VALUE "OriginalFilename", "scheme.exe"
|
VALUE "OriginalFilename", "scheme.exe"
|
||||||
VALUE "ProductName", "Chez Scheme"
|
VALUE "ProductName", "Chez Scheme"
|
||||||
VALUE "ProductVersion", "9.5.1"
|
VALUE "ProductVersion", "9.5.2"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
BLOCK "VarFileInfo" {
|
BLOCK "VarFileInfo" {
|
||||||
|
|
|
@ -16,13 +16,13 @@
|
||||||
|
|
||||||
\centerline{}\vfill
|
\centerline{}\vfill
|
||||||
|
|
||||||
\textbf{\copyright~2005--2018 Cisco Systems, Inc.}
|
\textbf{\copyright~2019 Cisco Systems, Inc.}
|
||||||
|
|
||||||
Licensed under the Apache License Version 2.0\\
|
Licensed under the Apache License Version 2.0\\
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
% NB: also update corresponding notice in csug.stex
|
% NB: also update corresponding notice in csug.stex
|
||||||
Revised \revisiondate~for Chez Scheme Version 9.5.1.
|
Revised \revisiondate~for Chez Scheme Version 9.5.2.
|
||||||
|
|
||||||
\medskip\noindent
|
\medskip\noindent
|
||||||
Cisco and the Cisco logo are trademarks or registered trademarks
|
Cisco and the Cisco logo are trademarks or registered trademarks
|
||||||
|
|
|
@ -60,10 +60,10 @@
|
||||||
\def\copyrightnotice{\raw{<hr class=copyright align=left>
|
\def\copyrightnotice{\raw{<hr class=copyright align=left>
|
||||||
<p>
|
<p>
|
||||||
<a class=plain href="index.html">Chez Scheme Version 9 User's Guide</a><br>
|
<a class=plain href="index.html">Chez Scheme Version 9 User's Guide</a><br>
|
||||||
Copyright © 2018 Cisco Systems, Inc.<br>
|
Copyright © 2019 Cisco Systems, Inc.<br>
|
||||||
Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License Version 2.0</a>
|
Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License Version 2.0</a>
|
||||||
(<a class=plain href="canned/copyright.html">full copyright notice.</a>).</br>
|
(<a class=plain href="canned/copyright.html">full copyright notice.</a>).</br>
|
||||||
Revised} \revisiondate\raw{ for Chez Scheme Version 9.5.1<br>
|
Revised} \revisiondate\raw{ for Chez Scheme Version 9.5.2<br>
|
||||||
<a class=plain href="canned/about.html">about this book</a>
|
<a class=plain href="canned/about.html">about this book</a>
|
||||||
</tr></table>
|
</tr></table>
|
||||||
}}
|
}}
|
||||||
|
|
|
@ -55,7 +55,7 @@ InstallScriptName=scheme-script
|
||||||
# no changes should be needed below this point #
|
# no changes should be needed below this point #
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
Version=csv9.5.1
|
Version=csv9.5.2
|
||||||
Include=boot/$m
|
Include=boot/$m
|
||||||
PetiteBoot=boot/$m/petite.boot
|
PetiteBoot=boot/$m/petite.boot
|
||||||
SchemeBoot=boot/$m/scheme.boot
|
SchemeBoot=boot/$m/scheme.boot
|
||||||
|
|
|
@ -22,7 +22,7 @@ mdclean = cat_flush.exe cat_flush.obj foreign1.exp foreign1.lib foreign1.obj for
|
||||||
include Mf-base
|
include Mf-base
|
||||||
|
|
||||||
foreign1.so: $(fsrc)
|
foreign1.so: $(fsrc)
|
||||||
cmd.exe /c "vs.bat amd64 && cl /DWIN32 /DX86_64 /Fe$@ /I${Include} /LD /MD /nologo ../bin/$m/csv951.lib $(fsrc)"
|
cmd.exe /c "vs.bat amd64 && cl /DWIN32 /DX86_64 /Fe$@ /I${Include} /LD /MD /nologo ../bin/$m/csv952.lib $(fsrc)"
|
||||||
|
|
||||||
cat_flush: cat_flush.c
|
cat_flush: cat_flush.c
|
||||||
cmd.exe /c "vs.bat amd64 && cl /DWIN32 /DX86_64 /MD /nologo $<"
|
cmd.exe /c "vs.bat amd64 && cl /DWIN32 /DX86_64 /MD /nologo $<"
|
||||||
|
|
|
@ -22,7 +22,7 @@ mdclean = cat_flush.exe cat_flush.obj foreign1.exp foreign1.lib foreign1.obj for
|
||||||
include Mf-base
|
include Mf-base
|
||||||
|
|
||||||
foreign1.so: $(fsrc)
|
foreign1.so: $(fsrc)
|
||||||
cmd.exe /c "vs.bat x86 && cl /DWIN32 /Fe$@ /I${Include} /LD /MD /nologo ../bin/$m/csv951.lib $(fsrc)"
|
cmd.exe /c "vs.bat x86 && cl /DWIN32 /Fe$@ /I${Include} /LD /MD /nologo ../bin/$m/csv952.lib $(fsrc)"
|
||||||
|
|
||||||
cat_flush: cat_flush.c
|
cat_flush: cat_flush.c
|
||||||
cmd.exe /c "vs.bat x86 && cl /DWIN32 /MD /nologo $<"
|
cmd.exe /c "vs.bat x86 && cl /DWIN32 /MD /nologo $<"
|
||||||
|
|
|
@ -22,7 +22,7 @@ mdclean = cat_flush.exe cat_flush.obj foreign1.exp foreign1.lib foreign1.obj for
|
||||||
include Mf-base
|
include Mf-base
|
||||||
|
|
||||||
foreign1.so: $(fsrc)
|
foreign1.so: $(fsrc)
|
||||||
cmd.exe /c "vs.bat amd64 && cl /DWIN32 /DX86_64 /Fe$@ /I${Include} /LD /MD /nologo ../bin/$m/csv951.lib $(fsrc)"
|
cmd.exe /c "vs.bat amd64 && cl /DWIN32 /DX86_64 /Fe$@ /I${Include} /LD /MD /nologo ../bin/$m/csv952.lib $(fsrc)"
|
||||||
|
|
||||||
cat_flush: cat_flush.c
|
cat_flush: cat_flush.c
|
||||||
cmd.exe /c "vs.bat amd64 && cl /DWIN32 /DX86_64 /MD /nologo $<"
|
cmd.exe /c "vs.bat amd64 && cl /DWIN32 /DX86_64 /MD /nologo $<"
|
||||||
|
|
|
@ -22,7 +22,7 @@ mdclean = cat_flush.exe cat_flush.obj foreign1.exp foreign1.lib foreign1.obj for
|
||||||
include Mf-base
|
include Mf-base
|
||||||
|
|
||||||
foreign1.so: $(fsrc)
|
foreign1.so: $(fsrc)
|
||||||
cmd.exe /c "vs.bat x86 && cl /DWIN32 /Fe$@ /I${Include} /LD /MD /nologo ../bin/$m/csv951.lib $(fsrc)"
|
cmd.exe /c "vs.bat x86 && cl /DWIN32 /Fe$@ /I${Include} /LD /MD /nologo ../bin/$m/csv952.lib $(fsrc)"
|
||||||
|
|
||||||
cat_flush: cat_flush.c
|
cat_flush: cat_flush.c
|
||||||
cmd.exe /c "vs.bat x86 && cl /DWIN32 /MD /nologo $<"
|
cmd.exe /c "vs.bat x86 && cl /DWIN32 /MD /nologo $<"
|
||||||
|
|
|
@ -2876,6 +2876,42 @@
|
||||||
(ftype-set! fcf-B (next) x (make-ftype-pointer fcf-B 0))
|
(ftype-set! fcf-B (next) x (make-ftype-pointer fcf-B 0))
|
||||||
(ftype-pointer? (ftype-ref fcf-B (next) x)))
|
(ftype-pointer? (ftype-ref fcf-B (next) x)))
|
||||||
(lambda () (foreign-free addr))))
|
(lambda () (foreign-free addr))))
|
||||||
|
; regression test: verify that we can fasl in a cyclic ftd that's already registered on its uid
|
||||||
|
(begin
|
||||||
|
(mkfile "testfile-ftype3.ss"
|
||||||
|
'(define-ftype
|
||||||
|
[ftype3-A (* ftype3-B)]
|
||||||
|
[ftype3-B (struct [h ftype3-A])]))
|
||||||
|
(compile-file "testfile-ftype3")
|
||||||
|
#t)
|
||||||
|
(begin ; once should prove it
|
||||||
|
(load "testfile-ftype3.so")
|
||||||
|
(ftype-pointer? ftype3-A (make-ftype-pointer ftype3-B 0)))
|
||||||
|
(begin ; twice for that warm fuzzy feeling
|
||||||
|
(load "testfile-ftype3.so")
|
||||||
|
(ftype-pointer? ftype3-A (make-ftype-pointer ftype3-B 0)))
|
||||||
|
(begin
|
||||||
|
(mkfile "testfile-ftype4.ss"
|
||||||
|
'(define-ftype
|
||||||
|
[ftype4-A (struct [q (* ftype4-B)])]
|
||||||
|
[ftype4-B (struct [h (* ftype4-A)])]))
|
||||||
|
(compile-file "testfile-ftype4")
|
||||||
|
#t)
|
||||||
|
(begin ; once should prove it
|
||||||
|
(load "testfile-ftype4.so")
|
||||||
|
(ftype-pointer? ftype4-A (make-ftype-pointer ftype4-A 0)))
|
||||||
|
(begin ; twice for that warm fuzzy feeling
|
||||||
|
(load "testfile-ftype4.so")
|
||||||
|
(ftype-pointer? ftype4-B (make-ftype-pointer ftype4-B 0)))
|
||||||
|
(begin
|
||||||
|
(mkfile "testfile-ftype5.ss"
|
||||||
|
'(define-ftype
|
||||||
|
[ftype5-A (struct [q (* ftype4-A)])]))
|
||||||
|
(compile-file "testfile-ftype5")
|
||||||
|
#t)
|
||||||
|
(begin
|
||||||
|
(load "testfile-ftype5.so")
|
||||||
|
(ftype-pointer? ftype5-A (make-ftype-pointer ftype5-A 0)))
|
||||||
)
|
)
|
||||||
|
|
||||||
(mat ftype-bits
|
(mat ftype-bits
|
||||||
|
|
18
newrelease
18
newrelease
|
@ -76,15 +76,15 @@ if ($status != 0) exit 1
|
||||||
cd $W
|
cd $W
|
||||||
|
|
||||||
/bin/rm bintar/Makefile
|
/bin/rm bintar/Makefile
|
||||||
sed -e "s/^v = .*/v = $R/" ../bintar/Makefile > bintar/Makefile
|
sed -e "s/^version = .*/version = $R/" ../bintar/Makefile > bintar/Makefile
|
||||||
set updatedfiles = ($updatedfiles bintar/Makefile)
|
set updatedfiles = ($updatedfiles bintar/Makefile)
|
||||||
|
|
||||||
/bin/rm rpm/Makefile
|
/bin/rm rpm/Makefile
|
||||||
sed -e "s/^v = .*/v = $R/" ../rpm/Makefile > rpm/Makefile
|
sed -e "s/^version = .*/version = $R/" ../rpm/Makefile > rpm/Makefile
|
||||||
set updatedfiles = ($updatedfiles rpm/Makefile)
|
set updatedfiles = ($updatedfiles rpm/Makefile)
|
||||||
|
|
||||||
/bin/rm pkg/Makefile
|
/bin/rm pkg/Makefile
|
||||||
sed -e "s/^v = .*/v = $R/" ../pkg/Makefile > pkg/Makefile
|
sed -e "s/^version = .*/version = $R/" ../pkg/Makefile > pkg/Makefile
|
||||||
set updatedfiles = ($updatedfiles pkg/Makefile)
|
set updatedfiles = ($updatedfiles pkg/Makefile)
|
||||||
|
|
||||||
/bin/rm -f BUILDING
|
/bin/rm -f BUILDING
|
||||||
|
@ -105,7 +105,9 @@ sed -e "s/csug[0-9]\.[0-9]/csug$MR.$mR/" -e "s/csug[0-9]_[0-9]/csug$MR""_$mR/" .
|
||||||
set updatedfiles = ($updatedfiles makefiles/Mf-install.in makefiles/Makefile-csug.in)
|
set updatedfiles = ($updatedfiles makefiles/Mf-install.in makefiles/Makefile-csug.in)
|
||||||
|
|
||||||
/bin/rm scheme.1.in
|
/bin/rm scheme.1.in
|
||||||
sed -e "s/Chez Scheme Version [0-9]\.[0-9]\(\.[0-9]\)*/Chez Scheme Version $R/" ../scheme.1.in > scheme.1.in
|
sed -e "s/Chez Scheme Version [0-9]\.[0-9]\(\.[0-9]\)* .* [0-9][0-9]*/Chez Scheme Version $R `date +'%B %Y'`/" \
|
||||||
|
-e "s/Copyright .* Cisco Systems, Inc./Copyright `date +%Y` Cisco Systems, Inc./" \
|
||||||
|
../scheme.1.in > scheme.1.in
|
||||||
set updatedfiles = ($updatedfiles scheme.1.in)
|
set updatedfiles = ($updatedfiles scheme.1.in)
|
||||||
|
|
||||||
/bin/rm -f c/Makefile.{,t}{i3,a6}nt
|
/bin/rm -f c/Makefile.{,t}{i3,a6}nt
|
||||||
|
@ -147,8 +149,12 @@ sed -e "s/thisversion{Version [^ ]*}/thisversion{Version $R}/" ../release_notes/
|
||||||
set updatedfiles = ($updatedfiles release_notes/release_notes.stex)
|
set updatedfiles = ($updatedfiles release_notes/release_notes.stex)
|
||||||
|
|
||||||
mkdir csug
|
mkdir csug
|
||||||
sed -e "s/Revised\(.*\)for Chez Scheme Version [^ ]*\./Revised\1for Chez Scheme Version $R./" ../csug/copyright.stex > csug/copyright.stex
|
sed -e "s/Revised\(.*\)for Chez Scheme Version [^ ]*\./Revised\1for Chez Scheme Version $R./" \
|
||||||
sed -e "s/Revised\(.*\)for Chez Scheme Version [^ ]*<br>/Revised\1for Chez Scheme Version $R<br>/" ../csug/csug.stex > csug/csug.stex
|
-e "s/n\\copyright~ .* Cisco Systems, Inc./n\\copyright~`date +%Y` Cisco Systems, Inc./" \
|
||||||
|
../csug/copyright.stex > csug/copyright.stex
|
||||||
|
sed -e "s/Revised\(.*\)for Chez Scheme Version [^ ]*<br>/Revised\1for Chez Scheme Version $R<br>/" \
|
||||||
|
-e "s/nCopyright © .* Cisco Systems, Inc./nCopyright \© `date +%Y` Cisco Systems, Inc./" \
|
||||||
|
../csug/csug.stex > csug/csug.stex
|
||||||
set updatedfiles = ($updatedfiles csug/copyright.stex csug/csug.stex)
|
set updatedfiles = ($updatedfiles csug/copyright.stex csug/csug.stex)
|
||||||
|
|
||||||
/bin/rm -f rpm/Makefile
|
/bin/rm -f rpm/Makefile
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
m := $(shell find ../bin/* -type d | xargs basename)
|
m := $(shell find ../bin/* -type d | xargs basename)
|
||||||
version = 9.5.1
|
version = 9.5.2
|
||||||
release = 1
|
release = 1
|
||||||
|
|
||||||
DOTUSER = $(shell ls -ld . | sed -e 's/[^ ]* *[^ ]* *\([^ ]*\).*/\1/')
|
DOTUSER = $(shell ls -ld . | sed -e 's/[^ ]* *[^ ]* *\([^ ]*\).*/\1/')
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
\documentclass{releasenotes}
|
\documentclass{releasenotes}
|
||||||
|
|
||||||
\thisversion{Version 9.5.1}
|
\thisversion{Version 9.5.2}
|
||||||
\thatversion{Version 8.4}
|
\thatversion{Version 8.4}
|
||||||
\pubmonth{January}
|
\pubmonth{January}
|
||||||
\pubyear{2019}
|
\pubyear{2019}
|
||||||
|
@ -1663,6 +1663,27 @@ in fasl files does not generally make sense.
|
||||||
%-----------------------------------------------------------------------------
|
%-----------------------------------------------------------------------------
|
||||||
\section{Bug Fixes}\label{section:bugfixes}
|
\section{Bug Fixes}\label{section:bugfixes}
|
||||||
|
|
||||||
|
\subsection{Fasl representation change for recursive ftypes (9.5.2)}
|
||||||
|
|
||||||
|
A bug in the reading of mutually recursive ftype definitions from
|
||||||
|
compiled files has been fixed.
|
||||||
|
The bug was triggered by recursive ftype definitions in which one
|
||||||
|
of the mutually recursive ftypes is a subtype of another, as in:
|
||||||
|
|
||||||
|
\schemedisplay
|
||||||
|
(define-ftype
|
||||||
|
[A (* B)]
|
||||||
|
[B (struct [h A])]))
|
||||||
|
\endschemedisplay
|
||||||
|
|
||||||
|
It manifested in the fasl reader raising bogus "incompatible record
|
||||||
|
type" exceptions when two or more references to one of the ftypes
|
||||||
|
occur in in separate compiled files or in separate top-level forms
|
||||||
|
of a file compiled via \scheme{compile-file}.
|
||||||
|
The bug could also have affected other record-type descriptors with
|
||||||
|
cycles involving parent rtds and ``extra'' fields as well as fasl
|
||||||
|
output created via \scheme{fasl-write}.
|
||||||
|
|
||||||
\subsection{Unbound object resulting from libraries combined with \protect\scheme{compile-whole-library} (9.5.1)}
|
\subsection{Unbound object resulting from libraries combined with \protect\scheme{compile-whole-library} (9.5.1)}
|
||||||
|
|
||||||
A bug in \scheme{compile-whole-library} that allowed the invoke code for a
|
A bug in \scheme{compile-whole-library} that allowed the invoke code for a
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
version = 9.5.1
|
version = 9.5.2
|
||||||
release = 1
|
release = 1
|
||||||
m := $(shell find ../bin/* -type d | xargs basename)
|
m := $(shell find ../bin/* -type d | xargs basename)
|
||||||
arch := $(shell if test "$(m)" == "i3le" ; then echo i686 ; elif test "$(m)" == "a6le" ; then echo x86_64 ; else echo UNKNOWN ; fi)
|
arch := $(shell if test "$(m)" == "i3le" ; then echo i686 ; elif test "$(m)" == "a6le" ; then echo x86_64 ; else echo UNKNOWN ; fi)
|
||||||
|
|
2
s/7.ss
2
s/7.ss
|
@ -658,7 +658,7 @@
|
||||||
|
|
||||||
(define $scheme-greeting
|
(define $scheme-greeting
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(format "~a\nCopyright 1984-2017 Cisco Systems, Inc.\n"
|
(format "~a\nCopyright 1984-2019 Cisco Systems, Inc.\n"
|
||||||
(scheme-version))))
|
(scheme-version))))
|
||||||
|
|
||||||
(define $session-key #f)
|
(define $session-key #f)
|
||||||
|
|
|
@ -328,7 +328,7 @@
|
||||||
[(_ foo e1 e2) e1] ...
|
[(_ foo e1 e2) e1] ...
|
||||||
[(_ bar e1 e2) e2]))))])))
|
[(_ bar e1 e2) e2]))))])))
|
||||||
|
|
||||||
(define-constant scheme-version #x00090501)
|
(define-constant scheme-version #x00090502)
|
||||||
|
|
||||||
(define-syntax define-machine-types
|
(define-syntax define-machine-types
|
||||||
(lambda (x)
|
(lambda (x)
|
||||||
|
|
|
@ -68,6 +68,9 @@
|
||||||
(define bld-record
|
(define bld-record
|
||||||
(lambda (x t a?)
|
(lambda (x t a?)
|
||||||
(unless (eq? x #!base-rtd)
|
(unless (eq? x #!base-rtd)
|
||||||
|
(when (record-type-descriptor? x)
|
||||||
|
; fasl representation for record-type-descriptor includes uid separately and as part of the record
|
||||||
|
(bld (record-type-uid x) t a?))
|
||||||
(really-bld-record x t a?))))
|
(really-bld-record x t a?))))
|
||||||
|
|
||||||
(define really-bld-record
|
(define really-bld-record
|
||||||
|
@ -423,6 +426,7 @@
|
||||||
(cond
|
(cond
|
||||||
[(record-type-descriptor? x)
|
[(record-type-descriptor? x)
|
||||||
(put-u8 p (constant fasl-type-rtd))
|
(put-u8 p (constant fasl-type-rtd))
|
||||||
|
(wrf (record-type-uid x) p t a?)
|
||||||
(wrf-fields (maybe-remake-rtd x) p t a?)]
|
(wrf-fields (maybe-remake-rtd x) p t a?)]
|
||||||
[else
|
[else
|
||||||
(put-u8 p (constant fasl-type-record))
|
(put-u8 p (constant fasl-type-record))
|
||||||
|
|
45
s/strip.ss
45
s/strip.ss
|
@ -28,7 +28,7 @@
|
||||||
(vector ty vfasl)
|
(vector ty vfasl)
|
||||||
(fxvector ty viptr)
|
(fxvector ty viptr)
|
||||||
(bytevector ty bv)
|
(bytevector ty bv)
|
||||||
(record ty size nflds rtd pad-ty* fld*)
|
(record maybe-uid size nflds rtd pad-ty* fld*) ; maybe-uid => rtd
|
||||||
(closure offset c)
|
(closure offset c)
|
||||||
(flonum high low)
|
(flonum high low)
|
||||||
(small-integer iptr)
|
(small-integer iptr)
|
||||||
|
@ -172,6 +172,13 @@
|
||||||
(vector-set! v i
|
(vector-set! v i
|
||||||
(let ([key (read-fasl p g)])
|
(let ([key (read-fasl p g)])
|
||||||
(cons key (read-fasl p g))))))))
|
(cons key (read-fasl p g))))))))
|
||||||
|
(define (read-record p g maybe-uid)
|
||||||
|
(let* ([size (read-uptr p)] [nflds (read-uptr p)] [rtd (read-fasl p g)])
|
||||||
|
(let loop ([n nflds] [rpad-ty* '()] [rfld* '()])
|
||||||
|
(if (fx= n 0)
|
||||||
|
(fasl-record maybe-uid size nflds rtd (reverse rpad-ty*) (reverse rfld*))
|
||||||
|
(let* ([pad-ty (read-byte p)] [fld (read-fld p g (fxlogand pad-ty #x0f))])
|
||||||
|
(loop (fx- n 1) (cons pad-ty rpad-ty*) (cons fld rfld*)))))))
|
||||||
(define (read-fasl p g)
|
(define (read-fasl p g)
|
||||||
(let ([ty (read-byte p)])
|
(let ([ty (read-byte p)])
|
||||||
(fasl-type-case ty
|
(fasl-type-case ty
|
||||||
|
@ -202,13 +209,8 @@
|
||||||
((fx= i n) bv)
|
((fx= i n) bv)
|
||||||
(bytevector-u8-set! bv i (read-byte p))))))]
|
(bytevector-u8-set! bv i (read-byte p))))))]
|
||||||
[(fasl-type-base-rtd) (fasl-tuple ty '#())]
|
[(fasl-type-base-rtd) (fasl-tuple ty '#())]
|
||||||
[(fasl-type-rtd fasl-type-record)
|
[(fasl-type-rtd) (read-record p g (read-fasl p g))]
|
||||||
(let* ([size (read-uptr p)] [nflds (read-uptr p)] [rtd (read-fasl p g)])
|
[(fasl-type-record) (read-record p g #f)]
|
||||||
(let loop ([n nflds] [rpad-ty* '()] [rfld* '()])
|
|
||||||
(if (fx= n 0)
|
|
||||||
(fasl-record ty size nflds rtd (reverse rpad-ty*) (reverse rfld*))
|
|
||||||
(let* ([pad-ty (read-byte p)] [fld (read-fld p g (fxlogand pad-ty #x0f))])
|
|
||||||
(loop (fx- n 1) (cons pad-ty rpad-ty*) (cons fld rfld*))))))]
|
|
||||||
[(fasl-type-closure)
|
[(fasl-type-closure)
|
||||||
(let* ([offset (read-uptr p)]
|
(let* ([offset (read-uptr p)]
|
||||||
[c (read-fasl p g)])
|
[c (read-fasl p g)])
|
||||||
|
@ -326,9 +328,9 @@
|
||||||
(define fasl-record?
|
(define fasl-record?
|
||||||
(lambda (uname x)
|
(lambda (uname x)
|
||||||
(fasl-case (follow-indirect x)
|
(fasl-case (follow-indirect x)
|
||||||
[record (ty size nflds rtd pad-ty* fld*)
|
[record (maybe-uid size nflds rtd pad-ty* fld*)
|
||||||
(fasl-case (follow-indirect rtd)
|
(fasl-case (follow-indirect rtd)
|
||||||
[record (rtd-ty rtd-size rtd-nflds rtd-rtd rtd-pad-ty* rtd-fld*)
|
[record (rtd-uid rtd-size rtd-nflds rtd-rtd rtd-pad-ty* rtd-fld*)
|
||||||
(and (> (length rtd-fld*) uid-index)
|
(and (> (length rtd-fld*) uid-index)
|
||||||
(field-case (list-ref rtd-fld* uid-index)
|
(field-case (list-ref rtd-fld* uid-index)
|
||||||
[ptr (fasl)
|
[ptr (fasl)
|
||||||
|
@ -351,7 +353,7 @@
|
||||||
(unless (fasl-record? uname x)
|
(unless (fasl-record? uname x)
|
||||||
(sorry! "unexpected type of object ~s" x))
|
(sorry! "unexpected type of object ~s" x))
|
||||||
(fasl-case (follow-indirect x)
|
(fasl-case (follow-indirect x)
|
||||||
[record (ty size nflds rtd pad-ty* fld*)
|
[record (maybe-uid size nflds rtd pad-ty* fld*)
|
||||||
(unless (> (length fld*) index)
|
(unless (> (length fld*) index)
|
||||||
(sorry! "fewer fields than expected for ~s" x))
|
(sorry! "fewer fields than expected for ~s" x))
|
||||||
(let ([fld (list-ref fld* index)])
|
(let ([fld (list-ref fld* index)])
|
||||||
|
@ -401,11 +403,12 @@
|
||||||
[vector (ty vfasl) (build-graph! x t (build-vfasl! vfasl))]
|
[vector (ty vfasl) (build-graph! x t (build-vfasl! vfasl))]
|
||||||
[fxvector (ty viptr) (build-graph! x t void)]
|
[fxvector (ty viptr) (build-graph! x t void)]
|
||||||
[bytevector (ty viptr) (build-graph! x t void)]
|
[bytevector (ty viptr) (build-graph! x t void)]
|
||||||
[record (ty size nflds rtd pad-ty* fld*)
|
[record (maybe-uid size nflds rtd pad-ty* fld*)
|
||||||
(if (and strip-source-annotations? (fasl-annotation? x))
|
(if (and strip-source-annotations? (fasl-annotation? x))
|
||||||
(build! (fasl-annotation-stripped x) t)
|
(build! (fasl-annotation-stripped x) t)
|
||||||
(build-graph! x t
|
(build-graph! x t
|
||||||
(lambda ()
|
(lambda ()
|
||||||
|
(when maybe-uid (build! maybe-uid t))
|
||||||
(build! rtd t)
|
(build! rtd t)
|
||||||
(for-each (lambda (fld)
|
(for-each (lambda (fld)
|
||||||
(field-case fld
|
(field-case fld
|
||||||
|
@ -538,12 +541,16 @@
|
||||||
(write-byte p ty)
|
(write-byte p ty)
|
||||||
(write-uptr p (bytevector-length bv))
|
(write-uptr p (bytevector-length bv))
|
||||||
(put-bytevector p bv)))]
|
(put-bytevector p bv)))]
|
||||||
[record (ty size nflds rtd pad-ty* fld*)
|
[record (maybe-uid size nflds rtd pad-ty* fld*)
|
||||||
(if (and strip-source-annotations? (fasl-annotation? x))
|
(if (and strip-source-annotations? (fasl-annotation? x))
|
||||||
(write-fasl p t (fasl-annotation-stripped x))
|
(write-fasl p t (fasl-annotation-stripped x))
|
||||||
(write-graph p t x
|
(write-graph p t x
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(write-byte p ty)
|
(if maybe-uid
|
||||||
|
(begin
|
||||||
|
(write-byte p (constant fasl-type-rtd))
|
||||||
|
(write-fasl p t maybe-uid))
|
||||||
|
(write-byte p (constant fasl-type-record)))
|
||||||
(write-uptr p size)
|
(write-uptr p size)
|
||||||
(write-uptr p nflds)
|
(write-uptr p nflds)
|
||||||
(write-fasl p t rtd)
|
(write-fasl p t rtd)
|
||||||
|
@ -695,14 +702,14 @@
|
||||||
(fasl-case x
|
(fasl-case x
|
||||||
[closure (offset c) #t]
|
[closure (offset c) #t]
|
||||||
[revisit (fasl) #t]
|
[revisit (fasl) #t]
|
||||||
[record (ty size nflds rtd pad-ty* fld*) (revisit-record? x)]
|
[record (maybe-uid size nflds rtd pad-ty* fld*) (revisit-record? x)]
|
||||||
[else #f])))
|
[else #f])))
|
||||||
(fasl-case x
|
(fasl-case x
|
||||||
[entry (fasl)
|
[entry (fasl)
|
||||||
(fasl-case fasl
|
(fasl-case fasl
|
||||||
[closure (offset c) x]
|
[closure (offset c) x]
|
||||||
[revisit (fasl) x]
|
[revisit (fasl) x]
|
||||||
[record (ty size nflds rtd pad-ty* fld*) (and (revisit-record? fasl) x)]
|
[record (maybe-uid size nflds rtd pad-ty* fld*) (and (revisit-record? fasl) x)]
|
||||||
[group (vfasl)
|
[group (vfasl)
|
||||||
(let ([fasl* (filter revisit-stuff? (vector->list vfasl))])
|
(let ([fasl* (filter revisit-stuff? (vector->list vfasl))])
|
||||||
(and (not (null? fasl*))
|
(and (not (null? fasl*))
|
||||||
|
@ -831,8 +838,10 @@
|
||||||
[vector (ty vfasl) (and (eqv? ty1 ty2) (vandmap fasl=? vfasl1 vfasl2))]
|
[vector (ty vfasl) (and (eqv? ty1 ty2) (vandmap fasl=? vfasl1 vfasl2))]
|
||||||
[fxvector (ty viptr) (and (eqv? ty1 ty2) (vandmap = viptr1 viptr2))]
|
[fxvector (ty viptr) (and (eqv? ty1 ty2) (vandmap = viptr1 viptr2))]
|
||||||
[bytevector (ty bv) (and (eqv? ty1 ty2) (bytevector=? bv1 bv2))]
|
[bytevector (ty bv) (and (eqv? ty1 ty2) (bytevector=? bv1 bv2))]
|
||||||
[record (ty size nflds rtd pad-ty* fld*)
|
[record (maybe-uid size nflds rtd pad-ty* fld*)
|
||||||
(and (eqv? ty1 ty2)
|
(and (if maybe-uid1
|
||||||
|
(and maybe-uid2 (fasl=? maybe-uid1 maybe-uid2))
|
||||||
|
(not maybe-uid2))
|
||||||
(eqv? size1 size2)
|
(eqv? size1 size2)
|
||||||
(eqv? nflds1 nflds2)
|
(eqv? nflds1 nflds2)
|
||||||
(fasl=? rtd1 rtd2)
|
(fasl=? rtd1 rtd2)
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
.if t .ds c caf\o'\'e'
|
.if t .ds c caf\o'\'e'
|
||||||
.if n .ds c cafe
|
.if n .ds c cafe
|
||||||
.ds ]W
|
.ds ]W
|
||||||
.TH SCHEME 1 "Chez Scheme Version 9.5.1 October 2017"
|
.TH SCHEME 1 "Chez Scheme Version 9.5.2 March 2019"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
\fIChez Scheme\fP
|
\fIChez Scheme\fP
|
||||||
.br
|
.br
|
||||||
|
@ -791,6 +791,6 @@ Second Edition\fP,
|
||||||
MIT press (1996).
|
MIT press (1996).
|
||||||
.in -5
|
.in -5
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
Copyright 2017 Cisco Systems, Inc.
|
Copyright 2019 Cisco Systems, Inc.
|
||||||
Licensed under the Apache License, Version 2.0
|
Licensed under the Apache License, Version 2.0
|
||||||
(http://www.apache.org/licenses/LICENSE-2.0)
|
(http://www.apache.org/licenses/LICENSE-2.0)
|
||||||
|
|
2
wininstall/Makefile
Executable file → Normal file
2
wininstall/Makefile
Executable file → Normal file
|
@ -1,4 +1,4 @@
|
||||||
VERSION := 9.5.1
|
VERSION := 9.5.2
|
||||||
WIXEXTENSIONS := -ext WixUIExtension -ext WixBalExtension
|
WIXEXTENSIONS := -ext WixUIExtension -ext WixBalExtension
|
||||||
|
|
||||||
ChezScheme.exe: x86/bundle.wixobj ChezScheme32.msi ChezScheme64.msi
|
ChezScheme.exe: x86/bundle.wixobj ChezScheme32.msi ChezScheme64.msi
|
||||||
|
|
12
wininstall/a6nt.wxs
Executable file → Normal file
12
wininstall/a6nt.wxs
Executable file → Normal file
|
@ -4,16 +4,16 @@
|
||||||
<DirectoryRef Id="D_bin">
|
<DirectoryRef Id="D_bin">
|
||||||
<Directory Id="D_bin_a6nt" Name="a6nt">
|
<Directory Id="D_bin_a6nt" Name="a6nt">
|
||||||
<Component Id="cmp9E121291956F53F264990A9F6E93E67D" Guid="*">
|
<Component Id="cmp9E121291956F53F264990A9F6E93E67D" Guid="*">
|
||||||
<File Id="fil174DC3B31231BE75291782CBF71B1ECB" KeyPath="yes" Source="..\a6nt\bin\a6nt\csv951.dll" />
|
<File Id="fil174DC3B31231BE75291782CBF71B1ECB" KeyPath="yes" Source="..\a6nt\bin\a6nt\csv952.dll" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmpDB181AE3BD838D4F431CAE12DB40B70A" Guid="*">
|
<Component Id="cmpDB181AE3BD838D4F431CAE12DB40B70A" Guid="*">
|
||||||
<File Id="fil53D3BD37CECBBF28D1DB95A8B750DBDC" KeyPath="yes" Source="..\a6nt\bin\a6nt\csv951.exp" />
|
<File Id="fil53D3BD37CECBBF28D1DB95A8B750DBDC" KeyPath="yes" Source="..\a6nt\bin\a6nt\csv952.exp" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp0B0A70880E3C505B199705D415235AC7" Guid="*">
|
<Component Id="cmp0B0A70880E3C505B199705D415235AC7" Guid="*">
|
||||||
<File Id="fil69E98A18AB5AD3061617C9E68F536773" KeyPath="yes" Source="..\a6nt\bin\a6nt\csv951.lib" />
|
<File Id="fil69E98A18AB5AD3061617C9E68F536773" KeyPath="yes" Source="..\a6nt\bin\a6nt\csv952.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp41C1093548579E6BE087DD4BE735B7C5" Guid="*">
|
<Component Id="cmp41C1093548579E6BE087DD4BE735B7C5" Guid="*">
|
||||||
<File Id="fil11683117A53DD772D9B6F0C11BE06C7C" KeyPath="yes" Source="..\a6nt\bin\a6nt\csv951.pdb" />
|
<File Id="fil11683117A53DD772D9B6F0C11BE06C7C" KeyPath="yes" Source="..\a6nt\bin\a6nt\csv952.pdb" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmpD50999EDF5C2480D6F6F6A04E6B127F3" Guid="*">
|
<Component Id="cmpD50999EDF5C2480D6F6F6A04E6B127F3" Guid="*">
|
||||||
<File Id="filE439E2DE55CFE1366273AF3E232D4519" KeyPath="yes" Source="..\a6nt\bin\a6nt\petite.exe" />
|
<File Id="filE439E2DE55CFE1366273AF3E232D4519" KeyPath="yes" Source="..\a6nt\bin\a6nt\petite.exe" />
|
||||||
|
@ -40,10 +40,10 @@
|
||||||
<DirectoryRef Id="D_boot">
|
<DirectoryRef Id="D_boot">
|
||||||
<Directory Id="D_boot_a6nt" Name="a6nt">
|
<Directory Id="D_boot_a6nt" Name="a6nt">
|
||||||
<Component Id="cmpB8AFC5E7298C4FB423F21E474D718248" Guid="*">
|
<Component Id="cmpB8AFC5E7298C4FB423F21E474D718248" Guid="*">
|
||||||
<File Id="filAA3DCFC2962A0A679D26BAEF2EE45D18" KeyPath="yes" Source="..\a6nt\boot\a6nt\csv951md.lib" />
|
<File Id="filAA3DCFC2962A0A679D26BAEF2EE45D18" KeyPath="yes" Source="..\a6nt\boot\a6nt\csv952md.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp41A0F324C636C03565EFAB5DC1197958" Guid="*">
|
<Component Id="cmp41A0F324C636C03565EFAB5DC1197958" Guid="*">
|
||||||
<File Id="fil0052F236986BD25DFE0D0DE76854483B" KeyPath="yes" Source="..\a6nt\boot\a6nt\csv951mt.lib" />
|
<File Id="fil0052F236986BD25DFE0D0DE76854483B" KeyPath="yes" Source="..\a6nt\boot\a6nt\csv952mt.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp08025CB77BA01465D21171D27231AE6A" Guid="*">
|
<Component Id="cmp08025CB77BA01465D21171D27231AE6A" Guid="*">
|
||||||
<File Id="fil7FF609B8D0F6C6E984910D4458F7B76B" KeyPath="yes" Source="..\a6nt\boot\a6nt\mainmd.obj" />
|
<File Id="fil7FF609B8D0F6C6E984910D4458F7B76B" KeyPath="yes" Source="..\a6nt\boot\a6nt\mainmd.obj" />
|
||||||
|
|
12
wininstall/i3nt.wxs
Executable file → Normal file
12
wininstall/i3nt.wxs
Executable file → Normal file
|
@ -4,16 +4,16 @@
|
||||||
<DirectoryRef Id="D_bin">
|
<DirectoryRef Id="D_bin">
|
||||||
<Directory Id="D_bin_i3nt" Name="i3nt">
|
<Directory Id="D_bin_i3nt" Name="i3nt">
|
||||||
<Component Id="cmp3EAD5F342D86023E323C2F3E96A596B9" Guid="*">
|
<Component Id="cmp3EAD5F342D86023E323C2F3E96A596B9" Guid="*">
|
||||||
<File Id="filF35C82CDA44DE51CEFA9FF8CA1B38AAA" KeyPath="yes" Source="..\i3nt\bin\i3nt\csv951.dll" />
|
<File Id="filF35C82CDA44DE51CEFA9FF8CA1B38AAA" KeyPath="yes" Source="..\i3nt\bin\i3nt\csv952.dll" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmpF2410A7AF5FB7C10A33DA57476B0E56B" Guid="*">
|
<Component Id="cmpF2410A7AF5FB7C10A33DA57476B0E56B" Guid="*">
|
||||||
<File Id="filFE4E60D4DD4AEF0DDA574E6EF117FEC0" KeyPath="yes" Source="..\i3nt\bin\i3nt\csv951.exp" />
|
<File Id="filFE4E60D4DD4AEF0DDA574E6EF117FEC0" KeyPath="yes" Source="..\i3nt\bin\i3nt\csv952.exp" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp905F254ECBC3BCB861BBBF60B0F34D73" Guid="*">
|
<Component Id="cmp905F254ECBC3BCB861BBBF60B0F34D73" Guid="*">
|
||||||
<File Id="fil811C8A53860477F59CD4D11BF7C36A5E" KeyPath="yes" Source="..\i3nt\bin\i3nt\csv951.lib" />
|
<File Id="fil811C8A53860477F59CD4D11BF7C36A5E" KeyPath="yes" Source="..\i3nt\bin\i3nt\csv952.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp43EE1BA94E7D15B5F9721D32B41CDFF1" Guid="*">
|
<Component Id="cmp43EE1BA94E7D15B5F9721D32B41CDFF1" Guid="*">
|
||||||
<File Id="fil3475AECC40E6C77A1E5A74C81205D246" KeyPath="yes" Source="..\i3nt\bin\i3nt\csv951.pdb" />
|
<File Id="fil3475AECC40E6C77A1E5A74C81205D246" KeyPath="yes" Source="..\i3nt\bin\i3nt\csv952.pdb" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp2660425B08191D07FD2B8E4D12C25CAF" Guid="*">
|
<Component Id="cmp2660425B08191D07FD2B8E4D12C25CAF" Guid="*">
|
||||||
<File Id="fil6C14AF587FDAABD1440BADC640EEF64E" KeyPath="yes" Source="..\i3nt\bin\i3nt\petite.exe" />
|
<File Id="fil6C14AF587FDAABD1440BADC640EEF64E" KeyPath="yes" Source="..\i3nt\bin\i3nt\petite.exe" />
|
||||||
|
@ -40,10 +40,10 @@
|
||||||
<DirectoryRef Id="D_boot">
|
<DirectoryRef Id="D_boot">
|
||||||
<Directory Id="D_boot_i3nt" Name="i3nt">
|
<Directory Id="D_boot_i3nt" Name="i3nt">
|
||||||
<Component Id="cmp47E339F22F1D268C3D889C89DC04B1EC" Guid="*">
|
<Component Id="cmp47E339F22F1D268C3D889C89DC04B1EC" Guid="*">
|
||||||
<File Id="filFAE795432021A108F72A5A1763549848" KeyPath="yes" Source="..\i3nt\boot\i3nt\csv951md.lib" />
|
<File Id="filFAE795432021A108F72A5A1763549848" KeyPath="yes" Source="..\i3nt\boot\i3nt\csv952md.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp97E86E3E78EC5C1E35333413F9D239A9" Guid="*">
|
<Component Id="cmp97E86E3E78EC5C1E35333413F9D239A9" Guid="*">
|
||||||
<File Id="filC2A38DD4D83F793279D6D10E8D553145" KeyPath="yes" Source="..\i3nt\boot\i3nt\csv951mt.lib" />
|
<File Id="filC2A38DD4D83F793279D6D10E8D553145" KeyPath="yes" Source="..\i3nt\boot\i3nt\csv952mt.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp4EC08D9AF0D6DADE3077A7EB099476B4" Guid="*">
|
<Component Id="cmp4EC08D9AF0D6DADE3077A7EB099476B4" Guid="*">
|
||||||
<File Id="fil47E4EBA05B181E80FAF43A5B84DCC1D6" KeyPath="yes" Source="..\i3nt\boot\i3nt\mainmd.obj" />
|
<File Id="fil47E4EBA05B181E80FAF43A5B84DCC1D6" KeyPath="yes" Source="..\i3nt\boot\i3nt\mainmd.obj" />
|
||||||
|
|
12
wininstall/ta6nt.wxs
Executable file → Normal file
12
wininstall/ta6nt.wxs
Executable file → Normal file
|
@ -4,16 +4,16 @@
|
||||||
<DirectoryRef Id="D_bin">
|
<DirectoryRef Id="D_bin">
|
||||||
<Directory Id="D_bin_ta6nt" Name="ta6nt">
|
<Directory Id="D_bin_ta6nt" Name="ta6nt">
|
||||||
<Component Id="cmpA67EF6318D00B4209BFCD0BFDCDF781C" Guid="*">
|
<Component Id="cmpA67EF6318D00B4209BFCD0BFDCDF781C" Guid="*">
|
||||||
<File Id="fil6AE7892DB37FF6D2C21B5EC064C90DE5" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\csv951.dll" />
|
<File Id="fil6AE7892DB37FF6D2C21B5EC064C90DE5" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\csv952.dll" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmpF41FF9DE554F79FB6FBD85E5B80A5221" Guid="*">
|
<Component Id="cmpF41FF9DE554F79FB6FBD85E5B80A5221" Guid="*">
|
||||||
<File Id="fil9157F8FB18F1F75BE50A64A9C227BF61" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\csv951.exp" />
|
<File Id="fil9157F8FB18F1F75BE50A64A9C227BF61" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\csv952.exp" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp372F759C97C3C69E4C336B81D807E4F5" Guid="*">
|
<Component Id="cmp372F759C97C3C69E4C336B81D807E4F5" Guid="*">
|
||||||
<File Id="fil602A8BBB83416294672AA22507E6452A" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\csv951.lib" />
|
<File Id="fil602A8BBB83416294672AA22507E6452A" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\csv952.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp009F56824D2716FAAC978FE17A4D947D" Guid="*">
|
<Component Id="cmp009F56824D2716FAAC978FE17A4D947D" Guid="*">
|
||||||
<File Id="filDD0E7D06D27FC4C00388CB48E4B2818C" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\csv951.pdb" />
|
<File Id="filDD0E7D06D27FC4C00388CB48E4B2818C" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\csv952.pdb" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp50972D99EC9DDA63E4BC6E29DAA592D0" Guid="*">
|
<Component Id="cmp50972D99EC9DDA63E4BC6E29DAA592D0" Guid="*">
|
||||||
<File Id="fil8A260A0B8935F8F9011AA2EDB9147BDE" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\petite.exe" />
|
<File Id="fil8A260A0B8935F8F9011AA2EDB9147BDE" KeyPath="yes" Source="..\ta6nt\bin\ta6nt\petite.exe" />
|
||||||
|
@ -40,10 +40,10 @@
|
||||||
<DirectoryRef Id="D_boot">
|
<DirectoryRef Id="D_boot">
|
||||||
<Directory Id="D_boot_ta6nt" Name="ta6nt">
|
<Directory Id="D_boot_ta6nt" Name="ta6nt">
|
||||||
<Component Id="cmpCBDB945622604667783C3C57A0427DF5" Guid="*">
|
<Component Id="cmpCBDB945622604667783C3C57A0427DF5" Guid="*">
|
||||||
<File Id="filD3E4E45F8404EE812C5DAFCBEB2502AA" KeyPath="yes" Source="..\ta6nt\boot\ta6nt\csv951md.lib" />
|
<File Id="filD3E4E45F8404EE812C5DAFCBEB2502AA" KeyPath="yes" Source="..\ta6nt\boot\ta6nt\csv952md.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmpD7880184C113065E511275EFD531D589" Guid="*">
|
<Component Id="cmpD7880184C113065E511275EFD531D589" Guid="*">
|
||||||
<File Id="filDC2D7E1DB036BAE5B7FFA7FE14F3CD69" KeyPath="yes" Source="..\ta6nt\boot\ta6nt\csv951mt.lib" />
|
<File Id="filDC2D7E1DB036BAE5B7FFA7FE14F3CD69" KeyPath="yes" Source="..\ta6nt\boot\ta6nt\csv952mt.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp5211817ED85951CDAF2FD5E2419BD211" Guid="*">
|
<Component Id="cmp5211817ED85951CDAF2FD5E2419BD211" Guid="*">
|
||||||
<File Id="fil21839A8D4062A72DEAB3156D77EEE82A" KeyPath="yes" Source="..\ta6nt\boot\ta6nt\mainmd.obj" />
|
<File Id="fil21839A8D4062A72DEAB3156D77EEE82A" KeyPath="yes" Source="..\ta6nt\boot\ta6nt\mainmd.obj" />
|
||||||
|
|
12
wininstall/ti3nt.wxs
Executable file → Normal file
12
wininstall/ti3nt.wxs
Executable file → Normal file
|
@ -4,16 +4,16 @@
|
||||||
<DirectoryRef Id="D_bin">
|
<DirectoryRef Id="D_bin">
|
||||||
<Directory Id="D_bin_ti3nt" Name="ti3nt">
|
<Directory Id="D_bin_ti3nt" Name="ti3nt">
|
||||||
<Component Id="cmp3E51840FF941B7410025EFB2215EAB58" Guid="*">
|
<Component Id="cmp3E51840FF941B7410025EFB2215EAB58" Guid="*">
|
||||||
<File Id="fil6B96E8682034EC96C7842C5024FDF620" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\csv951.dll" />
|
<File Id="fil6B96E8682034EC96C7842C5024FDF620" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\csv952.dll" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp68BA21E76800BFFA057D33973E89D8F4" Guid="*">
|
<Component Id="cmp68BA21E76800BFFA057D33973E89D8F4" Guid="*">
|
||||||
<File Id="fil5F505E9200C84F7887C4D12FA9D9D794" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\csv951.exp" />
|
<File Id="fil5F505E9200C84F7887C4D12FA9D9D794" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\csv952.exp" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmpCA1F1C55C49A3A332E60F8D0D78363C2" Guid="*">
|
<Component Id="cmpCA1F1C55C49A3A332E60F8D0D78363C2" Guid="*">
|
||||||
<File Id="filB8607D2BF295249DD6F51070A687E14B" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\csv951.lib" />
|
<File Id="filB8607D2BF295249DD6F51070A687E14B" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\csv952.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp01D266C0ECE540BE4BF6E6AE14AFFCBB" Guid="*">
|
<Component Id="cmp01D266C0ECE540BE4BF6E6AE14AFFCBB" Guid="*">
|
||||||
<File Id="filE99735E84B4934FC41AAA6BBF547F1C5" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\csv951.pdb" />
|
<File Id="filE99735E84B4934FC41AAA6BBF547F1C5" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\csv952.pdb" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmpC00FD9C7415A1D2D22EA38F5259CAAA4" Guid="*">
|
<Component Id="cmpC00FD9C7415A1D2D22EA38F5259CAAA4" Guid="*">
|
||||||
<File Id="fil80D2F31CB0D3B8F98E3C8CCAF9DA6F29" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\petite.exe" />
|
<File Id="fil80D2F31CB0D3B8F98E3C8CCAF9DA6F29" KeyPath="yes" Source="..\ti3nt\bin\ti3nt\petite.exe" />
|
||||||
|
@ -40,10 +40,10 @@
|
||||||
<DirectoryRef Id="D_boot">
|
<DirectoryRef Id="D_boot">
|
||||||
<Directory Id="D_boot_ti3nt" Name="ti3nt">
|
<Directory Id="D_boot_ti3nt" Name="ti3nt">
|
||||||
<Component Id="cmp7099C9EB3F487AAFE3A880CED21FA9C2" Guid="*">
|
<Component Id="cmp7099C9EB3F487AAFE3A880CED21FA9C2" Guid="*">
|
||||||
<File Id="filD5DA8D84F54BC985AA246BBD3FB15239" KeyPath="yes" Source="..\ti3nt\boot\ti3nt\csv951md.lib" />
|
<File Id="filD5DA8D84F54BC985AA246BBD3FB15239" KeyPath="yes" Source="..\ti3nt\boot\ti3nt\csv952md.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmpF3038779EA05930E72A29C15DC2D64B2" Guid="*">
|
<Component Id="cmpF3038779EA05930E72A29C15DC2D64B2" Guid="*">
|
||||||
<File Id="filFB335FE01A6D5ED27AD2BC179DB8E265" KeyPath="yes" Source="..\ti3nt\boot\ti3nt\csv951mt.lib" />
|
<File Id="filFB335FE01A6D5ED27AD2BC179DB8E265" KeyPath="yes" Source="..\ti3nt\boot\ti3nt\csv952mt.lib" />
|
||||||
</Component>
|
</Component>
|
||||||
<Component Id="cmp9DDE0523EFC5EEA983DE3CFA0F493908" Guid="*">
|
<Component Id="cmp9DDE0523EFC5EEA983DE3CFA0F493908" Guid="*">
|
||||||
<File Id="fil139F59D34D1A013CCB2AEC11507287AA" KeyPath="yes" Source="..\ti3nt\boot\ti3nt\mainmd.obj" />
|
<File Id="fil139F59D34D1A013CCB2AEC11507287AA" KeyPath="yes" Source="..\ti3nt\boot\ti3nt\mainmd.obj" />
|
||||||
|
|
8
workarea
8
workarea
|
@ -200,8 +200,8 @@ case $M in
|
||||||
*nt)
|
*nt)
|
||||||
(cd $W/boot/$M; workln ../../../boot/$M/mainmd.obj mainmd.obj)
|
(cd $W/boot/$M; workln ../../../boot/$M/mainmd.obj mainmd.obj)
|
||||||
(cd $W/boot/$M; workln ../../../boot/$M/mainmt.obj mainmt.obj)
|
(cd $W/boot/$M; workln ../../../boot/$M/mainmt.obj mainmt.obj)
|
||||||
(cd $W/boot/$M; workln ../../../boot/$M/csv951md.lib csv951md.lib)
|
(cd $W/boot/$M; workln ../../../boot/$M/csv952md.lib csv952md.lib)
|
||||||
(cd $W/boot/$M; workln ../../../boot/$M/csv951mt.lib csv951mt.lib)
|
(cd $W/boot/$M; workln ../../../boot/$M/csv952mt.lib csv952mt.lib)
|
||||||
(cd $W/boot/$M; workln ../../../boot/$M/scheme.res scheme.res)
|
(cd $W/boot/$M; workln ../../../boot/$M/scheme.res scheme.res)
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
@ -216,8 +216,8 @@ case $M in
|
||||||
*nt)
|
*nt)
|
||||||
(cd $W/bin/$M; workln ../../../bin/$M/scheme.exe scheme.exe)
|
(cd $W/bin/$M; workln ../../../bin/$M/scheme.exe scheme.exe)
|
||||||
(cd $W/bin/$M; forceworkln2 scheme.exe petite.exe)
|
(cd $W/bin/$M; forceworkln2 scheme.exe petite.exe)
|
||||||
(cd $W/bin/$M; workln ../../../bin/$M/csv951.dll csv951.dll)
|
(cd $W/bin/$M; workln ../../../bin/$M/csv952.dll csv952.dll)
|
||||||
(cd $W/bin/$M; workln ../../../bin/$M/csv951.lib csv951.lib)
|
(cd $W/bin/$M; workln ../../../bin/$M/csv952.lib csv952.lib)
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
(cd $W/bin/$M; workln ../../../bin/$M/scheme scheme)
|
(cd $W/bin/$M; workln ../../../bin/$M/scheme scheme)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user