# Makefile for the RISC OS version of dict
CC=cc
LINK=link
AR=libfile
LEX=flex
YACC=yacc
MAKE=amu
DEPEND=-depend !Depend
CC_FLAGS=-Wpc -zo -fw -apcs 3/32bit/fpe3 -throwback -Otime -IUnix:,zlib,regex,libmaa -JUnix: -D__riscos__ -DHAVE_CONFIG_H -DPOSIX_MISTAKE -DREDEBUG
AR_FLAGS=
LD_FLAGS=
UNIXLIB=Unix:o.UnixLib
ZLIB_OBJS=zlib.o.adler32 \
	zlib.o.compress \
	zlib.o.crc32 \
	zlib.o.deflate \
	zlib.o.gzio \
	zlib.o.infblock \
	zlib.o.infcodes \
	zlib.o.inffast \
	zlib.o.inflate \
	zlib.o.inftrees \
	zlib.o.infutil \
	zlib.o.trees \
	zlib.o.uncompr \
	zlib.o.zutil
REGEX_OBJS=regex.o.regcomp \
	regex.o.regerror \
	regex.o.regexec \
	regex.o.regfree
LIBMAA_OBJS=libmaa.o.arg \
	libmaa.o.base26 \
	libmaa.o.base64 \
	libmaa.o.bit \
	libmaa.o.debug \
	libmaa.o.error \
	libmaa.o.flags \
	libmaa.o.getopt \
	libmaa.o.getopt1 \
	libmaa.o.hash \
	libmaa.o.list \
	libmaa.o.log \
	libmaa.o.maa \
	libmaa.o.memory \
	libmaa.o.obstack \
	libmaa.o.parse \
	libmaa.o.parse-concrete \
	libmaa.o.pr \
	libmaa.o.prime \
	libmaa.o.rnd \
	libmaa.o.set \
	libmaa.o.sl \
	libmaa.o.source \
	libmaa.o.stack \
	libmaa.o.string \
	libmaa.o.text \
	libmaa.o.timer \
	libmaa.o.version \
	libmaa.o.xmalloc
DICT_OBJS=o.data \
	o.dict \
	o.md5 \
	o.net \
	o.clientparse \
	o.clientscan
	

## Rule Patterns ##

.SUFFIXES:	.c .o .s .l .y

.c.o:
	$(CC) $(CC_FLAGS) $(DEPEND) -c -o $@ $<


# Static dependencies:

all: dict

regex.o.regfree:
	gcc -Iregex -D__riscos__ -DHAVE_CONFIG_H -DPOSIX_MISTAKE -DREDEBUG -c -o regex.o.regfree regex.c.regfree

regex.o.regexec:
	gcc -Iregex -D__riscos__ -DHAVE_CONFIG_H -DPOSIX_MISTAKE -DREDEBUG -c -o regex.o.regexec regex.c.regexec

regex.o.regerror:
	gcc -Iregex -D__riscos__ -DHAVE_CONFIG_H -DPOSIX_MISTAKE -DREDEBUG -c -o regex.o.regerror regex.c.regerror

libmaa.o.stack:
	gcc -Ilibmaa -D__riscos__ -DHAVE_CONFIG_H -DPOSIX_MISTAKE -DREDEBUG -c -o libmaa.o.stack libmaa.c.stack

libmaa.o.obstack:
	gcc -Ilibmaa -D__riscos__ -DHAVE_CONFIG_H -DPOSIX_MISTAKE -DREDEBUG -c -o libmaa.o.obstack libmaa.c.obstack

libmaa.o.memory:
	gcc -Ilibmaa -D__riscos__ -DHAVE_CONFIG_H -DPOSIX_MISTAKE -DREDEBUG -c -o libmaa.o.memory libmaa.c.memory

c.clientscan: l.clientscan
	$(LEX) $(LFLAGS) -o$@ l.clientscan

c.clientparse: y.clientparse
	$(YACC) -tdv y.clientparse
	copy y/tab/h h.clientparse ~CDF~V
	copy y/tab/c c.clientparse ~CDF~V

libmaa.libmaa: $(LIBMAA_OBJS)
	$(AR) $(AR_FLAGS) -c -o libmaa.libmaa $(LIBMAA_OBJS)

regex.regex: $(REGEX_OBJS)
	$(AR) $(AR_FLAGS) -c -o regex.regex $(REGEX_OBJS)

zlib.zlib: $(ZLIB_OBJS)
	$(AR) $(AR_FLAGS) -c -o zlib.zlib $(ZLIB_OBJS)

dict: $(DICT_OBJS) libmaa.libmaa regex.regex zlib.zlib
	$(LINK) $(LD_FLAGS) -o dict $(DICT_OBJS) libmaa.libmaa regex.regex zlib.zlib $(UNIXLIB)

clean:
	-wipe zlib.o.* ~CF~V
	-wipe zlib.zlib ~CF~V
	-wipe regex.o.* ~CF~V
	-wipe regex.regex ~CF~V
	-wipe libmaa.o.* ~CF~V
	-wipe libmaa.libmaa ~CF~V
	-wipe o.* ~CF~V
	-wipe dict ~CF~V


# Dynamic dependencies:
