# Makefile for CoCoALib/src/AlgebraicCore/TmpHilbertDir/ directory

COCOA_ROOT=../../..
include $(COCOA_ROOT)/configuration/autoconf.mk
CWD=src/AlgebraicCore/TmpHilbertDir/
DEPEND_FILE=Makefile_dependencies

SRCS=AnnaUtils.C IVectors.C eterms.C poincare.C rum.C unipoly.C TermList.C \
     toric.C \
     TmpPoincareCPP.C

OBJS=$(SRCS:.C=.o)

# Default target, must be the first one!
.PHONY: default
default: $(OBJS)
	ar -rcuS $(COCOA_LIB) $(OBJS)

.PHONY: clean clean-local
clean: clean-local
	@echo "Cleaned CoCoALib/$(CWD)"

clean-local:
	@/bin/rm -f $(OBJS)  "$(DEPEND_FILE).old"  "$(DEPEND_FILE).new"  ./*~  ./.*~  ./.\#*
	@/bin/rm -rf  ./*.dSYM


.PHONY: veryclean
veryclean: clean-local
	@true >| "$(DEPEND_FILE)" # Empties $(DEPEND_FILE)
	@echo "Verycleaned CoCoALib/$(CWD)"


# This target checks whether we should really build DEPEND_FILE
.PHONY: dependencies
dependencies:
	@if [ -f "$(COCOA_HDR)" -a \! "$(DEPEND_FILE)" -nt "$(COCOA_HDR)" ] ; \
	then \
	  $(MAKE) create-dependencies; \
	fi

# This is the target which really does rebuild the DEPEND_FILE
.PHONY: create-dependencies
create-dependencies:
	@/bin/rm -rf $(DEPEND_FILE).new
	@echo "Rebuilding dependencies in <CoCoALib>/$(CWD)"
	@echo "##################################################################"   >> $(DEPEND_FILE).new
	@echo "# Dependencies for directory $(CWD)"                                  >> $(DEPEND_FILE).new
	@echo "#              for CoCoALib version $(VERSION)"                       >> $(DEPEND_FILE).new
	@echo "# DO NOT EDIT: this file is automatically generated; to regenerate"   >> $(DEPEND_FILE).new
	@echo "# run \`make dependencies' in the CoCoALib root directory."           >> $(DEPEND_FILE).new
	@echo "##################################################################"   >> $(DEPEND_FILE).new
	@echo                                                                        >> $(DEPEND_FILE).new
	for srcfile in $(SRCS); \
	do \
	  objfile=`basename $$srcfile .c`.o; \
	  $(CXX) $(INCLUDE) -I. -MM "$$srcfile" -MQ "$$objfile" >> $(DEPEND_FILE).new; \
	  echo >> $(DEPEND_FILE).new; \
	done
	@if [ -f "$(DEPEND_FILE)" ] ; \
	then \
	  /bin/mv -f "$(DEPEND_FILE)" "$(DEPEND_FILE).old" ; \
	fi
	@/bin/mv $(DEPEND_FILE).new  $(DEPEND_FILE)


$(DEPEND_FILE):  $(COCOA_ROOT)/configuration/version
	@$(MAKE) -W "$(DEPEND_FILE)" create-dependencies  # -W avoids infinite recursion

include $(DEPEND_FILE)

$(OBJS): $(COCOA_ROOT)/configuration/autoconf.mk
