.SUFFIXES :
.SUFFIXES : .slm .o .a .c

.slm.c:
	../subslim2ast/slim2c $*
	ar r libslim.a $*.o
	touch $*.o

.c.o:
	gcc -c -g -w $*.c
	ar r libslim.a $*.o
	touch $*.o

libslim.a : \
object.o \
mem.o \
cdefs.o \
cdir.o \
clib.o \
csock.o \
subsock.o \
strpool.o \
stdout.o \
debug.o \
stdin.o \
abstract.o \
boolean.o \
integer.o \
float.o \
character.o \
collection.o \
string.o \
sstring.o \
idstring.o \
pstring.o \
slicestr.o \
list.o \
slist.o \
plist.o \
rlist.o \
ulist.o \
slicelst.o \
srlist.o \
set.o \
dset.o \
sset.o \
mset.o \
pset.o \
rset.o \
srset.o \
mapset.o \
powset.o \
listset.o \
entset.o \
numset.o \
intset.o \
strset.o \
charset.o \
boolset.o \
map.o \
scope.o \
jscope.o \
variable.o \
niterator.o \
iterator.o \
filter.o \
selector.o \
parameter.o \
namelist.o \
identifier.o \
procedure.o \
function.o \
exprfunc.o \
lazy.o \
interp.o \
cstring.o \
cfloat.o \
cint.o \
predef.o
	ranlib libslim.a

cstring.c : cstring.slm
	touch cstring.c
	touch cstring.o

cfloat.c : cfloat.slm
	touch cfloat.c
	touch cfloat.o

cint.c : cint.slm
	touch cint.c
	touch cint.o
