##########################################################################
# Copyright 1999 MBARI                                             
##########################################################################
# Summary  : Makefile for Navigation
# Filename : Makefile
# Author   : Andrew Pearce
# Project  : 
# Version  : Version 1.0
# Created  : 12/06/99
# Modified : 12/06/99
# Archived :
##########################################################################
# Modification History:
# $Header: /usr/local/cvs/auv/altex/onboard/Simulator/Makefile,v 1.18 2001/06/02 22:42:20 rob Exp $
#
##########################################################################

CC	    = cc
CCPP	    = cc
LD	    = cc
AR 	    = wlib
DEPEND_TOOL = makedepend

DEBUG 	    = -g
EXCEPTION_HANDLING = -WC,-xs

## OPTIMIZE = -4 -Os
OPTIMIZE = 

## MAP_OUTPUT = -S -ms -M
MAP_OUTPUT =

AUV_BIN_DIR = ../bin

CFLAGS	    = -c $(DEBUG) $(MAP_OUTPUT) $(OPTIMIZE) -D_QNX -DUNIX  
CPPFLAGS    = -c $(DEBUG) $(MAP_OUTPUT) $(OPTIMIZE) -D_QNX -DUNIX \
	         $(EXCEPTION_HANDLING)

INCLUDES    = -I.  \
	      -I.. \
	      -I../utils \
	      -I../framework \
	      -I../compass \
	      -I../DataLog \
	      -I../DynamicControl \
	      -I../LayeredControl \
	      -I../Navigation \
	      -I../taskIF \
	      -I../gps \
	      -I/usr/include           

LDFLAGS	    = -g
LIBPATH	    = /usr/lib:../lib

LIBS        =   ../gps/GpsLog.o \
		../gps/GpsUtils.o \
		../utils/utils.lib \
		../DataLog/dataLog.lib \
		../taskIF/taskInterfaces.lib \
		../LayeredControl/MissionClock.o \
		../framework/auvFramework.lib \
		/usr/local/lib/gctpc/geolib.a

SIMOBJS	    =	SimulationLog.o \
		Simulator.o \
		Simulator2.o \
		SimulatorInput.o \
		SimulatorOutput.o \
		SimulatorServer.o 

OBJS	    = 	SimulatedAhrs.o \
		SimulatedCompass.o \
		SimulatedCrossbow.o \
		SimulatedCtd.o \
		SimulatedDepthSensor.o \
		SimulatedDevice.o \
		SimulatedGps.o \
		SimulatedInclinometer.o \
		SimulatedRangeFinder.o \
		SimulatedTailCone.o \
		SimulatedLbl.o \
		SimulatedDvl.o \
		$(SIMOBJS)

TARGETS = 	simulator simCrossbow simDepthSensor \
		simAhrs simRangeFinder simTailCone simGps simLbl simDvl

all:		$(TARGETS)

simulator:  	 _simulator.o  $(SIMOBJS) $(LIBS) 
	$(LD) $(LDFLAGS) _simulator.o $(SIMOBJS) $(LIBS) -o $@

simCrossbow:  simCrossbow.o SimulatedCrossbow.o $(LIBS) 
	$(LD) $(LDFLAGS) simCrossbow.o SimulatedCrossbow.o $(LIBS) -o $@

simDepthSensor:  simDepthSensor.o SimulatedDepthSensor.o $(LIBS) 
	$(LD) $(LDFLAGS) simDepthSensor.o SimulatedDepthSensor.o $(LIBS) -o $@

simAhrs:  simAhrs.o SimulatedAhrs.o $(LIBS) 
	$(LD) $(LDFLAGS) simAhrs.o SimulatedAhrs.o $(LIBS) -o $@

simRangeFinder:  simRangeFinder.o SimulatedRangeFinder.o $(LIBS) 
	$(LD) $(LDFLAGS) simRangeFinder.o SimulatedRangeFinder.o $(LIBS) -o $@

simTailCone:  simTailCone.o SimulatedTailCone.o $(LIBS) 
	$(LD) $(LDFLAGS) simTailCone.o SimulatedTailCone.o $(LIBS) -o $@

simGps:  simGps.o SimulatedGps.o $(LIBS)
	$(LD) $(LDFLAGS) simGps.o SimulatedGps.o $(LIBS) -o $@

simLbl:  simLbl.o SimulatedLbl.o $(LIBS) 
	$(LD) $(LDFLAGS) simLbl.o SimulatedLbl.o $(LIBS) -o $@

simDvl:	simDvl.o SimulatedDvl.o DvlLog.o $(LIBS) 
	$(LD) $(LDFLAGS) simDvl.o SimulatedDvl.o DvlLog.o $(LIBS) -o $@


install:	$(TARGETS)
		cp -f $(TARGETS) 	$(AUV_BIN_DIR)/. 


##########################################################################
# Do not modify anything below this line unless absolutely necessary

.SUFFIXES:
.SUFFIXES:	.o .c .cc .d .idl


%.d: %.c
	    @echo Generating dependencies for $?
	    $(DEPEND_TOOL) $(INCLUDES) $? -f $@.tmp
	    @mv $@.tmp $@

%.d: %.cc
	    @echo Generating dependencies for $?
	    $(DEPEND_TOOL) $(INCLUDES) $? -f $@.tmp
	    @mv $@.tmp $@

%.o: %.c 
	    $(CC) $(CFLAGS) $(INCLUDES) $< -o $@	
	    @echo
%.o: %.cc
	    $(CCPP) $(CPPFLAGS) $(INCLUDES) $< -o $@
	    @echo

DEST	    = .

MAKEFILE    = Makefile

include       $(OBJS:.o=.d)

depend:	

clean:
	rm -f core *.o $(OBJS:.o=.d) *.lib *.yy *.tab.* $(TARGETS)

update:
	cvs update $(CC_SRCS) $MAKEFILE

commit:
	cvs commit $(CC_SRCS) $MAKEFILE

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









