Makefile.in revision 1.1.1.2
1# Makefile.in generated by automake 1.11.6 from Makefile.am.
2# @configure_input@
3
4# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
5# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
6# Foundation, Inc.
7# This Makefile.in is free software; the Free Software Foundation
8# gives unlimited permission to copy and/or distribute it,
9# with or without modifications, as long as this notice is preserved.
10
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
13# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
14# PARTICULAR PURPOSE.
15
16@SET_MAKE@
17
18# Copyright 2000, 2001, 2002, 2003, 2005, 2006, 2007, 2008, 2009,
19# 2010, 2011 Free Software Foundation, Inc.
20#
21# This file is part of the GNU MP Library.
22#
23# The GNU MP Library is free software; you can redistribute it and/or modify
24# it under the terms of the GNU Lesser General Public License as published by
25# the Free Software Foundation; either version 3 of the License, or (at your
26# option) any later version.
27#
28# The GNU MP Library is distributed in the hope that it will be useful, but
29# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
30# or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
31# License for more details.
32#
33# You should have received a copy of the GNU Lesser General Public License
34# along with the GNU MP Library.  If not, see http://www.gnu.org/licenses/.
35
36# Copyright 1996, 1998, 1999, 2000, 2001, 2002 Free Software Foundation,
37# Inc.
38#
39# This file is part of the GNU MP Library.
40#
41# The GNU MP Library is free software; you can redistribute it and/or modify
42# it under the terms of the GNU Lesser General Public License as published by
43# the Free Software Foundation; either version 3 of the License, or (at your
44# option) any later version.
45#
46# The GNU MP Library is distributed in the hope that it will be useful, but
47# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
48# or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
49# License for more details.
50#
51# You should have received a copy of the GNU Lesser General Public License
52# along with the GNU MP Library.  If not, see http://www.gnu.org/licenses/.
53
54VPATH = @srcdir@
55am__make_dryrun = \
56  { \
57    am__dry=no; \
58    case $$MAKEFLAGS in \
59      *\\[\ \	]*) \
60        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
61          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
62      *) \
63        for am__flg in $$MAKEFLAGS; do \
64          case $$am__flg in \
65            *=*|--*) ;; \
66            *n*) am__dry=yes; break;; \
67          esac; \
68        done;; \
69    esac; \
70    test $$am__dry = yes; \
71  }
72pkgdatadir = $(datadir)/@PACKAGE@
73pkgincludedir = $(includedir)/@PACKAGE@
74pkglibdir = $(libdir)/@PACKAGE@
75pkglibexecdir = $(libexecdir)/@PACKAGE@
76am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
77install_sh_DATA = $(install_sh) -c -m 644
78install_sh_PROGRAM = $(install_sh) -c
79install_sh_SCRIPT = $(install_sh) -c
80INSTALL_HEADER = $(INSTALL_DATA)
81transform = $(program_transform_name)
82NORMAL_INSTALL = :
83PRE_INSTALL = :
84POST_INSTALL = :
85NORMAL_UNINSTALL = :
86PRE_UNINSTALL = :
87POST_UNINSTALL = :
88build_triplet = @build@
89host_triplet = @host@
90EXTRA_PROGRAMS = speed$(EXEEXT) speed-dynamic$(EXEEXT) \
91	speed-ext$(EXEEXT) tuneup$(EXEEXT) tune-gcd-p$(EXEEXT)
92DIST_COMMON = README $(noinst_HEADERS) $(srcdir)/../mpn/Makeasm.am \
93	$(srcdir)/Makefile.am $(srcdir)/Makefile.in
94subdir = tune
95ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
96am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
97	$(top_srcdir)/configure.ac
98am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
99	$(ACLOCAL_M4)
100mkinstalldirs = $(install_sh) -d
101CONFIG_HEADER = $(top_builddir)/config.h
102CONFIG_CLEAN_FILES =
103CONFIG_CLEAN_VPATH_FILES =
104am__DEPENDENCIES_1 =
105am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) \
106	$(top_builddir)/tests/libtests.la $(top_builddir)/libgmp.la
107am_libspeed_la_OBJECTS = common.lo divrem1div.lo divrem1inv.lo \
108	divrem2div.lo divrem2inv.lo freq.lo gcdext_single.lo \
109	gcdext_double.lo gcdextod.lo gcdextos.lo hgcd_lehmer.lo \
110	hgcd_appr_lehmer.lo hgcd_reduce_1.lo hgcd_reduce_2.lo \
111	jacbase1.lo jacbase2.lo jacbase3.lo jacbase4.lo mod_1_div.lo \
112	mod_1_inv.lo mod_1_1-1.lo mod_1_1-2.lo modlinv.lo noop.lo \
113	powm_mod.lo powm_redc.lo pre_divrem_1.lo set_strb.lo \
114	set_strs.lo set_strp.lo time.lo
115libspeed_la_OBJECTS = $(am_libspeed_la_OBJECTS)
116libspeed_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
117	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
118	$(libspeed_la_LDFLAGS) $(LDFLAGS) -o $@
119am_speed_OBJECTS = speed.$(OBJEXT)
120speed_OBJECTS = $(am_speed_OBJECTS)
121speed_LDADD = $(LDADD)
122speed_DEPENDENCIES = $(DEPENDENCIES) $(am__DEPENDENCIES_1)
123speed_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
124	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(speed_LDFLAGS) \
125	$(LDFLAGS) -o $@
126am_speed_dynamic_OBJECTS = speed.$(OBJEXT)
127speed_dynamic_OBJECTS = $(am_speed_dynamic_OBJECTS)
128speed_dynamic_LDADD = $(LDADD)
129speed_dynamic_DEPENDENCIES = $(DEPENDENCIES) $(am__DEPENDENCIES_1)
130am_speed_ext_OBJECTS = speed-ext.$(OBJEXT)
131speed_ext_OBJECTS = $(am_speed_ext_OBJECTS)
132speed_ext_LDADD = $(LDADD)
133speed_ext_DEPENDENCIES = $(DEPENDENCIES) $(am__DEPENDENCIES_1)
134speed_ext_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
135	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
136	$(speed_ext_LDFLAGS) $(LDFLAGS) -o $@
137am_tune_gcd_p_OBJECTS = tune-gcd-p.$(OBJEXT)
138tune_gcd_p_OBJECTS = $(am_tune_gcd_p_OBJECTS)
139tune_gcd_p_LDADD = $(LDADD)
140tune_gcd_p_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
141	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
142	$(tune_gcd_p_LDFLAGS) $(LDFLAGS) -o $@
143am_tuneup_OBJECTS = tuneup.$(OBJEXT)
144am__objects_1 = div_qr_2.$(OBJEXT) bdiv_q.$(OBJEXT) bdiv_qr.$(OBJEXT) \
145	dcpi1_div_qr.$(OBJEXT) dcpi1_divappr_q.$(OBJEXT) \
146	dcpi1_bdiv_qr.$(OBJEXT) dcpi1_bdiv_q.$(OBJEXT) \
147	invertappr.$(OBJEXT) invert.$(OBJEXT) binvert.$(OBJEXT) \
148	divrem_2.$(OBJEXT) gcd.$(OBJEXT) gcdext.$(OBJEXT) \
149	get_str.$(OBJEXT) set_str.$(OBJEXT) matrix22_mul.$(OBJEXT) \
150	hgcd.$(OBJEXT) hgcd_appr.$(OBJEXT) hgcd_reduce.$(OBJEXT) \
151	mul_n.$(OBJEXT) sqr.$(OBJEXT) powm_sec.$(OBJEXT) \
152	mullo_n.$(OBJEXT) mul_fft.$(OBJEXT) mul.$(OBJEXT) \
153	tdiv_qr.$(OBJEXT) mulmod_bnm1.$(OBJEXT) sqrmod_bnm1.$(OBJEXT) \
154	mulmid.$(OBJEXT) mulmid_n.$(OBJEXT) toom42_mulmid.$(OBJEXT) \
155	nussbaumer_mul.$(OBJEXT) toom6h_mul.$(OBJEXT) \
156	toom8h_mul.$(OBJEXT) toom6_sqr.$(OBJEXT) toom8_sqr.$(OBJEXT) \
157	toom22_mul.$(OBJEXT) toom2_sqr.$(OBJEXT) toom33_mul.$(OBJEXT) \
158	toom3_sqr.$(OBJEXT) toom44_mul.$(OBJEXT) toom4_sqr.$(OBJEXT)
159am__objects_2 = $(am__objects_1) divrem_1.$(OBJEXT) mod_1.$(OBJEXT)
160nodist_tuneup_OBJECTS = sqr_basecase.$(OBJEXT) fac_ui.$(OBJEXT) \
161	$(am__objects_2)
162tuneup_OBJECTS = $(am_tuneup_OBJECTS) $(nodist_tuneup_OBJECTS)
163am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1) libspeed.la
164tuneup_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
165	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(tuneup_LDFLAGS) \
166	$(LDFLAGS) -o $@
167DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
168depcomp =
169am__depfiles_maybe =
170COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
171	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
172LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
173	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
174	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
175CCLD = $(CC)
176LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
177	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
178	$(LDFLAGS) -o $@
179SOURCES = $(libspeed_la_SOURCES) $(speed_SOURCES) \
180	$(speed_dynamic_SOURCES) $(speed_ext_SOURCES) \
181	$(tune_gcd_p_SOURCES) $(tuneup_SOURCES) \
182	$(nodist_tuneup_SOURCES)
183DIST_SOURCES = $(libspeed_la_SOURCES) $(speed_SOURCES) \
184	$(speed_dynamic_SOURCES) $(speed_ext_SOURCES) \
185	$(tune_gcd_p_SOURCES) $(tuneup_SOURCES)
186am__can_run_installinfo = \
187  case $$AM_UPDATE_INFO_DIR in \
188    n|no|NO) false;; \
189    *) (install-info --version) >/dev/null 2>&1;; \
190  esac
191HEADERS = $(noinst_HEADERS)
192ETAGS = etags
193CTAGS = ctags
194DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
195ABI = @ABI@
196ACLOCAL = @ACLOCAL@
197AMTAR = @AMTAR@
198AR = @AR@
199AS = @AS@
200ASMFLAGS = @ASMFLAGS@
201AUTOCONF = @AUTOCONF@
202AUTOHEADER = @AUTOHEADER@
203AUTOMAKE = @AUTOMAKE@
204AWK = @AWK@
205CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
206CC = @CC@
207CCAS = @CCAS@
208CC_FOR_BUILD = @CC_FOR_BUILD@
209CFLAGS = @CFLAGS@
210CPP = @CPP@
211CPPFLAGS = @CPPFLAGS@
212CPP_FOR_BUILD = @CPP_FOR_BUILD@
213CXX = @CXX@
214CXXCPP = @CXXCPP@
215CXXFLAGS = @CXXFLAGS@
216CYGPATH_W = @CYGPATH_W@
217DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
218DEFS = @DEFS@
219DLLTOOL = @DLLTOOL@
220DSYMUTIL = @DSYMUTIL@
221DUMPBIN = @DUMPBIN@
222ECHO_C = @ECHO_C@
223ECHO_N = @ECHO_N@
224ECHO_T = @ECHO_T@
225EGREP = @EGREP@
226EXEEXT = @EXEEXT@
227EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
228FGREP = @FGREP@
229GMP_LDFLAGS = @GMP_LDFLAGS@
230GMP_LIMB_BITS = @GMP_LIMB_BITS@
231GMP_NAIL_BITS = @GMP_NAIL_BITS@
232GREP = @GREP@
233HAVE_CLOCK_01 = @HAVE_CLOCK_01@
234HAVE_CPUTIME_01 = @HAVE_CPUTIME_01@
235HAVE_GETRUSAGE_01 = @HAVE_GETRUSAGE_01@
236HAVE_GETTIMEOFDAY_01 = @HAVE_GETTIMEOFDAY_01@
237HAVE_HOST_CPU_FAMILY_power = @HAVE_HOST_CPU_FAMILY_power@
238HAVE_HOST_CPU_FAMILY_powerpc = @HAVE_HOST_CPU_FAMILY_powerpc@
239HAVE_SIGACTION_01 = @HAVE_SIGACTION_01@
240HAVE_SIGALTSTACK_01 = @HAVE_SIGALTSTACK_01@
241HAVE_SIGSTACK_01 = @HAVE_SIGSTACK_01@
242HAVE_STACK_T_01 = @HAVE_STACK_T_01@
243HAVE_SYS_RESOURCE_H_01 = @HAVE_SYS_RESOURCE_H_01@
244INSTALL = @INSTALL@
245INSTALL_DATA = @INSTALL_DATA@
246INSTALL_PROGRAM = @INSTALL_PROGRAM@
247INSTALL_SCRIPT = @INSTALL_SCRIPT@
248INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
249LD = @LD@
250LDFLAGS = @LDFLAGS@
251LEX = @LEX@
252LEXLIB = @LEXLIB@
253LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
254LIBCURSES = @LIBCURSES@
255LIBGMPXX_LDFLAGS = @LIBGMPXX_LDFLAGS@
256LIBGMP_DLL = @LIBGMP_DLL@
257LIBGMP_LDFLAGS = @LIBGMP_LDFLAGS@
258LIBM = @LIBM@
259LIBM_FOR_BUILD = @LIBM_FOR_BUILD@
260LIBOBJS = @LIBOBJS@
261LIBREADLINE = @LIBREADLINE@
262LIBS = @LIBS@
263LIBTOOL = @LIBTOOL@
264LIPO = @LIPO@
265LN_S = @LN_S@
266LTLIBOBJS = @LTLIBOBJS@
267M4 = @M4@
268MAINT = @MAINT@
269MAKEINFO = @MAKEINFO@
270MANIFEST_TOOL = @MANIFEST_TOOL@
271MKDIR_P = @MKDIR_P@
272NM = @NM@
273NMEDIT = @NMEDIT@
274OBJDUMP = @OBJDUMP@
275OBJEXT = @OBJEXT@
276OTOOL = @OTOOL@
277OTOOL64 = @OTOOL64@
278PACKAGE = @PACKAGE@
279PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
280PACKAGE_NAME = @PACKAGE_NAME@
281PACKAGE_STRING = @PACKAGE_STRING@
282PACKAGE_TARNAME = @PACKAGE_TARNAME@
283PACKAGE_URL = @PACKAGE_URL@
284PACKAGE_VERSION = @PACKAGE_VERSION@
285PATH_SEPARATOR = @PATH_SEPARATOR@
286RANLIB = @RANLIB@
287SED = @SED@
288SET_MAKE = @SET_MAKE@
289SHELL = @SHELL@
290SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
291STRIP = @STRIP@
292TAL_OBJECT = @TAL_OBJECT@
293TUNE_LIBS = @TUNE_LIBS@
294TUNE_SQR_OBJ = @TUNE_SQR_OBJ@
295U_FOR_BUILD = @U_FOR_BUILD@
296VERSION = @VERSION@
297WITH_READLINE_01 = @WITH_READLINE_01@
298YACC = @YACC@
299YFLAGS = @YFLAGS@
300abs_builddir = @abs_builddir@
301abs_srcdir = @abs_srcdir@
302abs_top_builddir = @abs_top_builddir@
303abs_top_srcdir = @abs_top_srcdir@
304ac_ct_AR = @ac_ct_AR@
305ac_ct_CC = @ac_ct_CC@
306ac_ct_CXX = @ac_ct_CXX@
307ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
308am__leading_dot = @am__leading_dot@
309am__tar = @am__tar@
310am__untar = @am__untar@
311bindir = @bindir@
312build = @build@
313build_alias = @build_alias@
314build_cpu = @build_cpu@
315build_os = @build_os@
316build_vendor = @build_vendor@
317builddir = @builddir@
318datadir = @datadir@
319datarootdir = @datarootdir@
320docdir = @docdir@
321dvidir = @dvidir@
322exec_prefix = @exec_prefix@
323gmp_srclinks = @gmp_srclinks@
324host = @host@
325host_alias = @host_alias@
326host_cpu = @host_cpu@
327host_os = @host_os@
328host_vendor = @host_vendor@
329htmldir = @htmldir@
330includedir = @includedir@
331infodir = @infodir@
332install_sh = @install_sh@
333libdir = @libdir@
334libexecdir = @libexecdir@
335localedir = @localedir@
336localstatedir = @localstatedir@
337mandir = @mandir@
338mkdir_p = @mkdir_p@
339mpn_objects = @mpn_objects@
340mpn_objs_in_libgmp = @mpn_objs_in_libgmp@
341oldincludedir = @oldincludedir@
342pdfdir = @pdfdir@
343prefix = @prefix@
344program_transform_name = @program_transform_name@
345psdir = @psdir@
346sbindir = @sbindir@
347sharedstatedir = @sharedstatedir@
348srcdir = @srcdir@
349sysconfdir = @sysconfdir@
350target_alias = @target_alias@
351top_build_prefix = @top_build_prefix@
352top_builddir = @top_builddir@
353top_srcdir = @top_srcdir@
354INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/tests
355EXTRA_DIST = alpha.asm pentium.asm sparcv9.asm hppa.asm hppa2.asm hppa2w.asm \
356  ia64.asm powerpc.asm powerpc64.asm x86_64.asm many.pl
357
358noinst_HEADERS = speed.h
359@ENABLE_STATIC_FALSE@STATIC = 
360
361# Prefer -static on the speed and tune programs, since that can avoid
362# overheads of shared library linkages on some systems.  Libtool tends to
363# botch -static if configured with --disable-static, perhaps reasonably
364# enough.  In any event under --disable-static the only choice is a dynamic
365# link so there's no point in -static.
366#
367@ENABLE_STATIC_TRUE@STATIC = -static
368EXTRA_LTLIBRARIES = libspeed.la
369libspeed_la_SOURCES = \
370  common.c divrem1div.c divrem1inv.c divrem2div.c divrem2inv.c		\
371  freq.c								\
372  gcdext_single.c gcdext_double.c gcdextod.c gcdextos.c			\
373  hgcd_lehmer.c hgcd_appr_lehmer.c hgcd_reduce_1.c hgcd_reduce_2.c	\
374  jacbase1.c jacbase2.c jacbase3.c jacbase4.c				\
375  mod_1_div.c mod_1_inv.c mod_1_1-1.c mod_1_1-2.c modlinv.c		\
376  noop.c powm_mod.c powm_redc.c pre_divrem_1.c				\
377  set_strb.c set_strs.c set_strp.c time.c
378
379libspeed_la_DEPENDENCIES = $(SPEED_CYCLECOUNTER_OBJ) \
380  $(top_builddir)/tests/libtests.la $(top_builddir)/libgmp.la
381
382libspeed_la_LIBADD = $(libspeed_la_DEPENDENCIES) $(LIBM)
383libspeed_la_LDFLAGS = $(STATIC)
384DEPENDENCIES = libspeed.la
385LDADD = $(DEPENDENCIES) $(TUNE_LIBS)
386speed_SOURCES = speed.c
387speed_LDFLAGS = $(STATIC)
388speed_dynamic_SOURCES = speed.c
389speed_ext_SOURCES = speed-ext.c
390speed_ext_LDFLAGS = $(STATIC)
391tuneup_SOURCES = tuneup.c
392nodist_tuneup_SOURCES = sqr_basecase.c fac_ui.c $(TUNE_MPN_SRCS)
393tuneup_DEPENDENCIES = $(TUNE_SQR_OBJ) libspeed.la
394tuneup_LDADD = $(tuneup_DEPENDENCIES) $(TUNE_LIBS)
395tuneup_LDFLAGS = $(STATIC)
396tune_gcd_p_SOURCES = tune-gcd-p.c
397tune_gcd_p_DEPENDENCIES = ../mpn/gcd.c
398tune_gcd_p_LDFLAGS = $(STATIC)
399
400# $(MANY_CLEAN) and $(MANY_DISTCLEAN) are hooks for many.pl
401CLEANFILES = $(EXTRA_PROGRAMS) $(EXTRA_LTLIBRARIES) \
402	$(TUNE_MPN_SRCS) fac_ui.c sqr_asm.asm \
403	stg.gnuplot stg.data \
404	mtg.gnuplot mtg.data \
405	fibg.gnuplot fibg.data \
406	graph.gnuplot graph.data \
407	$(MANY_CLEAN)
408
409DISTCLEANFILES = sqr_basecase.c  $(MANY_DISTCLEAN)
410
411# Generating these little files at build time seems better than including
412# them in the distribution, since the list can be changed more easily.
413#
414# mpn/generic/tdiv_qr.c uses mpn_divrem_1 and mpn_divrem_2, but only for 1
415# and 2 limb divisors, which are never used during tuning, so it doesn't
416# matter whether it picks up a tuned or untuned version of those.
417#
418# divrem_1 and mod_1 are recompiled renamed to "_tune" to avoid a linking
419# problem.  If a native divrem_1 provides an mpn_divrem_1c entrypoint then
420# common.c will want that, but the generic divrem_1 doesn't provide it,
421# likewise for mod_1.  The simplest way around this is to have the tune
422# build versions renamed suitably.
423#
424# FIXME: Would like say mul_n.c to depend on $(top_builddir)/mul_n.c so the
425# recompiled object will be rebuilt if that file changes.
426TUNE_MPN_SRCS = $(TUNE_MPN_SRCS_BASIC) divrem_1.c mod_1.c
427TUNE_MPN_SRCS_BASIC = div_qr_2.c bdiv_q.c bdiv_qr.c			\
428  dcpi1_div_qr.c dcpi1_divappr_q.c dcpi1_bdiv_qr.c dcpi1_bdiv_q.c	\
429  invertappr.c invert.c binvert.c divrem_2.c gcd.c gcdext.c		\
430  get_str.c set_str.c matrix22_mul.c					\
431  hgcd.c hgcd_appr.c hgcd_reduce.c					\
432  mul_n.c sqr.c powm_sec.c						\
433  mullo_n.c mul_fft.c mul.c tdiv_qr.c mulmod_bnm1.c sqrmod_bnm1.c	\
434  mulmid.c mulmid_n.c toom42_mulmid.c					\
435  nussbaumer_mul.c toom6h_mul.c toom8h_mul.c toom6_sqr.c toom8_sqr.c	\
436  toom22_mul.c toom2_sqr.c toom33_mul.c toom3_sqr.c toom44_mul.c toom4_sqr.c
437
438
439# COMPILE minus CC.
440#
441COMPILE_FLAGS = $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
442	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ASMFLAGS)
443
444
445# Flags used for preprocessing (in ansi2knr rules).
446#
447PREPROCESS_FLAGS = $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
448	$(CPPFLAGS)
449
450
451# Recent versions of automake (1.5 and up for instance) append automake
452# generated suffixes to this $(SUFFIXES) list.  This is essential for us,
453# since .c must come after .s, .S and .asm.  If .c is before .s, for
454# instance, then in the mpn directory "make" will see add_n.c mentioned in
455# an explicit rule (the ansi2knr stuff) and decide it must have add_n.c,
456# even if add_n.c doesn't exist but add_n.s does.  See GNU make
457# documentation "(make)Implicit Rule Search", part 5c.
458#
459# On IRIX 6 native make this doesn't work properly though.  Somehow .c
460# remains ahead of .s, perhaps because .c.s is a builtin rule.  .asm works
461# fine though, and mpn/mips3 uses this.
462#
463SUFFIXES = .s .S .asm
464
465# can be overridden during development, eg. "make RM_TMP=: mul_1.lo"
466RM_TMP = rm -f
467all: all-am
468
469.SUFFIXES:
470.SUFFIXES: .s .S .asm .c .lo .o .obj
471$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/../mpn/Makeasm.am $(am__configure_deps)
472	@for dep in $?; do \
473	  case '$(am__configure_deps)' in \
474	    *$$dep*) \
475	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
476	        && { if test -f $@; then exit 0; else break; fi; }; \
477	      exit 1;; \
478	  esac; \
479	done; \
480	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu --ignore-deps tune/Makefile'; \
481	$(am__cd) $(top_srcdir) && \
482	  $(AUTOMAKE) --gnu --ignore-deps tune/Makefile
483.PRECIOUS: Makefile
484Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
485	@case '$?' in \
486	  *config.status*) \
487	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
488	  *) \
489	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
490	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
491	esac;
492$(srcdir)/../mpn/Makeasm.am:
493
494$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
495	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
496
497$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
498	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
499$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
500	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
501$(am__aclocal_m4_deps):
502libspeed.la: $(libspeed_la_OBJECTS) $(libspeed_la_DEPENDENCIES) $(EXTRA_libspeed_la_DEPENDENCIES) 
503	$(libspeed_la_LINK)  $(libspeed_la_OBJECTS) $(libspeed_la_LIBADD) $(LIBS)
504speed$(EXEEXT): $(speed_OBJECTS) $(speed_DEPENDENCIES) $(EXTRA_speed_DEPENDENCIES) 
505	@rm -f speed$(EXEEXT)
506	$(speed_LINK) $(speed_OBJECTS) $(speed_LDADD) $(LIBS)
507speed-dynamic$(EXEEXT): $(speed_dynamic_OBJECTS) $(speed_dynamic_DEPENDENCIES) $(EXTRA_speed_dynamic_DEPENDENCIES) 
508	@rm -f speed-dynamic$(EXEEXT)
509	$(LINK) $(speed_dynamic_OBJECTS) $(speed_dynamic_LDADD) $(LIBS)
510speed-ext$(EXEEXT): $(speed_ext_OBJECTS) $(speed_ext_DEPENDENCIES) $(EXTRA_speed_ext_DEPENDENCIES) 
511	@rm -f speed-ext$(EXEEXT)
512	$(speed_ext_LINK) $(speed_ext_OBJECTS) $(speed_ext_LDADD) $(LIBS)
513tune-gcd-p$(EXEEXT): $(tune_gcd_p_OBJECTS) $(tune_gcd_p_DEPENDENCIES) $(EXTRA_tune_gcd_p_DEPENDENCIES) 
514	@rm -f tune-gcd-p$(EXEEXT)
515	$(tune_gcd_p_LINK) $(tune_gcd_p_OBJECTS) $(tune_gcd_p_LDADD) $(LIBS)
516tuneup$(EXEEXT): $(tuneup_OBJECTS) $(tuneup_DEPENDENCIES) $(EXTRA_tuneup_DEPENDENCIES) 
517	@rm -f tuneup$(EXEEXT)
518	$(tuneup_LINK) $(tuneup_OBJECTS) $(tuneup_LDADD) $(LIBS)
519
520mostlyclean-compile:
521	-rm -f *.$(OBJEXT)
522
523distclean-compile:
524	-rm -f *.tab.c
525
526.c.o:
527	$(COMPILE) -c $<
528
529.c.obj:
530	$(COMPILE) -c `$(CYGPATH_W) '$<'`
531
532.c.lo:
533	$(LTCOMPILE) -c -o $@ $<
534
535mostlyclean-libtool:
536	-rm -f *.lo
537
538clean-libtool:
539	-rm -rf .libs _libs
540
541ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
542	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
543	unique=`for i in $$list; do \
544	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
545	  done | \
546	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
547	      END { if (nonempty) { for (i in files) print i; }; }'`; \
548	mkid -fID $$unique
549tags: TAGS
550
551TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
552		$(TAGS_FILES) $(LISP)
553	set x; \
554	here=`pwd`; \
555	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
556	unique=`for i in $$list; do \
557	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
558	  done | \
559	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
560	      END { if (nonempty) { for (i in files) print i; }; }'`; \
561	shift; \
562	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
563	  test -n "$$unique" || unique=$$empty_fix; \
564	  if test $$# -gt 0; then \
565	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
566	      "$$@" $$unique; \
567	  else \
568	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
569	      $$unique; \
570	  fi; \
571	fi
572ctags: CTAGS
573CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
574		$(TAGS_FILES) $(LISP)
575	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
576	unique=`for i in $$list; do \
577	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
578	  done | \
579	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
580	      END { if (nonempty) { for (i in files) print i; }; }'`; \
581	test -z "$(CTAGS_ARGS)$$unique" \
582	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
583	     $$unique
584
585GTAGS:
586	here=`$(am__cd) $(top_builddir) && pwd` \
587	  && $(am__cd) $(top_srcdir) \
588	  && gtags -i $(GTAGS_ARGS) "$$here"
589
590distclean-tags:
591	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
592
593distdir: $(DISTFILES)
594	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
595	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
596	list='$(DISTFILES)'; \
597	  dist_files=`for file in $$list; do echo $$file; done | \
598	  sed -e "s|^$$srcdirstrip/||;t" \
599	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
600	case $$dist_files in \
601	  */*) $(MKDIR_P) `echo "$$dist_files" | \
602			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
603			   sort -u` ;; \
604	esac; \
605	for file in $$dist_files; do \
606	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
607	  if test -d $$d/$$file; then \
608	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
609	    if test -d "$(distdir)/$$file"; then \
610	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
611	    fi; \
612	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
613	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
614	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
615	    fi; \
616	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
617	  else \
618	    test -f "$(distdir)/$$file" \
619	    || cp -p $$d/$$file "$(distdir)/$$file" \
620	    || exit 1; \
621	  fi; \
622	done
623check-am: all-am
624check: check-am
625all-am: Makefile $(HEADERS)
626installdirs:
627install: install-am
628install-exec: install-exec-am
629install-data: install-data-am
630uninstall: uninstall-am
631
632install-am: all-am
633	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
634
635installcheck: installcheck-am
636install-strip:
637	if test -z '$(STRIP)'; then \
638	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
639	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
640	      install; \
641	else \
642	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
643	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
644	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
645	fi
646mostlyclean-generic:
647
648clean-generic:
649	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
650
651distclean-generic:
652	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
653	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
654	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
655
656maintainer-clean-generic:
657	@echo "This command is intended for maintainers to use"
658	@echo "it deletes files that may require special tools to rebuild."
659clean: clean-am
660
661clean-am: clean-generic clean-libtool mostlyclean-am
662
663distclean: distclean-am
664	-rm -f Makefile
665distclean-am: clean-am distclean-compile distclean-generic \
666	distclean-tags
667
668dvi: dvi-am
669
670dvi-am:
671
672html: html-am
673
674html-am:
675
676info: info-am
677
678info-am:
679
680install-data-am:
681
682install-dvi: install-dvi-am
683
684install-dvi-am:
685
686install-exec-am:
687
688install-html: install-html-am
689
690install-html-am:
691
692install-info: install-info-am
693
694install-info-am:
695
696install-man:
697
698install-pdf: install-pdf-am
699
700install-pdf-am:
701
702install-ps: install-ps-am
703
704install-ps-am:
705
706installcheck-am:
707
708maintainer-clean: maintainer-clean-am
709	-rm -f Makefile
710maintainer-clean-am: distclean-am maintainer-clean-generic
711
712mostlyclean: mostlyclean-am
713
714mostlyclean-am: mostlyclean-compile mostlyclean-generic \
715	mostlyclean-libtool
716
717pdf: pdf-am
718
719pdf-am:
720
721ps: ps-am
722
723ps-am:
724
725uninstall-am:
726
727.MAKE: install-am install-strip
728
729.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
730	clean-libtool ctags distclean distclean-compile \
731	distclean-generic distclean-libtool distclean-tags distdir dvi \
732	dvi-am html html-am info info-am install install-am \
733	install-data install-data-am install-dvi install-dvi-am \
734	install-exec install-exec-am install-html install-html-am \
735	install-info install-info-am install-man install-pdf \
736	install-pdf-am install-ps install-ps-am install-strip \
737	installcheck installcheck-am installdirs maintainer-clean \
738	maintainer-clean-generic mostlyclean mostlyclean-compile \
739	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
740	tags uninstall uninstall-am
741
742
743$(top_builddir)/tests/libtests.la:
744	cd $(top_builddir)/tests; $(MAKE) $(AM_MAKEFLAGS) libtests.la
745
746tune:
747	$(MAKE) $(AM_MAKEFLAGS) tuneup$(EXEEXT)
748	./tuneup
749
750allprogs: $(EXTRA_PROGRAMS)
751
752$(TUNE_MPN_SRCS_BASIC):
753	for i in $(TUNE_MPN_SRCS_BASIC); do \
754	  echo "#define TUNE_PROGRAM_BUILD 1" >$$i; \
755	  echo "#include \"mpn/generic/$$i\"" >>$$i; \
756	done
757
758divrem_1.c:
759	echo "#define TUNE_PROGRAM_BUILD 1"                >divrem_1.c
760	echo "#define __gmpn_divrem_1  mpn_divrem_1_tune" >>divrem_1.c
761	echo "#include \"mpn/generic/divrem_1.c\""        >>divrem_1.c
762
763mod_1.c:
764	echo "#define TUNE_PROGRAM_BUILD 1"          >mod_1.c
765	echo "#define __gmpn_mod_1  mpn_mod_1_tune" >>mod_1.c
766	echo "#include \"mpn/generic/mod_1.c\""     >>mod_1.c
767
768sqr_asm.asm: $(top_builddir)/mpn/sqr_basecase.asm
769	echo 'define(SQR_TOOM2_THRESHOLD_OVERRIDE,SQR_TOOM2_THRESHOLD_MAX)' >sqr_asm.asm
770	echo 'include(../mpn/sqr_basecase.asm)' >>sqr_asm.asm
771
772# FIXME: Should it depend on $(top_builddir)/fac_ui.h too?
773fac_ui.c: $(top_builddir)/mpz/fac_ui.c
774	echo "#define TUNE_PROGRAM_BUILD 1"          >fac_ui.c
775	echo "#define __gmpz_fac_ui mpz_fac_ui_tune" >>fac_ui.c
776	echo "#define __gmpz_oddfac_1 mpz_oddfac_1_tune" >>fac_ui.c
777	echo "#include \"mpz/oddfac_1.c\""           >>fac_ui.c
778	echo "#include \"mpz/fac_ui.c\""             >>fac_ui.c
779
780# .s assembler, no preprocessing.
781#
782.s.o:
783	$(CCAS) $(COMPILE_FLAGS) `test -f '$<' || echo '$(srcdir)/'`$<
784.s.obj:
785	$(CCAS) $(COMPILE_FLAGS) `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
786.s.lo:
787	$(LIBTOOL) --mode=compile --tag=CC $(CCAS) $(COMPILE_FLAGS) `test -f '$<' || echo '$(srcdir)/'`$<
788
789# .S assembler, preprocessed with cpp.
790#
791# It's necessary to run $(CPP) separately, since it seems not all compilers
792# recognise .S files, in particular "cc" on HP-UX 10 and 11 doesn't (and
793# will silently do nothing if given a .S).
794#
795# For .lo we need a helper script, as described below for .asm.lo.
796#
797.S.o:
798	$(CPP) $(PREPROCESS_FLAGS) `test -f '$<' || echo '$(srcdir)/'`$< | grep -v '^#' >tmp-$*.s
799	$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
800	$(RM_TMP) tmp-$*.s
801.S.obj:
802	$(CPP) $(PREPROCESS_FLAGS) `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi` | grep -v '^#' >tmp-$*.s
803	$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
804	$(RM_TMP) tmp-$*.s
805.S.lo:
806	$(LIBTOOL) --mode=compile --tag=CC $(top_srcdir)/mpn/cpp-ccas --cpp="$(CPP) $(PREPROCESS_FLAGS)" $(CCAS) $(COMPILE_FLAGS) `test -f '$<' || echo '$(srcdir)/'`$<
807
808# .asm assembler, preprocessed with m4.
809#
810# .o and .obj are non-PIC and just need m4 followed by a compile.
811#
812# .lo is a bit tricky.  Libtool (as of version 1.5) has foo.lo as a little
813# text file, and .libs/foo.o and foo.o as the PIC and non-PIC objects,
814# respectively.  It'd be asking for lots of trouble to try to create foo.lo
815# ourselves, so instead arrange to invoke libtool like a --mode=compile, but
816# with a special m4-ccas script which first m4 preprocesses, then compiles.
817# --tag=CC is necessary since foo.asm is otherwise unknown to libtool.
818#
819# Libtool adds -DPIC when building a shared object and the .asm files look
820# for that.  But it should be noted that the other PIC flags are on occasion
821# important too, in particular FreeBSD 2.2.8 gas 1.92.3 requires -k before
822# it accepts PIC constructs like @GOT, and gcc adds that flag only under
823# -fPIC.  (Later versions of gas are happy to accept PIC stuff any time.)
824#
825.asm.o:
826	$(M4) -DOPERATION_$* `test -f '$<' || echo '$(srcdir)/'`$< >tmp-$*.s
827	$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
828	$(RM_TMP) tmp-$*.s
829.asm.obj:
830	$(M4) -DOPERATION_$* `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi` >tmp-$*.s
831	$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
832	$(RM_TMP) tmp-$*.s
833.asm.lo:
834	$(LIBTOOL) --mode=compile --tag=CC $(top_srcdir)/mpn/m4-ccas --m4="$(M4)" $(CCAS) $(COMPILE_FLAGS) `test -f '$<' || echo '$(srcdir)/'`$<
835
836# Tell versions [3.59,3.63) of GNU make to not export all variables.
837# Otherwise a system limit (for SysV at least) may be exceeded.
838.NOEXPORT:
839