# -*- Makefile -*-
#
# @file  Makefile.LRFComponent
# @brief RTComponent makefile for "LRFComponent component"
# @date  $Date$
#
# This file is generated by rtc-template with the following argments.
#
#   rtc-template -bcxx --module-name=LRFComponent 
#   --module-desc='Laser Range Finder URG-04LX (HOKUYO Automatic) Component' --module-version=1.0.2 --module-vendor=TakeshiSasaki 
#   --module-category=generic --module-comp-type=COMMUTATIVE 
#   --module-act-type=SPORADIC --module-max-inst=10 
#   --config=DeviceName:string:/dev/ttyACM0 --config=ScanRate:int:19200 --config=ScanStart:int:0 --config=ScanEnd:int:768 --config=ScanStep:int:1 
#   --outport=ScanData:TimedShortSeq 
#   --service-idl=LRFInfo.idl 
#   --service=LRFInfo:InfoPort:LRFInfo 
#
#
# $Id$
#
CXXFLAGS = `rtm-config --cflags` -I.
LDFLAGS  = `rtm-config --libs`
SHFLAGS  = -shared

IDLC     = `rtm-config --idlc`
IDLFLAGS = `rtm-config --idlflags` -I`rtm-config --prefix`/include/rtm/idl
WRAPPER  = rtm-skelwrapper
WRAPPER_FLAGS = --include-dir="" --skel-suffix=Skel --stub-suffix=Stub

SKEL_OBJ = LRFInfoSkel.o 
STUB_OBJ = 
IMPL_OBJ = LRFInfoSVC_impl.o 
OBJS     = LRFComponent.o urg_laser.o $(SKEL_OBJ) $(STUB_OBJ) $(IMPL_OBJ)

LIBS = -L/usr/lib -L/usr/local/lib  
INC = -I/usr/include/ -I.

.SUFFIXES : .so

all: LRFComponent.so LRFComponentComp

.cpp.o:
	rm -f $@
	$(CXX) $(CXXFLAGS) -c -o $@ $< $(INC)

.o.so:
	rm -f $@
	$(CXX) $(SHFLAGS) -o $@ $(OBJS) $(LDFLAGS) $(LIBS)

LRFComponentComp: LRFComponentComp.o $(OBJS)
	$(CXX) -o $@ $(OBJS) LRFComponentComp.o $(LDFLAGS) $(LIBS) 


clean: clean_objs clean_skelstub
	rm -f *~

clean_objs:
	rm -f $(OBJS) LRFComponentComp.o LRFComponent.so LRFComponentComp

clean_skelstub:
	rm -f *Skel.h *Skel.cpp
	rm -f *Stub.h *Stub.cpp

LRFInfoSkel.cpp : LRFInfo.idl
	$(IDLC) $(IDLFLAGS) LRFInfo.idl
	$(WRAPPER) $(WRAPPER_FLAGS) --idl-file=LRFInfo.idl
LRFInfoSkel.h : LRFInfo.idl
	$(IDLC) $(IDLFLAGS) LRFInfo.idl
	$(WRAPPER) $(WRAPPER_FLAGS) --idl-file=LRFInfo.idl



LRFComponent.so: $(OBJS)
LRFComponent.o: LRFComponent.h 	LRFInfoSkel.h LRFInfoSVC_impl.h urg_laser.h 	
LRFComponentComp.o: LRFComponentComp.cpp LRFComponent.cpp LRFComponent.h LRFInfoSkel.h LRFInfoSVC_impl.h urg_laser.cpp urg_laser.h

LRFInfoSVC_impl.o: LRFInfoSVC_impl.cpp LRFInfoSVC_impl.h LRFInfoSkel.h LRFInfoStub.h
LRFInfoSkel.o: LRFInfoSkel.cpp LRFInfoSkel.h LRFInfoStub.h urg_laser.h
LRFInfoStub.o: LRFInfoStub.cpp LRFInfoStub.h



# end of Makefile
