See ChangeLog: Tue Jun 1 16:01:46 CEST 1999 Werner Koch
[gnupg.git] / mpi / config.links
index e48cf7a..376d42b 100644 (file)
 # this should set $mpi_ln_src and mpi_ln_dst.
 # Note: this is called from the above directory.
 
-echo '# created by config.links - do not edit' >./mpi/asm-syntax.h
 
+mpi_extra_modules=
+mpi_sflags=
+
+test -d ./mpi || mkdir ./mpi
+
+echo '/* created by config.links - do not edit */' >./mpi/asm-syntax.h
+
+if test "$try_asm_modules" = "yes" ; then
 case "${target}" in
-    i[3456]86*-*-*)
+    i[34]86*-*-freebsd*-elf | i[34]86*-*-freebsd[34]* | i[34]86*-*-freebsdelf*)
+       echo '#define ELF_SYNTAX' >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/i386/syntax.h     >>./mpi/asm-syntax.h
+       path="i386"
+       ;;
+    i[56]86*-*-freebsd*-elf | i[56]86*-*-freebsd[34]* | i[56]86*-*-freebsdelf*)
+       echo '#define ELF_SYNTAX' >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/i386/syntax.h     >>./mpi/asm-syntax.h
+       path="i586 i386"
+       ;;
+    i[34]86*-*-linuxaout* | i[34]86*-*-linuxoldld* | i[34]86*-*-*bsd*)
+       echo '#define BSD_SYNTAX' >>./mpi/asm-syntax.h
+       echo '#define X86_BROKEN_ALIGN' >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/i386/syntax.h      >>./mpi/asm-syntax.h
+       path="i386"
+       ;;
+    i[56]86*-*-linuxaout* | i[56]86*-*-linuxoldld* | i[56]86*-*-*bsd*)
+       echo '#define BSD_SYNTAX' >>./mpi/asm-syntax.h
+       echo '#define X86_BROKEN_ALIGN' >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/i386/syntax.h      >>./mpi/asm-syntax.h
+       path="i586 i386"
+       ;;
+    i[34]86*-*-*)
        echo '#define ELF_SYNTAX' >>./mpi/asm-syntax.h
-       echo '#include "./i386/syntax.h"' >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/i386/syntax.h      >>./mpi/asm-syntax.h
        path="i386"
        ;;
     i[56]86*-*-* | pentium-*-* | pentiumpro-*-*)
        echo '#define ELF_SYNTAX' >>./mpi/asm-syntax.h
-       echo '#include "./i586/syntax.h"' >>./mpi/asm-syntax.h
-       path="i586"
+       cat  $srcdir/mpi/i386/syntax.h      >>./mpi/asm-syntax.h
+       path="i586 i386"
+       ;;
+    alpha*-*-*)
+       echo '/* configured for alpha */' >>./mpi/asm-syntax.h
+       path="alpha"
+       mpi_extra_modules="udiv-qrnnd"
+       ;;
+    hppa7000*-*-*)
+       echo '/* configured for HPPA (pa7000) */' >>./mpi/asm-syntax.h
+       path="hppa1.1 hppa"
+       mpi_extra_modules="udiv-qrnnd"
+       ;;
+    hppa1.0*-*-*)
+       echo '/* configured for HPPA 1.0 */' >>./mpi/asm-syntax.h
+       path="hppa"
+       mpi_extra_modules="udiv-qrnnd"
+       ;;
+    hppa*-*-*) # assume pa7100
+       echo '/* configured for HPPA (pa7100) */' >>./mpi/asm-syntax.h
+       path="pa7100 hppa1.1 hppa"
+       mpi_extra_modules="udiv-qrnnd"
+       ;;
+    sparc9*-*-* | sparc64*-*-* | ultrasparc*-*-*)
+       echo '/* configured for sparc9 or higher */' >>./mpi/asm-syntax.h
+       path="sparc32v8 sparc32"
+       ;;
+    sparc8*-*-* | microsparc*-*-*)
+       echo '/* configured for sparc8 */' >>./mpi/asm-syntax.h
+       path="sparc32v8"
+       ;;
+    supersparc*-*-*)
+       echo '/* configured for supersparc */' >>./mpi/asm-syntax.h
+       path="supersparc sparc32v8 sparc32"
+       mpi_extra_modules="udiv"
+       ;;
+    sparc*-*-*)
+       echo '/* configured for sparc */' >>./mpi/asm-syntax.h
+       path="sparc32"
+       mpi_extra_modules="udiv"
+       ;;
+    mips[34]*-*-* | mips*-*-irix6*)
+       echo '/* configured for MIPS3 */' >>./mpi/asm-syntax.h
+       path="mips3"
+       ;;
+    mips*-*-*)
+       echo '/* configured for MIPS2 */' >>./mpi/asm-syntax.h
+       path="mips2"
+       ;;
+
+    # 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'           >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/m68k/syntax.h      >>./mpi/asm-syntax.h
+       path="m68k/mc68020 m68k"
        ;;
+    m68060*-*-linuxaout*)
+       echo '#define MIT_SYNTAX'           >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/m68k/syntax.h      >>./mpi/asm-syntax.h
+       path="m68k"
+       ;;
+    m680[234]0*-*-linux* | m68k*-*-linux*)
+       echo '#define ELF_SYNTAX'           >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/m68k/syntax.h      >>./mpi/asm-syntax.h
+       ;;
+    m68060*-*-linux*)
+       echo '#define ELF_SYNTAX'           >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/m68k/syntax.h      >>./mpi/asm-syntax.h
+       path="m68k"
+       ;;
+    m68k-atari-mint)
+       echo '#define MIT_SYNTAX'           >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/m68k/syntax.h      >>./mpi/asm-syntax.h
+       path="m68k/mc68020 m68k"
+       ;;
+    m68000*-*-* | m68060*-*-*)
+       echo '#define MIT_SYNTAX'           >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/m68k/syntax.h      >>./mpi/asm-syntax.h
+       path="m68k/mc68000"
+       ;;
+    m680[234]0*-*-* | m68k*-*-*)
+       echo '#define MIT_SYNTAX'           >>./mpi/asm-syntax.h
+       cat  $srcdir/mpi/m68k/syntax.h      >>./mpi/asm-syntax.h
+       path="m68k/mc68020 m68k"
+       ;;
+
+    powerpc*-*-linux*)
+       echo '/* configured for powerpc/ELF */' >>./mpi/asm-syntax.h
+       echo '#define ELF_SYNTAX'               >>./mpi/asm-syntax.h
+       cat   $srcdir/mpi/powerpc32/syntax.h    >>./mpi/asm-syntax.h
+       path="powerpc32"
+       ;;
+    rs6000-*-aix[456789]* | rs6000-*-aix3.2.[456789])
+       mpi_sflags="-Wa,-mpwr"
+       path="power"
+       mpi_extra_modules="udiv-w-sdiv"
+       ;;
+    rs6000-*-* | power-*-* | power2-*-*)
+       mpi_sflags="-Wa,-mppc"
+       path="power"
+       mpi_extra_modules="udiv-w-sdiv"
+       ;;
+    ppc601-*-*)
+       mpi_sflags="-Wa,-mppc"
+       path="power powerpc32"
+       ;;
+    ppc60[234]*-*-* | powerpc*-*-*)
+       mpi_sflags="-Wa,-mppc"
+       path="powerpc32"
+       ;;
+    ppc620-*-* | powerpc64*-*-*)
+       mpi_sflags="-Wa,-mppc"
+       path="powerpc64"
+       ;;
+
     *)
        echo '/* No assembler modules configured */' >>./mpi/asm-syntax.h
        path=""
        ;;
 esac
+else
+    echo '/* Assembler modules disabled on request */' >>./mpi/asm-syntax.h
+    path=""
+fi
+
+
+# Make sysdep.h
+echo '/* created by config.links - do not edit */' >./mpi/sysdep.h
+if test x$ac_cv_sys_symbol_underscore = xyes; then
+    cat <<EOF >>./mpi/sysdep.h
+#if __STDC__
+#define C_SYMBOL_NAME(name) _##name
+#else
+#define C_SYMBOL_NAME(name) _/**/name
+#endif
+EOF
+else
+    cat <<EOF >>./mpi/sysdep.h
+#define C_SYMBOL_NAME(name) name
+EOF
+fi
 
 
 # fixme: grep these modules from Makefile.in
-mpi_ln_modules="mpih-add1 mpih-mul1 mpih-mul2 mpih-mul3 \
-                mpih-shift mpih-sub1"
+mpi_ln_modules="${mpi_extra_modules} mpih-add1 mpih-mul1 mpih-mul2 mpih-mul3 \
+                mpih-lshift mpih-rshift mpih-sub1"
 
 mpi_ln_objects=
 mpi_ln_src=
@@ -36,12 +199,12 @@ path="$path generic"
 for fn in $mpi_ln_modules ; do
     mpi_ln_objects="$mpi_ln_objects $fn.o"
     for dir in $path ; do
-       rm -f ./mpi/$fn.[Sc]
-       if test -f ./mpi/$dir/$fn.S ; then
+       rm -f $srcdir/mpi/$fn.[Sc]
+       if test -f $srcdir/mpi/$dir/$fn.S ; then
            mpi_ln_src="$mpi_ln_src mpi/$dir/$fn.S"
            mpi_ln_dst="$mpi_ln_dst mpi/$fn.S"
            break;
-       elif test -f ./mpi/$dir/$fn.c ; then
+       elif test -f $srcdir/mpi/$dir/$fn.c ; then
            mpi_ln_src="$mpi_ln_src mpi/$dir/$fn.c"
            mpi_ln_dst="$mpi_ln_dst mpi/$fn.c"
            break;