# beef Makefile

CC = gcc
CFLAGS = -Wall -ansi -pedantic -O2

PREFIX = /usr
MANDIR = /usr/share/man/man1
DOCDIR = /usr/share/doc/beef

TARGETS = src/main.o src/new_cell.o src/load.o src/eval.o \
src/tape_dump.o src/code_dump.o

beef: $(TARGETS)
	@echo "  LD    beef"; \
	$(CC) $(CFLAGS) $(LDFLAGS) -o beef $(TARGETS)

%.o: %.c
	@echo "  CC    $*.c"; \
	$(CC) $(CFLAGS) -o $*.o -c $*.c 

install:
	@echo "  CP    beef"; \
	cp beef $(PREFIX)/bin;
	@echo "  CP    beef.1.gz"; \
	cp doc/beef.1.gz $(MANDIR);
	@if [ ! -d $(DOCDIR) ]; then \
	   echo "  MD    $(DOCDIR)"; \
	   mkdir $(DOCDIR); \
	 fi;
	@echo "  CP    changelog COPYING.gz"; \
	cp doc/changelog doc/COPYING.gz $(DOCDIR);

clean:
	@echo -e "  RM    beef"; \
	rm -f beef;
	@echo -e "  RM    src/*.o"; \
	rm -f src/*.o;

.PHONY: install clean
