# Macaulay2/packages/Macaulay2Doc/test/engine/Makefile.  Generated from Makefile.in by configure.
# DOTS is the path to M2/Macaulay2 from this directory
DOTS = ../../../..

include $(DOTS)/../include/config.Makefile

SRCDIR = .
include ../Makefile.test

Makefile: Makefile.in; cd ../../..; ./config.status Macaulay2/packages/Macaulay2Doc/test/engine/Makefile

LDLIBS = 
.PHONY: benchmark
# factor.poly was generated with toString (x+3*y-14)^15*(x^2+y^4+z^7-x*y-13*x*z^2+12)^3
CFLAGS := -g -Wall -Wshadow -Wcast-qual -Wno-parentheses -Wno-sign-compare -Wno-unused-label
CFLAGS += -O2
CFLAGS += -fomit-frame-pointer
CXXFLAGS := $(CFLAGS)
LDFLAGS =  -g -L/capybara/lib
# LDFLAGS += -Wl,-Map,mapfile

%.s : %.c  ; $(COMPILE.c ) -S $(OUTPUT_OPTION) $<
%.s : %.cc ; $(COMPILE.cc) -S $(OUTPUT_OPTION) $<

# PROF := -pg
PROF := 
CFLAGS += $(PROF)
CXXFLAGS += $(PROF)
LDFLAGS += $(PROF)
LDLIBS := -lcf$(PROF) -lcfmem$(PROF) -lntl$(PROF) -lgmp$(PROF) -lm

ifneq "$(PROF)" ""
CFLAGS += -fno-omit-frame-pointer
CXXFLAGS += -fno-omit-frame-pointer
endif

LDLIBS += -lgc$(PROF) -ldl

benchmark gmon.out : factor factor.poly
	time ./factor < ./factor.poly >factor.out
	cat factor.out
	fgrep -s '( (x^2-y*x-13*z^2*x+y^4+z^7+12)^3, (x+3*y-14)^15 )' factor.out >/dev/null
factor.gprof: gmon.out
	gprof -b ./factor >$@
factor-demangled.gprof: factor.gprof Makefile
	<$< sed -e 's/\(_GLOBAL__D_\)/global destructor /' -e 's/\(_GLOBAL__I_\)/global constructor /' | demangle >$@
factor.o factor-init.o : factor.h
mapfile factor : factor.o factor-init.o factor-init1.o 
	g++ $(LDFLAGS) factor.o factor-init.o $(LOADLIBES) $(LDLIBS) factor-init1.o -o "$@"
mapfile.demangled: mapfile
	demangle <$< >$@

clean::; rm -f *.o
distclean::clean; rm -f Makefile

# Local Variables:
# compile-command: "make -k -C $M2BUILDDIR/Macaulay2/packages/Macaulay2Doc/test/engine "
# End:
