# -*- Mode: makefile -*-
#      CVS: $Id: Makefile,v 1.8 2005/12/30 22:46:06 rijsman Exp $
#      Tag: $name$
#     Info: $CVSROOT/Copyright.txt

ifndef IDEA_DIR
   IDEA_DIR=../../../
endif 

target: install

LIBRARY = xercesmodelloader

include ../xercesMakeOptions.imake

INCLUDE_DIRS := -I./Includes
INCLUDE_DIRS += -I$(IDEA_DIR)/Core/Utilities/Includes
INCLUDE_DIRS += -I$(IDEA_DIR)/Core/Agent/Includes
INCLUDE_DIRS += -I$(IDEA_DIR)/Core/PlanServer/Includes
INCLUDE_DIRS += -I$(ACE_ROOT)
INCLUDE_DIRS += -I$(XERCES_INC_DIR)

INCLUDE_DIR :=./Includes

STATIC_LIB_NAME = $(LIB_PREFIX)$(LIBRARY)$(IDEA_EXT).$(STEXT)
SHARED_LIB_NAME = $(LIB_PREFIX)$(LIBRARY)$(IDEA_EXT).$(SHEXT)

CURRENT_DIR := $(PWD)

SOURCES := $(wildcard *.cc) 
INCLUDES := $(wildcard $(INCLUDE_DIR)/*.hh)

STRIPPED_INCLUDES := $(subst $(INCLUDE_DIR)/,,$(INCLUDES) )

OBJECTS := $(SOURCES:.cc=$(IDEA_EXT).o)
SH_OBJECTS := $(SOURCES:.cc=_sh$(IDEA_EXT).o)

CFLAGS += $(INCLUDE_DIRS)

$(STATIC_LIB_NAME): $(OBJECTS)
	$(AR) $@ $?
	$(RANLIB) $@

$(SHARED_LIB_NAME): $(SH_OBJECTS)
	$(LD) $(SHARE_LINK_FLAG) -o $@.$(IDEA_VERSION_MAJOR).$(IDEA_VERSION_MINOR) $(SH_OBJECTS) 

$(OBJECTS): %$(IDEA_EXT).o : %.cc
	$(CCC) $(CFLAGS) -c $< -o $@

$(SH_OBJECTS): %_sh$(IDEA_EXT).o : %.cc
	$(CCC) $(SHARE_FLAG) $(CFLAGS) -c $< -o $@

install: install-static install-shared

install-shared: checkxerces installdirs $(SHARED_LIB_NAME)
	$(CP) $(SHARED_LIB_NAME).$(IDEA_VERSION_MAJOR).$(IDEA_VERSION_MINOR) $(INSTALL_LIB_DIR)/.
	$(LDCONFIG) -n $(INSTALL_LIB_DIR)
	$(CP) -u $(INCLUDES) $(INSTALL_INCLUDE_DIR)/.

install-static: checkxerces installdirs $(STATIC_LIB_NAME)
	$(CP) $(STATIC_LIB_NAME) $(INSTALL_LIB_DIR)/.
	$(CP) -u $(INCLUDES) $(INSTALL_INCLUDE_DIR)/.

clean:
	$(RM) *~ *.a *.so* *.o *.sh_o *._go *.po *.sh_p_o *.sh_g_o $(INCLUDE_DIR)/*~

veryclean: clean
	$(RM) $(INSTALL_LIB_DIR)/$(STATIC_LIB_NAME) $(INSTALL_LIB_DIR)/$(SHARED_LIB_NAME)*
	$(CD) $(INSTALL_INCLUDE_DIR); $(RM) $(STRIPPED_INCLUDES)
