version 1.1, 2000/09/09 14:12:13 |
version 1.1.1.3, 2003/08/25 16:05:54 |
|
|
## Process this file with automake to generate Makefile.in |
## Process this file with automake to generate Makefile.in |
|
|
|
|
# Copyright (C) 1991, 1993, 1994, 1996, 1997, 1999, 2000 Free Software |
# Copyright 1991, 1993, 1994, 1996, 1997, 1999, 2000, 2001, 2002 Free |
# Foundation, Inc. |
# Software Foundation, Inc. |
# |
# |
# This file is part of the GNU MP Library. |
# This file is part of the GNU MP Library. |
# |
# |
|
|
# MA 02111-1307, USA. |
# MA 02111-1307, USA. |
|
|
|
|
# make check |
# Libtool -version-info for libgmp.la and libmp.la. See "Versioning" in the |
|
# libtool manual. |
# |
# |
# It'd be good if "make check" first did a "make all" or whatever to |
|
# build libgmp.la, but it's not clear how best to do this. Putting a |
|
# "check:" target is overridden by automake, and a "check-local:" runs |
|
# too late (due to depth-first subdirectory processing). For now it's |
|
# necessary to do "make && make check". |
|
# |
|
# MPF_OBJECTS etc |
|
# |
|
# Libtool needs all the .lo files passed to it if it's going to build |
|
# both a static and shared library. If a convenience library like |
|
# mpf/libmpf.la is passed then the resulting libgmp.a gets the PIC .lo |
|
# objects rather than the non-PIC .o's. |
|
# |
|
# Unfortunately this leads to the big lists of objects below. Something |
|
# like mpz/*.lo would probably work, but might risk missing something |
|
# out or getting something extra. The source files for each .lo are |
|
# listed in the Makefile.am's in the subdirectories. |
|
|
|
|
|
# Libtool -version-info for libgmp.la and libmp.la. See (libtool)Versioning |
|
# |
|
# 1. No interfaces changed, only implementations (good): Increment REVISION. |
# 1. No interfaces changed, only implementations (good): Increment REVISION. |
# |
# |
# 2. Interfaces added, none removed (good): Increment CURRENT, increment |
# 2. Interfaces added, none removed (good): Increment CURRENT, increment |
|
|
# 3. Interfaces removed (BAD, breaks upward compatibility): Increment |
# 3. Interfaces removed (BAD, breaks upward compatibility): Increment |
# CURRENT, set AGE and REVISION to 0. |
# CURRENT, set AGE and REVISION to 0. |
# |
# |
# Do this separately for libgmp and libmp, only do it just before a release. |
# Do this separately for libgmp and libmp, and only for releases. |
# |
# |
# GMP -version-info |
# GMP -version-info |
# release libgmp libmp |
# release libgmp libgmpxx libmp |
# 2.0.x - - |
# 2.0.x - - - |
# 3.0 3:0:0 3:0:0 |
# 3.0 3:0:0 - 3:0:0 |
# 3.0.1 3:1:0 3:0:0 |
# 3.0.1 3:1:0 - 3:0:0 |
# 3.1 4:0:1 4:0:1 |
# 3.1 4:0:1 - 4:0:1 |
|
# 3.1.1 4:1:1 - 4:1:1 |
|
# 4.0 5:0:2 3:0:0 4:2:1 |
|
# 4.0.1 5:1:2 3:1:0 4:3:1 |
|
# 4.1 6:0:3 3:2:0 4:4:1 |
|
# 4.1.1 6:1:3 3:3:0 4:5:1 |
|
# 4.1.2 6:2:3 3:4:0 4:6:1 |
# |
# |
# |
|
# Starting at 3:0:0 is a slight abuse of the versioning system, but it |
# Starting at 3:0:0 is a slight abuse of the versioning system, but it |
# ensures we're past soname libgmp.so.2, which is what has been used on |
# ensures we're past soname libgmp.so.2, which was used on Debian GNU/Linux |
# Debian GNU/Linux packages of gmp 2. Pretend gmp 2 was 2:0:0, so the |
# packages of gmp 2. Pretend gmp 2 was 2:0:0, so the interface changes for |
# interface changes for gmp 3 mean 3:0:0 is right. |
# gmp 3 mean 3:0:0 is right. |
|
|
LIBGMP_LT_CURRENT = 4 |
LIBGMP_LT_CURRENT = 6 |
LIBGMP_LT_REVISION = 0 |
LIBGMP_LT_REVISION = 2 |
LIBGMP_LT_AGE = 1 |
LIBGMP_LT_AGE = 3 |
|
|
|
LIBGMPXX_LT_CURRENT = 3 |
|
LIBGMPXX_LT_REVISION = 4 |
|
LIBGMPXX_LT_AGE = 0 |
|
|
LIBMP_LT_CURRENT = 4 |
LIBMP_LT_CURRENT = 4 |
LIBMP_LT_REVISION = 0 |
LIBMP_LT_REVISION = 6 |
LIBMP_LT_AGE = 1 |
LIBMP_LT_AGE = 1 |
|
|
|
|
AUTOMAKE_OPTIONS = gnu check-news no-dependencies ansi2knr |
AUTOMAKE_OPTIONS = gnu no-dependencies ansi2knr |
|
ACLOCAL_AMFLAGS = -I mpfr |
|
|
SUBDIRS = mpn mpz mpq mpf mpbsd mpfr tests demos tune |
|
|
|
include_HEADERS = gmp.h $(MPBSD_HEADERS_OPTION) $(MPFR_HEADERS_OPTION) |
# FIXME: This is a workaround for automake not allowing info_TEXINFOS to be |
EXTRA_HEADERS = mp.h |
# conditionalized. We want mpfr/mpfr.info only installed under |
|
# --enable-mpfr, but it and the rest of mpfr always included in a "make |
|
# dist". |
|
if WANT_MPFR |
|
MPFR_DIR = mpfr |
|
else |
|
if MAINTAINER_MODE |
|
MPFR_DIR = mpfr |
|
endif |
|
endif |
|
|
lib_LTLIBRARIES = libgmp.la $(MPBSD_LTLIBRARIES_OPTION) |
# "tests" ahead of "mpfr" ensures tests/t-constants is run before the |
|
# mpfr/tests programs. |
|
# |
|
SUBDIRS = tests mpn mpz mpq mpf printf scanf cxx mpbsd $(MPFR_DIR) demos tune |
|
|
EXTRA_DIST = .gdbinit gmp-impl.h longlong.h stack-alloc.h urandom.h doc macos |
if WANT_CXX |
|
GMPXX_HEADERS_OPTION = gmpxx.h |
|
if WANT_MPFR |
|
MPFRXX_HEADERS_OPTION = mpfrxx.h |
|
endif |
|
endif |
|
include_HEADERS = $(GMPXX_HEADERS_OPTION) $(MPFRXX_HEADERS_OPTION) |
|
nodist_include_HEADERS = gmp.h $(MPBSD_HEADERS_OPTION) |
|
lib_LTLIBRARIES = libgmp.la $(GMPXX_LTLIBRARIES_OPTION) $(MPBSD_LTLIBRARIES_OPTION) |
|
|
DISTCLEANFILES = asm-syntax.h config.m4 @gmp_srclinks@ |
EXTRA_DIST = doc macos \ |
|
configfsf.guess configfsf.sub .gdbinit INSTALL.autoconf libmp.sym \ |
|
gmpxx.h mpfrxx.h mpfr/README |
|
|
|
DISTCLEANFILES = $(nodist_include_HEADERS) config.m4 configure.lineno @gmp_srclinks@ |
|
|
MPF_OBJECTS = mpf/init.lo mpf/init2.lo mpf/set.lo mpf/set_ui.lo mpf/set_si.lo \ |
# Generated by current texinfo.tex when processing gmp.texi. |
mpf/set_str.lo mpf/set_d.lo mpf/set_z.lo mpf/iset.lo mpf/iset_ui.lo \ |
# FIXME: Maybe this should be added to automake. |
mpf/iset_si.lo mpf/iset_str.lo mpf/iset_d.lo mpf/clear.lo mpf/get_str.lo \ |
MOSTLYCLEANFILES = gmp.tmp |
mpf/dump.lo mpf/size.lo mpf/eq.lo mpf/reldiff.lo mpf/sqrt.lo mpf/random2.lo \ |
|
mpf/inp_str.lo mpf/out_str.lo mpf/add.lo mpf/add_ui.lo mpf/sub.lo \ |
# Tell gmp.h it's building gmp, not an application, used by windows DLL stuff. |
mpf/sub_ui.lo mpf/ui_sub.lo mpf/mul.lo mpf/mul_ui.lo mpf/div.lo \ |
INCLUDES=-D__GMP_WITHIN_GMP |
mpf/div_ui.lo mpf/cmp.lo mpf/cmp_ui.lo mpf/cmp_si.lo mpf/mul_2exp.lo \ |
|
mpf/div_2exp.lo mpf/abs.lo mpf/neg.lo mpf/set_q.lo mpf/get_d.lo \ |
|
mpf/set_dfl_prec.lo mpf/set_prc.lo mpf/set_prc_raw.lo mpf/get_prc.lo \ |
MPF_OBJECTS = mpf/init$U.lo mpf/init2$U.lo mpf/set$U.lo mpf/set_ui$U.lo \ |
mpf/ui_div.lo mpf/sqrt_ui.lo mpf/floor.lo mpf/ceil.lo mpf/trunc.lo \ |
mpf/set_si$U.lo mpf/set_str$U.lo mpf/set_d$U.lo mpf/set_z$U.lo \ |
mpf/pow_ui.lo mpf/urandomb.lo mpf/swap.lo |
mpf/iset$U.lo mpf/iset_ui$U.lo mpf/iset_si$U.lo mpf/iset_str$U.lo \ |
MPZ_OBJECTS = mpz/abs.lo mpz/add.lo mpz/add_ui.lo mpz/addmul_ui.lo mpz/and.lo \ |
mpf/iset_d$U.lo mpf/clear$U.lo mpf/get_str$U.lo mpf/dump$U.lo \ |
mpz/array_init.lo mpz/bin_ui.lo mpz/bin_uiui.lo mpz/cdiv_q.lo \ |
mpf/size$U.lo mpf/eq$U.lo mpf/reldiff$U.lo mpf/sqrt$U.lo mpf/random2$U.lo \ |
mpz/cdiv_q_ui.lo mpz/cdiv_qr.lo mpz/cdiv_qr_ui.lo mpz/cdiv_r.lo \ |
mpf/inp_str$U.lo mpf/out_str$U.lo mpf/add$U.lo mpf/add_ui$U.lo \ |
mpz/cdiv_r_ui.lo mpz/cdiv_ui.lo mpz/clear.lo mpz/clrbit.lo mpz/cmp.lo \ |
mpf/sub$U.lo mpf/sub_ui$U.lo mpf/ui_sub$U.lo mpf/mul$U.lo mpf/mul_ui$U.lo \ |
mpz/cmp_si.lo mpz/cmp_ui.lo mpz/cmpabs.lo mpz/cmpabs_ui.lo mpz/com.lo \ |
mpf/div$U.lo mpf/div_ui$U.lo \ |
mpz/divexact.lo mpz/dump.lo mpz/fac_ui.lo mpz/fdiv_q.lo mpz/fdiv_q_2exp.lo \ |
mpf/cmp$U.lo mpf/cmp_d$U.lo mpf/cmp_ui$U.lo mpf/cmp_si$U.lo \ |
mpz/fdiv_q_ui.lo mpz/fdiv_qr.lo mpz/fdiv_qr_ui.lo mpz/fdiv_r.lo \ |
mpf/mul_2exp$U.lo mpf/div_2exp$U.lo mpf/abs$U.lo mpf/neg$U.lo \ |
mpz/fdiv_r_2exp.lo mpz/fdiv_r_ui.lo mpz/fdiv_ui.lo mpz/fib_ui.lo \ |
mpf/set_q$U.lo mpf/get_d$U.lo mpf/get_d_2exp$U.lo mpf/set_dfl_prec$U.lo \ |
mpz/fits_sint_p.lo mpz/fits_slong_p.lo mpz/fits_sshort_p.lo \ |
mpf/set_prc$U.lo mpf/set_prc_raw$U.lo mpf/get_dfl_prec$U.lo \ |
mpz/fits_uint_p.lo mpz/fits_ulong_p.lo mpz/fits_ushort_p.lo mpz/gcd.lo \ |
mpf/get_prc$U.lo mpf/ui_div$U.lo mpf/sqrt_ui$U.lo \ |
mpz/gcd_ui.lo mpz/gcdext.lo mpz/get_d.lo mpz/get_si.lo mpz/get_str.lo \ |
mpf/ceilfloor$U.lo mpf/trunc$U.lo mpf/pow_ui$U.lo \ |
mpz/get_ui.lo mpz/getlimbn.lo mpz/hamdist.lo mpz/init.lo mpz/inp_raw.lo \ |
mpf/urandomb$U.lo mpf/swap$U.lo \ |
mpz/inp_str.lo mpz/invert.lo mpz/ior.lo mpz/iset.lo mpz/iset_d.lo \ |
mpf/fits_sint$U.lo mpf/fits_slong$U.lo mpf/fits_sshort$U.lo \ |
mpz/iset_si.lo mpz/iset_str.lo mpz/iset_ui.lo mpz/jacobi.lo \ |
mpf/fits_uint$U.lo mpf/fits_ulong$U.lo mpf/fits_ushort$U.lo \ |
mpz/kronsz.lo mpz/kronuz.lo mpz/kronzs.lo mpz/kronzu.lo \ |
mpf/get_si$U.lo mpf/get_ui$U.lo \ |
mpz/lcm.lo mpz/legendre.lo \ |
mpf/int_p$U.lo |
mpz/mod.lo mpz/mul.lo mpz/mul_2exp.lo mpz/mul_si.lo mpz/mul_ui.lo \ |
|
mpz/neg.lo mpz/nextprime.lo mpz/out_raw.lo mpz/out_str.lo mpz/perfpow.lo mpz/perfsqr.lo \ |
MPZ_OBJECTS = mpz/abs$U.lo mpz/add$U.lo mpz/add_ui$U.lo \ |
mpz/popcount.lo mpz/pow_ui.lo mpz/powm.lo mpz/powm_ui.lo mpz/pprime_p.lo \ |
mpz/aorsmul$U.lo mpz/aorsmul_i$U.lo mpz/and$U.lo mpz/array_init$U.lo \ |
mpz/random.lo mpz/random2.lo mpz/realloc.lo mpz/remove.lo mpz/root.lo \ |
mpz/bin_ui$U.lo mpz/bin_uiui$U.lo \ |
mpz/rrandomb.lo \ |
mpz/cdiv_q$U.lo mpz/cdiv_q_ui$U.lo \ |
mpz/scan0.lo mpz/scan1.lo mpz/set.lo mpz/set_d.lo mpz/set_f.lo mpz/set_q.lo \ |
mpz/cdiv_qr$U.lo mpz/cdiv_qr_ui$U.lo \ |
mpz/set_si.lo mpz/set_str.lo mpz/set_ui.lo mpz/setbit.lo mpz/size.lo \ |
mpz/cdiv_r$U.lo mpz/cdiv_r_ui$U.lo mpz/cdiv_ui$U.lo \ |
mpz/sizeinbase.lo mpz/sqrt.lo mpz/sqrtrem.lo mpz/sub.lo mpz/sub_ui.lo \ |
mpz/cfdiv_q_2exp$U.lo mpz/cfdiv_r_2exp$U.lo \ |
mpz/swap.lo mpz/tdiv_ui.lo mpz/tdiv_q.lo mpz/tdiv_q_2exp.lo mpz/tdiv_q_ui.lo \ |
mpz/clear$U.lo mpz/clrbit$U.lo \ |
mpz/tdiv_qr.lo mpz/tdiv_qr_ui.lo mpz/tdiv_r.lo mpz/tdiv_r_2exp.lo \ |
mpz/cmp$U.lo mpz/cmp_d$U.lo mpz/cmp_si$U.lo mpz/cmp_ui$U.lo \ |
mpz/tdiv_r_ui.lo mpz/tstbit.lo mpz/ui_pow_ui.lo mpz/urandomb.lo \ |
mpz/cmpabs$U.lo mpz/cmpabs_d$U.lo mpz/cmpabs_ui$U.lo \ |
mpz/urandomm.lo mpz/xor.lo |
mpz/com$U.lo \ |
MPQ_OBJECTS = mpq/add.lo mpq/canonicalize.lo mpq/clear.lo mpq/cmp.lo \ |
mpz/cong$U.lo mpz/cong_2exp$U.lo mpz/cong_ui$U.lo \ |
mpq/cmp_ui.lo mpq/div.lo mpq/get_d.lo mpq/get_den.lo mpq/get_num.lo \ |
mpz/divexact$U.lo mpz/divegcd$U.lo mpz/dive_ui$U.lo \ |
mpq/init.lo mpq/inv.lo mpq/mul.lo mpq/neg.lo mpq/out_str.lo \ |
mpz/divis$U.lo mpz/divis_ui$U.lo mpz/divis_2exp$U.lo mpz/dump$U.lo \ |
mpq/set.lo mpq/set_den.lo \ |
mpz/export$U.lo mpz/fac_ui$U.lo mpz/fdiv_q$U.lo \ |
mpq/set_num.lo mpq/set_si.lo mpq/set_ui.lo mpq/sub.lo mpq/equal.lo \ |
mpz/fdiv_q_ui$U.lo mpz/fdiv_qr$U.lo mpz/fdiv_qr_ui$U.lo \ |
mpq/set_z.lo mpq/set_d.lo mpq/swap.lo |
mpz/fdiv_r$U.lo mpz/fdiv_r_ui$U.lo \ |
|
mpz/fdiv_ui$U.lo mpz/fib_ui$U.lo mpz/fib2_ui$U.lo mpz/fits_sint$U.lo \ |
|
mpz/fits_slong$U.lo mpz/fits_sshort$U.lo mpz/fits_uint$U.lo \ |
|
mpz/fits_ulong$U.lo mpz/fits_ushort$U.lo mpz/gcd$U.lo \ |
|
mpz/gcd_ui$U.lo mpz/gcdext$U.lo mpz/get_d$U.lo mpz/get_d_2exp$U.lo \ |
|
mpz/get_si$U.lo mpz/get_str$U.lo mpz/get_ui$U.lo mpz/getlimbn$U.lo \ |
|
mpz/hamdist$U.lo \ |
|
mpz/import$U.lo mpz/init$U.lo mpz/init2$U.lo mpz/inp_raw$U.lo \ |
|
mpz/inp_str$U.lo mpz/invert$U.lo \ |
|
mpz/ior$U.lo mpz/iset$U.lo mpz/iset_d$U.lo mpz/iset_si$U.lo \ |
|
mpz/iset_str$U.lo mpz/iset_ui$U.lo mpz/jacobi$U.lo mpz/kronsz$U.lo \ |
|
mpz/kronuz$U.lo mpz/kronzs$U.lo mpz/kronzu$U.lo \ |
|
mpz/lcm$U.lo mpz/lcm_ui$U.lo mpz/lucnum_ui$U.lo mpz/lucnum2_ui$U.lo \ |
|
mpz/millerrabin$U.lo mpz/mod$U.lo mpz/mul$U.lo mpz/mul_2exp$U.lo \ |
|
mpz/mul_si$U.lo mpz/mul_ui$U.lo \ |
|
mpz/n_pow_ui$U.lo mpz/neg$U.lo mpz/nextprime$U.lo \ |
|
mpz/out_raw$U.lo mpz/out_str$U.lo mpz/perfpow$U.lo mpz/perfsqr$U.lo \ |
|
mpz/popcount$U.lo mpz/pow_ui$U.lo mpz/powm$U.lo mpz/powm_ui$U.lo \ |
|
mpz/pprime_p$U.lo mpz/random$U.lo mpz/random2$U.lo \ |
|
mpz/realloc$U.lo mpz/realloc2$U.lo \ |
|
mpz/remove$U.lo mpz/root$U.lo mpz/rrandomb$U.lo mpz/scan0$U.lo \ |
|
mpz/scan1$U.lo mpz/set$U.lo mpz/set_d$U.lo mpz/set_f$U.lo \ |
|
mpz/set_q$U.lo mpz/set_si$U.lo mpz/set_str$U.lo mpz/set_ui$U.lo \ |
|
mpz/setbit$U.lo \ |
|
mpz/size$U.lo mpz/sizeinbase$U.lo mpz/sqrt$U.lo \ |
|
mpz/sqrtrem$U.lo mpz/sub$U.lo mpz/sub_ui$U.lo mpz/swap$U.lo \ |
|
mpz/tdiv_ui$U.lo mpz/tdiv_q$U.lo mpz/tdiv_q_2exp$U.lo \ |
|
mpz/tdiv_q_ui$U.lo mpz/tdiv_qr$U.lo mpz/tdiv_qr_ui$U.lo \ |
|
mpz/tdiv_r$U.lo mpz/tdiv_r_2exp$U.lo mpz/tdiv_r_ui$U.lo \ |
|
mpz/tstbit$U.lo mpz/ui_pow_ui$U.lo mpz/ui_sub$U.lo mpz/urandomb$U.lo \ |
|
mpz/urandomm$U.lo mpz/xor$U.lo |
|
|
|
MPQ_OBJECTS = mpq/abs$U.lo mpq/aors$U.lo \ |
|
mpq/canonicalize$U.lo mpq/clear$U.lo \ |
|
mpq/cmp$U.lo mpq/cmp_si$U.lo mpq/cmp_ui$U.lo mpq/div$U.lo \ |
|
mpq/get_d$U.lo mpq/get_den$U.lo mpq/get_num$U.lo mpq/get_str$U.lo \ |
|
mpq/init$U.lo mpq/inp_str$U.lo mpq/inv$U.lo \ |
|
mpq/md_2exp$U.lo mpq/mul$U.lo mpq/neg$U.lo mpq/out_str$U.lo \ |
|
mpq/set$U.lo mpq/set_den$U.lo mpq/set_num$U.lo \ |
|
mpq/set_si$U.lo mpq/set_str$U.lo mpq/set_ui$U.lo \ |
|
mpq/equal$U.lo mpq/set_z$U.lo mpq/set_d$U.lo \ |
|
mpq/set_f$U.lo mpq/swap$U.lo |
|
|
MPN_OBJECTS = @mpn_objs_in_libgmp@ |
MPN_OBJECTS = @mpn_objs_in_libgmp@ |
|
|
MPBSD_OBJECTS = mpbsd/add.lo mpbsd/tdiv_qr.lo mpbsd/move.lo mpbsd/powm.lo \ |
PRINTF_OBJECTS = \ |
mpbsd/sub.lo mpbsd/cmp.lo mpbsd/mfree.lo mpbsd/mtox.lo mpbsd/realloc.lo \ |
@REPL_VSNPRINTF_PRINTF_OBJ@ \ |
mpbsd/gcd.lo mpbsd/itom.lo mpbsd/min.lo mpbsd/mul.lo mpbsd/mout.lo \ |
printf/asprintf$U.lo printf/asprntffuns$U.lo \ |
mpbsd/pow_ui.lo mpbsd/sdiv.lo mpbsd/sqrtrem.lo mpbsd/xtom.lo |
printf/doprnt$U.lo printf/doprntf$U.lo printf/doprnti$U.lo \ |
|
printf/fprintf$U.lo \ |
|
printf/obprintf$U.lo printf/obvprintf$U.lo printf/obprntffuns$U.lo \ |
|
printf/printf$U.lo printf/printffuns$U.lo \ |
|
printf/snprintf$U.lo printf/snprntffuns$U.lo \ |
|
printf/sprintf$U.lo printf/sprintffuns$U.lo \ |
|
printf/vasprintf$U.lo printf/vfprintf$U.lo printf/vprintf$U.lo \ |
|
printf/vsnprintf$U.lo printf/vsprintf$U.lo |
|
|
# FIXME: Add mpfr/rnd_mode.lo when it's clean. |
SCANF_OBJECTS = \ |
MPFR_OBJECTS = mpfr/add.lo mpfr/div_2exp.lo mpfr/neg.lo mpfr/set_dfl_prec.lo \ |
scanf/doscan$U.lo scanf/fscanf$U.lo scanf/fscanffuns$U.lo \ |
mpfr/set_str_raw.lo mpfr/agm.lo mpfr/get_str.lo mpfr/print_raw.lo \ |
scanf/scanf$U.lo scanf/sscanf$U.lo scanf/sscanffuns$U.lo \ |
mpfr/set_dfl_rnd.lo mpfr/sqrt.lo mpfr/clear.lo mpfr/init.lo \ |
scanf/vfscanf$U.lo scanf/vscanf$U.lo scanf/vsscanf$U.lo |
mpfr/set_f.lo mpfr/sub.lo mpfr/cmp.lo mpfr/mul.lo mpfr/round.lo \ |
|
mpfr/set_prec.lo mpfr/cmp_ui.lo mpfr/mul_2exp.lo mpfr/set.lo mpfr/set_si.lo \ |
|
mpfr/div.lo mpfr/mul_ui.lo mpfr/set_d.lo mpfr/pow.lo mpfr/out_str.lo \ |
|
mpfr/pi.lo mpfr/set_z.lo mpfr/add_ulp.lo mpfr/log2.lo mpfr/random.lo \ |
|
mpfr/log.lo mpfr/exp.lo mpfr/div_ui.lo mpfr/zeta.lo mpfr/karadiv.lo \ |
|
mpfr/karasqrt.lo mpfr/print_rnd_mode.lo |
|
|
|
|
CXX_OBJECTS = \ |
|
cxx/isfuns$U.lo cxx/ismpf$U.lo cxx/ismpq$U.lo cxx/ismpz$U.lo \ |
|
cxx/osdoprnti$U.lo cxx/osfuns$U.lo \ |
|
cxx/osmpf$U.lo cxx/osmpq$U.lo cxx/osmpz$U.lo |
|
|
if WANT_MPFR |
MPBSD_OBJECTS = mpbsd/add$U.lo mpbsd/tdiv_qr$U.lo mpbsd/set$U.lo \ |
MPFR_HEADERS_OPTION = mpfr/mpfr.h |
mpbsd/powm$U.lo mpbsd/sub$U.lo mpbsd/cmp$U.lo mpbsd/mfree$U.lo \ |
MPFR_OBJECTS_OPTION = $(MPFR_OBJECTS) |
mpbsd/mtox$U.lo mpbsd/realloc$U.lo mpbsd/gcd$U.lo mpbsd/itom$U.lo \ |
MPFR_LIBADD_OPTION = -lm |
mpbsd/min$U.lo mpbsd/mul$U.lo mpbsd/mout$U.lo mpbsd/rpow$U.lo \ |
endif |
mpbsd/sdiv$U.lo mpbsd/sqrtrem$U.lo mpbsd/xtom$U.lo |
libgmp_la_SOURCES = assert.c compat.c errno.c memory.c mp_set_fns.c \ |
|
mp_clz_tab.c mp_minv_tab.c \ |
|
rand.c randclr.c randlc.c randlc2x.c randraw.c randsd.c \ |
# In the current libtool it doesn't work to build libgmp.la from convenience |
randsdui.c version.c stack-alloc.c mp_bpl.c extract-dbl.c insert-dbl.c |
# libraries like mpz/libmpz.la. Or rather it works, but it ends up putting |
libgmp_la_DEPENDENCIES = \ |
# PIC objects into libgmp.a when shared and static are both built. |
|
# |
|
# For now the big lists of objects above are used. Something like mpz/*.lo |
|
# would probably work, but might risk missing something out or getting |
|
# something extra. The source files for each .lo are listed in the |
|
# Makefile.am's in the subdirectories. |
|
# |
|
# Currently, unlike libmp below, we're not using -export-symbols, since the |
|
# tune and speed programs, and perhaps some of the test programs, want to |
|
# access undocumented symbols. |
|
|
|
libgmp_la_SOURCES = gmp-impl.h longlong.h \ |
|
assert.c compat.c errno.c extract-dbl.c insert-dbl.c memory.c \ |
|
mp_bpl.c mp_clz_tab.c mp_minv_tab.c mp_set_fns.c \ |
|
rand.c randclr.c randdef.c randlc.c randlc2s.c randlc2x.c randraw.c \ |
|
rands.c randsd.c randsdui.c version.c |
|
libgmp_la_DEPENDENCIES = @TAL_OBJECT@ \ |
$(MPF_OBJECTS) $(MPZ_OBJECTS) $(MPN_OBJECTS) $(MPQ_OBJECTS) \ |
$(MPF_OBJECTS) $(MPZ_OBJECTS) $(MPN_OBJECTS) $(MPQ_OBJECTS) \ |
$(MPFR_OBJECTS_OPTION) |
$(PRINTF_OBJECTS) $(SCANF_OBJECTS) |
libgmp_la_LIBADD = $(libgmp_la_DEPENDENCIES) $(MPFR_LIBADD_OPTION) |
libgmp_la_LIBADD = $(libgmp_la_DEPENDENCIES) |
libgmp_la_LDFLAGS = \ |
libgmp_la_LDFLAGS = $(GMP_LDFLAGS) \ |
-version-info $(LIBGMP_LT_CURRENT):$(LIBGMP_LT_REVISION):$(LIBGMP_LT_AGE) |
-version-info $(LIBGMP_LT_CURRENT):$(LIBGMP_LT_REVISION):$(LIBGMP_LT_AGE) |
|
|
|
|
|
# We need at least one .cc file in $(libgmpxx_la_SOURCES) so automake will |
|
# use $(CXXLINK) rather than the plain C $(LINK). cxx/osfuns.cc is an |
|
# arbitrary choice for that. |
|
|
|
if WANT_CXX |
|
GMPXX_LTLIBRARIES_OPTION = libgmpxx.la |
|
endif |
|
libgmpxx_la_SOURCES = dummy.cc |
|
libgmpxx_la_DEPENDENCIES = $(CXX_OBJECTS) libgmp.la |
|
libgmpxx_la_LIBADD = $(libgmpxx_la_DEPENDENCIES) |
|
libgmpxx_la_LDFLAGS = $(GMP_LDFLAGS) \ |
|
-version-info $(LIBGMPXX_LT_CURRENT):$(LIBGMPXX_LT_REVISION):$(LIBGMPXX_LT_AGE) |
|
|
|
|
|
# The selected mpz objects here support mpz/powm.c (built as mpbsd/powm.lo) |
|
# and can probably be removed when that switches to an mpn implementation. |
|
# (Apart from mpz/n_pow_ui$U.lo, which supports mpbsd/rpow.c) |
|
|
if WANT_MPBSD |
if WANT_MPBSD |
MPBSD_HEADERS_OPTION = mp.h |
MPBSD_HEADERS_OPTION = mp.h |
MPBSD_LTLIBRARIES_OPTION = libmp.la |
MPBSD_LTLIBRARIES_OPTION = libmp.la |
endif |
endif |
libmp_la_SOURCES = assert.c errno.c memory.c mp_bpl.c mp_clz_tab.c \ |
libmp_la_SOURCES = assert.c errno.c memory.c mp_bpl.c mp_clz_tab.c \ |
mp_minv_tab.c mp_set_fns.c stack-alloc.c |
mp_minv_tab.c mp_set_fns.c |
libmp_la_DEPENDENCIES = $(MPBSD_OBJECTS) $(MPN_OBJECTS) \ |
MPN_OBJS_IN_LIBMP = @mpn_objs_in_libmp@ |
mpz/add.lo mpz/clear.lo mpz/cmp.lo mpz/init.lo mpz/mod.lo mpz/mul.lo \ |
libmp_la_DEPENDENCIES = $(srcdir)/libmp.sym \ |
mpz/mul_2exp.lo mpz/realloc.lo mpz/set.lo mpz/set_ui.lo mpz/tdiv_r.lo \ |
@TAL_OBJECT@ $(MPBSD_OBJECTS) $(MPN_OBJS_IN_LIBMP) \ |
mpz/sub.lo |
mpz/add$U.lo mpz/gcdext$U.lo mpz/invert$U.lo mpz/mul$U.lo \ |
|
mpz/n_pow_ui$U.lo mpz/realloc$U.lo mpz/set$U.lo mpz/sub$U.lo \ |
|
mpz/tdiv_q$U.lo |
libmp_la_LIBADD = $(libmp_la_DEPENDENCIES) |
libmp_la_LIBADD = $(libmp_la_DEPENDENCIES) |
libmp_la_LDFLAGS = \ |
libmp_la_LDFLAGS = $(GMP_LDFLAGS) \ |
-version-info $(LIBMP_LT_CURRENT):$(LIBMP_LT_REVISION):$(LIBMP_LT_AGE) |
-version-info $(LIBMP_LT_CURRENT):$(LIBMP_LT_REVISION):$(LIBMP_LT_AGE) \ |
|
-export-symbols $(srcdir)/libmp.sym |
|
|
|
|
|
# Optional objects, listed in a dummy library to generate ansi2knr rules and |
|
# get them in "make dist". |
|
# |
|
EXTRA_LTLIBRARIES = libdummy.la |
|
libdummy_la_SOURCES = tal-debug.c tal-notreent.c tal-reent.c |
|
|
|
|
info_TEXINFOS = gmp.texi |
info_TEXINFOS = gmp.texi |
|
gmp_TEXINFOS = fdl.texi |
|
|
|
|
# Don't ship CVS directories or emacs backups. |
# Avoid: CVS - cvs directories |
|
# *~ - emacs backups |
|
# .#* - cvs merge originals |
|
# |
|
# *~ and .#* only occur when a whole directory without it's own Makefile.am |
|
# is distributed, like "doc" or the mpn cpu subdirectories. |
|
# |
dist-hook: |
dist-hook: |
-find $(distdir) \( -name CVS -type d \) -o -name "*.~*" \ |
-find $(distdir) \( -name CVS -type d \) -o -name "*~" -o -name ".#*" \ |
| xargs rm -rf |
| xargs rm -rf |