#
# Makefile for svl library
#

SOURCE      =   .
OBJDEST     =   .
DEST_PAR    =   ..

LIBNAME     =   VL

LSRCS		=	Basics.cc Vec2.cc Vec3.cc Vec4.cc Mat2.cc \
				Mat3.cc Mat4.cc Vec.cc Mat.cc SGVec.cc SGMat.cc \
				Instantiate.cc 

ALLSRCS     =   $(LSRCS)

LOBJS		=	$(LSRCS:.cc=.o)

INCDIRS		=	-I/usr/include/CC -I../include
LIBDIRS		=	

LIBS		=	-lm 

sgi_CC		=	CC -woff 3247
sgi_CFLAGS	= 	-O2 -mips2 -DSGI

sun_CC		=	g++
sun_CFLAGS	= 	-O -DHAS_TF -DSUN


# Shouldn't have to change stuff below here...
# Remember to do a make depend first time you make the project.

.SUFFIXES:	.cc

default:	all
		

all:	all_$(HOSTTYPE)

# --- multi platform rules -----------------

all_iris4d:
		make CFLAGS="$(sgi_CFLAGS)" CC="$(sgi_CC)" \
			DEST="$(DEST_PAR)/.arch/sgi_53/lib" all_libs

all_sun4:
		make CFLAGS="$(sun_CFLAGS)" CC="$(sun_CC)" \
			DEST="$(DEST_PAR)/.arch/sun4_55/lib" all_libs

all_libs:	
		make clean	
		make VLf
		make clean
		make VLd
		make clean
		make VLf.dbg
		make clean
		make VLd.dbg

# --- multi library rules ---------------

$(LIBNAME)f:
	make CFLAGS="$(CFLAGS) -DVL_FLOAT" LIBNAME=$(LIBNAME)f lib

$(LIBNAME)d:
	make CFLAGS="$(CFLAGS)" LIBNAME=$(LIBNAME)d lib

$(LIBNAME)f.dbg:
	make CFLAGS="$(CFLAGS) -DVL_DEBUG -DVL_FLOAT" LIBNAME=$(LIBNAME)f.dbg lib

$(LIBNAME)d.dbg:
	make CFLAGS="$(CFLAGS) -DVL_DEBUG" LIBNAME=$(LIBNAME)d.dbg lib

# --- vanilla rules -----------------------

lib: \
		$(LOBJS)
		ar rcu $(DEST)/lib$(LIBNAME).a $(LOBJS)

.cc.o:		
		$(CC) $(CFLAGS) -c $(SOURCE)/$< -o $@ $(INCDIRS) -I$(SOURCE)


neat:
		@-echo 'Making neat...'
		@-rm -f *.bak *~ #*# core

clean:	
		@-echo 'Making clean...'
		@-rm -f *.o *.bak *~ #*# core

tags:
		@-echo 'Making tags...'
		@etags *.[Cch]

depend: Makefile
		@-echo 'Making dependencies...'
		@cp Makefile Makefile.bak
		@cd $(SOURCE); makedepend -f $(OBJDEST)/Makefile -w0 -- $(INCDIRS) -I. -- $(ALLSRCS)
		@mv Makefile Makefile.tmp
		@awk '  NR == 1,/^# DO NOT DELETE THIS LINE/    {print; next} \
			NR == 2                                     {print; next} \
			$$2 !~ /^\//                                {print $$0}'  \
			Makefile.tmp > Makefile
		@rm Makefile.tmp


# DO NOT DELETE THIS LINE -- make depend depends on it.

