# sourced my ../configure to get the list of files to link # this should set $mpi_ln_src and mpi_ln_dst. # Note: this is called from the above directory. mpi_extra_modules= test -d ./mpi || mkdir ./mpi echo '/* created by config.links - do not edit */' >./mpi/asm-syntax.h case "${target}" in i[34]86*-*-linuxaout* | i[34]86*-*-linuxoldld* | i[34]86*-*-*bsd*) echo '#define BSD_SYNTAX' >>./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 cat $srcdir/mpi/i386/syntax.h >>./mpi/asm-syntax.h path="i586 i386" ;; i[34]86*-*-*) echo '#define ELF_SYNTAX' >>./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 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" ;; *) echo '/* No assembler modules configured */' >>./mpi/asm-syntax.h path="" ;; esac case "${target}" in *-*-linuxaout* | *-*-linuxoldld*) needs_underscore="y" ;; *-*-linux* | *-sysv* | *-solaris* | *-gnu*) needs_underscore="n" ;; *) needs_underscore="y" ;; esac # Make sysdep.h echo '/* created by config.links - do not edit */' >./mpi/sysdep.h if test "$needs_underscore" = "y" ; then cat <>./mpi/sysdep.h #if __STDC__ #define C_SYMBOL_NAME(name) _##name #else #define C_SYMBOL_NAME(name) _/**/name #endif EOF else cat <>./mpi/sysdep.h #define C_SYMBOL_NAME(name) name EOF fi # fixme: grep these modules from Makefile.in mpi_ln_modules="${mpi_extra_modules} mpih-add1 mpih-mul1 mpih-mul2 mpih-mul3 \ mpih-shift mpih-sub1" mpi_ln_objects= mpi_ln_src= mpi_ln_dst= # try to get file to link from the assembler subdirectory and # if this fails get it from the generic subdirectory. 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 $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 $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; fi done done