Make.proto
author claus
Mon, 20 Feb 1995 23:58:36 +0100
changeset 67 a39aadae61ae
parent 60 0db697f03def
child 71 2aac7fbb5be0
permissions -rw-r--r--
nice make
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
67
a39aadae61ae nice make
claus
parents: 60
diff changeset
     1
# $Header: /cvs/stx/stx/libcomp/Make.proto,v 1.17 1995-02-20 22:58:36 claus Exp $
43
3ed34342e38d *** empty log message ***
claus
parents: 42
diff changeset
     2
#
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
     3
# -------------- no need to change anything below ----------
7ad01559b262 Initial revision
claus
parents:
diff changeset
     4
22
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
     5
TOP=..
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
     6
SUBDIRS=
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
     7
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
     8
LIBNAME=libcomp
7ad01559b262 Initial revision
claus
parents:
diff changeset
     9
8
894907329a43 *** empty log message ***
claus
parents: 3
diff changeset
    10
STCOPT=$(LIBCOMP_STCOPT)
53
c5dd7abf8431 *** empty log message ***
claus
parents: 52
diff changeset
    11
STCLOCALOPT=-Pcompiler-classes $(COMMONSYMBOLS)
8
894907329a43 *** empty log message ***
claus
parents: 3
diff changeset
    12
45
e8331ba8ad5d *** empty log message ***
claus
parents: 43
diff changeset
    13
all::       abbrev.stc objs classList.stc $(OBJTARGET) $(LIBCOMP_MORE)
36
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    14
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    15
#
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    16
# although all files are compiled in here,
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    17
# not everything goes into the target library
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    18
# ObjFLoader is optional
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    19
#
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    20
OBJFILES=`ls *.o                                 \
67
a39aadae61ae nice make
claus
parents: 60
diff changeset
    21
	  |  grep -v ObjFLoader.$(O)             \
a39aadae61ae nice make
claus
parents: 60
diff changeset
    22
	  |  grep -v libcompInit.$(O)`
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    23
22
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    24
objs::                                              \
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    25
	      Scanner.o                             \
22
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    26
		Parser.o                            \
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    27
		  BCompiler.o                       \
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    28
		  Explainer.o                       \
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    29
	      Variable.o                            \
67
a39aadae61ae nice make
claus
parents: 60
diff changeset
    30
	      ParseNode.o                           \
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    31
		PrimaryNd.o                         \
22
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    32
		  VarNode.o                         \
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    33
		  SelfNode.o                        \
67
a39aadae61ae nice make
claus
parents: 60
diff changeset
    34
		    SuperNode.o                     \
22
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    35
		  ConstNode.o                       \
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    36
		StatNode.o                          \
67
a39aadae61ae nice make
claus
parents: 60
diff changeset
    37
		  RetNode.o                         \
22
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    38
		  PrimNd.o                          \
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    39
		AssignNd.o                          \
7ad01559b262 Initial revision
claus
parents:
diff changeset
    40
		BlockNode.o                         \
67
a39aadae61ae nice make
claus
parents: 60
diff changeset
    41
		MessageNd.o                         \
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    42
		  UnaryNd.o                         \
7ad01559b262 Initial revision
claus
parents:
diff changeset
    43
		  BinaryNd.o                        \
7ad01559b262 Initial revision
claus
parents:
diff changeset
    44
		  CascadeNd.o                       \
67
a39aadae61ae nice make
claus
parents: 60
diff changeset
    45
	      UndefVar.o                            \
a39aadae61ae nice make
claus
parents: 60
diff changeset
    46
	      LazyMethod.o                          \
a39aadae61ae nice make
claus
parents: 60
diff changeset
    47
	      ImmArray.o                            \
22
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    48
	      $(EXTRA_LIBCOMP)
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    49
16
1abb86677ea6 *** empty log message ***
claus
parents: 13
diff changeset
    50
# only needed for NeXT - assembler dumps core with long name ?!?!
1abb86677ea6 *** empty log message ***
claus
parents: 13
diff changeset
    51
#
1abb86677ea6 *** empty log message ***
claus
parents: 13
diff changeset
    52
VarNode.$(O):
1abb86677ea6 *** empty log message ***
claus
parents: 13
diff changeset
    53
		$(STC) -CC="$(CC)" $(STCFLAGS) +shortNames $(CFLAGS) -c $*.st
1abb86677ea6 *** empty log message ***
claus
parents: 13
diff changeset
    54
36
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    55
#
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    56
# install the extra objects
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    57
#
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    58
qinstall::  $(DESTLIBDIR)
67
a39aadae61ae nice make
claus
parents: 60
diff changeset
    59
	    if [ "$(EXTRA_LIBCOMP)"x != "x" ]; then             \
a39aadae61ae nice make
claus
parents: 60
diff changeset
    60
		$(INSTALL) $(EXTRA_LIBCOMP) $(DESTLIBDIR);      \
36
a87a78ef7ef1 cleanup
claus
parents: 22
diff changeset
    61
	    fi
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    62
42
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    63
#
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    64
# ObjectFile and ObjectFileLoader are not included in
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    65
# the classLibrary (but as extra objects)
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    66
#
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    67
classList.stc: Make.proto
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    68
	    $(MAKE) genClassList
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    69
	    grep -v ObjectFileLoader < classList.stc > ttt
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    70
	    grep -v ObjectFile       < ttt > classList.stc
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    71
	    rm -f ttt
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    72
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    73
cleanjunk::
7ad01559b262 Initial revision
claus
parents:
diff changeset
    74
	    -rm -f *.c *.H
7ad01559b262 Initial revision
claus
parents:
diff changeset
    75
7ad01559b262 Initial revision
claus
parents:
diff changeset
    76
clean::
42
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    77
	    -rm -f *.c *.H abbrev.stc classList.stc
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    78
7ad01559b262 Initial revision
claus
parents:
diff changeset
    79
clobber::
42
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    80
	    -rm -f *.c *.H abbrev.stc classList.stc
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    81
7ad01559b262 Initial revision
claus
parents:
diff changeset
    82
tar:
7ad01559b262 Initial revision
claus
parents:
diff changeset
    83
	(cd $(TOP); tar cvf DISTRIB/libcomp.tar \
59
claus
parents: 57
diff changeset
    84
				libcomp/.dir.info \
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    85
				libcomp/*.st \
42
10abeeb1ef30 big cleanup
claus
parents: 36
diff changeset
    86
				libcomp/Make.proto)
47
f861ad42703e *** empty log message ***
claus
parents: 45
diff changeset
    87
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    88
#
7ad01559b262 Initial revision
claus
parents:
diff changeset
    89
# next thing I'll build into stc is a makedepend feature for this ...
7ad01559b262 Initial revision
claus
parents:
diff changeset
    90
#
7ad01559b262 Initial revision
claus
parents:
diff changeset
    91
22
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    92
I = $(INCLUDE)
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
    93
52
d80ec10c3321 *** empty log message ***
claus
parents: 47
diff changeset
    94
STCHDR=$(I)/stc.h $(I)/stcIntern.h $(CPUINTERN_H)
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    95
OBJECT=$(I)/Object.H $(STCHDR)
7ad01559b262 Initial revision
claus
parents:
diff changeset
    96
SCANNER=$(I)/Scanner.H $(OBJECT)
7ad01559b262 Initial revision
claus
parents:
diff changeset
    97
PARSER=$(I)/Parser.H $(SCANNER)
7ad01559b262 Initial revision
claus
parents:
diff changeset
    98
PARSENODE=$(I)/ParseNode.H $(OBJECT)
7ad01559b262 Initial revision
claus
parents:
diff changeset
    99
PRIMARYNODE=$(I)/PrimaryNd.H $(PARSENODE)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   100
MESSAGENODE=$(I)/MessageNd.H $(PARSENODE)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   101
7ad01559b262 Initial revision
claus
parents:
diff changeset
   102
ObjFLoader.o:   ObjFLoader.st $(OBJECT)
60
0db697f03def *** empty log message ***
claus
parents: 59
diff changeset
   103
LazyMethod.o:   LazyMethod.st $(I)/Method.H $(I)/CompCode.H $(I)/ExecFunc.H $(OBJECT)
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
   104
UndefVar.o:     UndefVar.st $(OBJECT)
3
b63b8a6b71fb *** empty log message ***
claus
parents: 0
diff changeset
   105
Scanner.o:      Scanner.st $(OBJECT)
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
   106
Parser.o:       Parser.st $(SCANNER)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   107
BCompiler.o:    BCompiler.st $(PARSER)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   108
Variable.o:     Variable.st $(OBJECT)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   109
ParseNode.o:    ParseNode.st $(OBJECT)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   110
StatNode.o:     StatNode.st $(PARSENODE)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   111
AssignNd.o:     AssignNd.st $(PARSENODE)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   112
BlockNode.o:    BlockNode.st $(PARSENODE)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   113
PrimaryNd.o:    PrimaryNd.st $(PARSENODE)
16
1abb86677ea6 *** empty log message ***
claus
parents: 13
diff changeset
   114
VarNode.o:      VarNode.st $(PRIMARYNODE)
13
30e69e21d1d1 *** empty log message ***
claus
parents: 8
diff changeset
   115
SelfNode.o:     SelfNode.st $(PRIMARYNODE)
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
   116
ConstNode.o:    ConstNode.st $(PRIMARYNODE)
13
30e69e21d1d1 *** empty log message ***
claus
parents: 8
diff changeset
   117
VariableNode.o: VariableNode.st $(PRIMARYNODE)
30e69e21d1d1 *** empty log message ***
claus
parents: 8
diff changeset
   118
SuperNode.o:    SuperNode.st $(I)/SelfNode.H $(PRIMARYNODE)
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
   119
MessageNd.o:    MessageNd.st $(PARSENODE)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   120
CascadeNd.o:    CascadeNd.st $(MESSAGENODE)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   121
BinaryNd.o:     BinaryNd.st $(MESSAGENODE)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   122
UnaryNd.o:      UnaryNd.st $(MESSAGENODE)
22
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
   123
PrimNd.o:       PrimNd.st $(PARSENODE) $(I)/StatNode.H
753cf527f426 *** empty log message ***
claus
parents: 16
diff changeset
   124
RetNode.o:      RetNode.st $(PARSENODE) $(I)/StatNode.H
67
a39aadae61ae nice make
claus
parents: 60
diff changeset
   125
ImmArray.o:     ImmArray.st $(I)/Array.H
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
   126
7ad01559b262 Initial revision
claus
parents:
diff changeset
   127
CMethod.o:      CMethod.st $(I)/Method.H $(OBJECT)
7ad01559b262 Initial revision
claus
parents:
diff changeset
   128
MCompiler.o:    MCompiler.st $(PARSER)
3
b63b8a6b71fb *** empty log message ***
claus
parents: 0
diff changeset
   129
Explainer.o:    Explainer.st $(PARSER)