#
# This is the make file for the cagd_lib library.
#
#				Gershon Elber, Aug 1990
#

#-----
#
# The XXX_DIR variables below MUST have ABSOLUTE path. Since this file
# is sourced from several directories relative path specification will
# be simple wrong.
#

SRC_DIR = Work:T/Irit
#
# All libraries created will be installed into the LIB_DIR directory.
#
LIB_DIR = $(SRC_DIR)/lib

#
# All includes files associated with the installed libraries will be
# installed into the INC_DIR directory.
#
INC_DIR = $(SRC_DIR)/inc

#
# All binaries created will be installed into the BIN_DIR directory.
#
BIN_DIR = $(SRC_DIR)/bin

#
# Uncomment the correct set of variables to be used or modify it for
# your system.
#
# -D flags:
#
# -D__GL__ - if your system supports gl graphics library (SGI 4d & IBM R6000).
#
# -D__X11__ - if your system supports X11. Only one of __GL__ or __X11__ should
#	be used.
#
#  Emulation to the following function are available by defining the
#  following. Look at misc_lib/xgeneral.c/h for implementation.
# -DGETCWD - if getcwd is not defined in this system.
# -DSTRSTR - if strstr is not defined in this system.
# -DSTRDUP - if strdup is not defined in this system.
# -DSTRICMP - if stricmp and strincmp are not defined in this system.
#
# -DTIMES - if times is defined in your system, otherwise uses time.
#
# -DRAND - if the (s)rand random number generator exists.
# -DRAND48 - ?rand48 random number generators exists.
#	If non of RAND or RAND48 are defined, (s)random is used.
#
# -DNO_VOID_PTR - if your C compiler does not support (void *).
#
# -DUSE_VARARGS - if your system does not have stdarg.h and have the old
#	varargs.h.
#
# -DNO_CONCAT_STR - if 'char *p = "This is" "one string";' is illegal.
#
# -DGRAPDRVS - any combination of of 'amidrvs', 'nuldrvs'.
#
# Other, possibly useful defines (for c code development):
#
# -DDEBUG - for some debugging functions in the code (that can be invoked
#		from a debugger).
#

#
# Flags for Amiga using gcc
#
CC = gcc
DFLAGS = -Dmain=mymain -DTIMES
CFLAGS = $(DFLAGS) -m68040 -m68881
MORELIBS = $(LIB_DIR)/libamg.a
GRAPDRVS = nuldrvs amidrvs

#
# Default rule for compilation.
#
.c.o:
	$(CC) $(CFLAGS) -I. -I$(INC_DIR) -c $<

#
# All libraries.
LIBS = -L$(LIB_DIR) -lgeom -lprsr -lcagd -lmisc #-lgif
#-----

OBJS =  afd_cube.o bsp2poly.o bspboehm.o bspcoxdb.o bsp_gen.o \
	bsp_knot.o bsp_read.o bsp_sym.o bsp_wrt.o bzr_gen.o bzr_read.o \
	bzr_sym.o bzr2poly.o bzr_wrt.o cagd_aux.o cagd_arc.o \
	cagdaiso.o cagdalen.o cagdbbox.o cagdbsum.o cagdcoer.o \
	cagdcmps.o cagdcmpt.o cagdcmrg.o \
	cagdcrvt.o cagdcsrf.o cagddist.o cagdedit.o cagdextr.o cagdmesh.o \
	cagdmorp.o cagdofst.o cagdoslo.o cagdpoly.o cagdpris.o \
	cagdread.o cagdruld.o cagdsmrg.o \
	cagdsrev.o cagdswep.o cagdzero.o cagd_dbg.o cagd_err.o cagd_ftl.o \
	cagd_gen.o cagd_sym.o cagd_tkn.o cagd_wrt.o \
	cbspeval.o cbsp_aux.o cbzreval.o cbzr_aux.o cbzr_pwr.o \
	mshplanr.o sbspeval.o sbsp_aux.o sbzr_aux.o sbzreval.o


libcagd.a: $(OBJS)
	ar rcv libcagd.a *.o
	-ranlib libcagd.a

install: libcagd.a
	Copy CLONE libcagd.a $(LIB_DIR)
	Delete libcagd.a
	Copy cagd_lib.h $(INC_DIR)

# Dependencies starts here - do not touch, generated automatically.
afd_cube.o:	cagd_loc.h cagd_lib.h
bsp2poly.o:	cagd_loc.h cagd_lib.h
bsp_gen.o:	cagd_loc.h cagd_lib.h
bsp_knot.o:	cagd_loc.h cagd_lib.h
bsp_read.o:	cagd_loc.h cagd_lib.h
bsp_sym.o:	cagd_loc.h cagd_lib.h
bsp_wrt.o:	cagd_loc.h cagd_lib.h
bspboehm.o:	cagd_loc.h cagd_lib.h
bspcoxdb.o:	cagd_loc.h cagd_lib.h
bzr2poly.o:	cagd_loc.h cagd_lib.h
bzr_gen.o:	cagd_loc.h cagd_lib.h
bzr_read.o:	cagd_loc.h cagd_lib.h
bzr_sym.o:	cagd_loc.h cagd_lib.h
bzr_wrt.o:	cagd_loc.h cagd_lib.h
cagd_arc.o:	cagd_loc.h cagd_lib.h
cagd_aux.o:	cagd_loc.h cagd_lib.h
cagd_dbg.o:	cagd_loc.h cagd_lib.h
cagd_err.o:	cagd_loc.h cagd_lib.h
cagd_ftl.o:	cagd_lib.h
cagd_gen.o:	cagd_loc.h cagd_lib.h
cagd_sym.o:	cagd_loc.h cagd_lib.h
cagd_tkn.o:	cagd_loc.h cagd_lib.h
cagd_wrt.o:	cagd_loc.h cagd_lib.h
cagdaiso.o:	cagd_loc.h cagd_lib.h
cagdalen.o:	cagd_loc.h cagd_lib.h
cagdbbox.o:	cagd_loc.h cagd_lib.h
cagdbsum.o:	cagd_loc.h cagd_lib.h
cagdcmps.o:	cagd_loc.h cagd_lib.h
cagdcmpt.o:	cagd_loc.h cagd_lib.h
cagdcmrg.o:	cagd_loc.h cagd_lib.h
cagdcoer.o:	cagd_loc.h cagd_lib.h
cagdcrvt.o:	cagd_loc.h cagd_lib.h
cagdcsrf.o:	cagd_loc.h cagd_lib.h
cagddist.o:	cagd_loc.h cagd_lib.h
cagdedit.o:	cagd_loc.h cagd_lib.h
cagdextr.o:	cagd_loc.h cagd_lib.h
cagdmesh.o:	cagd_loc.h cagd_lib.h
cagdmorp.o:	cagd_loc.h cagd_lib.h
cagdofst.o:	cagd_loc.h cagd_lib.h
cagdpoly.o:	cagd_loc.h cagd_lib.h
cagdpris.o:	cagd_loc.h cagd_lib.h
cagdread.o:	cagd_loc.h cagd_lib.h
cagdruld.o:	cagd_loc.h cagd_lib.h
cagdsmrg.o:	cagd_loc.h cagd_lib.h
cagdsrev.o:	cagd_loc.h cagd_lib.h
cagdswep.o:	cagd_loc.h cagd_lib.h
cagdzero.o:	cagd_loc.h cagd_lib.h
cbsp_aux.o:	cagd_loc.h cagd_lib.h
cbspeval.o:	cagd_loc.h cagd_lib.h
cbzr_aux.o:	cagd_loc.h cagd_lib.h
cbzr_pwr.o:	cagd_loc.h cagd_lib.h
cbzreval.o:	cagd_loc.h cagd_lib.h
mshplanr.o:	cagd_loc.h cagd_lib.h
sbsp_aux.o:	cagd_loc.h cagd_lib.h
sbspeval.o:	cagd_loc.h cagd_lib.h
sbzr_aux.o:	cagd_loc.h cagd_lib.h
sbzreval.o:	cagd_loc.h cagd_lib.h
