freebsd-dev/contrib/libgmp/mpn/configure.in
Mark Murray aa9bc17601 Clean import of libgmp 2.0.2, with only the non-x86 bits removed.
BMakefiles and other bits will follow.

Requested by:	Andrey Chernov
Made world by:	Chuck Robey
1996-10-20 08:49:26 +00:00

179 lines
5.9 KiB
Plaintext

# This file is a shell script fragment that supplies the information
# necessary for a configure script to process the program in
# this directory. For more information, look at ../configure.
configdirs=
srctrigger=powerpc32
srcname="GNU Multi-Precision library/mpn"
# per-host:
# per-target:
case "${target}" in
sparc9*-*-* | sparc64*-*-* | ultrasparc*-*-*)
#path="sparc64" ;; Don't use this until compilers are ready
path="sparc32/v8 sparc" ;;
sparc8*-*-* | microsparc*-*-*)
path="sparc32/v8 sparc" ;;
supersparc*-*-*)
path="sparc32/v8/supersparc sparc32/v8 sparc"
extra_functions="udiv" ;;
sparc*-*-*) path="sparc32"
if [ x$floating_point = xno ]
then extra_functions="udiv_nfp"
else extra_functions="udiv_fp"
fi
;;
hppa7000*-*-*) path="hppa/hppa1_1 hppa"; extra_functions="udiv_qrnnd" ;;
hppa1.0*-*-*) path="hppa"; extra_functions="udiv_qrnnd" ;;
hppa*-*-*) # assume pa7100
path="hppa/hppa1_1/pa7100 hppa/hppa1_1 hppa"
extra_functions="udiv_qrnnd" ;;
cray2-cray-unicos* | [xy]mp-cray-unicos* | [ctj]90-cray-unicos*)
path="cray" ;;
alphaev5-*-*) path="alpha/ev5 alpha"; extra_functions="udiv_qrnnd" ;;
alpha*-*-*) path="alpha"; extra_functions="udiv_qrnnd" ;;
am29000*-*-*) path="am29000" ;;
a29k*-*-*) path="am29000" ;;
# Intel x86 configurations
i[34]86*-*-linuxaout* | i[34]86*-*-linuxoldld* | \
i[34]86*-*-*bsd*) # x86 running BSD or Linux with a.out
echo '#define BSD_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/x86/syntax.h"' >>asm-syntax.h
path="x86" ;;
i[56]86*-*-linuxaout* | pentium-*-linuxaout* | pentiumpro-*-linuxaout* | \
i[56]86*-*-linuxoldld* | pentium-*-linuxoldld* | pentiumpro-*-linuxoldld* | \
i[56]86*-*-*bsd* | pentium-*-*bsd* | pentiumpro-*-*bsd*)
echo '#define BSD_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/x86/syntax.h"' >>asm-syntax.h
path="x86/pentium x86" ;;
i[34]86*-*-*) # x86 with ELF/SysV format
echo '#define ELF_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/x86/syntax.h"' >>asm-syntax.h
path="x86" ;;
i[56]86*-*-* | pentium-*-* | pentiumpro-*-*) # x86 with ELF/SysV format
echo '#define ELF_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/x86/syntax.h"' >>asm-syntax.h
path="x86/pentium x86" ;;
# Motorola 68k configurations. Let m68k mean 68020-68040.
# mc68000 or mc68060 configurations need to be specified explicitly
m680[234]0*-*-linuxaout* | m68k*-*-linuxaout*)
echo '#define MIT_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/m68k/syntax.h"' >>asm-syntax.h
path="m68k/mc68020 m68k" ;;
m68060*-*-linuxaout*)
echo '#define MIT_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/m68k/syntax.h"' >>asm-syntax.h
path="m68k" ;;
m680[234]0*-*-linux* | m68k*-*-linux*)
echo '#define ELF_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/m68k/syntax.h"' >>asm-syntax.h
path="m68k/mc68020 m68k" ;;
m68060*-*-linux*)
echo '#define ELF_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/m68k/syntax.h"' >>asm-syntax.h
path="m68k" ;;
m68000*-*-* | m68060*-*-*)
echo '#define MIT_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/m68k/syntax.h"' >>asm-syntax.h
path="m68k/mc68000" ;;
m680[234]0*-*-* | m68k*-*-*)
echo '#define MIT_SYNTAX' >asm-syntax.h
echo '#include "'$srcdir'/m68k/syntax.h"' >>asm-syntax.h
path="m68k/mc68020 m68k" ;;
i960*-*-*) path="i960" ;;
m88k*-*-* | m88k*-*-*) path="m88k" ;;
m88110*-*-*) path="m88k/mc88110 m88k" ;;
ns32k*-*-*) path="n32k" ;;
ppc601-*-*) path="power powerpc32" ;;
ppc620-*-* | powerpc64*-*-*) path="powerpc64" ;;
ppc60[234]*-*-* | powerpc*-*-*) path="powerpc32" ;;
pyramid-*-*) path="pyr" ;;
rs6000-*-* | power-*-* | power2-*-*)
path="power"; extra_functions="udiv_w_sdiv" ;;
sh-*-*) path="sh" ;;
sh2-*-*) path="sh/sh2 sh" ;;
mips[34]*-*-*) path="mips3" ;;
mips*-*-irix6*) path="mips3" ;;
mips*-*-*) path="mips2" ;;
vax*-*-*) path="vax"; extra_functions="udiv_w_sdiv" ;;
z8000x*-*-*) path="z8000x"; extra_functions="udiv_w_sdiv" ;;
z8000*-*-*) path="z8000"; extra_functions="udiv_w_sdiv" ;;
clipper*-*-*) path="clipper" ;;
*-*-*) ;;
esac
case "${target}" in
*-*-linuxaout* | *-*-linuxoldld*) config=bsd.h ;;
*-sysv* | *-solaris* | *-*-linux*) config="sysv.h" ;;
*) config="bsd.h" ;;
esac
case "${target}" in
i[3456]86*-*-*bsd* | i[3456]86*-*-linuxaout* | i[3456]86*-*-linuxoldld* | \
pentium-*-*bsd* | pentium-*-linuxaout* | pentium-*-linuxoldld* | \
pentiumpro-*-*bsd* | pentiumpro-*-linuxaout* | pentiumpro-*-linuxoldld*)
target_makefile_frag=config/t-oldgas ;;
rs6000-*-aix[456789]* | rs6000-*-aix3.2.[456789])
target_makefile_frag=config/t-pwr-aix ;;
ppc601-*-aix[456789]* | ppc601-*-aix3.2.[456789] | \
ppc60[234]*-*-aix[456789]* | ppc60[234]*-*-aix3.2.[456789] | \
powerpc*-*-aix[456789]* | powerpc*-*-aix3.2.[456789])
target_makefile_frag=config/t-ppc-aix ;;
esac
functions="${extra_functions} inlines add_n addmul_1 cmp divmod_1 \
divrem divrem_1 dump lshift mod_1 mul mul_1 mul_n random2 rshift sqrtrem \
sub_n submul_1 get_str set_str scan0 scan1 popcount hamdist gcd_1 \
pre_mod_1 perfsqr bdivmod gcd gcdext"
path="$path generic"
mpn_objects=
for fn in $functions ; do
mpn_objects="$mpn_objects $fn.o"
for dir in $path ; do
rm -f $fn.[Ssc]
if test -f $srcdir/$dir/$fn.S ; then
files="$files $dir/$fn.S"
links="$links $fn.S"
break
elif test -f $srcdir/$dir/$fn.s ; then
files="$files $dir/$fn.s"
links="$links $fn.s"
break
elif test -f $srcdir/$dir/$fn.c ; then
files="$files $dir/$fn.c"
links="$links $fn.c"
break
fi
done
done
for dir in $path ; do
rm -f gmp-mparam.h
if test -f $srcdir/$dir/gmp-mparam.h ; then
files="$files $dir/gmp-mparam.h"
links="$links gmp-mparam.h"
break
fi
done
links="sysdep.h $links"
files="$config $files"
mpn_links=$links
# post-target:
sed <Makefile >Makefile.tmp \
-e "s/MPN_LINKS = .*/MPN_LINKS =${mpn_links}/" \
-e "s/MPN_OBJECTS = .*/MPN_OBJECTS =${mpn_objects}/"
mv Makefile.tmp Makefile