# Targets
# make          - twidle the options yourself :-)
# make cc       - standard cc options
# make gcc      - standard gcc options

DIR=    cast
TOP=    .
CC=     gcc
CFLAG=	-O3 -fomit-frame-pointer

CPP=    $(CC) -E
INCLUDES=
INSTALLTOP=/usr/local/lib
MAKE=           make
MAKEDEPEND=     makedepend
MAKEFILE=       Makefile.uni
AR=             ar r
RANLIB=         ranlib

IDEA_ENC=i_cbc.o

CFLAGS= $(INCLUDES) $(CFLAG)

GENERAL=Makefile
TEST=ideatest
APPS=idea_spd

LIB=libidea.a
LIBSRC=i_skey.c i_ecb.c i_cbc.c i_cfb64.c i_ofb64.c
LIBOBJ=i_skey.o i_ecb.o $(IDEA_ENC) i_cfb64.o i_ofb64.o

SRC= $(LIBSRC)

EXHEADER= idea.h
HEADER= idea_lcl.h $(EXHEADER)

ALL=    $(GENERAL) $(SRC) $(HEADER)

all:    $(LIB) $(TEST) $(APPS)

$(LIB):    $(LIBOBJ)
	$(AR) $(LIB) $(LIBOBJ)
	$(RANLIB) $(LIB)

test:	$(TEST)
	./$(TEST)

$(TEST): $(TEST).c $(LIB)
	$(CC) -o $(TEST) $(CFLAGS) $(TEST).c $(LIB)

$(APPS): $(APPS).c $(LIB)
	$(CC) -o $(APPS) $(CFLAGS) $(APPS).c $(LIB)

lint:
	lint -DLINT $(INCLUDES) $(SRC)>fluff

depend:
	$(MAKEDEPEND) $(INCLUDES) $(PROGS) $(LIBSRC)

dclean:
	perl -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
	mv -f Makefile.new $(MAKEFILE)

clean:
	/bin/rm -f $(LIB) $(TEST) $(APPS) *.o asm/*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff

cc:
	$(MAKE) CC="cc" CFLAG="-O" all

gcc:
	$(MAKE) CC="gcc" CFLAGS="-O3 -fomit-frame-pointer" all

# DO NOT DELETE THIS LINE -- make depend depends on it.
