# Generic Makefile (Unix, Linux, etc.)
#
#
# Part of PUZZLE 4.0.2 (April 1999)
#
# (c) 1995-1999 by Korbinian Strimmer and Arndt von Haeseler
#
# All parts of the source except where indicated are distributed under
# the GNU public licence.  See http://www.opensource.org for details.


# ANSI C compiler
CC = gcc
CFLAGS = -O3 -Wall -pedantic -ansi
# Comment out for compiler other than gcc
#CC = cc
#CFLAGS = -O 

# ANSI math library
LIBFLAGS = -lm


# Compiling PUZZLE
OBJS = ml1.o ml2.o ml3.o model1.o model2.o \
       puzzle1.o puzzle2.o util.o gamma.o

puzzle: $(OBJS)
	$(CC) -o $@ $(OBJS) $(LIBFLAGS)
install: puzzle
	mv puzzle ../bin/puzzle
clean:
	rm *.o

ml1.o: ml1.c ml.h util.h
	$(CC) $(CFLAGS) -c ml1.c
ml2.o: ml2.c ml.h util.h
	$(CC) $(CFLAGS) -c ml2.c
ml3.o: ml3.c ml.h util.h gamma.h
	$(CC) $(CFLAGS) -c ml3.c
model1.o: model1.c ml.h util.h
	$(CC) $(CFLAGS) -c model1.c
model2.o: model2.c ml.h util.h
	$(CC) $(CFLAGS) -c model2.c
puzzle1.o: puzzle1.c ml.h util.h puzzle.h gamma.h
	$(CC) $(CFLAGS) -c puzzle1.c
puzzle2.o: puzzle2.c ml.h util.h puzzle.h
	$(CC) $(CFLAGS) -c puzzle2.c
util.o: util.c util.h
	$(CC) $(CFLAGS) -c util.c
gamma.o: gamma.c gamma.h util.h
	$(CC) $(CFLAGS) -c gamma.c

