#
#  Makefile for the Virtual Machine
#

CC = gcc
CFLAGS = -g -O2 -Wall -ansi -pedantic
PROGRAM = avm
HEADERS = *.h
SOURCE = bits.c copyrite.c debug.c decode.c errors.c memory.c \
	 modes.c names.c oparray.c opcode.c opdouble.c opint.c opstring.c \
	 proc.c run.c runfast.c runmixed.c runtrace.c \
	 utf8.c utilarr.c utilmem.c utilstr.c vm.c
OBJECTS = bits.o copyrite.o debug.o decode.o errors.o memory.o \
	 modes.o names.o oparray.o opcode.o opdouble.o opint.o opstring.o \
	 proc.o run.o runfast.o runmixed.o runtrace.o \
	 utf8.o utilarr.o utilmem.o utilstr.o vm.o
INSTALLDIR = /home/loki/bin
INSTALLDIR2 = /n/black/usr/cs3/cs3/se/projtest

TIMESTAMP = `date +%Y-%m-%d`

all:	$(PROGRAM)

$(PROGRAM):	$(OBJECTS) $(HEADERS)
	$(CC) $(CFLAGS) $(OBJECTS) -o $(PROGRAM)

debug:	$(OBJECTS) $(HEADERS)
	$(CC) $(CFLAGS) -DDEBUG -pg $(OBJECTS) -o $(PROGRAM)

install: $(PROGRAM)
	cp $(PROGRAM) $(INSTALLDIR)

install2: $(PROGRAM)
	strip $(PROGRAM)
	rm -f $(INSTALLDIR2)/$(PROGRAM)
	cp $(PROGRAM) $(INSTALLDIR2)
	chmod 111 $(INSTALLDIR2)/$(PROGRAM)

tarfile:
	tar -cf avm-src-$(TIMESTAMP).tar *.c *.h README makefile *.py *.txt
	gzip -f avm-src-$(TIMESTAMP).tar

backup:
	tarfile
	mv $(PROGRAM)-$(TIMESTAMP).tar.gz ../archive

zipfile:
	zip -k avm-src.zip *.c *.h README makefile *.py *.txt

clean:
	rm -f *.o core gmon.out $(PROGRAM)

