# $Id: Makefile,v 3.3 1998/06/10 02:52:20 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 GLUT-based demo programs for Unix/X11

# $Log: Makefile,v $
# Revision 3.3  1998/06/10 02:52:20  brianp
# added multiext example
#
# Revision 3.2  1998/04/21 23:58:41  brianp
# added LIBDIR variable
#
# Revision 3.1  1998/02/21 01:31:56  brianp
# added multitex and renormal demos
#
# Revision 3.0  1998/02/14 18:30:39  brianp
# initial rev
#

ROOT = ..

##### MACROS #####

## include-directory (replace by ${srcdir}/include later)
INC_DIR = $(ROOT)/include

## lib-directory (replace by ${srcdir}/lib later)
LIB_DIR = $(ROOT)/lib

## library dependencies
LIB_DEP = $(LIB_DIR)/$(GLUT_LIB).static

## no libraries to build
LIBS = $(LIB_DIR)/$(GLUT_LIB).static

## no dirs to recurse
DIRS =

## sources to process
SRCS = glutAddMenuEntry.c glutAddSubMenu.c glutAttachDetachMenu.c \
	glutChangeToMenuSubEntry.c glutCreateMenu.c glutCreateWindow.c \
	glutDestroyMenu.c glutDestroyWindow.c glutGameMode.c glutGet.c \
	glutGetModifiers.c glutGetSetColor.c glutGetSetDevice.c \
	glutGetSetMenu.c glutGetSetWindow.c glutIconifying.c glutInit.c \
	glutInitDisplayMode.c glutInitWindowPosition.c glutInitWindowSize.c \
	glutLayers.c glutMainLoop.c glutPostRedisplay.c glutRemoveMenuItem.c \
	glutReshapePositionWindow.c glutSwapBuffers.c glutTeapot.c glutVideo.c \
	glutXFunc.c glutstuff.c \
	\
	glutBitmap.c glutBitmapWidth.c glutExtensionSupported.c glutShapes.c \
	glutStroke.c glutStrokeWidth.c
# font lists are static, and only data, so -resident doesnt affect these
FONTS =	glutBitmap8x13.c glutBitmap9x15.c glutBitmaphel10.c glutBitmaphel12.c \
	glutBitmaphel18.c glutBitmaptr10.c glutBitmaptr24.c glutStrokemroman.c \
	glutStrokeroman.c
FONTOBJS = $(FONTS:.c=$(O))

## programs to create
PRGS = $(FONTOBJS)

# MASTER-CONFIG #

include $(ROOT)/Make-config.AmigaOS

##### RULES #####

## implicit rule to make object-files
%.o: %.c
	$(CC) -c -I. -I$(INC_DIR) $(CFLAGS) -resident32 -malways-restore-a4 $< -o $@
%_p.o: %.c
	$(CC) -c -I. -I$(INC_DIR) $(CFLAGS) $< -o $@
%_f.o: %.c
	$(CC) -c -I. -I$(INC_DIR) $(CFLAGS) -resident32 -mrestore-a4 $< -o $@ -DNDEBUG -DNODEBUG

# Make the library
$(LIB_DIR)/$(GLUT_LIB).static: $(OBJS)
	$(MAKELIB) $(GLUT_LIB) $(MAJOR) $(MINOR) $^
	/ade/m68k-amigaos/bin/ar rv ../lib/libMesaGLut_ixlibrary.a $(FONTOBJS)
	/ade/m68k-amigaos/bin/ranlib ../lib/libMesaGLut_ixlibrary.a

#glutAttachDetachMenu.o: glutAttachDetachMenu.c
#	$(CC) -c -I$(INC_DIR) $(CFLAGS) -O0 -resident32 -malways-restore-a4 $<
#glutCreateWindow.o: glutCreateWindow.c
#	$(CC) -c -I$(INC_DIR) $(CFLAGS) -O0 -resident32 -malways-restore-a4 $<

#glutAttachDetachMenu_p.o: glutAttachDetachMenu.c
#	$(CC) -c -I$(INC_DIR) $(CFLAGS) $<
#glutCreateWindow_p.o: glutCreateWindow.c
#	$(CC) -c -I$(INC_DIR) $(CFLAGS) $<
