From c769442c1a7f58a794b3b2d8215aa524a21edc34 Mon Sep 17 00:00:00 2001 From: simonmar Date: Mon, 21 Aug 2000 15:21:53 +0000 Subject: [PATCH] [project @ 2000-08-21 15:21:52 by simonmar] Our local changes to GMP 3.1: disconnect the bits we're not interested in (mpf, mpq, tests subdirs etc.). --- ghc/rts/gmp/Makefile.in | 41 +--- ghc/rts/gmp/configure | 19 +- ghc/rts/gmp/configure.in | 7 +- ghc/rts/gmp/mpn/Makefile.in | 518 +++++++++++++++++++++++++++++++++++++------ ghc/rts/gmp/mpz/Makefile.in | 2 +- 5 files changed, 458 insertions(+), 129 deletions(-) diff --git a/ghc/rts/gmp/Makefile.in b/ghc/rts/gmp/Makefile.in index 9573237..57650fa 100644 --- a/ghc/rts/gmp/Makefile.in +++ b/ghc/rts/gmp/Makefile.in @@ -173,7 +173,7 @@ LIBMP_LT_AGE = 1 AUTOMAKE_OPTIONS = gnu check-news no-dependencies ansi2knr -SUBDIRS = mpn mpz mpq mpf mpbsd mpfr tests demos tune +SUBDIRS = mpn mpz include_HEADERS = gmp.h $(MPBSD_HEADERS_OPTION) $(MPFR_HEADERS_OPTION) EXTRA_HEADERS = mp.h @@ -184,18 +184,6 @@ EXTRA_DIST = .gdbinit gmp-impl.h longlong.h stack-alloc.h urandom.h doc macos DISTCLEANFILES = asm-syntax.h config.m4 @gmp_srclinks@ -MPF_OBJECTS = mpf/init.lo mpf/init2.lo mpf/set.lo mpf/set_ui.lo mpf/set_si.lo \ - mpf/set_str.lo mpf/set_d.lo mpf/set_z.lo mpf/iset.lo mpf/iset_ui.lo \ - mpf/iset_si.lo mpf/iset_str.lo mpf/iset_d.lo mpf/clear.lo mpf/get_str.lo \ - 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 \ - mpf/sub_ui.lo mpf/ui_sub.lo mpf/mul.lo mpf/mul_ui.lo mpf/div.lo \ - 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/ui_div.lo mpf/sqrt_ui.lo mpf/floor.lo mpf/ceil.lo mpf/trunc.lo \ - mpf/pow_ui.lo mpf/urandomb.lo mpf/swap.lo - MPZ_OBJECTS = mpz/abs.lo mpz/add.lo mpz/add_ui.lo mpz/addmul_ui.lo mpz/and.lo \ mpz/array_init.lo mpz/bin_ui.lo mpz/bin_uiui.lo mpz/cdiv_q.lo \ mpz/cdiv_q_ui.lo mpz/cdiv_qr.lo mpz/cdiv_qr_ui.lo mpz/cdiv_r.lo \ @@ -225,13 +213,6 @@ MPZ_OBJECTS = mpz/abs.lo mpz/add.lo mpz/add_ui.lo mpz/addmul_ui.lo mpz/and.lo \ mpz/tdiv_r_ui.lo mpz/tstbit.lo mpz/ui_pow_ui.lo mpz/urandomb.lo \ mpz/urandomm.lo mpz/xor.lo -MPQ_OBJECTS = mpq/add.lo mpq/canonicalize.lo mpq/clear.lo mpq/cmp.lo \ - mpq/cmp_ui.lo mpq/div.lo mpq/get_d.lo mpq/get_den.lo mpq/get_num.lo \ - mpq/init.lo mpq/inv.lo mpq/mul.lo mpq/neg.lo mpq/out_str.lo \ - mpq/set.lo mpq/set_den.lo \ - mpq/set_num.lo mpq/set_si.lo mpq/set_ui.lo mpq/sub.lo mpq/equal.lo \ - mpq/set_z.lo mpq/set_d.lo mpq/swap.lo - MPN_OBJECTS = @mpn_objs_in_libgmp@ MPBSD_OBJECTS = mpbsd/add.lo mpbsd/tdiv_qr.lo mpbsd/move.lo mpbsd/powm.lo \ @@ -240,25 +221,13 @@ MPBSD_OBJECTS = mpbsd/add.lo mpbsd/tdiv_qr.lo mpbsd/move.lo mpbsd/powm.lo \ mpbsd/pow_ui.lo mpbsd/sdiv.lo mpbsd/sqrtrem.lo mpbsd/xtom.lo -# FIXME: Add mpfr/rnd_mode.lo when it's clean. -MPFR_OBJECTS = mpfr/add.lo mpfr/div_2exp.lo mpfr/neg.lo mpfr/set_dfl_prec.lo \ - mpfr/set_str_raw.lo mpfr/agm.lo mpfr/get_str.lo mpfr/print_raw.lo \ - mpfr/set_dfl_rnd.lo mpfr/sqrt.lo mpfr/clear.lo mpfr/init.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 - @WANT_MPFR_TRUE@MPFR_HEADERS_OPTION = @WANT_MPFR_TRUE@mpfr/mpfr.h @WANT_MPFR_TRUE@MPFR_OBJECTS_OPTION = @WANT_MPFR_TRUE@$(MPFR_OBJECTS) @WANT_MPFR_TRUE@MPFR_LIBADD_OPTION = @WANT_MPFR_TRUE@-lm 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 \ - randsdui.c version.c stack-alloc.c mp_bpl.c extract-dbl.c insert-dbl.c + version.c stack-alloc.c mp_bpl.c extract-dbl.c insert-dbl.c libgmp_la_DEPENDENCIES = \ $(MPF_OBJECTS) $(MPZ_OBJECTS) $(MPN_OBJECTS) $(MPQ_OBJECTS) \ @@ -314,7 +283,7 @@ CCLD = $(CC) LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ DIST_SOURCES = $(libgmp_la_SOURCES) $(libmp_la_SOURCES) TEXI2DVI = texi2dvi -INFO_DEPS = gmp.info +# INFO_DEPS = gmp.info DVIS = gmp.dvi TEXINFOS = gmp.texi HEADERS = $(include_HEADERS) @@ -536,8 +505,8 @@ distclean-vti: maintainer-clean-vti: -@MAINTAINER_MODE_TRUE@rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi -gmp.info: gmp.texi version.texi -gmp.dvi: gmp.texi version.texi +# gmp.info: gmp.texi version.texi +# gmp.dvi: gmp.texi version.texi DVIPS = dvips diff --git a/ghc/rts/gmp/configure b/ghc/rts/gmp/configure index 1375a73..bbbe179 100644 --- a/ghc/rts/gmp/configure +++ b/ghc/rts/gmp/configure @@ -4600,10 +4600,7 @@ cat >$CONFIG_STATUS <tmp-$*.s - $(CC) -c tmp-$*.s -o $@ + $(CPP) $(COMPILE_FLAGS) $< | grep -v '^#' >tmp-$*.s + $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@ + rm -f tmp-$*.s +.S.obj: + $(CPP) $(COMPILE_FLAGS) `cygpath -w $<` | grep -v '^#' >tmp-$*.s + $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@ + rm -f tmp-$*.s + +# We have to rebuild the static object file without passing -DPIC to +# preprocessor. The overhead cost is one extra assemblation. FIXME: +# Teach libtool how to assemble with a preprocessor pass (CPP or m4). + +.S.lo: + $(CPP) $(COMPILE_FLAGS) -DPIC $< | grep -v '^#' >tmp-$*.s + $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@ + $(CPP) $(COMPILE_FLAGS) $< | grep -v '^#' >tmp-$*.s + $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o + rm -f tmp-$*.s + +# *.m4 are preprocessed with m4. +.asm.o: + $(M4) -DOPERATION_$* $< >tmp-$*.s + $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@ + rm -f tmp-$*.s +.asm.obj: + $(M4) -DOPERATION_$* `cygpath -w $<` >tmp-$*.s + $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@ + rm -f tmp-$*.s +.asm.lo: + $(M4) -DPIC -DOPERATION_$* $< >tmp-$*.s + $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@ + $(M4) -DOPERATION_$* $< >tmp-$*.s + $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o rm -f tmp-$*.s -clean mostlyclean: - rm -f *.o tmp-* libmpn.a - #-cd tests; $(MAKE) $@ -distclean maintainer-clean: clean - rm -f asm-syntax.h Makefile config.status $(MPN_LINKS) - -cd tests; $(MAKE) $@ - -Makefile: $(srcdir)/Makefile.in - $(SHELL) ./config.status - - -# Maybe configure could add dependencies here..? - -H = $(srcdir)/../gmp.h $(srcdir)/../gmp-impl.h gmp-mparam.h -L = $(srcdir)/../longlong.h - -mp_bases.o: $(srcdir)/mp_bases.c $(H) -bdivmod.o: bdivmod.c $(H) $(L) -cmp.o: cmp.c $(H) -divmod_1.o: divmod_1.c $(H) $(L) -divrem.o: divrem.c $(H) $(L) -divrem_1.o: divrem_1.c $(H) $(L) -dump.o: dump.c $(H) -gcd.o: gcd.c $(H) $(L) -gcd_1.o: gcd_1.c $(H) $(L) -gcdext.o: gcdext.c $(H) $(L) -get_str.o: get_str.c $(H) $(L) -hamdist.o: hamdist.c $(H) -inlines.o: inlines.c $(srcdir)/../gmp.h -mod_1.o: mod_1.c $(H) $(L) -mul.o: mul.c $(H) -mul_n.o: mul_n.c $(H) -perfsqr.o: perfsqr.c $(H) $(L) -popcount.o: popcount.c $(H) -pre_mod_1.o: pre_mod_1.c $(H) $(L) -random2.o: random2.c $(H) -scan0.o: scan0.c $(H) $(L) -scan1.o: scan1.c $(H) $(L) -set_str.o: set_str.c $(H) -sqrtrem.o: sqrtrem.c $(H) $(L) +# 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: diff --git a/ghc/rts/gmp/mpz/Makefile.in b/ghc/rts/gmp/mpz/Makefile.in index fec01c9..e0f2cdc 100644 --- a/ghc/rts/gmp/mpz/Makefile.in +++ b/ghc/rts/gmp/mpz/Makefile.in @@ -119,7 +119,7 @@ mpn_objs_in_libgmp = @mpn_objs_in_libgmp@ AUTOMAKE_OPTIONS = gnu no-dependencies -SUBDIRS = tests +SUBDIRS = INCLUDES = -I$(top_srcdir) -DOPERATION_$* -- 1.7.10.4