
CalcAddinThr.urd:
	$(OO_SDK_HOME)/bin/idlc -C -I$(OO_SDK_HOME)/idl CalcAddinThr.idl

CalcAddinThr.rdb: CalcAddinThr.urd
	$(OO_SDK_URE_HOME)/bin/regmerge CalcAddinThr.rdb /UCR CalcAddinThr.urd

com.flag : CalcAddinThr.rdb
	$(OO_SDK_HOME)/bin/cppumaker -BUCR -Gc \
		$(OOo)/offapi.rdb \
		$(OO_SDK_URE_HOME)/share/misc/types.rdb \
		CalcAddinThr.rdb
	touch com.flag

CalcAddinThr_impl.o : CalcAddinThr_impl.cxx  com.flag
	g++ -O2 -fPIC -fomit-frame-pointer -c -o CalcAddinThr_impl.o -DUNX \
		-DGCC -DLINUX -DCPPU_ENV=gcc3 -I. -I$(OO_SDK_HOME)/include -I $(OO_SDK_OUT)/LINUXexample.out/inc \
		CalcAddinThr_impl.cxx

CalcAddinSpread.o  :  CalcAddinSpread.cxx CalcAddinSpread.hpp  calcCommon.h com.flag
	g++ -O2 -fPIC -fomit-frame-pointer -c -o CalcAddinSpread.o -DUNX \
		-DGCC -DLINUX -DCPPU_ENV=gcc3 -I. -I$(OO_SDK_HOME)/include -I $(OO_SDK_OUT)/LINUXexample.out/inc \
		CalcAddinSpread.cxx

libCalcAddinThr.so: CalcAddinThr_impl.o CalcAddinSpread.o
	g++ -o libCalcAddinThr.so -shared \
		-L$(OO_SDK_HOME)/lib -lpthread -luno_cppuhelpergcc3 CalcAddinThr_impl.o CalcAddinSpread.o

## calc.uno.so is listed in calcuno.rdb. use make run to execute
calc.uno.so : calcuno.cxx calcCommon.h
	gcc -c -fpic -fvisibility=hidden -O -I. -I $(OO_SDK_OUT)/LINUXexample.out/inc -I $(OO_SDK_OUT)/LINUXexample.out/inc/examples -I$(OO_SDK_HOME)/include -DUNX -DGCC -DLINUX -DCPPU_ENV=gcc3 -DGXX_INCLUDE_PATH=/usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6 -DHAVE_GCC_VISIBILITY_FEATURE -o calcuno.o calcuno.cxx
	g++ -shared '-Wl,-rpath,$ORIGIN'  -L$(OO_SDK_HOME)/lib -L$(OO_SDK_URE_HOME)/lib -o calc.uno.so calcuno.o \
	-luno_cppuhelpergcc3 -luno_cppu -luno_sal  

all: libCalcAddinThr.so

install : all
	/usr/bin/install -p libCalcAddinThr.so CalcAddinThr.rdb ${OFFICE_PROGRAM_PATH}/
	/usr/bin/zip -u CalcAddinThr.oxt  CalcAddinThr.components META-INF/manifest.xml CalcAddinThr.rdb libCalcAddinThr.so
	-${OFFICE_PROGRAM_PATH}/unopkg remove CalcAddinThr.oxt
	${OFFICE_PROGRAM_PATH}/unopkg add -f CalcAddinThr.oxt

run  :  calc.uno.so
	uno -env:URE_MORE_SERVICES=file://$(shell pwd)/calcuno.rdb  -s com.sun.star.bridge.example.RemoteClientSample  -- "1"

clean:
	rm -rf com org *.o *.urd *.so *.flag *.oxt CalcAddinThr.rdb

