Annotation of OpenXM_contrib/gmp/tune/Makefile.in, Revision 1.1
1.1 ! maekawa 1: # Makefile.in generated automatically by automake 1.4a from Makefile.am
! 2:
! 3: # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
! 4: # This Makefile.in is free software; the Free Software Foundation
! 5: # gives unlimited permission to copy and/or distribute it,
! 6: # with or without modifications, as long as this notice is preserved.
! 7:
! 8: # This program is distributed in the hope that it will be useful,
! 9: # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
! 10: # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
! 11: # PARTICULAR PURPOSE.
! 12:
! 13: SHELL = @SHELL@
! 14:
! 15: srcdir = @srcdir@
! 16: top_srcdir = @top_srcdir@
! 17: VPATH = @srcdir@
! 18: prefix = @prefix@
! 19: exec_prefix = @exec_prefix@
! 20:
! 21: bindir = @bindir@
! 22: sbindir = @sbindir@
! 23: libexecdir = @libexecdir@
! 24: datadir = @datadir@
! 25: sysconfdir = @sysconfdir@
! 26: sharedstatedir = @sharedstatedir@
! 27: localstatedir = @localstatedir@
! 28: libdir = @libdir@
! 29: infodir = @infodir@
! 30: mandir = @mandir@
! 31: includedir = @includedir@
! 32: oldincludedir = /usr/include
! 33:
! 34: DESTDIR =
! 35:
! 36: pkgdatadir = $(datadir)/@PACKAGE@
! 37: pkglibdir = $(libdir)/@PACKAGE@
! 38: pkgincludedir = $(includedir)/@PACKAGE@
! 39:
! 40: top_builddir = ..
! 41:
! 42: ACLOCAL = @ACLOCAL@
! 43: AUTOCONF = @AUTOCONF@
! 44: AUTOMAKE = @AUTOMAKE@
! 45: AUTOHEADER = @AUTOHEADER@
! 46:
! 47: INSTALL = @INSTALL@
! 48: INSTALL_PROGRAM = @INSTALL_PROGRAM@
! 49: INSTALL_DATA = @INSTALL_DATA@
! 50: INSTALL_SCRIPT = @INSTALL_SCRIPT@
! 51: INSTALL_STRIP_FLAG =
! 52: transform = @program_transform_name@
! 53:
! 54: NORMAL_INSTALL = :
! 55: PRE_INSTALL = :
! 56: POST_INSTALL = :
! 57: NORMAL_UNINSTALL = :
! 58: PRE_UNINSTALL = :
! 59: POST_UNINSTALL = :
! 60:
! 61: @SET_MAKE@
! 62: build_alias = @build_alias@
! 63: build_triplet = @build@
! 64: host_alias = @host_alias@
! 65: host_triplet = @host@
! 66: target_alias = @target_alias@
! 67: target_triplet = @target@
! 68: AMDEP = @AMDEP@
! 69: AMTAR = @AMTAR@
! 70: AR = @AR@
! 71: AS = @AS@
! 72: AWK = @AWK@
! 73: CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
! 74: CC = @CC@
! 75: CCAS = @CCAS@
! 76: CPP = @CPP@
! 77: CXX = @CXX@
! 78: CXXCPP = @CXXCPP@
! 79: DEPDIR = @DEPDIR@
! 80: DLLTOOL = @DLLTOOL@
! 81: EXEEXT = @EXEEXT@
! 82: LIBTOOL = @LIBTOOL@
! 83: LN_S = @LN_S@
! 84: M4 = @M4@
! 85: MAINT = @MAINT@
! 86: MAKEINFO = @MAKEINFO@
! 87: OBJDUMP = @OBJDUMP@
! 88: OBJEXT = @OBJEXT@
! 89: PACKAGE = @PACKAGE@
! 90: RANLIB = @RANLIB@
! 91: SPEED_CYCLECOUNTER_OBJS = @SPEED_CYCLECOUNTER_OBJS@
! 92: STRIP = @STRIP@
! 93: U = @U@
! 94: VERSION = @VERSION@
! 95: gmp_srclinks = @gmp_srclinks@
! 96: install_sh = @install_sh@
! 97: mpn_objects = @mpn_objects@
! 98: mpn_objs_in_libgmp = @mpn_objs_in_libgmp@
! 99:
! 100: # Copyright (C) 2000 Free Software Foundation, Inc.
! 101: #
! 102: # This file is part of the GNU MP Library.
! 103: #
! 104: # The GNU MP Library is free software; you can redistribute it and/or modify
! 105: # it under the terms of the GNU Lesser General Public License as published by
! 106: # the Free Software Foundation; either version 2.1 of the License, or (at your
! 107: # option) any later version.
! 108: #
! 109: # The GNU MP Library is distributed in the hope that it will be useful, but
! 110: # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
! 111: # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
! 112: # License for more details.
! 113: #
! 114: # You should have received a copy of the GNU Lesser General Public License
! 115: # along with the GNU MP Library; see the file COPYING.LIB. If not, write to
! 116: # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
! 117: # MA 02111-1307, USA.
! 118:
! 119:
! 120: AUTOMAKE_OPTIONS = gnu no-dependencies $(top_builddir)/ansi2knr
! 121:
! 122: INCLUDES = -I$(top_srcdir)
! 123:
! 124: EXTRA_DIST = alpha.asm pentium.asm sparcv9.asm hppa.asm hppa2.asm
! 125: noinst_HEADERS = speed.h
! 126:
! 127: # No dependency on libgmp, so can use libgmptune instead for tune program
! 128: EXTRA_LTLIBRARIES = libspeed.la
! 129: libspeed_la_SOURCES = common.c time.c noop.c
! 130: libspeed_la_DEPENDENCIES = $(SPEED_CYCLECOUNTER_OBJS)
! 131: libspeed_la_LIBADD = $(libspeed_la_DEPENDENCIES)
! 132:
! 133: # Both libspeed and the programs are built static-only since static is
! 134: # fastest and will be preferred by users who care about maximizing speed.
! 135: #
! 136: # Actually libtool doesn't seem to pass -static through to gcc, it only
! 137: # chooses the ".a" versions of libtool libraries. Rerun the gcc link
! 138: # invocation with -static if you want a static link of libc and libm.
! 139: #
! 140: LDFLAGS = -static
! 141: LDADD = libspeed.la $(top_builddir)/libgmp.la -lm
! 142:
! 143: EXTRA_PROGRAMS = speed speed-ext tuneup
! 144:
! 145: tuneup_SOURCES = tuneup.c
! 146: tuneup_DEPENDENCIES = libspeed.la libgmptune.a
! 147: tuneup_LDADD = $(tuneup_DEPENDENCIES) -lm
! 148:
! 149: speed_SOURCES = speed.c
! 150:
! 151: SQR_CLEANFILES = sqr_basecase.c sqr_basecase.h sqr_basecase.asm
! 152:
! 153: CLEANFILES = $(EXTRA_PROGRAMS) $(EXTRA_LTLIBRARIES) \
! 154: $(SQR_CLEANFILES) libgmptune.a libgmptmp.a \
! 155: stg.gnuplot stg.data \
! 156: mtg.gnuplot mtg.data \
! 157: fibg.gnuplot fibg.data \
! 158: graph.gnuplot graph.data
! 159:
! 160:
! 161: # This bit like mpn/Makefile.am
! 162:
! 163: # COMPILE minus CC. FIXME: Really pass *_CFLAGS to CPP?
! 164: COMPILE_FLAGS = \
! 165: $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
! 166:
! 167:
! 168: SUFFIXES = .asm
! 169:
! 170: # Recompiled versions of $(LIBGMPTUNE_OBJS) are always used. sqr_basecase.o
! 171: # is replaced if it's mpn/generic/sqr_basecase.c (due to the fixed size
! 172: # temporary array), or sqr_basecase.asm with a KARATSUBA_SQR_THRESHOLD_MAX
! 173: # (because that says it normally works only up to KARATSUBA_SQR_THRESHOLD).
! 174:
! 175: SQR_GENERIC_MAX = 200
! 176:
! 177: LIBGMPTUNE_OBJS = \
! 178: mul_n.o mul_fft.o mul.o \
! 179: bz_divrem_n.o tdiv_qr.o fib_ui.o powm.o gcd.o gcdext.o
! 180:
! 181:
! 182: MTS = -s 50-150 -c
! 183:
! 184: STS = -s 50-150 -c
! 185: subdir = tune
! 186: mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
! 187: CONFIG_HEADER = ../config.h
! 188: CONFIG_CLEAN_FILES =
! 189:
! 190: DEFS = @DEFS@ -I. -I$(srcdir) -I..
! 191: CPPFLAGS = @CPPFLAGS@
! 192: LIBS = @LIBS@
! 193: ANSI2KNR = $(top_builddir)/ansi2knr
! 194: libspeed_la_LDFLAGS =
! 195: am_libspeed_la_OBJECTS = common$U.lo time$U.lo noop$U.lo
! 196: libspeed_la_OBJECTS = $(am_libspeed_la_OBJECTS)
! 197: EXTRA_PROGRAMS = speed$(EXEEXT) speed-ext$(EXEEXT) tuneup$(EXEEXT)
! 198: am_speed_OBJECTS = speed$U.$(OBJEXT)
! 199: speed_OBJECTS = $(am_speed_OBJECTS)
! 200: speed_LDADD = $(LDADD)
! 201: speed_DEPENDENCIES = libspeed.la $(top_builddir)/libgmp.la
! 202: speed_LDFLAGS =
! 203: speed_ext_SOURCES = speed-ext.c
! 204: speed_ext_OBJECTS = speed-ext$U.$(OBJEXT)
! 205: speed_ext_LDADD = $(LDADD)
! 206: speed_ext_DEPENDENCIES = libspeed.la $(top_builddir)/libgmp.la
! 207: speed_ext_LDFLAGS =
! 208: am_tuneup_OBJECTS = tuneup$U.$(OBJEXT)
! 209: tuneup_OBJECTS = $(am_tuneup_OBJECTS)
! 210: tuneup_LDFLAGS =
! 211: COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
! 212: LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
! 213: CFLAGS = @CFLAGS@
! 214: CCLD = $(CC)
! 215: LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
! 216: DIST_SOURCES = $(libspeed_la_SOURCES) $(speed_SOURCES) speed-ext.c \
! 217: $(tuneup_SOURCES)
! 218: HEADERS = $(noinst_HEADERS)
! 219:
! 220: DIST_COMMON = README $(noinst_HEADERS) Makefile.am Makefile.in
! 221:
! 222:
! 223: DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
! 224:
! 225: GZIP_ENV = --best
! 226: depcomp =
! 227: SOURCES = $(libspeed_la_SOURCES) $(speed_SOURCES) speed-ext.c $(tuneup_SOURCES)
! 228: OBJECTS = $(am_libspeed_la_OBJECTS) $(am_speed_OBJECTS) speed-ext$U.$(OBJEXT) $(am_tuneup_OBJECTS)
! 229:
! 230: all: all-redirect
! 231: .SUFFIXES:
! 232: .SUFFIXES: .asm .c .lo .o .obj
! 233: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
! 234: cd $(top_srcdir) && $(AUTOMAKE) --gnu tune/Makefile
! 235:
! 236: Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
! 237: cd $(top_builddir) \
! 238: && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
! 239:
! 240:
! 241: mostlyclean-compile:
! 242: -rm -f *.o core *.core
! 243: -rm -f *.$(OBJEXT)
! 244:
! 245: clean-compile:
! 246:
! 247: distclean-compile:
! 248: -rm -f *.tab.c
! 249:
! 250: maintainer-clean-compile:
! 251:
! 252: mostlyclean-libtool:
! 253: -rm -f *.lo
! 254:
! 255: clean-libtool:
! 256: -rm -rf .libs _libs
! 257:
! 258: distclean-libtool:
! 259:
! 260: maintainer-clean-libtool:
! 261: $(top_builddir)/ansi2knr: $(top_builddir)/ansi2knr.$(OBJEXT)
! 262: cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) ansi2knr
! 263:
! 264: $(top_builddir)/ansi2knr.$(OBJEXT):
! 265: cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) ansi2knr.$(OBJEXT)
! 266:
! 267:
! 268: mostlyclean-kr:
! 269: -rm -f *_.c
! 270:
! 271: clean-kr:
! 272:
! 273: distclean-kr:
! 274:
! 275: maintainer-clean-kr:
! 276:
! 277: libspeed.la: $(libspeed_la_OBJECTS) $(libspeed_la_DEPENDENCIES)
! 278: $(LINK) $(libspeed_la_LDFLAGS) $(libspeed_la_OBJECTS) $(libspeed_la_LIBADD) $(LIBS)
! 279:
! 280: speed$(EXEEXT): $(speed_OBJECTS) $(speed_DEPENDENCIES)
! 281: @rm -f speed$(EXEEXT)
! 282: $(LINK) $(speed_LDFLAGS) $(speed_OBJECTS) $(speed_LDADD) $(LIBS)
! 283:
! 284: speed-ext$(EXEEXT): $(speed_ext_OBJECTS) $(speed_ext_DEPENDENCIES)
! 285: @rm -f speed-ext$(EXEEXT)
! 286: $(LINK) $(speed_ext_LDFLAGS) $(speed_ext_OBJECTS) $(speed_ext_LDADD) $(LIBS)
! 287:
! 288: tuneup$(EXEEXT): $(tuneup_OBJECTS) $(tuneup_DEPENDENCIES)
! 289: @rm -f tuneup$(EXEEXT)
! 290: $(LINK) $(tuneup_LDFLAGS) $(tuneup_OBJECTS) $(tuneup_LDADD) $(LIBS)
! 291: .c.o:
! 292: $(COMPILE) -c $<
! 293: .c.obj:
! 294: $(COMPILE) -c `cygpath -w $<`
! 295: .c.lo:
! 296: $(LTCOMPILE) -c -o $@ $<
! 297: common_.c: common.c $(ANSI2KNR)
! 298: $(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
! 299: noop_.c: noop.c $(ANSI2KNR)
! 300: $(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
! 301: speed_.c: speed.c $(ANSI2KNR)
! 302: $(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
! 303: speed-ext_.c: speed-ext.c $(ANSI2KNR)
! 304: $(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
! 305: time_.c: time.c $(ANSI2KNR)
! 306: $(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
! 307: tuneup_.c: tuneup.c $(ANSI2KNR)
! 308: $(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
! 309: common_.$(OBJEXT) common_.lo noop_.$(OBJEXT) noop_.lo speed_.$(OBJEXT) \
! 310: speed_.lo speed-ext_.$(OBJEXT) speed-ext_.lo time_.$(OBJEXT) time_.lo \
! 311: tuneup_.$(OBJEXT) tuneup_.lo : $(ANSI2KNR)
! 312:
! 313: tags: TAGS
! 314:
! 315: ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
! 316: list='$(SOURCES) $(HEADERS) $(TAGS_FILES)'; \
! 317: unique=`for i in $$list; do \
! 318: if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
! 319: done | \
! 320: $(AWK) ' { files[$$0] = 1; } \
! 321: END { for (i in files) print i; }'`; \
! 322: mkid -f$$here/ID $$unique $(LISP)
! 323:
! 324: TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
! 325: $(TAGS_FILES) $(LISP)
! 326: tags=; \
! 327: here=`pwd`; \
! 328: list='$(SOURCES) $(HEADERS) $(TAGS_FILES)'; \
! 329: unique=`for i in $$list; do \
! 330: if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
! 331: done | \
! 332: $(AWK) ' { files[$$0] = 1; } \
! 333: END { for (i in files) print i; }'`; \
! 334: test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
! 335: || etags $(ETAGS_ARGS) $$tags $$unique $(LISP)
! 336:
! 337: mostlyclean-tags:
! 338:
! 339: clean-tags:
! 340:
! 341: distclean-tags:
! 342: -rm -f TAGS ID
! 343:
! 344: maintainer-clean-tags:
! 345:
! 346: distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
! 347:
! 348: distdir: $(DISTFILES)
! 349: @for file in $(DISTFILES); do \
! 350: d=$(srcdir); \
! 351: if test -d $$d/$$file; then \
! 352: cp -pR $$d/$$file $(distdir); \
! 353: else \
! 354: test -f $(distdir)/$$file \
! 355: || cp -p $$d/$$file $(distdir)/$$file || :; \
! 356: fi; \
! 357: done
! 358: info-am:
! 359: info: info-am
! 360: dvi-am:
! 361: dvi: dvi-am
! 362: check-am: all-am
! 363: check: check-am
! 364: installcheck-am:
! 365: installcheck: installcheck-am
! 366: install-exec-am:
! 367: install-exec: install-exec-am
! 368:
! 369: install-data-am:
! 370: install-data: install-data-am
! 371:
! 372: install-am: all-am
! 373: @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
! 374: install: install-am
! 375: uninstall-am:
! 376: uninstall: uninstall-am
! 377: all-am: Makefile $(HEADERS)
! 378: all-redirect: all-am
! 379: install-strip:
! 380: $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
! 381: installdirs:
! 382:
! 383:
! 384: mostlyclean-generic:
! 385:
! 386: clean-generic:
! 387: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
! 388:
! 389: distclean-generic:
! 390: -rm -f Makefile $(CONFIG_CLEAN_FILES)
! 391: -rm -f config.cache config.log stamp-h stamp-h[0-9]*
! 392:
! 393: maintainer-clean-generic:
! 394: -rm -f Makefile.in
! 395: mostlyclean-am: mostlyclean-compile mostlyclean-libtool mostlyclean-kr \
! 396: mostlyclean-tags mostlyclean-generic
! 397:
! 398: mostlyclean: mostlyclean-am
! 399:
! 400: clean-am: clean-compile clean-libtool clean-kr clean-tags clean-generic \
! 401: mostlyclean-am
! 402:
! 403: clean: clean-am
! 404:
! 405: distclean-am: distclean-compile distclean-libtool distclean-kr \
! 406: distclean-tags distclean-generic clean-am
! 407: -rm -f libtool
! 408:
! 409: distclean: distclean-am
! 410:
! 411: maintainer-clean-am: maintainer-clean-compile maintainer-clean-libtool \
! 412: maintainer-clean-kr maintainer-clean-tags \
! 413: maintainer-clean-generic distclean-am
! 414: @echo "This command is intended for maintainers to use;"
! 415: @echo "it deletes files that may require special tools to rebuild."
! 416:
! 417: maintainer-clean: maintainer-clean-am
! 418:
! 419: .PHONY: mostlyclean-compile distclean-compile clean-compile \
! 420: maintainer-clean-compile mostlyclean-libtool distclean-libtool \
! 421: clean-libtool maintainer-clean-libtool mostlyclean-kr distclean-kr \
! 422: clean-kr maintainer-clean-kr tags mostlyclean-tags distclean-tags \
! 423: clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
! 424: check-am installcheck-am installcheck install-exec-am install-exec \
! 425: install-data-am install-data install-am install uninstall-am uninstall \
! 426: all-redirect all-am all install-strip installdirs mostlyclean-generic \
! 427: distclean-generic clean-generic maintainer-clean-generic clean \
! 428: mostlyclean distclean maintainer-clean
! 429:
! 430:
! 431: # Don't know how to get tuneup$U.lo to depend on sqr_basecase.h, so just do
! 432: # an explicit make. A plain "make tuneup" will fail if used directly.
! 433: tune:
! 434: $(MAKE) $(AM_MAKEFLAGS) sqr_basecase.h tuneup$(EXEEXT)
! 435: ./tuneup
! 436:
! 437: allprogs: sqr_basecase.h $(EXTRA_PROGRAMS)
! 438: .asm.o:
! 439: $(M4) $(M4FLAGS) -DOPERATION_$* $< >tmp-$*.s
! 440: $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
! 441: rm -f tmp-$*.s
! 442: .asm.obj:
! 443: $(M4) $(M4FLAGS) -DOPERATION_$* `cygpath -w $<` >tmp-$*.s
! 444: $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
! 445: rm -f tmp-$*.s
! 446: .asm.lo:
! 447: echo "$(COMPILE_FLAGS)"
! 448: $(M4) $(M4FLAGS) -DPIC -DOPERATION_$* $< >tmp-$*.s
! 449: $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
! 450: $(M4) $(M4FLAGS) -DOPERATION_$* $< >tmp-$*.s
! 451: $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o
! 452: rm -f tmp-$*.s
! 453:
! 454: sqr_basecase.h: libgmptune.a
! 455:
! 456: # "cp -f" is not portable (eg. it fails on SunOS)
! 457: # "ar r" is going to be a bit fragile because there's more than one mul.o in
! 458: # libgmp.a.
! 459:
! 460: libgmptune.a: $(top_builddir)/libgmp.la $(LIBGMPTUNE_OBJS)
! 461: rm -f libgmptmp.a
! 462: eval `$(LIBTOOL) --config | grep '^objdir='` ; \
! 463: cp $(top_builddir)/$$objdir/libgmp.a libgmptmp.a
! 464: $(AR) r libgmptmp.a $(LIBGMPTUNE_OBJS)
! 465: rm -f $(SQR_CLEANFILES)
! 466: echo "" >sqr_basecase.h
! 467: if test -f $(top_builddir)/mpn/sqr_basecase.c; then \
! 468: $(MAKE) $(AM_MAKEFLAGS) sqr-basecase-generic; \
! 469: else \
! 470: if grep KARATSUBA_SQR_THRESHOLD_MAX \
! 471: $(top_builddir)/mpn/sqr_basecase.asm >/dev/null; then \
! 472: $(MAKE) $(AM_MAKEFLAGS) sqr-basecase-asm; \
! 473: fi \
! 474: fi
! 475: $(RANLIB) libgmptmp.a
! 476: rm -f libgmptune.a
! 477: mv libgmptmp.a libgmptune.a
! 478:
! 479: sqr-basecase-generic:
! 480: cp $(top_builddir)/mpn/sqr_basecase.c .
! 481: $(MAKE) $(AM_MAKEFLAGS) \
! 482: CFLAGS='$(CFLAGS) -DKARATSUBA_SQR_THRESHOLD=$(SQR_GENERIC_MAX)' \
! 483: sqr_basecase.o
! 484: $(AR) r libgmptmp.a sqr_basecase.o
! 485: echo '#define KARATSUBA_SQR_MAX $(SQR_GENERIC_MAX)' >sqr_basecase.h
! 486:
! 487: sqr-basecase-asm:
! 488: cp $(top_builddir)/mpn/sqr_basecase.asm .
! 489: $(MAKE) $(AM_MAKEFLAGS) \
! 490: M4FLAGS='$(M4FLAGS) -DKARATSUBA_SQR_THRESHOLD_OVERRIDE=KARATSUBA_SQR_THRESHOLD_MAX' \
! 491: sqr_basecase.o
! 492: ar r libgmptmp.a sqr_basecase.o
! 493: echo "#define KARATSUBA_SQR_MAX `sed -n 's/def...(KARATSUBA_SQR_THRESHOLD_MAX, *\([0-9]*\))/\1/p' sqr_basecase.asm`" >sqr_basecase.h
! 494:
! 495: mul_n.o: $(top_builddir)/mpn/mul_n.c
! 496: $(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/mul_n.c
! 497:
! 498: mul_fft.o: $(top_builddir)/mpn/mul_fft.c
! 499: $(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/mul_fft.c
! 500:
! 501: mul.o: $(top_builddir)/mpn/mul.c
! 502: $(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/mul.c
! 503:
! 504: bz_divrem_n.o: $(top_builddir)/mpn/bz_divrem_n.c
! 505: $(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/bz_divrem_n.c
! 506:
! 507: tdiv_qr.o: $(top_builddir)/mpn/tdiv_qr.c
! 508: $(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/tdiv_qr.c
! 509:
! 510: fib_ui.o: $(top_srcdir)/mpz/fib_ui.c
! 511: $(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_srcdir)/mpz/fib_ui.c
! 512:
! 513: powm.o: $(top_srcdir)/mpz/powm.c
! 514: $(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_srcdir)/mpz/powm.c
! 515:
! 516: gcd.o: $(top_builddir)/mpn/gcd.c
! 517: $(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/gcd.c
! 518:
! 519: gcdext.o: $(top_builddir)/mpn/gcdext.c
! 520: $(COMPILE) -DTUNE_PROGRAM_BUILD=1 -c $(top_builddir)/mpn/gcdext.c
! 521:
! 522: # "mk" is multiplication in the karatsuba range
! 523: # "st" is squaring in the toom-cook range, etc
! 524: # "g" forms produce graphs
! 525:
! 526: mk:
! 527: ./speed -s 5-40 -c mpn_mul_basecase mpn_kara_mul_n
! 528: mt:
! 529: ./speed $(MTS) mpn_kara_mul_n mpn_toom3_mul_n | less
! 530: mtg:
! 531: ./speed $(MTS) -P mtg mpn_kara_mul_n mpn_toom3_mul_n
! 532:
! 533: sk:
! 534: ./speed -s 5-40 -c mpn_sqr_basecase mpn_kara_sqr_n
! 535: st:
! 536: ./speed $(STS) mpn_kara_sqr_n mpn_toom3_sqr_n | less
! 537: stg:
! 538: ./speed $(STS) -P stg mpn_kara_sqr_n mpn_toom3_sqr_n
! 539:
! 540: bz:
! 541: ./speed -s 5-40 -c mpn_bz_divrem_sb mpn_bz_divrem_n mpn_bz_tdiv_qr
! 542:
! 543: fib:
! 544: ./speed -s 80-120 -c mpz_fib_ui
! 545: fibg:
! 546: ./speed -s 10-300 -P fibg mpz_fib_ui
! 547:
! 548: gcd:
! 549: ./speed -s 1-20 -c mpn_gcd
! 550:
! 551: graph:
! 552: ./speed -s 1-5000 -f 1.02 -P graph mpn_mul_n mpn_sqr
! 553: gnuplot graph.gnuplot
! 554:
! 555: # Tell versions [3.59,3.63) of GNU make to not export all variables.
! 556: # Otherwise a system limit (for SysV at least) may be exceeded.
! 557: .NOEXPORT:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>