#### # $Id$ #### ### # Use ../make.opt to set things. # # REQUIRES OSSIM_DEV_HOME environment variable. ### include ../make.opt include $(OSSIM_DEV_HOME)/ossim/Makefile.common INCLUDES := -I../include $(BASE_INCLUDES) # BASE_DEFINES += -DOMSMAKINGDLL DEPENDS_FILES=$(wildcard *.d) CPPSRCS=$(wildcard *.cpp) CPPOBJS=$(patsubst %.cpp,%.o,$(CPPSRCS)) OBJS=$(CPPOBJS) $(COBJS) SHARED_LIB=liboms.$(SO_VERSIONLESS_EXT) SHARED_LIB_TARGET= $(OMS_LIB_PATH)/$(SHARED_LIB) LINK_SHARED_OBJECT_FILES=*.$(OBJEXT) # linux stuff # ifeq ($(HOST_RESULT),linux) # Override for linux to just do a straight link. LD_SHARED=$(CXX) -shared endif all: depends $(OBJS) $(LD_SHARED) -o $(SHARED_LIB_TARGET) \ $(LINK_SHARED_OBJECT_FILES) -L$(OSSIM_HOME)/lib/ossim -lossim $(OSSIM_LIB_LINK) clean: $(RM) -f $(SHARED_LIB_TARGET) $(RM_CMD) depends: $(CPPSRCS:.cpp=.d) install: all if test "$(OMS_LIB_PATH)" != "$(OMS_INST_LIB)" ; then \ $(INSTALL) -d $(OMS_INST_LIB) ; \ $(INSTALL) $(SHARED_LIB_TARGET) $(OMS_INST_LIB)/$(SHARED_LIB) ; \ fi ### # Pattern rule for objects from .cpp files. ### %.$(OBJEXT): %.cpp $(CXX) $(CXXFLAGS) $(PIC_FLAG) $(CDEBUGFLAGS) $(BASE_DEFINES) $(INCLUDES) -c $< -o $@ ### # Pattern rule for .d dependency file from .cpp files. ### %.d: %.cpp $(SHELL) -ec '$(CXX) -MM $(PIC_FLAG) $(CXXFLAGS) $(CDEBUGFLAGS) $(BASE_DEFINES) $(INCLUDES) $< >> $@;' ifneq ( $(DEPENDS_FILES),) -include $(DEPENDS_FILES) endif