#ident "%W%" %G%
 
# Copyright (C) 1994 Kubota Graphics Corp.
# 
# Permission to use, copy, modify, and distribute this material for
# any purpose and without fee is hereby granted, provided that the
# above copyright notice and this permission notice appear in all
# copies, and that the name of Kubota Graphics not be used in
# advertising or publicity pertaining to this material.  Kubota
# Graphics Corporation MAKES NO REPRESENTATIONS ABOUT THE ACCURACY
# OR SUITABILITY OF THIS MATERIAL FOR ANY PURPOSE.  IT IS PROVIDED
# "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE AND KUBOTA GRAPHICS CORPORATION DISCLAIMS ALL WARRANTIES,
# EXPRESS OR IMPLIED.
 
################################################################################
# ------------------------------  N O T I C E  ---------------------------------
################################################################################
# The way the demo package is set up, each application program must be compiled
#  and reside in a sister directory to the "dui" directory.  An assumption had
#  to be made as to where various files would reside and how they would be 
#  referenced, and it was decided to have all of the application programs 
#  make references to and be referenced by "../?" (relative to the rest of the
#  demo package).  Therefore any new application programs written must be
#  installed in a subdirectory of the main demo directory.
################################################################################

DUI=	../dui

# DORE_LOC is the full pathname of the directory containing the
# dore directory
DORE_LOC = 

# DORE_OBJTYPE is the machine object type
DORE_OBJTYPE=

# DORE_LIB_NAME specifies the name of the Dore library to link to
DORE_LIB_NAME= libdore.a

# LIBS is defined in the top level platform-dependent makefile
LIBS=

# DORLIB provides the full path to the Dore library
DORLIB= $(DORE_LOC)/dore/lib/$(DORE_OBJTYPE)/$(DORE_LIB_NAME)

LOCAL=	$(DORE_OBJTYPE)/geom_spec.o $(DORE_OBJTYPE)/user_parse.o

UI=	$(DUI)/$(DORE_OBJTYPE)/Render.o \
	$(DUI)/$(DORE_OBJTYPE)/MkModels.o \
	$(DUI)/$(DORE_OBJTYPE)/MkStudios.o \
	$(DUI)/$(DORE_OBJTYPE)/ParseArg.o \
	$(DUI)/$(DORE_OBJTYPE)/Trnsfrmr.o

ALL=	$(LOCAL) $(UI) $(DORLIB)

PRECISION=      DORE_REAL_SINGLE

INCLUDES= -I$(DUI) -I$(DORE_LOC)/dore/include

CFLAGS=  $(INCLUDES) -D$(PRECISION) -O

################################################################################

runme:  $(DORE_OBJTYPE) $(DORE_OBJTYPE)/runme

$(DORE_OBJTYPE)/runme: $(ALL) 
	cc $(CFLAGS) $(INCLUDES) $(LOCAL) $(UI) $(DORLIB) $(LIBS) -o $@

$(DORE_OBJTYPE):
	mkdir -p $(DORE_OBJTYPE)

$(DORE_OBJTYPE)/geom_spec.o: geom_spec.c
	cc -c $(CFLAGS) $?
	mv geom_spec.o $@

$(DORE_OBJTYPE)/user_parse.o: user_parse.c
	cc -c $(CFLAGS) $?
	mv user_parse.o $@

clean:	
	rm -f $(DORE_OBJTYPE)/*.o $(DORE_OBJTYPE)/core

clobber: clean
	rm -f $(DORE_OBJTYPE)/runme

################################################################################

$(DUI)/$(DORE_OBJTYPE)/Render.o: $(DUI)/$(DORE_OBJTYPE)
	cd $(DUI) ; make $(DORE_OBJTYPE)/Render.o \
		DORE_LOC=$(DORE_LOC) \
		DORE_OBJTYPE=$(DORE_OBJTYPE) \
		DORE_LIB_NAME=$(DORE_LIB_NAME) \
		DORLIB=$(DORLIB)

$(DUI)/$(DORE_OBJTYPE)/MkModels.o: $(DUI)/$(DORE_OBJTYPE)
	cd $(DUI) ; make $(DORE_OBJTYPE)/MkModels.o \
		DORE_LOC=$(DORE_LOC) \
		DORE_OBJTYPE=$(DORE_OBJTYPE) \
		DORE_LIB_NAME=$(DORE_LIB_NAME) \
		DORLIB=$(DORLIB)

$(DUI)/$(DORE_OBJTYPE)/MkStudios.o: $(DUI)/$(DORE_OBJTYPE)
	cd $(DUI) ; make $(DORE_OBJTYPE)/MkStudios.o \
		DORE_LOC=$(DORE_LOC) \
		DORE_OBJTYPE=$(DORE_OBJTYPE) \
		DORE_LIB_NAME=$(DORE_LIB_NAME) \
		DORLIB=$(DORLIB)

$(DUI)/$(DORE_OBJTYPE)/ParseArg.o: $(DUI)/$(DORE_OBJTYPE)
	cd $(DUI) ; make $(DORE_OBJTYPE)/ParseArg.o \
		DORE_LOC=$(DORE_LOC) \
		DORE_OBJTYPE=$(DORE_OBJTYPE) \
		DORE_LIB_NAME=$(DORE_LIB_NAME) \
		DORLIB=$(DORLIB)

$(DUI)/$(DORE_OBJTYPE)/Trnsfrmr.o: $(DUI)/$(DORE_OBJTYPE)
	cd $(DUI) ; make $(DORE_OBJTYPE)/Trnsfrmr.o \
		DORE_LOC=$(DORE_LOC) \
		DORE_OBJTYPE=$(DORE_OBJTYPE) \
		DORE_LIB_NAME=$(DORE_LIB_NAME) \
		DORLIB=$(DORLIB)
