summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Ryde <user42@zip.com.au>2001-10-01 22:40:12 +0200
committerKevin Ryde <user42@zip.com.au>2001-10-01 22:40:12 +0200
commitc52c910a752c0e3e54e1fa2c4be40a1cd080d92b (patch)
treee44bc620d15f8c3cdc914f6b32e80e2d7a19d421
parentb2ee782b744aa757f29a6df123c9e38dbb8e6a69 (diff)
downloadgmp-c52c910a752c0e3e54e1fa2c4be40a1cd080d92b.tar.gz
Regenerate
-rw-r--r--Makefile.in2
-rw-r--r--cxx/Makefile.in6
-rw-r--r--demos/Makefile.in6
-rw-r--r--demos/calc/Makefile.in6
-rw-r--r--demos/expr/Makefile.in6
-rw-r--r--mpbsd/Makefile.in6
-rw-r--r--mpf/Makefile.in6
-rw-r--r--mpfr/Makefile.in6
-rw-r--r--mpfr/tests/Makefile.in6
-rw-r--r--mpn/Makefile.in97
-rw-r--r--mpq/Makefile.in6
-rw-r--r--mpz/Makefile.in6
-rw-r--r--printf/Makefile.in6
-rw-r--r--tests/Makefile.in95
-rw-r--r--tests/cxx/Makefile.in6
-rw-r--r--tests/devel/Makefile.in6
-rw-r--r--tests/mpbsd/Makefile.in6
-rw-r--r--tests/mpf/Makefile.in6
-rw-r--r--tests/mpn/Makefile.in6
-rw-r--r--tests/mpq/Makefile.in6
-rw-r--r--tests/mpz/Makefile.in6
-rw-r--r--tests/printf/Makefile.in6
-rw-r--r--tests/rand/Makefile.in6
-rw-r--r--tune/Makefile.in95
24 files changed, 225 insertions, 184 deletions
diff --git a/Makefile.in b/Makefile.in
index 1289253fc..755aa85bb 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -106,12 +106,10 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
CXXCPP = @CXXCPP@
diff --git a/cxx/Makefile.in b/cxx/Makefile.in
index 1aac4d25b..c6d398d17 100644
--- a/cxx/Makefile.in
+++ b/cxx/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/demos/Makefile.in b/demos/Makefile.in
index dd2baf3a0..1437645dc 100644
--- a/demos/Makefile.in
+++ b/demos/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/demos/calc/Makefile.in b/demos/calc/Makefile.in
index 67797011c..6a905deed 100644
--- a/demos/calc/Makefile.in
+++ b/demos/calc/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/demos/expr/Makefile.in b/demos/expr/Makefile.in
index c62010570..59d15378c 100644
--- a/demos/expr/Makefile.in
+++ b/demos/expr/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/mpbsd/Makefile.in b/mpbsd/Makefile.in
index 57aaa6d1a..d5d191512 100644
--- a/mpbsd/Makefile.in
+++ b/mpbsd/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/mpf/Makefile.in b/mpf/Makefile.in
index 23439020b..1ee59094e 100644
--- a/mpf/Makefile.in
+++ b/mpf/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/mpfr/Makefile.in b/mpfr/Makefile.in
index 405517d8e..91449e322 100644
--- a/mpfr/Makefile.in
+++ b/mpfr/Makefile.in
@@ -82,19 +82,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -107,6 +108,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/mpfr/tests/Makefile.in b/mpfr/tests/Makefile.in
index bfffe074a..14a049974 100644
--- a/mpfr/tests/Makefile.in
+++ b/mpfr/tests/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/mpn/Makefile.in b/mpn/Makefile.in
index 3f3ca5732..798da0051 100644
--- a/mpn/Makefile.in
+++ b/mpn/Makefile.in
@@ -53,7 +53,7 @@
# MA 02111-1307, USA.
# COMPILE minus CC.
-# FIXME: Really pass *_CFLAGS to CPP?
+#
SHELL = @SHELL@
@@ -102,19 +102,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -127,6 +128,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
@@ -184,18 +186,19 @@ TARG_DIST = a29k alpha arm clipper cray generic hppa i960 ia64 lisp m68k m88k \
sparc64 thumb vax x86 z8000 z8000x
-EXTRA_DIST = underscore.h asm-defs.m4 $(TARG_DIST)
+EXTRA_DIST = asm-defs.m4 m4-ccas $(TARG_DIST)
-COMPILE_FLAGS = \
- $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+COMPILE_FLAGS = $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-# Recent versions of automake append automake generated suffixes to this
-# $(SUFFIXES) list. This is essential for us, since .c must come after .s,
-# .S and .asm. If .c is before .s, for instance, then in the mpn directory
-# "make" will see add_n.c mentioned in an explicit rule (the ansi2knr stuff)
-# and decide it must have add_n.c, even if add_n.c doesn't exist but add_n.s
-# does. See GNU make documentation (make)Implicit Rule Search, part 5c.
+# Recent versions of automake (1.5 and up for instance) append automake
+# generated suffixes to this $(SUFFIXES) list. This is essential for us,
+# since .c must come after .s, .S and .asm. If .c is before .s, for
+# instance, then in the mpn directory "make" will see add_n.c mentioned in
+# an explicit rule (the ansi2knr stuff) and decide it must have add_n.c,
+# even if add_n.c doesn't exist but add_n.s does. See GNU make
+# documentation "(make)Implicit Rule Search", part 5c.
#
# On IRIX 6 native make this doesn't work properly though. Somehow .c
# remains ahead of .s, perhaps because .c.s is a builtin rule. .asm works
@@ -592,48 +595,51 @@ uninstall-am: uninstall-info-am
uninstall-info-am
-# *.s not preprocessed at all.
+# .s assembler, no preprocessing.
+#
.s.o:
- $(CCAS) $(COMPILE_FLAGS) $<
+ $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
.s.obj:
$(CCAS) $(COMPILE_FLAGS) `cygpath -w $<`
.s.lo:
- $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) $<
+ $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
-# Notice .S.lo and .asm.lo both have the creation of the .lo file last, so a
-# re-make won't find a .lo unless all the commands succeeded.
+# .S assembler, preprocessed with cpp.
#
-# $(LIBTOOL) used to be used rather than $(CC) $(CFLAGS_PIC), but that fails
-# on FreeBSD 2.2.8 where gas 1.92.3 requires -k to process PIC constructs
-# like "@GOT". With libtool the PIC .s was assembled (via gcc) once with -k
-# and an unnecessary second time without, the latter failing.
+# It was vaguely intended that CCAS would just be asked to assemble .s
+# files, not do a combined preprocess and assemble, certainly that's how it
+# was in the past. But arranging that for .S.lo would require something
+# like the .asm.lo handling below, so instead take the easy way and pass .S
+# directly. Since normally CCAS="$CC -c" the only thing lost from the past
+# is removing "#line" and "#file" lines left by cpp. Let's hope CCAS is
+# smart enough to do that itself if it's needed.
#
-# FIXME: .S.lo and .asm.lo create both a PIC .lo and a non-PIC .o, even if
-# only one of the two is required. Hopefully this won't cause any problems,
-# it can't be too bad because it's been so in GMP since version 3.0. It'd
-# be nice if libtool could support assembler code directly.
-
-# *.S preprocessed with cpp.
.S.o:
- $(CPP) $(COMPILE_FLAGS) $< | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
- $(RM_TMP) tmp-$*.s
+ $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
.S.obj:
- $(CPP) $(COMPILE_FLAGS) `cygpath -w $<` | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
- $(RM_TMP) tmp-$*.s
-
+ $(CCAS) $(COMPILE_FLAGS) `cygpath -w $<`
.S.lo:
- $(CPP) $(COMPILE_FLAGS) $(ASMFLAGS_PIC) $< | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o tmp-$*.o
- $(CPP) $(COMPILE_FLAGS) $< | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o
- $(RM_TMP) tmp-$*.s
- mv tmp-$*.o $*.lo
+ $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) -o $@ `test -f $< || echo '$(srcdir)/'`$<
-# *.asm preprocessed with m4.
+# .asm assembler, preprocessed with m4.
+#
+# .o and .obj are non-PIC and just need m4 followed by a compile.
+#
+# .lo is a bit tricky. Libtool (as of version 1.5) has foo.lo as a little
+# text file, and .libs/foo.o and foo.o as the PIC and non-PIC objects,
+# respectively. It'd be asking for lots of trouble to try to create foo.lo
+# ourselves, so instead arrange to invoke libtool like a --mode=compile, but
+# with a special m4-ccas script which first m4 preprocesses, then compiles.
+# --tag=CC is necessary since foo.asm is otherwise unknown to libtool.
+#
+# Libtool adds -DPIC when building a shared object and the .asm files look
+# for that. But it should be noted that the other PIC flags are on occasion
+# important too, in particular FreeBSD 2.2.8 gas 1.92.3 requires -k before
+# it accepts PIC constructs like @GOT, and gcc adds that flag only under
+# -fPIC. (Later versions of gas are happy to accept PIC stuff any time.)
+#
.asm.o:
- $(M4) -DOPERATION_$* $< >tmp-$*.s
+ $(M4) -DOPERATION_$* `test -f $< || echo '$(srcdir)/'`$< >tmp-$*.s
$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
$(RM_TMP) tmp-$*.s
.asm.obj:
@@ -641,12 +647,7 @@ uninstall-am: uninstall-info-am
$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
$(RM_TMP) tmp-$*.s
.asm.lo:
- $(M4) $(ASMFLAGS_PIC) -DOPERATION_$* $< >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) $(CFLAGS_PIC) tmp-$*.s -o tmp-$*.o
- $(M4) -DOPERATION_$* $< >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o
- $(RM_TMP) tmp-$*.s
- mv tmp-$*.o $*.lo
+ $(LIBTOOL) --mode=compile --tag=CC $(top_srcdir)/mpn/m4-ccas --m4="$(M4)" $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
# 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/mpq/Makefile.in b/mpq/Makefile.in
index 19ceda0d7..a6852cb7c 100644
--- a/mpq/Makefile.in
+++ b/mpq/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/mpz/Makefile.in b/mpz/Makefile.in
index fcd9c4f7a..466109985 100644
--- a/mpz/Makefile.in
+++ b/mpz/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/printf/Makefile.in b/printf/Makefile.in
index 0ea178828..403ece4fe 100644
--- a/printf/Makefile.in
+++ b/printf/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tests/Makefile.in b/tests/Makefile.in
index b09aaa3ae..a76510d97 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -53,7 +53,7 @@
# MA 02111-1307, USA.
# COMPILE minus CC.
-# FIXME: Really pass *_CFLAGS to CPP?
+#
SHELL = @SHELL@
@@ -102,19 +102,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -127,6 +128,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
@@ -149,16 +151,17 @@ mpn_objs_in_libmp = @mpn_objs_in_libmp@
AUTOMAKE_OPTIONS = gnu no-dependencies $(top_builddir)/ansi2knr
SUBDIRS = . devel mpn mpz mpq mpf rand printf cxx mpbsd
-COMPILE_FLAGS = \
- $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+COMPILE_FLAGS = $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-# Recent versions of automake append automake generated suffixes to this
-# $(SUFFIXES) list. This is essential for us, since .c must come after .s,
-# .S and .asm. If .c is before .s, for instance, then in the mpn directory
-# "make" will see add_n.c mentioned in an explicit rule (the ansi2knr stuff)
-# and decide it must have add_n.c, even if add_n.c doesn't exist but add_n.s
-# does. See GNU make documentation (make)Implicit Rule Search, part 5c.
+# Recent versions of automake (1.5 and up for instance) append automake
+# generated suffixes to this $(SUFFIXES) list. This is essential for us,
+# since .c must come after .s, .S and .asm. If .c is before .s, for
+# instance, then in the mpn directory "make" will see add_n.c mentioned in
+# an explicit rule (the ansi2knr stuff) and decide it must have add_n.c,
+# even if add_n.c doesn't exist but add_n.s does. See GNU make
+# documentation "(make)Implicit Rule Search", part 5c.
#
# On IRIX 6 native make this doesn't work properly though. Somehow .c
# remains ahead of .s, perhaps because .c.s is a builtin rule. .asm works
@@ -617,48 +620,51 @@ uninstall-info: uninstall-info-recursive
uninstall-info-recursive uninstall-recursive
-# *.s not preprocessed at all.
+# .s assembler, no preprocessing.
+#
.s.o:
- $(CCAS) $(COMPILE_FLAGS) $<
+ $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
.s.obj:
$(CCAS) $(COMPILE_FLAGS) `cygpath -w $<`
.s.lo:
- $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) $<
+ $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
-# Notice .S.lo and .asm.lo both have the creation of the .lo file last, so a
-# re-make won't find a .lo unless all the commands succeeded.
+# .S assembler, preprocessed with cpp.
#
-# $(LIBTOOL) used to be used rather than $(CC) $(CFLAGS_PIC), but that fails
-# on FreeBSD 2.2.8 where gas 1.92.3 requires -k to process PIC constructs
-# like "@GOT". With libtool the PIC .s was assembled (via gcc) once with -k
-# and an unnecessary second time without, the latter failing.
+# It was vaguely intended that CCAS would just be asked to assemble .s
+# files, not do a combined preprocess and assemble, certainly that's how it
+# was in the past. But arranging that for .S.lo would require something
+# like the .asm.lo handling below, so instead take the easy way and pass .S
+# directly. Since normally CCAS="$CC -c" the only thing lost from the past
+# is removing "#line" and "#file" lines left by cpp. Let's hope CCAS is
+# smart enough to do that itself if it's needed.
#
-# FIXME: .S.lo and .asm.lo create both a PIC .lo and a non-PIC .o, even if
-# only one of the two is required. Hopefully this won't cause any problems,
-# it can't be too bad because it's been so in GMP since version 3.0. It'd
-# be nice if libtool could support assembler code directly.
-
-# *.S preprocessed with cpp.
.S.o:
- $(CPP) $(COMPILE_FLAGS) $< | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
- $(RM_TMP) tmp-$*.s
+ $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
.S.obj:
- $(CPP) $(COMPILE_FLAGS) `cygpath -w $<` | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
- $(RM_TMP) tmp-$*.s
-
+ $(CCAS) $(COMPILE_FLAGS) `cygpath -w $<`
.S.lo:
- $(CPP) $(COMPILE_FLAGS) $(ASMFLAGS_PIC) $< | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o tmp-$*.o
- $(CPP) $(COMPILE_FLAGS) $< | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o
- $(RM_TMP) tmp-$*.s
- mv tmp-$*.o $*.lo
+ $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) -o $@ `test -f $< || echo '$(srcdir)/'`$<
-# *.asm preprocessed with m4.
+# .asm assembler, preprocessed with m4.
+#
+# .o and .obj are non-PIC and just need m4 followed by a compile.
+#
+# .lo is a bit tricky. Libtool (as of version 1.5) has foo.lo as a little
+# text file, and .libs/foo.o and foo.o as the PIC and non-PIC objects,
+# respectively. It'd be asking for lots of trouble to try to create foo.lo
+# ourselves, so instead arrange to invoke libtool like a --mode=compile, but
+# with a special m4-ccas script which first m4 preprocesses, then compiles.
+# --tag=CC is necessary since foo.asm is otherwise unknown to libtool.
+#
+# Libtool adds -DPIC when building a shared object and the .asm files look
+# for that. But it should be noted that the other PIC flags are on occasion
+# important too, in particular FreeBSD 2.2.8 gas 1.92.3 requires -k before
+# it accepts PIC constructs like @GOT, and gcc adds that flag only under
+# -fPIC. (Later versions of gas are happy to accept PIC stuff any time.)
+#
.asm.o:
- $(M4) -DOPERATION_$* $< >tmp-$*.s
+ $(M4) -DOPERATION_$* `test -f $< || echo '$(srcdir)/'`$< >tmp-$*.s
$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
$(RM_TMP) tmp-$*.s
.asm.obj:
@@ -666,12 +672,7 @@ uninstall-info: uninstall-info-recursive
$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
$(RM_TMP) tmp-$*.s
.asm.lo:
- $(M4) $(ASMFLAGS_PIC) -DOPERATION_$* $< >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) $(CFLAGS_PIC) tmp-$*.s -o tmp-$*.o
- $(M4) -DOPERATION_$* $< >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o
- $(RM_TMP) tmp-$*.s
- mv tmp-$*.o $*.lo
+ $(LIBTOOL) --mode=compile --tag=CC $(top_srcdir)/mpn/m4-ccas --m4="$(M4)" $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
# 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/tests/cxx/Makefile.in b/tests/cxx/Makefile.in
index b6b8be980..e07deab51 100644
--- a/tests/cxx/Makefile.in
+++ b/tests/cxx/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tests/devel/Makefile.in b/tests/devel/Makefile.in
index 45c762171..cd2e9656a 100644
--- a/tests/devel/Makefile.in
+++ b/tests/devel/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tests/mpbsd/Makefile.in b/tests/mpbsd/Makefile.in
index 36a268c18..45d89c0de 100644
--- a/tests/mpbsd/Makefile.in
+++ b/tests/mpbsd/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tests/mpf/Makefile.in b/tests/mpf/Makefile.in
index 1d9cba039..5d83fc96f 100644
--- a/tests/mpf/Makefile.in
+++ b/tests/mpf/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tests/mpn/Makefile.in b/tests/mpn/Makefile.in
index 647ac74f6..7010ec04a 100644
--- a/tests/mpn/Makefile.in
+++ b/tests/mpn/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tests/mpq/Makefile.in b/tests/mpq/Makefile.in
index 5fa5c77db..c7fa58282 100644
--- a/tests/mpq/Makefile.in
+++ b/tests/mpq/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tests/mpz/Makefile.in b/tests/mpz/Makefile.in
index 95772b925..a54179655 100644
--- a/tests/mpz/Makefile.in
+++ b/tests/mpz/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tests/printf/Makefile.in b/tests/printf/Makefile.in
index 24bb5f7b7..177564de2 100644
--- a/tests/printf/Makefile.in
+++ b/tests/printf/Makefile.in
@@ -82,19 +82,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -107,6 +108,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tests/rand/Makefile.in b/tests/rand/Makefile.in
index 43b083915..021271986 100644
--- a/tests/rand/Makefile.in
+++ b/tests/rand/Makefile.in
@@ -79,19 +79,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -104,6 +105,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
diff --git a/tune/Makefile.in b/tune/Makefile.in
index 0386d6214..2ecc251b1 100644
--- a/tune/Makefile.in
+++ b/tune/Makefile.in
@@ -53,7 +53,7 @@
# MA 02111-1307, USA.
# COMPILE minus CC.
-# FIXME: Really pass *_CFLAGS to CPP?
+#
SHELL = @SHELL@
@@ -102,19 +102,20 @@ host_triplet = @host@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ASMFLAGS_PIC = @ASMFLAGS_PIC@
AWK = @AWK@
CALLING_CONVENTIONS_OBJS = @CALLING_CONVENTIONS_OBJS@
CC = @CC@
CCAS = @CCAS@
-CFLAGS_PIC = @CFLAGS_PIC@
CPP = @CPP@
CXX = @CXX@
+CXXCPP = @CXXCPP@
DEFN_LONG_LONG_LIMB = @DEFN_LONG_LONG_LIMB@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
+GCJ = @GCJ@
+GCJFLAGS = @GCJFLAGS@
GMP_LDFLAGS = @GMP_LDFLAGS@
HAVE_MPFR = @HAVE_MPFR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
@@ -127,6 +128,7 @@ OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
+RC = @RC@
SPEED_CYCLECOUNTER_OBJ = @SPEED_CYCLECOUNTER_OBJ@
STRIP = @STRIP@
TAL_OBJECT = @TAL_OBJECT@
@@ -235,16 +237,17 @@ TUNE_MPN_SRCS_BASIC = dc_divrem_n.c divrem_2.c gcd.c mul_n.c mul_fft.c mul.c \
sb_divrem_mn.c tdiv_qr.c
-COMPILE_FLAGS = \
- $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+COMPILE_FLAGS = $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-# Recent versions of automake append automake generated suffixes to this
-# $(SUFFIXES) list. This is essential for us, since .c must come after .s,
-# .S and .asm. If .c is before .s, for instance, then in the mpn directory
-# "make" will see add_n.c mentioned in an explicit rule (the ansi2knr stuff)
-# and decide it must have add_n.c, even if add_n.c doesn't exist but add_n.s
-# does. See GNU make documentation (make)Implicit Rule Search, part 5c.
+# Recent versions of automake (1.5 and up for instance) append automake
+# generated suffixes to this $(SUFFIXES) list. This is essential for us,
+# since .c must come after .s, .S and .asm. If .c is before .s, for
+# instance, then in the mpn directory "make" will see add_n.c mentioned in
+# an explicit rule (the ansi2knr stuff) and decide it must have add_n.c,
+# even if add_n.c doesn't exist but add_n.s does. See GNU make
+# documentation "(make)Implicit Rule Search", part 5c.
#
# On IRIX 6 native make this doesn't work properly though. Somehow .c
# remains ahead of .s, perhaps because .c.s is a builtin rule. .asm works
@@ -630,48 +633,51 @@ sqr_asm.asm: $(top_builddir)/mpn/sqr_basecase.asm
echo 'define(KARATSUBA_SQR_THRESHOLD_OVERRIDE,KARATSUBA_SQR_THRESHOLD_MAX)' >sqr_asm.asm
echo 'include(../mpn/sqr_basecase.asm)' >>sqr_asm.asm
-# *.s not preprocessed at all.
+# .s assembler, no preprocessing.
+#
.s.o:
- $(CCAS) $(COMPILE_FLAGS) $<
+ $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
.s.obj:
$(CCAS) $(COMPILE_FLAGS) `cygpath -w $<`
.s.lo:
- $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) $<
+ $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
-# Notice .S.lo and .asm.lo both have the creation of the .lo file last, so a
-# re-make won't find a .lo unless all the commands succeeded.
+# .S assembler, preprocessed with cpp.
#
-# $(LIBTOOL) used to be used rather than $(CC) $(CFLAGS_PIC), but that fails
-# on FreeBSD 2.2.8 where gas 1.92.3 requires -k to process PIC constructs
-# like "@GOT". With libtool the PIC .s was assembled (via gcc) once with -k
-# and an unnecessary second time without, the latter failing.
+# It was vaguely intended that CCAS would just be asked to assemble .s
+# files, not do a combined preprocess and assemble, certainly that's how it
+# was in the past. But arranging that for .S.lo would require something
+# like the .asm.lo handling below, so instead take the easy way and pass .S
+# directly. Since normally CCAS="$CC -c" the only thing lost from the past
+# is removing "#line" and "#file" lines left by cpp. Let's hope CCAS is
+# smart enough to do that itself if it's needed.
#
-# FIXME: .S.lo and .asm.lo create both a PIC .lo and a non-PIC .o, even if
-# only one of the two is required. Hopefully this won't cause any problems,
-# it can't be too bad because it's been so in GMP since version 3.0. It'd
-# be nice if libtool could support assembler code directly.
-
-# *.S preprocessed with cpp.
.S.o:
- $(CPP) $(COMPILE_FLAGS) $< | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
- $(RM_TMP) tmp-$*.s
+ $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
.S.obj:
- $(CPP) $(COMPILE_FLAGS) `cygpath -w $<` | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
- $(RM_TMP) tmp-$*.s
-
+ $(CCAS) $(COMPILE_FLAGS) `cygpath -w $<`
.S.lo:
- $(CPP) $(COMPILE_FLAGS) $(ASMFLAGS_PIC) $< | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o tmp-$*.o
- $(CPP) $(COMPILE_FLAGS) $< | grep -v '^#' >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o
- $(RM_TMP) tmp-$*.s
- mv tmp-$*.o $*.lo
+ $(LIBTOOL) --mode=compile $(CCAS) $(COMPILE_FLAGS) -o $@ `test -f $< || echo '$(srcdir)/'`$<
-# *.asm preprocessed with m4.
+# .asm assembler, preprocessed with m4.
+#
+# .o and .obj are non-PIC and just need m4 followed by a compile.
+#
+# .lo is a bit tricky. Libtool (as of version 1.5) has foo.lo as a little
+# text file, and .libs/foo.o and foo.o as the PIC and non-PIC objects,
+# respectively. It'd be asking for lots of trouble to try to create foo.lo
+# ourselves, so instead arrange to invoke libtool like a --mode=compile, but
+# with a special m4-ccas script which first m4 preprocesses, then compiles.
+# --tag=CC is necessary since foo.asm is otherwise unknown to libtool.
+#
+# Libtool adds -DPIC when building a shared object and the .asm files look
+# for that. But it should be noted that the other PIC flags are on occasion
+# important too, in particular FreeBSD 2.2.8 gas 1.92.3 requires -k before
+# it accepts PIC constructs like @GOT, and gcc adds that flag only under
+# -fPIC. (Later versions of gas are happy to accept PIC stuff any time.)
+#
.asm.o:
- $(M4) -DOPERATION_$* $< >tmp-$*.s
+ $(M4) -DOPERATION_$* `test -f $< || echo '$(srcdir)/'`$< >tmp-$*.s
$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
$(RM_TMP) tmp-$*.s
.asm.obj:
@@ -679,12 +685,7 @@ sqr_asm.asm: $(top_builddir)/mpn/sqr_basecase.asm
$(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $@
$(RM_TMP) tmp-$*.s
.asm.lo:
- $(M4) $(ASMFLAGS_PIC) -DOPERATION_$* $< >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) $(CFLAGS_PIC) tmp-$*.s -o tmp-$*.o
- $(M4) -DOPERATION_$* $< >tmp-$*.s
- $(CCAS) $(COMPILE_FLAGS) tmp-$*.s -o $*.o
- $(RM_TMP) tmp-$*.s
- mv tmp-$*.o $*.lo
+ $(LIBTOOL) --mode=compile --tag=CC $(top_srcdir)/mpn/m4-ccas --m4="$(M4)" $(CCAS) $(COMPILE_FLAGS) `test -f $< || echo '$(srcdir)/'`$<
# "mk" is multiplication in the karatsuba range
# "st" is squaring in the toom-cook range, etc