# makefile for bomb

PROGS = cmap_test bomb image2cmap
flags = -fomit-frame-pointer -mieee-fp
CFLAGS = -O3 $(flags)
LDFLAGS = -s
LOADLIBES = -lvga -lm

LIBSRCS = libifs.c image.c gif.c zio.c
SRCS = cmap.c rug.c static.c acidlife.c brain.c \
	anneal.c rug_rug.c rotor.c shade.c wave.c \
	slip.c image_rule.c image_seq.c fuse.c rug_multi.c match.c \
	bomb.c fast.c $(LIBSRCS)
ALLSRCS = $(SRCS) image2cmap.c

LIBOBJS = $(LIBSRCS:.c=.o)
OBJS = $(SRCS:.c=.o)

DIST = Makefile README COPYING bomb.lsm notes.txt manual.txt \
	bomb suck dribble \
	cmap-data flame-data

HEADERS = $(wildcard *.h)

TAR = bomb.tar.gz

bomb: $(OBJS)

.PHONY: tags
tags:
	etags $(SRCS) $(HEADERS)

bomb.o: bomb.c
	$(CC) $(flags) -c bomb.c

.PHONY: depend
depend:
	$(CC) -MM $(ALLSRCS) > dependencies

tar:
	$(RM) $(TAR)
	rm -rf dribble
	mkdir dribble
	tar hzcfv $(TAR) $(SRCS) $(HEADERS) $(DIST)

clean:
	$(RM) *.o $(PROGS) *~

all: $(PROGS)

cmap_test: cmap_test.o cmap.o

image2cmap: image2cmap.o $(LIBOBJS)

include dependencies
