--- a/Make.proto Thu Dec 16 12:22:24 1993 +0100
+++ b/Make.proto Mon Dec 20 18:48:43 1993 +0100
@@ -29,16 +29,16 @@
allNew: $(TARGET) abbrev.stc newResources newSource newBitmaps binary
-smalltalk: main.$(O) classList.$(O) $(LIBOBJS) $(LIBRUN) $(EXTRALIBS)
+smalltalk: main.$(O) classList.$(O) $(LIBOBJS) $(LIBRUN) $(EXTRA_LIBS)
$(LD) $(ST_LDFLAG) $(LDFLAGS) -o smalltalk$(EXE) \
$(CRT0) main.$(O) classList.$(O) \
$(LIBOBJS) $(EXTRA_OBJ) $(CLIENTOBJS) \
../goodies/Persistency/libdbase$(OBJNAME) \
$(LIBRUNDIR)/hidata.$(O) $(LIBRUN) \
$(DBLIB) \
- $(MATHLIB) $(EXTRALIBS) $(SYSLIBS) $(CRTN)
+ $(MATHLIB) $(EXTRA_LIBS) $(SYSLIBS) $(CRTN)
-fulltalk: main.$(O) fclassList.$(O) $(LIBOBJS) $(LIBRUN) $(EXTRALIBS)
+fulltalk: main.$(O) fclassList.$(O) $(LIBOBJS) $(LIBRUN) $(EXTRA_LIBS)
$(LD) $(ST_LDFLAG) $(LDFLAGS) -o smalltalk$(EXE) \
$(CRT0) main.$(O) fclassList.$(O) \
$(LIBOBJS) $(EXTRA_OBJ) $(CLIENTOBJS) \
@@ -50,22 +50,22 @@
../goodies/Benchmarks/misc/libPDBench$(OBJNAME) \
$(LIBRUNDIR)/hidata.$(O) $(LIBRUN) \
$(DBLIB) \
- $(MATHLIB) $(EXTRALIBS) $(SYSLIBS) $(CRTN)
+ $(MATHLIB) $(EXTRA_LIBS) $(SYSLIBS) $(CRTN)
-minitalk: main.$(O) miniclassList.$(O) $(LIBBASICOBJ) $(LIBCOMPOBJ) $(LIBRUN)
+minitalk: main.$(O) miniList.$(O) $(LIBBASICOBJ) $(LIBCOMPOBJ) $(LIBRUN)
$(LD) $(ST_LDFLAG) $(LDFLAGS) -o minitalk$(EXE) \
- $(CRT0) main.$(O) miniclassList.$(O) \
+ $(CRT0) main.$(O) miniList.$(O) \
$(LIBBASICDIR)/libbasic$(OBJNAME) \
$(LIBCOMPDIR)/libcomp$(OBJNAME) \
$(LIBRUNDIR)/hidata.$(O) \
- $(LIBRUN) $(MATHLIB) $(EXTRALIBS) $(SYSLIBS) $(CRTN)
+ $(LIBRUN) $(MATHLIB) $(SYSLIBS) $(CRTN)
-tinytalk: main.$(O) tinyclassList.$(O) $(LIBRUN) $(FULLLIB)
+tinytalk: main.$(O) tinyList.$(O) $(LIBRUN) $(FULLLIB)
$(LD) $(ST_LDFLAG) $(LDFLAGS) -o tinytalk$(EXE) \
- $(CRT0) main.$(O) tinyclassList.$(O) \
+ $(CRT0) main.$(O) tinyList.$(O) \
$(FULLLIB) \
$(LIBRUNDIR)/hidata.$(O) $(LIBRUN) \
- $(MATHLIB) $(EXTRALIBS) $(SYSLIBS) $(CRTN)
+ $(MATHLIB) $(SYSLIBS) $(CRTN)
nxtalk: main.$(O) nxclassList $(LIBBASICOBJ) $(LIBCOMPOBJ) $(LIBRUN)
$(LD) $(ST_LDFLAG) $(LDFLAGS) -o nxtalk$(EXE) \
@@ -74,23 +74,23 @@
$(LIBCOMPDIR)/libcomp$(OBJNAME) \
$(LIBVIEWDIR)/libview$(OBJNAME) \
$(LIBRUNDIR)/hidata.$(O) \
- $(LIBRUN) $(MATHLIB) $(EXTRALIBS) $(SYSLIBS) $(CRTN)
+ $(LIBRUN) $(MATHLIB) $(SYSLIBS) $(CRTN)
-smalltalk_8mb: main.$(O) classList.$(O) $(LIBOBJS) $(LIBIOBJ) $(LIBRUN) $(EXTRALIBS)
+smalltalk_8mb: main.$(O) classList.$(O) $(LIBOBJS) $(LIBIOBJ) $(LIBRUN)
$(LD) $(ST_LDFLAG) $(LDFLAGS) -o smalltalk$(EXE) \
- $(CRT0) main.$(O) \
+ $(CRT0) main.$(O) classList.$(O) \
$(LIBIOBJS) \
$(LIBRUNDIR)/hidata.$(O) \
$(LIBOBJS) $(LIBRUN) \
- $(MATHLIB) $(EXTRALIBS) $(SYSLIBS) $(CRTN)
+ $(MATHLIB) $(SYSLIBS) $(CRTN)
-bigtalk: main.$(O) classList.$(O) $(LIBOBJS) $(CLIENTSOBJS) $(LIBRUN) $(EXTRALIBS)
+bigtalk: main.$(O) bigList.$(O) $(LIBOBJS) $(CLIENTSOBJS) $(LIBRUN) $(EXTRA_LIBS)
$(LD) $(ST_LDFLAG) $(LDFLAGS) -o smalltalk$(EXE) \
- $(CRT0) main.$(O) \
+ $(CRT0) main.$(O) bigList.$(O) \
$(LIBOBJS) \
$(CLIENTOBJS) \
$(LIBRUNDIR)/hidata.$(O) $(LIBRUN) \
- $(MATHLIB) $(EXTRALIBS) $(SYSLIBS) $(CRTN)
+ $(MATHLIB) $(EXTRA_LIBS) $(SYSLIBS) $(CRTN)
#
# the following stuff is for transputer (inmos ctools)
@@ -138,29 +138,37 @@
$(CC) $(_C) $(CFLAGS) nxclassList.c
rm -f nxclassList.c
-miniclassList: miniclassList.c
- $(CC) $(_C) $(CFLAGS) miniclassList.c
- rm -f miniclassList.c
+miniList: miniList.c
+ $(CC) $(_C) $(CFLAGS) miniList.c
+ rm -f miniList.c
-tinyclassList: tinyclassList.c
- $(CC) $(_C) $(CFLAGS) tinyclassList.c
- rm -f tinyclassList.c
+tinyList: tinyList.c
+ $(CC) $(_C) $(CFLAGS) tinyList.c
+ rm -f tinyList.c
+
+bigList: bigList.c
+ $(CC) $(_C) $(CFLAGS) bigList.c
+ rm -f bigList.c
fclassList.c: fclassList.stc
$(MAKE) fclassList.stc
$(MAKE) classListEdit CLASSLIST=fclassList
-miniclassList.c: miniclassList.stc
- $(MAKE) miniclassList.stc
- $(MAKE) classListEdit CLASSLIST=miniclassList
+miniList.c: miniList.stc
+ $(MAKE) miniList.stc
+ $(MAKE) classListEdit CLASSLIST=miniList
nxclassList.c: nxclassList.stc
$(MAKE) nxclassList.stc
$(MAKE) classListEdit CLASSLIST=nxclassList
-tinyclassList.c: tinyclassList.stc
- $(MAKE) tinyclassList.stc
- $(MAKE) classListEdit CLASSLIST=tinyclassList
+tinyList.c: tinyList.stc
+ $(MAKE) tinyList.stc
+ $(MAKE) classListEdit CLASSLIST=tinyList
+
+bigList.c: bigList.stc
+ $(MAKE) bigList.stc
+ $(MAKE) classListEdit CLASSLIST=bigList
#
# this creates the class archives
@@ -183,6 +191,7 @@
#
# make list of classes for a standard smalltalk
+# (includes basic, view & widgets and Persistency)
#
classList.stc: $(LIBBASICDIR)/classList.stc $(LIBCOMPDIR)/classList.stc \
$(LIBVIEWDIR)/classList.stc $(LIBWIDGETDIR)/classList.stc \
@@ -206,11 +215,12 @@
#
nxclassList.stc:
rm -f classList.stc
- $(MAKE) miniclassList.stc EXTRA_CLASSES='NeXTWorkstation'
+ $(MAKE) miniList.stc EXTRA_CLASSES='NeXTWorkstation'
-cat ../libview/classList.stc >> classList.stc
#
-# make list of classes for a full smalltalk (includes Benchmarks & some goodies)
+# make list of classes for a full smalltalk
+# (like standard smalltalk, but adds Benchmarks)
#
fclassList.stc: $(TOP)/libbasic/classList.stc \
$(TOP)/libcomp/classList.stc \
@@ -240,12 +250,44 @@
-cat $(TOP)/goodies/Benchmarks/misc/classList.stc >> fclassList.stc
#
+# make list of classes for a big smalltalk
+# (like standard smalltalk, but adds Benchmarks and all clients)
+#
+bigList.stc: $(TOP)/libbasic/classList.stc \
+ $(TOP)/libcomp/classList.stc \
+ $(TOP)/libview/classList.stc \
+ $(TOP)/libwidg/classList.stc \
+ $(EXTRACLASSLISTS) $(CLIENTCLASSLISTS) \
+ $(TOP)/goodies/Persistency/classList.stc \
+ $(TOP)/goodies/Benchmarks/DeltaBlue/classList.stc \
+ $(TOP)/goodies/Benchmarks/Richards/classList.stc \
+ $(TOP)/goodies/Benchmarks/Dhrystones/classList.stc
+ $(TOP)/clients/*/classList.stc
+ -cat $(TOP)/libbasic/classList.stc \
+ $(TOP)/libcomp/classList.stc \
+ $(TOP)/libview/classList.stc \
+ $(TOP)/libwidg/classList.stc \
+ $(EXTRACLASSLISTS) \
+ $(TOP)/clients/*/classList.stc > bigList.stc
+ -if [ "$(EXTRA_CLASSES)"X != X ]; then \
+ for i in $(EXTRA_CLASSES); do \
+ echo $$i >> bigList.stc; \
+ done; \
+ fi
+ -cat $(TOP)/goodies/Persistency/classList.stc >> bigList.stc
+ -cat $(TOP)/goodies/Benchmarks/DeltaBlue/classList.stc >> bigList.stc
+ -cat $(TOP)/goodies/Benchmarks/Richards/classList.stc >> bigList.stc
+ -cat $(TOP)/goodies/Benchmarks/Dhrystones/classList.stc >> bigList.stc
+ -cat $(TOP)/goodies/Benchmarks/Self/classList.stc >> bigList.stc
+ -cat $(TOP)/goodies/Benchmarks/misc/classList.stc >> bigList.stc
+
+#
# make list of classes for a mini smalltalk
# (no GUI, line-by-line interface only)
#
-miniclassList.stc:
- -cat $(TOP)/libbasic/classList.stc > miniclassList.stc
- -cat $(TOP)/libcomp/classList.stc >> miniclassList.stc
+miniList.stc:
+ -cat $(TOP)/libbasic/classList.stc > miniList.stc
+ -cat $(TOP)/libcomp/classList.stc >> miniList.stc
-if [ "$(EXTRA_CLASSES)"X != X ]; then \
for i in $(EXTRA_CLASSES); do \
echo $$i >> classList.stc; \
@@ -258,15 +300,15 @@
# this is done by creating a classList and removing all we dont want
#
EXCLUDE=
-tinyclassList.stc:
- $(MAKE) miniclassList.stc
- mv miniclassList.stc tinyclassList.stc
- -cat $(TOP)/libview/classList.stc >> tinyclassList.stc
+tinyList.stc:
+ $(MAKE) miniList.stc
+ mv miniList.stc tinyList.stc
+ -cat $(TOP)/libview/classList.stc >> tinyList.stc
-#tinyclassList.stc:
+#tinyList.stc:
# -rm classList.stc
# $(MAKE) classList.stc
-# sh ../rules/removeFrom.sh classList.stc excludeList.stc > tinyclassList.stc
+# sh ../rules/removeFrom.sh classList.stc excludeList.stc > tinyList.stc
# -rm classList.stc
#
@@ -287,13 +329,18 @@
-(cd source; $(LNS) ../$(LIBCOMPDIR)/*.st .)
-(cd source; $(LNS) ../$(LIBVIEWDIR)/*.st .)
-(cd source; $(LNS) ../$(LIBWIDGETDIR)/*.st .)
- -(cd source; $(LNS) ../$(LIBDBDIR)/*.st .)
-(cd source; $(LNS) ../$(CLIENTDIR)/[A-Z]*/*.st .)
-(cd source; $(LNS) ../../fileIn/*.st .)
-(cd source; $(LNS) ../../goodies/*.st .)
-(cd source; $(LNS) ../../goodies/*/*.st .)
-(cd source; $(LNS) ../../goodies/*/*/*.st .)
+#
+# make a new binary subdirectory
+# (this is only useful on systems that support dynamic loading;
+# autoloaded classes will then be loaded from machine code files
+# instead of source)
+#
newBinary:
-rm -rf binary
$(MAKE) binaryLink
@@ -318,6 +365,7 @@
#
# make a new bitmaps subdirectory
+# (simply collect the contents of all bitmap directories)
#
newBitmaps:
-rm -rf bitmaps
@@ -338,17 +386,26 @@
-(cd bitmaps; $(LNS) ../../fileIn/*/bitmaps/* .)
-(cd bitmaps; $(LNS) ../../goodies/bitmaps/* .)
+#
+# clean out intermediate chunk
+#
cleanjunk::
-rm -f a.out changes SymbolTable ttt main.c
+#
+# clean out all that is not needed to run smalltalk
+#
clean::
-rm -f a.out changes SymbolTable ttt main.c
-rm -f classList.stc classList.c
-rm -f fclassList.stc fclassList.c
-rm -f nxclassList.stc nxclassList.c
- -rm -f miniclassList.stc miniclassList.c
- -rm -f tinyclassList.stc tinyclassList.c
+ -rm -f miniList.stc miniList.c
+ -rm -f tinyList.stc tinyList.c
+#
+# clean out all that can be regenerated
+#
clobber::
-rm -rf resources source bitmaps changes
-rm -f smalltalk minitalk tinytalk abbrev.stc st.img
@@ -386,21 +443,6 @@
$(TARGET): $(INCLUDE)/stc.h $(INCLUDE)/stcIntern.h
-$(LIBCOMPDIR)/slopstones.o:
- (cd ../libcomp; make slopstones.o)
-
-$(LIBCOMPDIR)/smopstones.o:
- (cd ../libcomp; make smopstones.o)
-
-$(CLIENTDIR)/Tetris/tetris$(OBJNAME):
- (cd ../clients/Tetris; make obj)
-
-$(CLIENTDIR)/DirView/dirView$(OBJNAME):
- (cd ../clients/DirView; make obj)
-
-$(CLIENTDIR)/DocTool/docTool$(OBJNAME):
- (cd ../clients/DocTool; make obj)
-
installDemo: install
-rm $(DESTLIBDIR)/source/BCompiler.st
-rm $(DESTLIBDIR)/source/ObjectView.st
--- a/display.rc Thu Dec 16 12:22:24 1993 +0100
+++ b/display.rc Mon Dec 20 18:48:43 1993 +0100
@@ -19,17 +19,20 @@
map bindValue:#Find to:#Cmds.
map bindValue:#FindNext to:#Cmdf.
map bindValue:#FindPrev to:#Cmdb.
-map bindValue:#SelectAll to:#CmdA. "that is cmd-shift-a"
+map bindValue:#SelectAll to:#CmdA. "that is cmd-shift-a"
map bindValue:#Accept to:#Cmda.
map bindValue:#Explain to:#Cmde.
-map bindValue:#BeginOfLine to:#Ctrlb.
+map bindValue:#BeginOfLine to:#Ctrla.
map bindValue:#EndOfLine to:#Ctrle.
map bindValue:#SearchMatchingParen to:#Ctrlm.
map bindValue:#SelectMatchingParen to:#Cmdm.
+map bindValue:#SelectToEnd to:#CtrlE. "that is ctrl-shift-e"
+map bindValue:#SelectFromBeginning to:#CtrlA. "that is ctrl-shift-a"
+
"*
* international characters - map to iso8859 values
*"
@@ -115,38 +118,42 @@
display := displayVar.
displayVar notNil ifTrue:[
- (displayVar startsWith:':0') ifTrue:[
+ ((displayVar startsWith:':0') or:[displayVar startsWith:'unix:0']) ifTrue:[
display := OperatingSystem getHostName.
] ifFalse:[
(displayVar endsWith:':0') ifTrue:[
display := displayVar copyTo:(displayVar size - 2)
]
].
- "if there is a corresponding file ..."
- s := Smalltalk systemFileStreamFor:('d_' , display , '.rc').
- s notNil ifTrue:[
- displayType := display.
- s close.
- ].
- "otherwise ..."
- displayType isNil ifTrue:[
- "just an example - stuff could also be hardwired here ..."
- display notNil ifTrue:[
- (display startsWith:'clam') ifTrue:[
- displayType := 'next'
- ].
- (display startsWith:'porty') ifTrue:[
- displayType := 'portable'
- ].
- (display startsWith:'blue') ifTrue:[
- displayType := 'iris'
- ].
- (display startsWith:'sun') ifTrue:[
- displayType := 'sun'
- ].
- (display startsWith:'slsv') ifTrue:[
- "all those machines here at SEL are suns"
- displayType := 'sun'
+ display isNil ifTrue:[
+ 'cannot determine display I am running on' printNewline.
+ ] ifFalse:[
+ "if there is a corresponding file ..."
+ s := Smalltalk systemFileStreamFor:('d_' , display , '.rc').
+ s notNil ifTrue:[
+ displayType := display.
+ s close.
+ ].
+ "otherwise ..."
+ displayType isNil ifTrue:[
+ "just an example - stuff could also be hardwired here ..."
+ display notNil ifTrue:[
+ (display startsWith:'clam') ifTrue:[
+ displayType := 'next'
+ ].
+ (display startsWith:'porty') ifTrue:[
+ displayType := 'portable'
+ ].
+ (display startsWith:'blue') ifTrue:[
+ displayType := 'iris'
+ ].
+ (display startsWith:'sun') ifTrue:[
+ displayType := 'sun'
+ ].
+ (display startsWith:'slsv') ifTrue:[
+ "all those machines here at SEL are suns"
+ displayType := 'sun'
+ ].
].
].
].
--- a/host.rc Thu Dec 16 12:22:24 1993 +0100
+++ b/host.rc Mon Dec 20 18:48:43 1993 +0100
@@ -7,7 +7,9 @@
|host s|
host := OperatingSystem getHostName.
-host notNil ifTrue:[
+host isNil ifTrue:[
+ 'cannot determine host I am running on' printNewline.
+] ifFalse:[
"if there is a corresponding file ..."
('reading host setup h_' , host , '.rc ...') printNewline.
s := Smalltalk systemFileStreamFor:('h_' , host , '.rc').