# $Id: Makefile,v 3.1 1998/04/21 23:58:11 brianp Exp $

# Mesa 3-D graphics library
# Version:  3.0
# Copyright (C) 1995-1998  Brian Paul
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Library General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Library General Public License for more details.
#
# You should have received a copy of the GNU Library General Public
# License along with this library; if not, write to the Free
# Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


# Makefile for programs from the OpenGL Programming Guide


# $Log: Makefile,v $
# Revision 3.1  1998/04/21 23:58:11  brianp
# added LIBDIR variable
#
# Revision 3.0  1998/02/14 18:27:58  brianp
# initial rev
#


##### MACROS #####

INCDIR = ../include
LIBDIR = ../lib

GL_LIBS = -L$(LIBDIR) -lMesaGLut -lMesaGLu -lMesaGL -lm $(XLIBS)

LIB_DEP = $(LIBDIR)/$(GL_LIB) $(LIBDIR)/$(GLU_LIB) $(LIBDIR)/$(GLUT_LIB)

# accnot accum aim antiindex antipindex antipoint antipoly bezsurf
# checker2 chess cone curve disk dofnot linelist list2 maplight
# pickline planetup simple sphere tea
PROGS = aaindex aapoly aargb accanti accpersp \
	alpha alpha3D anti bezcurve bezmesh checker clip \
	colormat cube depthcue dof double drawf feedback \
	fog fogindex font hello image light lines list \
	material mipmap model movelight nurbs pickdepth \
	picksquare plane planet polyoff polys quadric \
	robot sccolorlight scene scenebamb sceneflat \
	select smooth stencil stroke surface teaambient \
	teapots tess tesswind texbind texgen texprox \
	texsub texturesurf torus trim unproject varray \
	wrap
OBJS = aaindex.o aapoly.o aargb.o accanti.o accpersp.o \
	alpha.o alpha3D.o anti.o bezcurve.o bezmesh.o checker.o clip.o \
	colormat.o cube.o depthcue.o dof.o double.o drawf.o feedback.o \
	fog.o fogindex.o font.o hello.o image.o light.o lines.o list.o \
	material.o mipmap.o model.o movelight.o nurbs.o pickdepth.o \
	picksquare.o plane.o planet.o polyoff.o polys.o quadric.o \
	robot.o sccolorlight.o scene.o scenebamb.o sceneflat.o \
	select.o smooth.o stencil.o stroke.o surface.o teaambient.o \
	teapots.o tess.o tesswind.o texbind.o texgen.o texprox.o \
	texsub.o texturesurf.o torus.o trim.o unproject.o varray.o \
	wrap.o

##### RULES #####

.SUFFIXES:
.SUFFIXES: .c

%.o: %.c
	$(CC) -c -I$(INCDIR) $(CFLAGS) $< -s
%: %.o
	$(CC) -I$(INCDIR) $(CFLAGS) $< $(GL_LIBS) -o $@ -s


##### TARGETS ######

default:
	@echo "Specify a target configuration"

clean:
	-rm *.o *~

realclean:
	-rm $(PROGS)
	-rm *.o *~

targets: $(OBJS) $(PROGS)

# execute all programs
exec: $(PROGS)
	@for prog in $(PROGS) ;			\
	do					\
		echo -n "Running $$prog ..." ;	\
		$$prog ;			\
		echo ;				\
	done


include ../Make-config
