X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2Fgmp%2Facinclude.m4;fp=rts%2Fgmp%2Facinclude.m4;h=0000000000000000000000000000000000000000;hb=fdf1cd0399158308769fcb2ab7e46e215a68d865;hp=a02394a963c13b8213440c9d815711c34315b3c0;hpb=e552cfc427d2734b9a9629f2ab1d22f493e775f6;p=ghc-hetmet.git diff --git a/rts/gmp/acinclude.m4 b/rts/gmp/acinclude.m4 deleted file mode 100644 index a02394a..0000000 --- a/rts/gmp/acinclude.m4 +++ /dev/null @@ -1,835 +0,0 @@ -dnl GMP specific autoconf macros - - -dnl Copyright (C) 2000 Free Software Foundation, Inc. -dnl -dnl This file is part of the GNU MP Library. -dnl -dnl The GNU MP Library is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU Lesser General Public License as published -dnl by the Free Software Foundation; either version 2.1 of the License, or (at -dnl your option) any later version. -dnl -dnl The GNU MP Library is distributed in the hope that it will be useful, but -dnl WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -dnl or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -dnl License for more details. -dnl -dnl You should have received a copy of the GNU Lesser General Public License -dnl along with the GNU MP Library; see the file COPYING.LIB. If not, write to -dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, -dnl MA 02111-1307, USA. - - -dnl GMP_HEADER_GETVAL(NAME,FILE) -dnl ---------------------------- -dnl Expand to the value of a "#define NAME" from the given FILE. -dnl The regexps here aren't very rugged, but are enough for gmp. -dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. - -define(GMP_HEADER_GETVAL, -[patsubst(patsubst( -esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), -[^.*$1[ ]+],[]), -[[ - ]*$],[])]) - - -dnl GMP_VERSION -dnl ----------- -dnl The gmp version number, extracted from the #defines in gmp.h. -dnl Two digits like 3.0 if patchlevel <= 0, or three digits like 3.0.1 if -dnl patchlevel > 0. - -define(GMP_VERSION, -[GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp.h)[]dnl -.GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp.h)[]dnl -ifelse(m4_eval(GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp.h) > 0),1, -[.GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp.h)])]) - - -dnl GMP_PROG_M4() -dnl ------------- -dnl -dnl Find a working m4, either in $PATH or likely locations, and setup $M4 -dnl and an AC_SUBST accordingly. If $M4 is already set then it's a user -dnl choice and is accepted with no checks. GMP_PROG_M4 is like -dnl AC_PATH_PROG or AC_CHECK_PROG, but it tests each m4 found to see if -dnl it's good enough. -dnl -dnl See mpn/asm-defs.m4 for details on the known bad m4s. - -AC_DEFUN(GMP_PROG_M4, -[AC_CACHE_CHECK([for suitable m4], - gmp_cv_prog_m4, -[if test -n "$M4"; then - gmp_cv_prog_m4="$M4" -else - cat >conftest.m4 <<\EOF -dnl must protect this against being expanded during autoconf m4! -[define(dollarhash,``$][#'')dnl -ifelse(dollarhash(x),1,`define(t1,Y)', -``bad: $][# not supported (SunOS /usr/bin/m4) -'')dnl -ifelse(eval(89),89,`define(t2,Y)', -`bad: eval() doesnt support 8 or 9 in a constant (OpenBSD 2.6 m4) -')dnl -ifelse(t1`'t2,YY,`good -')dnl] -EOF - echo "trying m4" 1>&AC_FD_CC - gmp_tmp_val="`(m4 conftest.m4) 2>&AC_FD_CC`" - echo "$gmp_tmp_val" 1>&AC_FD_CC - if test "$gmp_tmp_val" = good; then - gmp_cv_prog_m4="m4" - else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -dnl $ac_dummy forces splitting on constant user-supplied paths. -dnl POSIX.2 word splitting is done only on the output of word expansions, -dnl not every word. This closes a longstanding sh security hole. - ac_dummy="$PATH:/usr/5bin" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - echo "trying $ac_dir/m4" 1>&AC_FD_CC - gmp_tmp_val="`($ac_dir/m4 conftest.m4) 2>&AC_FD_CC`" - echo "$gmp_tmp_val" 1>&AC_FD_CC - if test "$gmp_tmp_val" = good; then - gmp_cv_prog_m4="$ac_dir/m4" - break - fi - done - IFS="$ac_save_ifs" - if test -z "$gmp_cv_prog_m4"; then - AC_MSG_ERROR([No usable m4 in \$PATH or /usr/5bin (see config.log for reasons).]) - fi - fi - rm -f conftest.m4 -fi]) -M4="$gmp_cv_prog_m4" -AC_SUBST(M4) -]) - - -dnl GMP_PROG_CC_FIND([CC_LIST], [REQ_64BIT_CC]) -dnl Find first working compiler in CC_LIST. -dnl If REQ_64BIT_CC is "yes", the compiler is required to be able to -dnl produce 64-bit code. -dnl NOTE: If a compiler needs any special flags for producing 64-bit code, -dnl these have to be found in shell variable `gmp_cflags64_{cc}', where `{cc}' -dnl is the name of the compiler. -dnl Set CC to the name of the first working compiler. -dnl If a 64-bit compiler is found, set CC64 to the name of the compiler and -dnl CFLAGS64 to flags to use. -dnl This macro does not test if any of the compilers found is a GNU compiler. -dnl To do this, when you have finally made up your mind on which one to use, -dnl and set CC accordingly, invoke [GMP_PROG_CC_SELECT]. That macro will -dnl also make sure that your selection of CFLAGS is valid. -dnl -AC_DEFUN(GMP_PROG_CC_FIND, -[AC_BEFORE([$0], [CC_PROG_CPP]) -ifelse([$1], , gmp_cc_list="gcc cc", gmp_cc_list="[$1]") -ifelse([$2], , gmp_req_64bit_cc="no", gmp_req_64bit_cc="[$2]") - -CC32= -CC64= -for c in $gmp_cc_list; do - # Avoid cache hits. - unset CC - unset ac_cv_prog_CC - AC_CHECK_TOOL(CC, $c, $c) - if test -n "$CC"; then - eval c_flags=\$gmp_cflags_$c - GMP_PROG_CC_WORKS($CC, $c_flags, - gmp_prog_cc_works=yes, - gmp_prog_cc_works=no) - - if test "$gmp_prog_cc_works" != "yes"; then - continue - fi - - # Save first working compiler, whether 32- or 64-bit capable. - if test -z "$CC32"; then - CC32="$CC" - fi - if test "$gmp_req_64bit_cc" = "yes"; then - eval c_flags=\$gmp_cflags64_$c - - # Verify that the compiler works in 64-bit mode as well. - # /usr/ucb/cc on Solaris 7 can *compile* in 64-bit mode, but not link. - GMP_PROG_CC_WORKS($c, $c_flags, - gmp_prog_cc_works=yes, - gmp_prog_cc_works=no) - - if test "$gmp_prog_cc_works" = "yes"; then - GMP_CHECK_CC_64BIT($c, $c_flags) - if test "$gmp_cv_cc_64bit" = "yes"; then - test -z "$CC64" && CC64="$c" - test -z "$CFLAGS64" && CFLAGS64="$c_flags" - # We have CC64 so we're done. - break - fi - fi - else - # We have CC32, and we don't need a 64-bit compiler so we're done. - break - fi - fi -done -CC="$CC32" -])dnl - -dnl GMP_PROG_CC_SELECT -dnl Check that `CC' works with `CFLAGS'. Check if `CC' is a GNU compiler. -dnl Cache the result as `ac_cv_prog_CC'. -AC_DEFUN(GMP_PROG_CC_SELECT, -[AC_BEFORE([$0], [CC_PROG_CPP]) -AC_PROG_CC_WORKS -AC_PROG_CC_GNU - -if test "$ac_cv_prog_gcc" = "yes"; then - GCC=yes -else - GCC= -fi - -# Set CFLAGS if not already set. -if test -z "$CFLAGS"; then - CFLAGS="-g" - if test "$GCC" = "yes"; then - CFLAGS="$CFLAGS -O2" - fi -fi - -AC_SUBST(CC) -AC_CACHE_VAL(ac_cv_prog_CC, ac_cv_prog_CC="$CC") -AC_PROVIDE([AC_PROG_CC]) -])dnl - -dnl GMP_CHECK_CC_64BIT(cc, cflags64) -dnl Find out if `CC' can produce 64-bit code. -dnl Requires NM to be set to nm for target. -dnl FIXME: Cache result. -AC_DEFUN(GMP_CHECK_CC_64BIT, -[ - gmp_tmp_CC_save="$CC" - CC="[$1]" - AC_MSG_CHECKING([whether the C compiler ($CC) is 64-bit capable]) - if test -z "$NM"; then - echo; echo ["configure: $0: fatal: need nm"] - exit 1 - fi - gmp_tmp_CFLAGS_save="$CFLAGS" - CFLAGS="[$2]" - - case "$target" in - hppa2.0*-*-*) - # FIXME: If gcc is installed under another name than "gcc", we will - # test the wrong thing. - if test "$CC" != "gcc"; then - dnl Let compiler version A.10.32.30 or higher be ok. - dnl Bad compiler output: - dnl ccom: HP92453-01 G.10.32.05 HP C Compiler - dnl Good compiler output: - dnl ccom: HP92453-01 A.10.32.30 HP C Compiler - echo >conftest.c - gmp_tmp_vs=`$CC $CFLAGS -V -c -o conftest.o conftest.c 2>&1 | grep "^ccom:"` - rm conftest* - gmp_tmp_v1=`echo $gmp_tmp_vs | sed 's/.* .\.\(.*\)\..*\..* HP C.*/\1/'` - gmp_tmp_v2=`echo $gmp_tmp_vs | sed 's/.* .\..*\.\(.*\)\..* HP C.*/\1/'` - gmp_tmp_v3=`echo $gmp_tmp_vs | sed 's/.* .\..*\..*\.\(.*\) HP C.*/\1/'` - gmp_cv_cc_64bit=no - test -n "$gmp_tmp_v1" && test "$gmp_tmp_v1" -ge "10" \ - && test -n "$gmp_tmp_v2" && test "$gmp_tmp_v2" -ge "32" \ - && test -n "$gmp_tmp_v3" && test "$gmp_tmp_v3" -ge "30" \ - && gmp_cv_cc_64bit=yes - else # gcc - # FIXME: Compile a minimal file and determine if the resulting object - # file is an ELF file. If so, gcc can produce 64-bit code. - # Do we have file(1) for target? - gmp_cv_cc_64bit=no - fi - ;; - mips-sgi-irix6.*) - # We use `-n32' to cc and `-mabi=n32' to gcc, resulting in 64-bit - # arithmetic but not 64-bit pointers, so the general test for sizeof - # (void *) is not valid. - # Simply try to compile an empty main. If that succeeds return - # true. - AC_TRY_COMPILE( , , - gmp_cv_cc_64bit=yes, gmp_cv_cc_64bit=no, - gmp_cv_cc_64bit=no) - ;; - *-*-*) - # Allocate an array of size sizeof (void *) and use nm to determine its - # size. We depend on the first declared variable being put at address 0. - cat >conftest.c <)dnl - gmp_tmp_val=`$NM conftest.o | grep post | sed -e 's;[[][0-9][]]\(.*\);\1;' \ - -e 's;[^1-9]*\([0-9]*\).*;\1;'` - changequote([, ])dnl - if test "$gmp_tmp_val" = "8"; then - gmp_cv_cc_64bit=yes - else - gmp_cv_cc_64bit=no - fi - else - echo "configure: failed program was:" >&AC_FD_CC - cat conftest.$ac_ext >&AC_FD_CC - gmp_cv_cc_64bit=no - fi - rm -f conftest* - ;; - esac - - CC="$gmp_tmp_CC_save" - CFLAGS="$gmp_tmp_CFLAGS_save" - AC_MSG_RESULT($gmp_cv_cc_64bit) -])dnl - -dnl GMP_INIT([M4-DEF-FILE]) -dnl -AC_DEFUN(GMP_INIT, -[ifelse([$1], , gmp_configm4=config.m4, gmp_configm4="[$1]") -gmp_tmpconfigm4=cnfm4.tmp -gmp_tmpconfigm4i=cnfm4i.tmp -gmp_tmpconfigm4p=cnfm4p.tmp -test -f $gmp_tmpconfigm4 && rm $gmp_tmpconfigm4 -test -f $gmp_tmpconfigm4i && rm $gmp_tmpconfigm4i -test -f $gmp_tmpconfigm4p && rm $gmp_tmpconfigm4p -])dnl - -dnl GMP_FINISH -dnl ---------- -dnl Create config.m4 from its accumulated parts. -dnl -dnl __CONFIG_M4_INCLUDED__ is used so that a second or subsequent include -dnl of config.m4 is harmless. -dnl -dnl A separate ifdef on the angle bracket quoted part ensures the quoting -dnl style there is respected. The basic defines from gmp_tmpconfigm4 are -dnl fully quoted but are still put under an ifdef in case any have been -dnl redefined by one of the m4 include files. -dnl -dnl Doing a big ifdef within asm-defs.m4 and/or other macro files wouldn't -dnl work, since it'd interpret parentheses and quotes in dnl comments, and -dnl having a whole file as a macro argument would overflow the string space -dnl on BSD m4. - -AC_DEFUN(GMP_FINISH, -[AC_REQUIRE([GMP_INIT]) -echo "creating $gmp_configm4" -echo ["dnl $gmp_configm4. Generated automatically by configure."] > $gmp_configm4 -if test -f $gmp_tmpconfigm4; then - echo ["changequote(<,>)dnl"] >> $gmp_configm4 - echo ["ifdef(<__CONFIG_M4_INCLUDED__>,,<"] >> $gmp_configm4 - cat $gmp_tmpconfigm4 >> $gmp_configm4 - echo [">)"] >> $gmp_configm4 - echo ["changequote(\`,')dnl"] >> $gmp_configm4 - rm $gmp_tmpconfigm4 -fi -echo ["ifdef(\`__CONFIG_M4_INCLUDED__',,\`"] >> $gmp_configm4 -if test -f $gmp_tmpconfigm4i; then - cat $gmp_tmpconfigm4i >> $gmp_configm4 - rm $gmp_tmpconfigm4i -fi -if test -f $gmp_tmpconfigm4p; then - cat $gmp_tmpconfigm4p >> $gmp_configm4 - rm $gmp_tmpconfigm4p -fi -echo ["')"] >> $gmp_configm4 -echo ["define(\`__CONFIG_M4_INCLUDED__')"] >> $gmp_configm4 -])dnl - -dnl GMP_INCLUDE(FILE) -AC_DEFUN(GMP_INCLUDE, -[AC_REQUIRE([GMP_INIT]) -echo ["include(\`$1')"] >> $gmp_tmpconfigm4i -])dnl - -dnl GMP_SINCLUDE(FILE) -AC_DEFUN(GMP_SINCLUDE, -[AC_REQUIRE([GMP_INIT]) -echo ["sinclude(\`$1')"] >> $gmp_tmpconfigm4i -])dnl - -dnl GMP_DEFINE(MACRO, DEFINITION [, LOCATION]) -dnl [ Define M4 macro MACRO as DEFINITION in temporary file. ] -dnl [ If LOCATION is `POST', the definition will appear after any ] -dnl [ include() directives inserted by GMP_INCLUDE/GMP_SINCLUDE. ] -dnl [ Mind the quoting! No shell variables will get expanded. ] -dnl [ Don't forget to invoke GMP_FINISH to create file config.m4. ] -dnl [ config.m4 uses `<' and '>' as quote characters for all defines. ] -AC_DEFUN(GMP_DEFINE, -[AC_REQUIRE([GMP_INIT]) -echo ['define(<$1>, <$2>)'] >> ifelse([$3], [POST], $gmp_tmpconfigm4p, $gmp_tmpconfigm4) -])dnl - -dnl GMP_DEFINE_RAW(STRING, [, LOCATION]) -dnl [ Put STRING in temporary file. ] -dnl [ If LOCATION is `POST', the definition will appear after any ] -dnl [ include() directives inserted by GMP_INCLUDE/GMP_SINCLUDE. ] -dnl [ Don't forget to invoke GMP_FINISH to create file config.m4. ] -AC_DEFUN(GMP_DEFINE_RAW, -[AC_REQUIRE([GMP_INIT]) -echo [$1] >> ifelse([$2], [POST], $gmp_tmpconfigm4p, $gmp_tmpconfigm4) -])dnl - -dnl GMP_CHECK_ASM_LABEL_SUFFIX -dnl Should a label have a colon or not? -AC_DEFUN(GMP_CHECK_ASM_LABEL_SUFFIX, -[AC_CACHE_CHECK([what assembly label suffix to use], - gmp_cv_check_asm_label_suffix, -[case "$target" in - *-*-hpux*) gmp_cv_check_asm_label_suffix=[""] ;; - *) gmp_cv_check_asm_label_suffix=[":"] ;; -esac -]) -echo ["define(, <\$][1$gmp_cv_check_asm_label_suffix>)"] >> $gmp_tmpconfigm4 -])dnl - -dnl GMP_CHECK_ASM_UNDERSCORE([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) -dnl Shamelessly borrowed from glibc. -AC_DEFUN(GMP_CHECK_ASM_UNDERSCORE, -[AC_CACHE_CHECK([if symbols are prefixed by underscore], - gmp_cv_check_asm_underscore, -[cat > conftest.$ac_ext </dev/null; then - gmp_cv_check_asm_underscore=yes - else - gmp_cv_check_asm_underscore=no - fi -else - echo "configure: failed program was:" >&AC_FD_CC - cat conftest.$ac_ext >&AC_FD_CC -fi -rm -f conftest* -]) -if test "$gmp_cv_check_asm_underscore" = "yes"; then - GMP_DEFINE(GSYM_PREFIX, [_]) - ifelse([$1], , :, [$1]) -else - GMP_DEFINE(GSYM_PREFIX, []) - ifelse([$2], , :, [$2]) -fi -])dnl - -dnl GMP_CHECK_ASM_ALIGN_LOG([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) -dnl Is parameter to `.align' logarithmic? -dnl Requires NM to be set to nm for target. -AC_DEFUN(GMP_CHECK_ASM_ALIGN_LOG, -[AC_REQUIRE([GMP_CHECK_ASM_GLOBL]) -AC_REQUIRE([GMP_CHECK_ASM_DATA]) -AC_REQUIRE([GMP_CHECK_ASM_LABEL_SUFFIX]) -AC_CACHE_CHECK([if .align assembly directive is logarithmic], - gmp_cv_check_asm_align_log, -[if test -z "$NM"; then - echo; echo ["configure: $0: fatal: need nm"] - exit 1 -fi -cat > conftest.s <) - gmp_tmp_val=`$NM conftest.o | grep foo | sed -e 's;[[][0-9][]]\(.*\);\1;' \ - -e 's;[^1-9]*\([0-9]*\).*;\1;'` - changequote([, ])dnl - if test "$gmp_tmp_val" = "10" || test "$gmp_tmp_val" = "16"; then - gmp_cv_check_asm_align_log=yes - else - gmp_cv_check_asm_align_log=no - fi -else - echo "configure: failed program was:" >&AC_FD_CC - cat conftest.s >&AC_FD_CC -fi -rm -f conftest* -]) -GMP_DEFINE_RAW(["define(,<$gmp_cv_check_asm_align_log>)"]) -if test "$gmp_cv_check_asm_align_log" = "yes"; then - ifelse([$1], , :, [$1]) -else - ifelse([$2], , :, [$2]) -fi -])dnl - - -dnl GMP_CHECK_ASM_ALIGN_FILL_0x90 -dnl ----------------------------- -dnl Determine whether a ",0x90" suffix works on a .align directive. -dnl This is only meant for use on x86, where 0x90 is a "nop". -dnl -dnl Old gas, eg. 1.92.3 - needs ",0x90" or else the fill is an invalid 0x00. -dnl New gas, eg. 2.91 - generates the good multibyte nop fills even when -dnl ",0x90" is given. -dnl Solaris 2.6 as - doesn't allow ",0x90", gives a fatal error. -dnl Solaris 2.8 as - gives a warning for ",0x90", no ill effect. -dnl -dnl Note that both solaris "as"s only care about ",0x90" if they actually -dnl have to use it to fill something, hence the .byte in the sample. It's -dnl only the second .align that provokes an error or warning. -dnl -dnl We prefer to suppress the warning from solaris 2.8 to stop anyone -dnl worrying something might be wrong. - -AC_DEFUN(GMP_CHECK_ASM_ALIGN_FILL_0x90, -[AC_CACHE_CHECK([if the .align directive accepts an 0x90 fill in .text], - gmp_cv_check_asm_align_fill_0x90, -[AC_REQUIRE([GMP_CHECK_ASM_TEXT]) -cat > conftest.s <&AC_FD_CC - if echo "$gmp_tmp_val" | grep "Warning: Fill parameter ignored for executable section"; then - echo "Supressing this warning by omitting 0x90" 1>&AC_FD_CC - gmp_cv_check_asm_align_fill_0x90=no - else - gmp_cv_check_asm_align_fill_0x90=yes - fi -else - echo "Non-zero exit code" 1>&AC_FD_CC - echo "$gmp_tmp_val" 1>&AC_FD_CC - gmp_cv_check_asm_align_fill_0x90=no -fi -rm -f conftest* -]) -GMP_DEFINE_RAW( -["define(,<$gmp_cv_check_asm_align_fill_0x90>)"]) -]) - - -dnl GMP_CHECK_ASM_TEXT -AC_DEFUN(GMP_CHECK_ASM_TEXT, -[AC_CACHE_CHECK([how to switch to text section], gmp_cv_check_asm_text, -[case "$target" in - *-*-aix*) - changequote({, }) - gmp_cv_check_asm_text={".csect .text[PR]"} - changequote([, ]) - ;; - *-*-hpux*) gmp_cv_check_asm_text=[".code"] ;; - *) gmp_cv_check_asm_text=[".text"] ;; -esac -]) -echo ["define(, <$gmp_cv_check_asm_text>)"] >> $gmp_tmpconfigm4 -])dnl - -dnl GMP_CHECK_ASM_DATA -dnl Can we say `.data'? -AC_DEFUN(GMP_CHECK_ASM_DATA, -[AC_CACHE_CHECK([how to switch to data section], gmp_cv_check_asm_data, -[case "$target" in - *-*-aix*) - changequote({, }) - gmp_cv_check_asm_data={".csect .data[RW]"} - changequote([, ]) - ;; - *) gmp_cv_check_asm_data=[".data"] ;; -esac -]) -echo ["define(, <$gmp_cv_check_asm_data>)"] >> $gmp_tmpconfigm4 -])dnl - -dnl GMP_CHECK_ASM_GLOBL -dnl Can we say `.global'? -AC_DEFUN(GMP_CHECK_ASM_GLOBL, -[AC_CACHE_CHECK([how to export a symbol], gmp_cv_check_asm_globl, -[case "$target" in - *-*-hpux*) gmp_cv_check_asm_globl=[".export"] ;; - *) gmp_cv_check_asm_globl=[".globl"] ;; -esac -]) -echo ["define(, <$gmp_cv_check_asm_globl>)"] >> $gmp_tmpconfigm4 -])dnl - -dnl GMP_CHECK_ASM_TYPE -dnl Can we say `.type'? -AC_DEFUN(GMP_CHECK_ASM_TYPE, -[AC_CACHE_CHECK([how the .type assembly directive should be used], -gmp_cv_check_asm_type, -[ac_assemble="$CCAS $CFLAGS conftest.s 1>&AC_FD_CC" -for gmp_tmp_prefix in @ \# %; do - echo " .type sym,${gmp_tmp_prefix}function" > conftest.s - if AC_TRY_EVAL(ac_assemble); then - gmp_cv_check_asm_type="[.type \$][1,${gmp_tmp_prefix}\$][2]" - break - fi -done -if test -z "$gmp_cv_check_asm_type"; then - gmp_cv_check_asm_type="[dnl]" -fi -]) -echo ["define(, <$gmp_cv_check_asm_type>)"] >> $gmp_tmpconfigm4 -])dnl - -dnl GMP_CHECK_ASM_SIZE -dnl Can we say `.size'? -AC_DEFUN(GMP_CHECK_ASM_SIZE, -[AC_CACHE_CHECK([if the .size assembly directive works], gmp_cv_check_asm_size, -[ac_assemble="$CCAS $CFLAGS conftest.s 1>&AC_FD_CC" -echo ' .size sym,1' > conftest.s -if AC_TRY_EVAL(ac_assemble); then - gmp_cv_check_asm_size="[.size \$][1,\$][2]" -else - gmp_cv_check_asm_size="[dnl]" -fi -]) -echo ["define(, <$gmp_cv_check_asm_size>)"] >> $gmp_tmpconfigm4 -])dnl - -dnl GMP_CHECK_ASM_LSYM_PREFIX -dnl What is the prefix for a local label? -dnl Requires NM to be set to nm for target. -AC_DEFUN(GMP_CHECK_ASM_LSYM_PREFIX, -[AC_REQUIRE([GMP_CHECK_ASM_LABEL_SUFFIX]) -AC_CACHE_CHECK([what prefix to use for a local label], -gmp_cv_check_asm_lsym_prefix, -[if test -z "$NM"; then - echo; echo ["$0: fatal: need nm"] - exit 1 -fi -ac_assemble="$CCAS $CFLAGS conftest.s 1>&AC_FD_CC" -gmp_cv_check_asm_lsym_prefix="L" -for gmp_tmp_pre in L .L $ L$; do - cat > conftest.s </dev/null 2>&1 - gmp_rc=$? - if test "$gmp_rc" != "0"; then - echo "configure: $NM failure, using default" - break - fi - if $NM conftest.o | grep gurkmacka >/dev/null; then true; else - gmp_cv_check_asm_lsym_prefix="$gmp_tmp_pre" - break - fi - else - echo "configure: failed program was:" >&AC_FD_CC - cat conftest.s >&AC_FD_CC - # Use default. - fi -done -rm -f conftest* -]) -echo ["define(, <${gmp_cv_check_asm_lsym_prefix}>)"] >> $gmp_tmpconfigm4 -]) - -dnl GMP_CHECK_ASM_W32 -dnl How to [define] a 32-bit word. -dnl Requires NM to be set to nm for target. -AC_DEFUN(GMP_CHECK_ASM_W32, -[AC_REQUIRE([GMP_CHECK_ASM_DATA]) -AC_REQUIRE([GMP_CHECK_ASM_GLOBL]) -AC_REQUIRE([GMP_CHECK_ASM_LABEL_SUFFIX]) -AC_CACHE_CHECK([how to [define] a 32-bit word], - gmp_cv_check_asm_w32, -[if test -z "$NM"; then - echo; echo ["configure: $0: fatal: need nm"] - exit 1 -fi - -# FIXME: HPUX puts first symbol at 0x40000000, breaking our assumption -# that it's at 0x0. We'll have to declare another symbol before the -# .long/.word and look at the distance between the two symbols. The -# only problem is that the sed expression(s) barfs (on Solaris, for -# example) for the symbol with value 0. For now, HPUX uses .word. - -case "$target" in - *-*-hpux*) - gmp_cv_check_asm_w32=".word" - ;; - *-*-*) - ac_assemble="$CCAS $CFLAGS conftest.s 1>&AC_FD_CC" - for gmp_tmp_op in .long .word; do - cat > conftest.s <) - gmp_tmp_val=`$NM conftest.o | grep foo | sed -e 's;[[][0-9][]]\(.*\);\1;' \ - -e 's;[^1-9]*\([0-9]*\).*;\1;'` - changequote([, ])dnl - if test "$gmp_tmp_val" = "4"; then - gmp_cv_check_asm_w32="$gmp_tmp_op" - break - fi - fi - done - ;; -esac - -if test -z "$gmp_cv_check_asm_w32"; then - echo; echo ["configure: $0: fatal: do not know how to define a 32-bit word"] - exit 1 -fi -rm -f conftest* -]) -echo ["define(, <$gmp_cv_check_asm_w32>)"] >> $gmp_tmpconfigm4 -]) - -dnl GMP_CHECK_ASM_MMX([ACTION-IF-FOUND, [ACTION-IF-NOT-FOUND]]) -dnl Can we assemble MMX insns? -AC_DEFUN(GMP_CHECK_ASM_MMX, -[AC_REQUIRE([GMP_CHECK_ASM_TEXT]) -AC_CACHE_CHECK([if the assembler knows about MMX instructions], - gmp_cv_check_asm_mmx, -[cat > conftest.s < conftest.s <conftest.c <