#################################################
# makefile-lib : Auther By G.Ming, 2005-05-26.  #
# --------------- Script Sample --------------- #
################################################# 
#all : [name].so 
# SRC = [source files] 
# TGT = $(SRC:.cpp=.o) 
# $(SRC) : [include file] 
# @touch $@ 
# %.o : %.c 
# cc -c $? 
###########    ̬(.so)   ############    
# my.so : $(TGT) 
# cc -shared -o $@ $(TGT)
#################     OPTION    #################
CCOMPILE = gcc -g
CPPCOMPILE = g++ -g
COMPILEOPTION = -c 

LINK = g++
LINKOPTION = -o 

INCLUDEDIR = -I$(HOME)/include -I${XERCESCROOT}/include

LIBDIRS = -ldl -lcrypt -lxerces-c -L/home/xerces/lib

OBJS = testdemo.o DOMTreeErrorReporter.o DOMPrintFilter.o \
			DOMPrintErrorHandler.o StrFormatTarget.o StrTransformer.o \
      XMLHandler.o DOMSearchUtils.o StringTrim.o InsertToMap.o

OUTPUT = testexe

APPENDLIB = 
PROC_OPTION = DEFINE=_PROC_ MODE=ORACLE CODE=CPP
ESQL_OPTION = 
################OPTION END################
ESQL = esql
PROC = proc

$(OUTPUT):$(OBJS) $(APPENDLIB)
	$(LINK)  $(LINKOPTION) $(OUTPUT) $(LIBDIRS)  $(OBJS)  $(APPENDLIB)

clean: 
	rm -f $(OBJS)
	rm -f $(OUTPUT)

all: clean $(OUTPUT)

.PRECIOUS:%.cpp %.c %.C
.SUFFIXES:
.SUFFIXES:  .c .o .cpp .ecpp .pc .ec .C

.cpp.o:
	$(CPPCOMPILE) -c -o  $*.o $(COMPILEOPTION) $(INCLUDEDIR)  $*.cpp

.c.o:
	$(CCOMPILE) -c -o $*.o $(COMPILEOPTION) $(INCLUDEDIR) $*.c

.C.o:
	$(CPPCOMPILE) -c -o $*.o $(COMPILEOPTION) $(INCLUDEDIR) $*.C	

.ecpp.C:
	$(ESQL) -e $(ESQL_OPTION) $(INCLUDEDIR) $*.ecpp 
	
.ec.c:
	$(ESQL) -e $(ESQL_OPTION) $(INCLUDEDIR) $*.ec
	
.pc.cpp:
	$(PROC)  CPP_SUFFIX=cpp $(PROC_OPTION)  $*.pc
