Make.proto
author claus
Wed, 13 Oct 1993 01:19:00 +0100
changeset 3 24d81bf47225
parent 2 6526dde5f3ac
child 4 31072e3cb2e3
permissions -rw-r--r--
*** empty log message ***

# %W% %E%
#
# -------------- no need to change anything below ----------

LIBNAME=libbasic
LIB=libbasic.$(A)
SUBDIRS=

TOP=..
I       = $(INCLUDE)

STCFLAGS= -H../include -warnGlobalAssign $(STCOPT)

OBJS=   Object.$(O) Unix.$(O) Magnitude.$(O) MsgTally.$(O) Point.$(O) \
	Rectangle.$(O) Assoc.$(O) ArithVal.$(O) \
	Context.$(O) BContext.$(O) CCReader.$(O) Block.$(O) Message.$(O) Smalltalk.$(O) \
	UndefObj.$(O) Behavior.$(O) MiniDebug.$(O) MiniIns.$(O) Coll.$(O) \
	Link.$(O) ValLink.$(O) Boolean.$(O) Stream.$(O) Character.$(O) \
        Number.$(O) ObjMem.$(O) \
	Time.$(O) OrdColl.$(O) SeqColl.$(O) Bag.$(O) Set.$(O) \
	Date.$(O) True.$(O) False.$(O) ClassDescr.$(O) Class.$(O) Method.$(O) \
	FileDir.$(O) Integer.$(O) \
	Random.$(O) PosStream.$(O) Metaclass.$(O) Float.$(O) Fraction.$(O) \
	LargeInt.$(O) \
	SmallInt.$(O) Interval.$(O) LinkList.$(O) Dict.$(O) ArrColl.$(O) \
	ReadStr.$(O) WriteStr.$(O) Array.$(O) VarArray.$(O) VarString.$(O) \
	IntArray.$(O) ByteArray.$(O) RWStream.$(O) IdDict.$(O) ShIdDict.$(O) \
	ShadowArr.$(O) Text.$(O) String.$(O) ActorStr.$(O) \
	ExtStream.$(O) ByteString.$(O) \
	FileText.$(O) Symbol.$(O) NPExtStr.$(O) FileStr.$(O) PipeStr.$(O) \
	DirStr.$(O) PrintStr.$(O) Socket.$(O) \
	Autoload.$(O) BCCReader.$(O) ExtBytes.$(O) \
        Process.$(O) ProcSched.$(O) SortColl.$(O) UIBytes.$(O) \
        ChangeSet.$(O) Change.$(O) ClsDefChg.$(O) ClsComChg.$(O) MethodChg.$(O) \
	Signal.$(O) SignalSet.$(O) Exception.$(O) Semaphore.$(O) SharedQueue.$(O) \
	Registry.$(O) SoundStr.$(O) \
	FloatArray.$(O) DoubleArray.$(O) MappedColl.$(O)

AUXOBJS= Polygon.$(O) Filename.$(O) CacheDict.$(O) IdSet.$(O) Project.$(O)

all::   $(OBJTARGET)

objs::  level0 \
	level1 \
	level2 \
	level3 \
	level4 \
	level5 \
	level6 \
	level7 \
	level8 \
	level9 

level0:$(P)                                             \
	    Object.$(O)

level1:$(P)                                             \
	    Unix.$(O)                                   \
	    Autoload.$(O)                               \
	    Magnitude.$(O)                              \
	    MsgTally.$(O)                               \
	    Rectangle.$(O)                              \
	    Assoc.$(O)                                  \
	    Context.$(O)                                \
	    Signal.$(O)                                 \
	    Exception.$(O)                              \
	    CCReader.$(O)                               \
	    Block.$(O)                                  \
	    Message.$(O)                                \
	    Smalltalk.$(O)                              \
	    ObjMem.$(O)                                 \
	    ProcSched.$(O)                              \
	    SharedQueue.$(O)                            \
	    UndefObj.$(O)                               \
	    Behavior.$(O)                               \
	    MiniDebug.$(O)                              \
	    MiniIns.$(O)                                \
	    Coll.$(O)                                   \
	    Link.$(O)                                   \
	    Boolean.$(O)                                \
	    Stream.$(O)                                 \
	    Change.$(O)                                 \
	    Registry.$(O)                               \
	    Project.$(O)                              

level2:$(P)                                             \
	    BContext.$(O)                               \
	    Character.$(O)                              \
	    Process.$(O)                                \
	    ArithVal.$(O)				\
	    Time.$(O)                                   \
	    Date.$(O)                                   \
	    True.$(O)                                   \
	    False.$(O)                                  \
	    ClassDescr.$(O)                             \
	    Method.$(O)                                 \
	    MappedColl.$(O)                             \
	    SeqColl.$(O)                                \
	    Set.$(O)                                    \
	    Bag.$(O)                                    \
	    FileDir.$(O)                                \
	    Random.$(O)                                 \
	    BCCReader.$(O)                              \
	    ValLink.$(O)                                \
	    ClassChg.$(O)                               \
	    PosStream.$(O)                         

level3:$(P)                                             \
	    Class.$(O)                                  \
	    Point.$(O)                                  \
	    Number.$(O)                                 \
	    Interval.$(O)                               \
	    LinkList.$(O)                               \
	    Dict.$(O)                                   \
	    OrdColl.$(O)                                \
	    ArrColl.$(O)                                \
	    ReadStr.$(O)                                \
	    WriteStr.$(O)                     		\
	    MethodChg.$(O)                     		\
	    ClsDefChg.$(O)                     		\
	    ClsComChg.$(O)                     

level4:$(P)                                             \
	    Metaclass.$(O)                              \
	    Integer.$(O)                                \
	    Float.$(O)                                  \
	    Fraction.$(O)                               \
	    Semaphore.$(O)                              \
	    Array.$(O)                                  \
	    VarArray.$(O)                               \
	    VarString.$(O)                              \
	    IdDict.$(O)                                 \
	    IntArray.$(O)                               \
	    FloatArray.$(O)                             \
	    DoubleArray.$(O)                            \
	    ExtBytes.$(O)                               \
	    SortColl.$(O)                               \
	    ChangeSet.$(O)                              \
	    RWStream.$(O)

level5:$(P)                                             \
	    LargeInt.$(O)                               \
	    SmallInt.$(O)                               \
	    ShadowArr.$(O)                              \
	    ShIdDict.$(O)                               \
	    Text.$(O)                                   \
	    ByteArray.$(O)                              \
	    ActorStr.$(O)                               \
	    ExtStream.$(O)                   

level6:$(P)                                             \
	    FileText.$(O)                               \
	    String.$(O)                                 \
	    UIBytes.$(O)                                \
	    NPExtStr.$(O)                               \
	    FileStr.$(O)

level7:$(P)                                             \
	    ByteString.$(O)                             \
	    SoundStr.$(O)				\
	    Symbol.$(O)                                 \
	    PipeStr.$(O)                                \
	    Socket.$(O)                                 \
	    DirStr.$(O)                                 

level8:$(P)						\
	    PrintStr.$(O)				

level9:$(P)

level10:						\
	    Polygon.$(O)                                \
	    Filename.$(O)                               \
	    CacheDict.$(O)                              \
	    IdSet.$(O)                              	\
	    Project.$(O)                              	\
	    PSPrStr.$(O)                                \
	    HPIIPrStr.$(O)                              \
	    FX1PrStr.$(O)

level11:						\
	    SignalSet.$(O)

auxobjs::  level10					\
	   level11					\
	   $(AUXOBJS)

install::
	-mkdir $(DESTLIBDIR)
	-$(INSTALL) $(LIBNAME)$(OBJNAME) $(DESTLIBDIR)

libe:   $(LIB)

PSPrStr.o:
	$(STC) -CC="$(CC)" $(STCFLAGS) +limitSuperInclude $(CFLAGS) -c $*.st

HPIIPrStr.o:
	$(STC) -CC="$(CC)" $(STCFLAGS) +limitSuperInclude $(CFLAGS) -c $*.st

FX1PrStr.o:
	$(STC) -CC="$(CC)" $(STCFLAGS) +limitSuperInclude $(CFLAGS) -c $*.st

Class:
	$(MAKE) Class.o OPT=""

Metaclass:
	$(MAKE) Metaclass.o OPT=""

i_Class.o:
	$(MAKE) I_CLASS OPT=""

i_Metaclass.o:
	$(MAKE) I_METACLASS OPT=""

I_CLASS:
	$(CC) -c $(CFLAGS) i_Class.c

I_METACLASS:
	$(CC) -c $(CFLAGS) i_Metaclass.c

cleanjunk::
	-rm -f *.c *.H

clean::
	-rm -f *.c *.H

clobber::
	-rm -f *.c *.H

tar:
	rm -f $(TOP)/DISTRIB/libbasic.tar*
	(cd $(TOP); tar cvf DISTRIB/libbasic.tar \
	                        libbasic/*.st \
	                        libbasic/Make.proto \
	                        libbasic/*.stc)
	compress $(TOP)/DISTRIB/libbasic.tar

#
# next thing I'll build into stc is a makedepend feature for this ...
#

STCHDR=$(I)/stc.h $(I)/stcIntern.h
OBJECT=$(I)/Object.H $(STCHDR)
BOOLEAN=$(I)/Boolean.H $(OBJECT)
BEHAVIOR=$(I)/Behavior.H $(OBJECT)
CLASS=$(I)/Class.H $(I)/ClassDescr.H $(BEHAVIOR)

Object.o:       Object.st $(STCHDR)
UndefObj.o:     UndefObj.st $(OBJECT)

Message.o:      Message.st $(OBJECT)

Unix.o:         Unix.st $(OBJECT)
Autoload.o:     Autoload.st $(OBJECT)
Smalltalk.o:    Smalltalk.st $(OBJECT)
ObjMem.o:       ObjMem.st $(OBJECT)
Process.o:      Process.st $(OBJECT)
ProcSched.o:    ProcSched.st $(OBJECT)
Semaphore.o:    Semaphore.st $(OBJECT)
SharedQueue.o:  SharedQueue.st $(OBJECT)
MsgTally.o:     MsgTally.st  $(OBJECT)
MiniDebug.o:    MiniDebug.st $(OBJECT)
MiniIns.o:      MiniIns.st $(OBJECT)
Context.o:      Context.st $(OBJECT)
BContext.o:     BContext.st $(I)/Context.H $(OBJECT)
Method.o:       Method.st $(OBJECT)
Block.o:        Block.st $(OBJECT)
BlckContext.o:  BlckContext.st $(OBJECT)

Signal.o:       Signal.st $(OBJECT)

Exception.o:    Exception.st $(OBJECT)
Rectangle.o:    Rectangle.st $(OBJECT)

Assoc.o:        Assoc.st $(OBJECT)
Boolean.o:      Boolean.st $(OBJECT)
True.o:         True.st $(BOOLEAN)
False.o:        False.st $(BOOLEAN)
ExtSource.o:    ExtSource.st $(OBJECT)

Behavior.o:     Behavior.st $(OBJECT)
ClassDescr.o:   ClassDescr.st $(BEHAVIOR)
Class.o:        Class.st $(I)/ClassDescr.H $(BEHAVIOR)
Metaclass.o:    Metaclass.st $(CLASS)
CCReader.o:     CCReader.st $(OBJECT)
BCCReader.o:    BCCReader.st $(I)/CCReader.H $(OBJECT)
Project.o:      Project.st $(OBJECT)

MAGNITUDE=$(I)/Magnitude.H $(OBJECT)
ARITHVAL=$(I)/ArithVal.H $(MAGNITUDE)
NUMBER=$(I)/Number.H $(ARITHVAL)
INTEGER=$(I)/Integer.H $(NUMBER)

Magnitude.o:    Magnitude.st $(OBJECT)
Point.o:        Point.st $(MAGNITUDE)
Character.o:    Character.st $(MAGNITUDE)
ArithVal.o:     ArithVal.st $(MAGNITUDE)
Number.o:       Number.st $(ARITHVAL)
Integer.o:      Integer.st $(NUMBER)
Float.o:        Float.st $(NUMBER)
Fraction.o:     Fraction.st $(NUMBER)
SmallInt.o:     SmallInt.st $(INTEGER)
LargeInt.o:     LargeInt.st $(INTEGER)
Time.o:         Time.st $(MAGNITUDE)
Date.o:         Date.st $(MAGNITUDE)

COLL=$(I)/Coll.H $(OBJECT)
SET=$(I)/Set.H $(COLL)
DICT=$(I)/Dict.H $(COLL)
IDDICT=$(I)/IdDict.H $(DICT)
SHADOWIDDICT=$(I)/ShIdDict.H $(IDDICT)
SEQCOLL=$(I)/SeqColl.H $(COLL)
ARRCOLL=$(I)/ArrColl.H $(SEQCOLL)
ARRAY=$(I)/Array.H $(ARRCOLL)
VARARRAY=$(I)/VarArray.H $(ARRCOLL)
INTARRAY=$(I)/IntArray.H $(ARRCOLL)
BYTEARRAY=$(I)/ByteArray.H $(INTARRAY)
STRING=$(I)/String.H $(BYTEARRAY)

Registry.o:     Registry.st $(OBJECT)
Coll.o:         Coll.st $(OBJECT)
FileDir.o:      FileDir.st $(COLL)
SeqColl.o:      SeqColl.st $(COLL)
MappedColl.o:   MappedColl.st $(COLL)
Set.o:          Set.st $(COLL)
IdSet.o:        IdSet.st $(SET)
SignalSet.o:    SignalSet.st $(I)/IdSet.H $(SET)
Bag.o:          Bag.st $(COLL)
Dict.o:         Dict.st $(COLL)
IdDict.o:       IdDict.st $(DICT)
CacheDict.o:    CacheDict.st $(DICT)
ShIdDict.o:     ShIdDict.st $(IDDICT)
OrdColl.o:      OrdColl.st $(SEQCOLL)
SortColl.o:     SortColl.st $(I)/OrdColl.H $(SEQCOLL)
ChangeSet.o:    ChangeSet.st $(I)/OrdColl.H $(SEQCOLL)
Interval.o:     Interval.st $(SEQCOLL)
Node.o:         Node.st $(COLL)
Tree.o:         Tree.st $(COLL)
LinkList.o:     LinkList.st $(SEQCOLL)
Link.o:         Link.st $(OBJECT)
ValLink.o:      ValLink.st $(I)/Link.H $(OBJECT)
ArrColl.o:      ArrColl.st $(SEQCOLL)
VarArray.o:     VarArray.st $(ARRCOLL)
VarString.o:    VarString.st $(ARRCOLL)
Text.o:         Text.st $(VARARRAY)
FileText.o:     FileText.st $(I)/Text.H $(VARARRAY)
Array.o:        Array.st $(ARRCOLL)
Polygon.o:      Polygon.st $(ARRAY)
ShadowArr.o:    ShadowArr.st $(ARRAY)
IntArray.o:     IntArray.st $(ARRCOLL)
FloatArray.o:   FloatArray.st $(ARRCOLL)
DoubleArray.o:  DoubleArray.st $(ARRCOLL)
ExtBytes.o:     ExtBytes.st $(ARRCOLL)
ByteArray.o:    ByteArray.st $(INTARRAY)
UIBytes.o:      UIBytes.st $(I)/ByteArray.H $(INTARRAY)
String.o:       String.st $(BYTEARRAY)
ByteString.o:   ByteString.st $(STRING)
Symbol.o:       Symbol.st $(STRING)
Filename.o:     Filename.st $(STRING)

Change.o:       Change.st $(OBJECT)
ClassChg.o:     ClassChg.st $(OBJECT)
ClsDefChg.o:    ClsDefChg.st $(OBJECT)
ClsComChg.o:    ClsComChg.st $(OBJECT)
MethodChg.o:    MethodChg.st $(OBJECT)

STREAM=$(I)/Stream.H $(OBJECT)
POSSTREAM=$(I)/PosStream.H $(STREAM)
WRITESTREAM=$(I)/WriteStr.H $(POSSTREAM)
RWSTREAM=$(I)/RWStream.H $(WRITESTREAM)
EXTSTREAM=$(I)/ExtStream.H $(RWSTREAM)
NPEXTSTREAM=$(I)/NPExtStr.H $(EXTSTREAM)
PIPESTREAM=$(I)/PipeStr.H $(NPEXTSTREAM)

Stream.o:       Stream.st $(OBJECT)
Random.o:       Random.st $(STREAM)
PosStream.o:    PosStream.st $(STREAM)
ReadStr.o:      ReadStr.st $(POSSTREAM)
WriteStr.o:     WriteStr.st $(POSSTREAM)
RWStream.o:     RWStream.st $(WRITESTREAM)
ActorStr.o:     ActorStr.st $(RWSTREAM)
ExtStream.o:    ExtStream.st $(RWSTREAM)
NPExtStr.o:     NPExtStr.st $(EXTSTREAM)
TTYStream.o:    TTYStream.st $(NPEXTSTREAM)
PipeStr.o:      PipeStr.st $(NPEXTSTREAM)
Socket.o:       Socket.st $(NPEXTSTREAM)
PrintStr.o:     PrintStr.st $(PIPESTREAM)
PSPrStr.o:      PSPrStr.st $(I)/PrintStr.H $(PIPESTREAM)
HPIIPrStr.o:    HPIIPrStr.st $(I)/PrintStr.H $(PIPESTREAM)
FX1PrStr.o:     FX1PrStr.st $(I)/PrintStr.H $(PIPESTREAM)
FileStr.o:      FileStr.st $(EXTSTREAM)
SoundStr.o:     SoundStr.st $(I)/FileStr.H $(EXTSTREAM)
DirStr.o:       DirStr.st $(I)/FileStr.H $(EXTSTREAM)