
#uncomment the next line to get a stanalone/client that uses smaller hex-es.
#SMALL=-DSMALL

# version control....
MAJOR=1
MINOR=5
VERSION=$(MAJOR).$(MINOR)

CC=gcc
CFLAGS = -O2 -Wall -g $(SMALL)
#CFLAGS = -Wall $(SMALL)
HDRS= atlantis.h ui.h undo.h commands.h ral.h
OBJS= atlantis.o ui.o undo.o
SOBJS= atlantisd.o serve.o socketstuff.o commands.o undo.o ral.o version.o fatal.o
COBJS= atlantisc.o ral.o version.o fatal.o
LIBS=-L/usr/X11R6/lib -lXaw -lXmu -lXt -lXext -lX11

GTAR=tar

all: atlantisd atlantisc

# The programs.

atlantis: $(OBJS)
	$(CC) $(OBJS) $(LIBS) -o atlantis

atlantisc: $(COBJS) 
	$(CC) $(COBJS) $(LIBS) -o atlantisc

atlantisd: $(SOBJS)
	$(CC) $(SOBJS) -o $@


# Most sources depend on most headers.
atlantis.o: atlantis.c $(HDRS)

ui.o: ui.c $(HDRS)

undo.o: undo.c $(HDRS)

atlantisd.o: atlantisd.c $(HDRS)

serve.o: serve.c $(HDRS)

commands.o: commands.c $(HDRS)

socketstuff.o: socketstuff.c $(HDRS)

atlantisc.o: atlantisc.c $(HDRS)

ral.o: ral.c $(HDRS)

dist: atlantis-$(VERSION).tgz

atlantis-$(VERSION).tgz.uue: atlantis-$(VERSION).tgz
	uuencode atlantis-$(VERSION).tgz < atlantis-$(VERSION).tgz > atlantis-$(VERSION).tgz.uue

atlantis-$(VERSION).tgz: dummy
	-mkdir atlantis-$(VERSION)
	cp -pr `cat filelist` atlantis-$(VERSION)
	echo 0 > atlantis-$(VERSION)/version.h
	tar cvfz atlantis-$(VERSION).tgz atlantis-$(VERSION)
	rm -rf atlantis-$(VERSION)

tar: atlantis-$(VERSION).tgz
zip: atlantis-$(VERSION).zip 


version.o: version version.c
	$(CC) $(CFLAGS)   -c $*.c -o $*.o -DMAJOR=$(MAJOR) -DMINOR=$(MINOR) 

version: dummy
	@expr `cat version.h` + 1 > version.h

dummy:

# The clean target.
clean:
	rm -f $(OBJS) $(SOBJS) $(COBJS) atlantis atlantisd atlantisc
