[BACK]Return to Makefile.in CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gmp / tune

File: [local] / OpenXM_contrib / gmp / tune / Attic / Makefile.in (download)

Revision 1.1, Sat Sep 9 14:13:19 2000 UTC (23 years, 9 months ago) by maekawa
Branch: MAIN

Initial revision

# Makefile.in generated automatically by automake 1.4a from Makefile.am

# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

SHELL = @SHELL@

srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@

bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include

DESTDIR =

pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@

top_builddir = ..

ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@

INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@

NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :

@SET_MAKE@
build_alias = @build_alias@
build_triplet = @build@
host_alias = @host_alias@
host_triplet = @host@
target_alias = @target_alias@
target_triplet = @target@
AMDEP = @AMDEP@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
CPP = @CPP@
CXX = @CXX@
CXXCPP = @CXXCPP@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
EXEEXT = @EXEEXT@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
M4 = @M4@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
SPEED_CYCLECOUNTER_OBJS = @SPEED_CYCLECOUNTER_OBJS@
STRIP = @STRIP@
U = @U@
VERSION = @VERSION@
gmp_srclinks = @gmp_srclinks@
install_sh = @install_sh@
mpn_objects = @mpn_objects@
mpn_objs_in_libgmp = @mpn_objs_in_libgmp@

# Copyright (C) 2000 Free Software Foundation, Inc.
#
# This file is part of the GNU MP Library.
#
# The GNU MP Library is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or (at your
# option) any later version.
#
# The GNU MP Library is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
# License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
# MA 02111-1307, USA.


AUTOMAKE_OPTIONS = gnu no-dependencies $(top_builddir)/ansi2knr

INCLUDES = -I$(top_srcdir)

EXTRA_DIST = alpha.asm pentium.asm sparcv9.asm hppa.asm hppa2.asm
noinst_HEADERS = speed.h

# No dependency on libgmp, so can use libgmptune instead for tune program
EXTRA_LTLIBRARIES = libspeed.la
libspeed_la_SOURCES = common.c time.c noop.c
libspeed_la_DEPENDENCIES = $(SPEED_CYCLECOUNTER_OBJS)
libspeed_la_LIBADD = $(libspeed_la_DEPENDENCIES)

# Both libspeed and the programs are built static-only since static is
# fastest and will be preferred by users who care about maximizing speed.
#
# Actually libtool doesn't seem to pass -static through to gcc, it only
# chooses the ".a" versions of libtool libraries.  Rerun the gcc link
# invocation with -static if you want a static link of libc and libm.
#
LDFLAGS = -static
LDADD = libspeed.la $(top_builddir)/libgmp.la -lm

EXTRA_PROGRAMS = speed speed-ext tuneup

tuneup_SOURCES = tuneup.c
tuneup_DEPENDENCIES = libspeed.la libgmptune.a
tuneup_LDADD = $(tuneup_DEPENDENCIES) -lm

speed_SOURCES = speed.c

SQR_CLEANFILES = sqr_basecase.c sqr_basecase.h sqr_basecase.asm

CLEANFILES = $(EXTRA_PROGRAMS) $(EXTRA_LTLIBRARIES) \
	$(SQR_CLEANFILES) libgmptune.a libgmptmp.a \
	stg.gnuplot stg.data \
	mtg.gnuplot mtg.data \
	fibg.gnuplot fibg.data \
	graph.gnuplot graph.data


# This bit like mpn/Makefile.am

# COMPILE minus CC.  FIXME: Really pass *_CFLAGS to CPP?
COMPILE_FLAGS = \
	$(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)


SUFFIXES = .asm

# Recompiled versions of $(LIBGMPTUNE_OBJS) are always used.  sqr_basecase.o
# is replaced if it's mpn/generic/sqr_basecase.c (due to the fixed size
# temporary array), or sqr_basecase.asm with a KARATSUBA_SQR_THRESHOLD_MAX
# (because that says it normally works only up to KARATSUBA_SQR_THRESHOLD).

SQR_GENERIC_MAX = 200

LIBGMPTUNE_OBJS = \
  mul_n.o mul_fft.o mul.o \
  bz_divrem_n.o tdiv_qr.o fib_ui.o powm.o gcd.o gcdext.o


MTS = -s 50-150 -c

STS = -s 50-150 -c
subdir = tune
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../config.h
CONFIG_CLEAN_FILES = 

DEFS = @DEFS@ -I. -I$(srcdir) -I..
CPPFLAGS = @CPPFLAGS@
LIBS = @LIBS@
ANSI2KNR = $(top_builddir)/ansi2knr
libspeed_la_LDFLAGS = 
am_libspeed_la_OBJECTS =  common$U.lo time$U.lo noop$U.lo
libspeed_la_OBJECTS =  $(am_libspeed_la_OBJECTS)
EXTRA_PROGRAMS =  speed$(EXEEXT) speed-ext$(EXEEXT) tuneup$(EXEEXT)
am_speed_OBJECTS =  speed$U.$(OBJEXT)
speed_OBJECTS =  $(am_speed_OBJECTS)
speed_LDADD = $(LDADD)
speed_DEPENDENCIES =  libspeed.la $(top_builddir)/libgmp.la
speed_LDFLAGS = 
speed_ext_SOURCES = speed-ext.c
speed_ext_OBJECTS =  speed-ext$U.$(OBJEXT)
speed_ext_LDADD = $(LDADD)
speed_ext_DEPENDENCIES =  libspeed.la $(top_builddir)/libgmp.la
speed_ext_LDFLAGS = 
am_tuneup_OBJECTS =  tuneup$U.$(OBJEXT)
tuneup_OBJECTS =  $(am_tuneup_OBJECTS)
tuneup_LDFLAGS = 
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CFLAGS = @CFLAGS@
CCLD = $(CC)
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
DIST_SOURCES =  $(libspeed_la_SOURCES) $(speed_SOURCES) speed-ext.c \
$(tuneup_SOURCES)
HEADERS =  $(noinst_HEADERS)

DIST_COMMON =  README $(noinst_HEADERS) Makefile.am Makefile.in


DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)

GZIP_ENV = --best
depcomp = 
SOURCES = $(libspeed_la_SOURCES) $(speed_SOURCES) speed-ext.c $(tuneup_SOURCES)
OBJECTS = $(am_libspeed_la_OBJECTS) $(am_speed_OBJECTS) speed-ext$U.$(OBJEXT) $(am_tuneup_OBJECTS)

all: all-redirect
.SUFFIXES:
.SUFFIXES: .asm .c .lo .o .obj
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
	cd $(top_srcdir) && $(AUTOMAKE) --gnu tune/Makefile

Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
	cd $(top_builddir) \
	  && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status


mostlyclean-compile:
	-rm -f *.o core *.core
	-rm -f *.$(OBJEXT)

clean-compile:

distclean-compile:
	-rm -f *.tab.c

maintainer-clean-compile:

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs

distclean-libtool:

maintainer-clean-libtool:
$(top_builddir)/ansi2knr: $(top_builddir)/ansi2knr.$(OBJEXT)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) ansi2knr

$(top_builddir)/ansi2knr.$(OBJEXT):
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) ansi2knr.$(OBJEXT)


mostlyclean-kr:
	-rm -f *_.c

clean-kr:

distclean-kr:

maintainer-clean-kr:

libspeed.la: $(libspeed_la_OBJECTS) $(libspeed_la_DEPENDENCIES)
	$(LINK)  $(libspeed_la_LDFLAGS) $(libspeed_la_OBJECTS) $(libspeed_la_LIBADD) $(LIBS)

speed$(EXEEXT): $(speed_OBJECTS) $(speed_DEPENDENCIES)
	@rm -f speed$(EXEEXT)
	$(LINK) $(speed_LDFLAGS) $(speed_OBJECTS) $(speed_LDADD) $(LIBS)

speed-ext$(EXEEXT): $(speed_ext_OBJECTS) $(speed_ext_DEPENDENCIES)
	@rm -f speed-ext$(EXEEXT)
	$(LINK) $(speed_ext_LDFLAGS) $(speed_ext_OBJECTS) $(speed_ext_LDADD) $(LIBS)

tuneup$(EXEEXT): $(tuneup_OBJECTS) $(tuneup_DEPENDENCIES)
	@rm -f tuneup$(EXEEXT)
	$(LINK) $(tuneup_LDFLAGS) $(tuneup_OBJECTS) $(tuneup_LDADD) $(LIBS)
.c.o:
	$(COMPILE) -c $<
.c.obj:
	$(COMPILE) -c `cygpath -w $<`
.c.lo:
	$(LTCOMPILE) -c -o $@ $<
common_.c: common.c $(ANSI2KNR)
	$(CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/common.c; then echo $(srcdir)/common.c; else echo common.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > common_.c
noop_.c: noop.c $(ANSI2KNR)
	$(CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/noop.c; then echo $(srcdir)/noop.c; else echo noop.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > noop_.c
speed_.c: speed.c $(ANSI2KNR)
	$(CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/speed.c; then echo $(srcdir)/speed.c; else echo speed.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > speed_.c
speed-ext_.c: speed-ext.c $(ANSI2KNR)
	$(CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/speed-ext.c; then echo $(srcdir)/speed-ext.c; else echo speed-ext.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > speed-ext_.c
time_.c: time.c $(ANSI2KNR)
	$(CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/time.c; then echo $(srcdir)/time.c; else echo time.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > time_.c
tuneup_.c: tuneup.c $(ANSI2KNR)
	$(CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/tuneup.c; then echo $(srcdir)/tuneup.c; else echo tuneup.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > tuneup_.c
common_.$(OBJEXT) common_.lo noop_.$(OBJEXT) noop_.lo speed_.$(OBJEXT) \
speed_.lo speed-ext_.$(OBJEXT) speed-ext_.lo time_.$(OBJEXT) time_.lo \
tuneup_.$(OBJEXT) tuneup_.lo : $(ANSI2KNR)

tags: TAGS

ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
	list='$(SOURCES) $(HEADERS) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	mkid -f$$here/ID $$unique $(LISP)

TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
		$(TAGS_FILES) $(LISP)
	tags=; \
	here=`pwd`; \
	list='$(SOURCES) $(HEADERS) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
	  || etags $(ETAGS_ARGS) $$tags  $$unique $(LISP)

mostlyclean-tags:

clean-tags:

distclean-tags:
	-rm -f TAGS ID

maintainer-clean-tags:

distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)

distdir: $(DISTFILES)
	@for file in $(DISTFILES); do \
	  d=$(srcdir); \
	  if test -d $$d/$$file; then \
	    cp -pR $$d/$$file $(distdir); \
	  else \
	    test -f $(distdir)/$$file \
	    || cp -p $$d/$$file $(distdir)/$$file || :; \
	  fi; \
	done
info-am:
info: info-am
dvi-am:
dvi: dvi-am
check-am: all-am
check: check-am
installcheck-am:
installcheck: installcheck-am
install-exec-am:
install-exec: install-exec-am

install-data-am:
install-data: install-data-am

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-am
uninstall-am:
uninstall: uninstall-am
all-am: Makefile $(HEADERS)
all-redirect: all-am
install-strip:
	$(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs:


mostlyclean-generic:

clean-generic:
	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)

distclean-generic:
	-rm -f Makefile $(CONFIG_CLEAN_FILES)
	-rm -f config.cache config.log stamp-h stamp-h[0-9]*

maintainer-clean-generic:
	-rm -f Makefile.in
mostlyclean-am:  mostlyclean-compile mostlyclean-libtool mostlyclean-kr \
		mostlyclean-tags mostlyclean-generic

mostlyclean: mostlyclean-am

clean-am:  clean-compile clean-libtool clean-kr clean-tags clean-generic \
		mostlyclean-am

clean: clean-am

distclean-am:  distclean-compile distclean-libtool distclean-kr \
		distclean-tags distclean-generic clean-am
	-rm -f libtool

distclean: distclean-am

maintainer-clean-am:  maintainer-clean-compile maintainer-clean-libtool \
		maintainer-clean-kr maintainer-clean-tags \
		maintainer-clean-generic distclean-am
	@echo "This command is intended for maintainers to use;"
	@echo "it deletes files that may require special tools to rebuild."

maintainer-clean: maintainer-clean-am

.PHONY: mostlyclean-compile distclean-compile clean-compile \
maintainer-clean-compile mostlyclean-libtool distclean-libtool \
clean-libtool maintainer-clean-libtool mostlyclean-kr distclean-kr \
clean-kr maintainer-clean-kr tags mostlyclean-tags distclean-tags \
clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
check-am installcheck-am installcheck install-exec-am install-exec \
install-data-am install-data install-am install uninstall-am uninstall \
all-redirect all-am all install-strip installdirs mostlyclean-generic \
distclean-generic clean-generic maintainer-clean-generic clean \
mostlyclean distclean maintainer-clean


# Don't know how to get tuneup$U.lo to depend on sqr_basecase.h, so just do
# an explicit make.  A plain "make tuneup" will fail if used directly.
tune:
	$(MAKE) $(AM_MAKEFLAGS) sqr_basecase.h tuneup$(EXEEXT)
	./tuneup

allprogs: sqr_basecase.h $(EXTRA_PROGRAMS)
.asm.o:
	$(M4) $(M4FLAGS) -DOPERATION_$* $< >tmp-$*.s
	$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
	rm -f tmp-$*.s
.asm.obj:
	$(M4) $(M4FLAGS) -DOPERATION_$* `cygpath -w $<` >tmp-$*.s
	$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
	rm -f tmp-$*.s
.asm.lo:
	echo "$(COMPILE_FLAGS)"
	$(M4) $(M4FLAGS) -DPIC -DOPERATION_$* $< >tmp-$*.s
	$(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
	$(M4) $(M4FLAGS) -DOPERATION_$* $< >tmp-$*.s
	$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o
	rm -f tmp-$*.s

sqr_basecase.h: libgmptune.a

# "cp -f" is not portable (eg. it fails on SunOS)
# "ar r" is going to be a bit fragile because there's more than one mul.o in
# libgmp.a.

libgmptune.a: $(top_builddir)/libgmp.la $(LIBGMPTUNE_OBJS)
	rm -f libgmptmp.a
	eval `$(LIBTOOL) --config | grep '^objdir='` ; \
		cp $(top_builddir)/$$objdir/libgmp.a libgmptmp.a
	$(AR) r libgmptmp.a $(LIBGMPTUNE_OBJS)
	rm -f $(SQR_CLEANFILES)
	echo "" >sqr_basecase.h
	if test -f $(top_builddir)/mpn/sqr_basecase.c; then		\
	  $(MAKE) $(AM_MAKEFLAGS) sqr-basecase-generic;			\
        else								\
	  if grep KARATSUBA_SQR_THRESHOLD_MAX				\
	      $(top_builddir)/mpn/sqr_basecase.asm >/dev/null; then	\
	    $(MAKE) $(AM_MAKEFLAGS) sqr-basecase-asm;			\
	  fi								\
	fi
	$(RANLIB) libgmptmp.a
	rm -f libgmptune.a
	mv libgmptmp.a libgmptune.a

sqr-basecase-generic:
	cp $(top_builddir)/mpn/sqr_basecase.c .
	$(MAKE) $(AM_MAKEFLAGS) \
		CFLAGS='$(CFLAGS) -DKARATSUBA_SQR_THRESHOLD=$(SQR_GENERIC_MAX)' \
		sqr_basecase.o
	$(AR) r libgmptmp.a sqr_basecase.o
	echo '#define KARATSUBA_SQR_MAX  $(SQR_GENERIC_MAX)' >sqr_basecase.h

sqr-basecase-asm:
	cp $(top_builddir)/mpn/sqr_basecase.asm .
	$(MAKE) $(AM_MAKEFLAGS) \
		M4FLAGS='$(M4FLAGS) -DKARATSUBA_SQR_THRESHOLD_OVERRIDE=KARATSUBA_SQR_THRESHOLD_MAX' \
		sqr_basecase.o
	ar r libgmptmp.a sqr_basecase.o
	echo "#define KARATSUBA_SQR_MAX  `sed -n 's/def...(KARATSUBA_SQR_THRESHOLD_MAX, *\([0-9]*\))/\1/p' sqr_basecase.asm`" >sqr_basecase.h

mul_n.o: $(top_builddir)/mpn/mul_n.c
	$(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/mul_n.c

mul_fft.o: $(top_builddir)/mpn/mul_fft.c
	$(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/mul_fft.c

mul.o: $(top_builddir)/mpn/mul.c
	$(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/mul.c

bz_divrem_n.o: $(top_builddir)/mpn/bz_divrem_n.c
	$(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/bz_divrem_n.c

tdiv_qr.o: $(top_builddir)/mpn/tdiv_qr.c
	$(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/tdiv_qr.c

fib_ui.o: $(top_srcdir)/mpz/fib_ui.c
	$(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_srcdir)/mpz/fib_ui.c

powm.o: $(top_srcdir)/mpz/powm.c
	$(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_srcdir)/mpz/powm.c

gcd.o: $(top_builddir)/mpn/gcd.c
	$(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/gcd.c

gcdext.o: $(top_builddir)/mpn/gcdext.c
	$(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/gcdext.c

# "mk" is multiplication in the karatsuba range
# "st" is squaring in the toom-cook range, etc
# "g" forms produce graphs

mk:
	./speed -s 5-40 -c mpn_mul_basecase mpn_kara_mul_n
mt:
	./speed $(MTS) mpn_kara_mul_n mpn_toom3_mul_n | less
mtg:
	./speed $(MTS) -P mtg mpn_kara_mul_n mpn_toom3_mul_n

sk:
	./speed -s 5-40 -c mpn_sqr_basecase mpn_kara_sqr_n
st:
	./speed $(STS) mpn_kara_sqr_n mpn_toom3_sqr_n | less
stg:
	./speed $(STS) -P stg mpn_kara_sqr_n mpn_toom3_sqr_n

bz:
	./speed -s 5-40 -c mpn_bz_divrem_sb mpn_bz_divrem_n mpn_bz_tdiv_qr

fib:
	./speed -s 80-120 -c mpz_fib_ui
fibg:
	./speed -s 10-300 -P fibg mpz_fib_ui

gcd:
	./speed -s 1-20 -c mpn_gcd

graph:
	./speed -s 1-5000 -f 1.02 -P graph mpn_mul_n mpn_sqr
	gnuplot graph.gnuplot

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: