1# $Id: Makefile,v 1.1 2005-09-18 22:04:19 dhmunro Exp $ 2SHELL=/bin/sh 3MAKE=make 4X11OBJS=xfancy.o xbasic.o 5include ../Make.cfg 6 7CFLAGS=$(COPTIONS) -I. -I../play 8CCLOAD=$(CC) $(LDOPTIONS) $(LDFLAGS) 9SYS_LIBS=$(X11LIB) $(MATHLIB) $(FPELIB) 10COPTIONS=$(COPT) $(Y_CFLAGS) 11LDOPTIONS=$(COPT) $(Y_LDFLAGS) 12COPT=$(COPT_DEFAULT) 13 14D_GISTPATH='-DGISTPATH="~/gist:~/Gist:$(Y_SITE)/g"' 15 16OBJS=gist.o tick.o tick60.o engine.o gtext.o draw.o draw0.o clip.o \ 17 gread.o gcntr.o hlevel.o ps.o cgm.o $(X11OBJS) 18BOBJS=browser.o cgmin.o eps.o 19 20all: gist 21 22# always check to see whether ../play/libplay.a needs to be rebuilt 23libgist: 24 @$(MAKE) -C ../play "COPT=$(COPT)" 25 @$(MAKE) "COPT=$(COPT)" libgist.a 26 27../play/libplay.a: 28 @$(MAKE) -C ../play "COPT=$(COPT)" libplay 29 30libgist.a: ../play/libplay.a $(OBJS) 31 cp ../play/libplay.a $@ 32 $(AR) r $@ $(OBJS) 33 $(RANLIB) $@ 34 35gist: libgist.a $(BOBJS) main.o 36 $(CCLOAD) -o $@ main.o $(BOBJS) -L. -lgist $(SYS_LIBS) 37 38# libpyg target is for pygist 39libpyg: libgist 40 @$(MAKE) "COPT=$(COPT)" ../libpyg.a 41 42../libpyg.a: libgist.a 43 cp libgist.a ../libpyg.a 44 $(RANLIB) ../libpyg.a 45 46bench: libgist bench.o main.o 47 $(CCLOAD) -o $@ main.o bench.o -L. -lgist $(SYS_LIBS) 48 49main.c: ../play/$(Y_MAIN_C) 50 cp ../play/$(Y_MAIN_C) main.c 51 52clean:: 53 rm -f *~ '#'* *.o *.a core* *.core a.out main.c gist bench 54 55distclean:: clean 56 rm -f .gdb* 57 58config: 59 @: 60 61# ------------- dependencies ------------- 62 63# cgm.h: gist.h engine.h 64# draw.h: gist.h 65# engine.h: gist.h 66# gtext.h: gist.h 67# hlevel.h: gist.h 68# ps.h: gist.h engine.h 69# xbasic.h: gist.h engine.h play.h 70# xfancy.h: xbasic.h 71 72PLUGEXT=../play/plugin.h 73PLAY_H=../play/play.h $(PLUGEXT) 74PSLIB=../play/pstdlib.h $(PLUGEXT) 75PSLIO=../play/pstdlib.h ../play/pstdio.h $(PLUGEXT) 76PLAYIO=../play/play.h ../play/pstdio.h $(PLUGEXT) 77PSPLAY=../play/pstdlib.h ../play/play.h $(PLUGEXT) 78PLAYALL=../play/play.h ../play/pstdlib.h ../play/pstdio.h $(PLUGEXT) 79 80cgm.o: cgm.h gtext.h $(PLAYALL) gist.h engine.h 81clip.o: clip.h $(PSLIB) 82draw.o: draw.c draw.h gtext.h $(PSLIB) gist.h 83 $(CC) $(CPPFLAGS) $(CFLAGS) $(NO_EXP10) -c draw.c 84draw0.o: draw.h gtext.h $(PSPLAY) gist.h 85engine.o: engine.h gist.h draw.h $(PSLIB) 86gcntr.o: gist.h 87gist.o: gist.h engine.h clip.h $(PSPLAY) 88gread.o: gread.c gist.h $(PLAYALL) 89 $(CC) $(CPPFLAGS) $(CFLAGS) $(D_GISTPATH) -c gread.c 90gtext.o: gtext.h gist.h 91hlevel.o: hlevel.h xbasic.h engine.h $(PLAYIO) gist.h 92ps.o: ps.h gtext.h $(PLAYIO) gist.h engine.h 93tick.o: tick.c gist.h 94 $(CC) $(CPPFLAGS) $(CFLAGS) $(NO_EXP10) -c tick.c 95tick60.o: gist.h 96xbasic.o: xbasic.h gtext.h $(PLAYIO) gist.h engine.h 97xfancy.o: xfancy.c xfancy.h draw.h gist.h xbasic.h engine.h $(PLAY_H) 98 $(CC) $(CPPFLAGS) $(CFLAGS) $(NO_EXP10) -c xfancy.c 99 100browser.o: xbasic.h cgm.h cgmin.h eps.h gist.h engine.h $(PLAYALL) 101cgmin.o: cgmin.h engine.h $(PLAYALL) gist.h 102eps.o: eps.h ps.h gtext.h $(PSLIO) gist.h engine.h 103 104bench.o: hlevel.h xfancy.h $(PLAYALL) gist.h xbasic.h engine.h 105 106# Always compile main.c with -g so new packages can be debugged. 107main.o: main.c 108 $(CC) $(CPPFLAGS) -I../play -g -c main.c 109