#/* LICENSE:
#  =========================================================================
#    CMPack'04 Source Code Release for OPEN-R SDK 1.1.5-r2 for ERS7
#    Copyright (C) 2004 Multirobot Lab [Project Head: Manuela Veloso]
#    School of Computer Science, Carnegie Mellon University
#    All rights reserved.
#  ========================================================================= */

C++ := g++
CXXFLAGS := -fno-rtti -O3 -ffast-math
# CXXFLAGS = -fno-rtti -O2 -ffast-math -g
# CXXFLAGS = -fno-rtti -O2 -ffast-math -pg

MASK_TARGET := build_mask
APPLY_TARGET := apply_mask

LINK_CD := ../bin
LINK_DIR := ../camera_correction

MASK_LINK  := $(LINK_CD)/$(MASK_TARGET)
APPLY_LINK := $(LINK_CD)/$(APPLY_TARGET)

MASK_SRC := build_mask.cc PPMImage.cc
APPLY_SRC := apply_mask.cc PPMImage.cc
# SRC = $(wildcard *.cc)

MASK_OBJ := $(MASK_SRC:%.cc=%.o)
APPLY_OBJ := $(APPLY_SRC:%.cc=%.o)
#LIB = -lMagick -lMagick++
# -L/usr/X11R6/lib -lX11 -lMagick -lMagick++
# -lpthread

MASK_DEPENDS  := $(MASK_SRC:%.cc=%.d) 
APPLY_DEPENDS := $(APPLY_SRC:%.cc=%.d) 

# INC = -I../shared/
# -I/usr/include/X11 -I/usr/include/g++-3/
# DEF =

GEN_HS :=
DEP_PROCESS:=dep_process

all: $(MASK_TARGET) $(APPLY_TARGET) $(MASK_LINK) $(APPLY_LINK)

$(MASK_TARGET): $(MASK_OBJ)
	$(C++) $(CXXFLAGS) -o $@ $(MASK_OBJ) $(LIB)

$(APPLY_TARGET): $(APPLY_OBJ)
	$(C++) $(CXXFLAGS) -o $@ $(APPLY_OBJ) $(LIB)

$(MASK_LINK): $(MASK_TARGET)
	(\rm -rf $@; cd $(dir $@); \ln -s $(LINK_DIR)/$(notdir $<) ./)

$(APPLY_LINK): $(APPLY_TARGET)
	(\rm -rf $@; cd $(dir $@); \ln -s $(LINK_DIR)/$(notdir $<) ./)

clean:
	rm -f ../shared/image.o *.o *~ $(MASK_TARGET) $(APPLY_TARGET) core
	rm -f $(MASK_DEPENDS) $(APPLY_DEPENDS)
	rm -f $(MASK_LINK) $(APPLY_LINK)

dep: depend

depend:
	rm -f $(MASK_DEPENDS) $(APPLY_DEPENDS)

include $(MASK_DEPENDS)
include $(APPLY_DEPENDS)

%.o: %.cc
	$(C++) $(CXXFLAGS) $(DEF) $(INC) -c $< -o $@

%.d: %.cc $(GEN_HS)
	$(C++) -M $(CXXFLAGS) $< >$@.tmp
	$(DEP_PROCESS) $@.tmp $(basename $@).o $(GEN_HS) >$@
	rm $@.tmp
