[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.1-156-gffcc490

Service Account noreply at mpich.org
Tue Apr 15 16:40:01 CDT 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "MPICH primary repository".

The branch, master has been updated
       via  ffcc4904c225bbf1349d23e1099218de5287fe5a (commit)
       via  2957c845ff61e0dd334e93de137d966c66a7654b (commit)
       via  5661cf2b348626fa9db0ee7561f3f66a47b7fd8a (commit)
      from  59afcee791229fa9293ac1aba1d1b2fd02537b30 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.mpich.org/mpich.git/commitdiff/ffcc4904c225bbf1349d23e1099218de5287fe5a

commit ffcc4904c225bbf1349d23e1099218de5287fe5a
Author: Pavan Balaji <balaji at mcs.anl.gov>
Date:   Sat Apr 12 20:55:30 2014 -0500

    Create a dummy function that calls all ROMIO public symbols.
    
    All ROMIO public symbols are being added into the libromio convenience
    library, which is LIBADD'ed into libmpi.  The correct behavior would
    be for libtool to add -Wl,--whole-archive to the link line, thus
    forcing all symbols in libromio to end up in libmpi.  However, in some
    cases, this is not working out correctly.  For example, with the
    Absoft compiler, the linker flags were being reordered thus causing
    the -Wl,--whole-archive flag to not correspond to libromio.
    Consequently, only symbols that were used from within the other
    functions of libmpi were being included.
    
    For example, Absoft's linker reordering is below:
    
    ----8<----
    % af77 -v -shared -fPIC src/mpi/attr/.libs/lib_libmpi_la-attrutil.o src/mpi_t/.libs/lib_libmpi_la-pvar_write.o \
      -Wl,--whole-archive src/mpi/romio/.libs/libromio.a -Wl,--no-whole-archive  \
      -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/src/mpl/.libs \
      -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/src/openpa/src/.libs \
      -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/install/lib \
      -L/sandbox/balaji/build-absoft/src/mpl -L/sandbox/balaji/build-absoft/src/openpa/src \
      /sandbox/balaji/build-absoft/src/mpl/.libs/libmpl.so /sandbox/balaji/build-absoft/src/openpa/src/.libs/libopa.so \
      -lrt -lpthread  -O0   -Wl,-soname -Wl,libmpi.so.12 -o lib/.libs/libmpi.so.12.0.0
    
    gcc src/mpi/attr/.libs/lib_libmpi_la-attrutil.o src/mpi_t/.libs/lib_libmpi_la-pvar_write.o \
        /sandbox/balaji/build-absoft/src/mpl/.libs/libmpl.so /sandbox/balaji/build-absoft/src/openpa/src/.libs/libopa.so \
        -L/soft/com/packages/absoft11.0/shlib64 -Wl,--whole-archive -Wl,--no-whole-archive \
        -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/src/mpl/.libs \
        -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/src/openpa/src/.libs \
        -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/install/lib \
        -L/sandbox/balaji/build-absoft/src/mpl -L/sandbox/balaji/build-absoft/src/openpa/src \
        -Wl,-soname -Wl,libmpi.so.12 -shared -o lib/.libs/libmpi.so.12.0.0 src/mpi/romio/.libs/libromio.a \
        -lrt -lpthread -laf90math -lafio -lamisc -laf77math -lm -lmv
    ----8<----
    
    In the past, we got lucky in two ways:
    
    1. We were including all the Fortran 77 symbols into libmpi.  Since
    the Fortran symbols were calling the C ROMIO symbols, those ROMIO
    symbols were pulled in even without -Wl,--whole-archive.
    
    2. The problem only showed up with absoft and nag, both of which are
    Fortran-only compilers.  If a C compiler has this issue, it should
    have shown up when Fortran support is disabled.
    
    Signed-off-by: Ken Raffenetti <raffenet at mcs.anl.gov>

diff --git a/.gitignore b/.gitignore
index 6df55fc..4da8b8b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -184,6 +184,7 @@ Makefile.am-stamp
 /src/include/mpichinfo.h
 /src/packaging/envmods/mpich.module
 /src/packaging/pkgconfig/mpich.pc
+/src/glue/romio/all_romio_symbols.c
 
 # stamp "witness" files from the new build system
 /src/binding/fortran/use_mpi/buildiface.stamp
diff --git a/autogen.sh b/autogen.sh
index eb07ad8..d1e7d93 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -656,6 +656,15 @@ if [ "X$do_subcfg_m4" = Xyes ] ; then
     echo "done"
 fi
 
+
+########################################################################
+## Building ROMIO glue code
+########################################################################
+echo_n "Building ROMIO glue code... "
+( cd src/glue/romio && chmod a+x ./all_romio_symbols && ./all_romio_symbols ../../mpi/romio/include/mpio.h.in )
+echo "done"
+
+
 ########################################################################
 ## Building non-C interfaces
 ########################################################################
diff --git a/src/glue/romio/Makefile.mk b/src/glue/romio/Makefile.mk
index 7afc8a0..f93323c 100644
--- a/src/glue/romio/Makefile.mk
+++ b/src/glue/romio/Makefile.mk
@@ -7,3 +7,4 @@
 
 mpi_core_sources += src/glue/romio/glue_romio.c
 
+mpi_sources += src/glue/romio/all_romio_symbols.c
diff --git a/src/glue/romio/all_romio_symbols b/src/glue/romio/all_romio_symbols
new file mode 100755
index 0000000..9ee6736
--- /dev/null
+++ b/src/glue/romio/all_romio_symbols
@@ -0,0 +1,205 @@
+#! /usr/bin/env perl
+#
+# (C) 2014 by Argonne National Laboratory.
+#     See COPYRIGHT in top-level directory.
+#
+
+use warnings;
+use strict;
+
+# Check to make sure the file was passed in as a parameter
+if ($#ARGV != 0) {
+    print "Usage: buildiface <filename>\n";
+    exit 1;
+}
+
+open(FD, $ARGV[0]) || die "Could not open file " . $ARGV[0];
+
+while (<FD>) {
+    if (/\/\*\s*Begin Prototypes/) { last; }
+}
+
+my $eol = 1;
+my $fullline = "";
+my $tab = "    ";
+my $retarg;
+my $routine;
+my $args;
+my @arglist;
+my $fname;
+my $cdesc_routine;
+my $x;
+my $y;
+my @argbits;
+my $num_dtypes;
+my @dtype_bind;
+my $io_header;
+my $make_exists = 0;
+
+open(OUTFD, ">all_romio_symbols.c") || die "Could not open file all_romio_symbols.c";
+print OUTFD <<EOT;
+/* -*- Mode: C; c-basic-offset:4 ; -*- */
+/*
+ *  (C) 2014 by Argonne National Laboratory.
+ *      See COPYRIGHT in top-level directory.
+ *
+ * This file is automatically generated by buildiface
+ * DO NOT EDIT
+ */
+
+/*
+ * This file is created for the sole purpose of referencing all the symbols
+ * in ROMIO.
+ *
+ * All ROMIO public symbols are being added into the libromio convenience
+ * library, which is LIBADD'ed into libmpi.  The correct behavior would
+ * be for libtool to add -Wl,--whole-archive to the link line, thus
+ * forcing all symbols in libromio to end up in libmpi.  However, in some
+ * cases, this is not working out correctly.  For example, with the
+ * Absoft compiler, the linker flags were being reordered thus causing
+ * the -Wl,--whole-archive flag to not correspond to libromio.
+ * Consequently, only symbols that were used from within the other
+ * functions of libmpi were being included.
+ *
+ * In the past, we got lucky in two ways:
+ *
+ * 1. We were including all the Fortran 77 symbols into libmpi.  Since
+ * the Fortran symbols were calling the C ROMIO symbols, those ROMIO
+ * symbols were pulled in even without -Wl,--whole-archive.
+ *
+ * 2. The problem only showed up with absoft and nag, both of which are
+ * Fortran-only compilers.  If a C compiler has this issue, it should
+ * have shown up when Fortran support is disabled.
+ */
+
+#include <stdio.h>
+#include "mpi.h"
+
+void MPIR_All_romio_symbols(void);
+void MPIR_All_romio_symbols(void)
+{
+#ifdef MPI_MODE_RDONLY
+EOT
+
+while (<FD>) {
+    if (/\/\*\s*End Prototypes/) { last; }
+
+    if (/\/\*\s*Begin Skip Prototypes/) {
+        while (<FD>) {
+            if (/\/\*\s*End Skip Prototypes/) { last; }
+        }
+    }
+
+    # If we found a semi-colon at the end, that's the end of the line.
+    # This is not perfect (e.g., does not work when a single line has
+    # multiple semi-colon separated statements), but should be good
+    # enough for the MPICH mpi.h file
+    if (/.*;/) { $eol = 1; }
+    else { $eol = 0; }
+
+    chomp($_);
+    $fullline .= "$_";
+    if ($eol == 0) { next; }
+
+    # We got the entire prototype in a single line
+
+    # parse out comments
+    $fullline =~ s+/\*.*\*/++g;
+
+    # parse out attributes
+    $fullline =~ s/MPICH_ATTR_WEAK_ALIAS\(.*\)//g;
+    $fullline =~ s/MPICH_ATTR_POINTER_WITH_TYPE_TAG\(.*\)//g;
+
+    # cleanup pointer format
+    $fullline =~ s/\s*\*/* /g;
+
+    # parse out unnecessary spaces
+    $fullline =~ s/^\s*//g;
+    $fullline =~ s/\s*$//g;
+    $fullline =~ s/\s*;/;/g;
+    $fullline =~ s/\s\s*/ /g;
+
+    # split the line into the return type, routine name, and arguments
+    $fullline =~ m/([^ ]*) ([^(]*)\((.*)\)/;
+    $retarg = $1;
+    $routine = $2;
+    $args = $3;
+
+    # cleanup args
+    $args =~ s/^\s*//g;
+    $args =~ s/\s*$//g;
+
+    @arglist = split(/,/, $args);
+
+    for ($x = 0; $x <= $#arglist; $x++) {
+	$arglist[$x] =~ s/^\s*//g;
+	$arglist[$x] =~ s/\s*$//g;
+    }
+
+    print OUTFD "${tab}{\n";
+    for ($x = 0; $x <= $#arglist; $x++) {
+	print OUTFD "${tab}${tab}$arglist[$x]";
+	if ($arglist[$x] =~ /\*/) {
+	    print OUTFD " = NULL;\n";
+	}
+	elsif ($arglist[$x] =~ /MPI_Comm/) {
+	    print OUTFD " = MPI_COMM_NULL;\n";
+	}
+	elsif ($arglist[$x] =~ /MPI_Info/) {
+	    print OUTFD " = MPI_INFO_NULL;\n";
+	}
+	elsif ($arglist[$x] =~ /MPI_File/) {
+	    print OUTFD " = MPI_FILE_NULL;\n";
+	}
+	elsif ($arglist[$x] =~ /MPI_Datatype/) {
+	    print OUTFD " = MPI_DATATYPE_NULL;\n";
+	}
+	elsif ($arglist[$x] =~ /MPI_Errhandler/) {
+	    print OUTFD " = MPI_ERRHANDLER_NULL;\n";
+	}
+	elsif ($arglist[$x] =~ /MPI_Offset/) {
+	    print OUTFD " = 0;\n";
+	}
+	elsif ($arglist[$x] =~ /int/) {
+	    print OUTFD " = 0;\n";
+	}
+	else {
+	    print "$arglist[$x]\n";
+	    print OUTFD ";\n";
+	}
+    }
+    print OUTFD "\n${tab}${tab}$routine(";
+    for ($x = 0; $x <= $#arglist; $x++) {
+	@argbits = split(/ /, $arglist[$x]);
+
+	if ($x < $#arglist) {
+	    print OUTFD "$argbits[$#argbits], ";
+	}
+	else {
+	    print OUTFD "$argbits[$#argbits]);\n";
+	}
+    }
+    print OUTFD "${tab}}\n\n";
+
+    $fullline = "";
+}
+
+# A few symbols are not in mpio.h
+print OUTFD <<EOT;
+    {
+        MPI_Fint fh = 0;
+
+        MPI_File_f2c(fh);
+    }
+
+    {
+        MPI_File fh = MPI_FILE_NULL;
+
+        MPI_File_c2f(fh);
+    }
+#endif /* MPI_MODE_RDONLY */
+}
+EOT
+
+close FD;
+close OUTFD;

http://git.mpich.org/mpich.git/commitdiff/2957c845ff61e0dd334e93de137d966c66a7654b

commit 2957c845ff61e0dd334e93de137d966c66a7654b
Author: Pavan Balaji <balaji at mcs.anl.gov>
Date:   Tue Apr 15 00:12:16 2014 -0500

    Cleanup the symbol management to go into the right library.
    
    We were adding both the ROMIO MPI_ and PMPI_ symbols into the
    external_libs variable, which end up in the same library.  This patch
    separates them out.  It also cleans up the variables to which other
    libtool libraries (such as the debug library) are added.
    
    Signed-off-by: Ken Raffenetti <raffenet at mcs.anl.gov>

diff --git a/Makefile.am b/Makefile.am
index fc9e804..8576409 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -50,6 +50,8 @@ errnames_txt_files =
 external_subdirs = @mplsrcdir@ @opasrcdir@
 external_ldflags = -L at mpllibdir@ -L at opalibdir@
 external_libs = -l at MPLLIBNAME@ -l at OPALIBNAME@
+mpi_convenience_libs =
+pmpi_convenience_libs =
 
 # NOTE on our semi-unconventional usage of DIST_SUBDIRS:
 # The automake manual recommends thinking of DIST_SUBDIRS as the list of all
@@ -137,48 +139,35 @@ mpi_core_sources =
 
 lib_LTLIBRARIES =
 
-if BUILD_PROFILING_LIB
-lib_lib at PMPILIBNAME@_la_LIBADD =
-endif BUILD_PROFILING_LIB
-
-lib_lib at MPILIBNAME@_la_SOURCES =
-lib_lib at MPILIBNAME@_la_LDFLAGS =
-lib_lib at MPILIBNAME@_la_CPPFLAGS =
-lib_lib at MPILIBNAME@_la_LIBADD =
-
-if BUILD_F77_BINDING
-lib_lib at MPIFCLIBNAME@_la_LIBADD =
-endif BUILD_F77_BINDING
-
-if BUILD_CXX_BINDING
-lib_lib at MPICXXLIBNAME@_la_LIBADD =
-endif BUILD_CXX_BINDING
-
 # include our subdir automake fragments
 include maint/Makefile.mk
 include src/Makefile.mk
 
 if BUILD_PROFILING_LIB
+# dropping mpi_fc_sources and mpi_cxx_sources from libmpmpi since they
+# don't contribute any PMPI symbols.
 lib_LTLIBRARIES += lib/lib at PMPILIBNAME@.la
-# dropping mpi_fc_sources and mpi_cxx_sources from the below PMPI list
-# since they don't contribute any PMPI symbols.
 lib_lib at PMPILIBNAME@_la_SOURCES = $(mpi_sources) $(mpi_f77_sources) $(mpi_core_sources)
 lib_lib at PMPILIBNAME@_la_LDFLAGS = $(external_ldflags) $(ABIVERSIONFLAGS)
-lib_lib at PMPILIBNAME@_la_LIBADD += $(external_libs)
-lib_lib at MPILIBNAME@_la_CPPFLAGS += -DMPICH_MPI_FROM_PMPI
-lib_lib at MPILIBNAME@_la_LIBADD += lib/lib at PMPILIBNAME@.la
-else !BUILD_PROFILING_LIB
-lib_lib at MPILIBNAME@_la_SOURCES += $(mpi_core_sources)
-lib_lib at MPILIBNAME@_la_LIBADD += $(external_libs)
-endif !BUILD_PROFILING_LIB
+lib_lib at PMPILIBNAME@_la_LIBADD = $(external_libs) $(pmpi_convenience_libs)
 
 # lib at MPILIBNAME@.la might depend on lib at PMPILIBNAME@.la.  We add them
 # in that order to lib_LTLIBRARIES so libtool doesn't get
 # confused. (see https://bugzilla.redhat.com/show_bug.cgi?id=91110)
 lib_LTLIBRARIES += lib/lib at MPILIBNAME@.la
-lib_lib at MPILIBNAME@_la_SOURCES += $(mpi_sources)
-lib_lib at MPILIBNAME@_la_LDFLAGS += $(external_ldflags) $(ABIVERSIONFLAGS)
-lib_lib at MPILIBNAME@_la_CPPFLAGS += $(AM_CPPFLAGS)
+lib_lib at MPILIBNAME@_la_SOURCES = $(mpi_sources)
+lib_lib at MPILIBNAME@_la_LDFLAGS = $(ABIVERSIONFLAGS)
+lib_lib at MPILIBNAME@_la_CPPFLAGS = $(AM_CPPFLAGS) -DMPICH_MPI_FROM_PMPI
+lib_lib at MPILIBNAME@_la_LIBADD = lib/lib at PMPILIBNAME@.la $(mpi_convenience_libs)
+
+else !BUILD_PROFILING_LIB
+
+lib_LTLIBRARIES += lib/lib at MPILIBNAME@.la
+lib_lib at MPILIBNAME@_la_SOURCES = $(mpi_sources) $(mpi_core_sources)
+lib_lib at MPILIBNAME@_la_LDFLAGS = $(external_ldflags) $(ABIVERSIONFLAGS)
+lib_lib at MPILIBNAME@_la_CPPFLAGS = $(AM_CPPFLAGS)
+lib_lib at MPILIBNAME@_la_LIBADD = $(external_libs) $(pmpi_convenience_libs) $(mpi_convenience_libs)
+endif !BUILD_PROFILING_LIB
 
 if BUILD_F77_BINDING
 lib_LTLIBRARIES += lib/lib at MPIFCLIBNAME@.la
@@ -191,14 +180,14 @@ if BUILD_FC_BINDING
 lib_lib at MPIFCLIBNAME@_la_SOURCES += $(mpi_fc_sources)
 endif BUILD_FC_BINDING
 lib_lib at MPIFCLIBNAME@_la_LDFLAGS = $(ABIVERSIONFLAGS)
-lib_lib at MPIFCLIBNAME@_la_LIBADD += lib/lib at MPILIBNAME@.la
+lib_lib at MPIFCLIBNAME@_la_LIBADD = lib/lib at MPILIBNAME@.la
 endif BUILD_F77_BINDING
 
 if BUILD_CXX_BINDING
 lib_LTLIBRARIES += lib/lib at MPICXXLIBNAME@.la
 lib_lib at MPICXXLIBNAME@_la_SOURCES = $(mpi_cxx_sources)
 lib_lib at MPICXXLIBNAME@_la_LDFLAGS = $(ABIVERSIONFLAGS)
-lib_lib at MPICXXLIBNAME@_la_LIBADD += lib/lib at MPILIBNAME@.la
+lib_lib at MPICXXLIBNAME@_la_LIBADD = lib/lib at MPILIBNAME@.la
 endif BUILD_CXX_BINDING
 
 # build the current directory and then the examples directory after everything else
diff --git a/src/mpi/Makefile.mk b/src/mpi/Makefile.mk
index 4bf0ebc..7d7c021 100644
--- a/src/mpi/Makefile.mk
+++ b/src/mpi/Makefile.mk
@@ -26,13 +26,12 @@ SUBDIRS += src/mpi/romio
 DIST_SUBDIRS += src/mpi/romio
 MANDOC_SUBDIRS += src/mpi/romio
 HTMLDOC_SUBDIRS += src/mpi/romio
-# FIXME is this the right place to put this?
-external_libs += src/mpi/romio/libromio.la
+mpi_convenience_libs += src/mpi/romio/libromio.la
 
 # libpromio contains the PMPI symbols (unlike libpmpi, which contains MPI
 # symbols) and should be added to libmpi as well
 if BUILD_PROFILING_LIB
-external_libs += src/mpi/romio/libpromio.la
+pmpi_convenience_libs += src/mpi/romio/libpromio.la
 endif BUILD_PROFILING_LIB
 
 # This was previously a hard copy (not a symlink) performed by config.status
diff --git a/src/mpi/debugger/Makefile.mk b/src/mpi/debugger/Makefile.mk
index 4b38ab0..104793f 100644
--- a/src/mpi/debugger/Makefile.mk
+++ b/src/mpi/debugger/Makefile.mk
@@ -16,7 +16,7 @@ noinst_HEADERS += src/mpi/debugger/mpich_dll_defs.h
 noinst_LTLIBRARIES += src/mpi/debugger/libdbginitdummy.la
 src_mpi_debugger_libdbginitdummy_la_SOURCES = src/mpi/debugger/dbginit.c
 src_mpi_debugger_libdbginitdummy_la_CFLAGS = -g
-lib_lib at MPILIBNAME@_la_LIBADD += $(top_builddir)/src/mpi/debugger/libdbginitdummy.la
+pmpi_convenience_libs += $(top_builddir)/src/mpi/debugger/libdbginitdummy.la
 
 lib_LTLIBRARIES += lib/libtvmpich.la
 # There is no static debugger interface library
diff --git a/src/util/logging/rlog/Makefile.mk b/src/util/logging/rlog/Makefile.mk
index 8f0f216..6f5473d 100644
--- a/src/util/logging/rlog/Makefile.mk
+++ b/src/util/logging/rlog/Makefile.mk
@@ -9,7 +9,7 @@
 if BUILD_LOGGING_RLOG
 
 lib_LTLIBRARIES += lib/librlogutil.la
-lib_lib at MPILIBNAME@_la_LIBADD += lib/librlogutil.la
+pmpi_convenience_libs += lib/librlogutil.la
 lib_librlogutil_la_SOURCES =          \
     src/util/logging/rlog/rlog.c      \
     src/util/logging/rlog/rlogutil.c  \

http://git.mpich.org/mpich.git/commitdiff/5661cf2b348626fa9db0ee7561f3f66a47b7fd8a

commit 5661cf2b348626fa9db0ee7561f3f66a47b7fd8a
Author: Pavan Balaji <balaji at mcs.anl.gov>
Date:   Tue Apr 15 01:46:51 2014 -0500

    Add an explicit application dependency on the profiling library.
    
    We were not explicitly linking the application binaries to libpmpi
    earlier.  This works fine when the application uses the MPI_ symbols,
    but not when the application uses the PMPI_ symbols.  On mac, where a
    separate profiling library is built, we were using -flat_namespace to
    supress this issue.  But on other platforms, without this flag, the
    issue showed up when passing --disable-weak-symbols.
    
    Signed-off-by: Ken Raffenetti <raffenet at mcs.anl.gov>

diff --git a/src/env/mpicc.bash.in b/src/env/mpicc.bash.in
index 3b786c7..964ea4c 100644
--- a/src/env/mpicc.bash.in
+++ b/src/env/mpicc.bash.in
@@ -213,7 +213,7 @@ if [ -n "$profConf" ] ; then
 fi
 
 if test "@INTERLIB_DEPS@" = "no" -o "$static_libs" = "yes" ; then
-    extra_libs="@LPMPILIBNAME@ @WRAPPER_EXTRA_LIBS@"
+    extra_libs="@WRAPPER_EXTRA_LIBS@"
 fi
 
 # -----------------------------------------------------------------------
@@ -244,7 +244,7 @@ if [ "$linking" = yes ] ; then
         $Show $CC @WRAPPER_CPPFLAGS@ $PROFILE_INCPATHS @WRAPPER_CFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" -I$includedir
         rc=$?
     else
-        $Show $CC @WRAPPER_CPPFLAGS@ $PROFILE_INCPATHS @WRAPPER_CFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" -I$includedir -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@
+        $Show $CC @WRAPPER_CPPFLAGS@ $PROFILE_INCPATHS @WRAPPER_CFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" -I$includedir -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ @LPMPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@
         rc=$?
     fi
 else
diff --git a/src/env/mpicc.sh.in b/src/env/mpicc.sh.in
index 16b56d3..7af7dfa 100644
--- a/src/env/mpicc.sh.in
+++ b/src/env/mpicc.sh.in
@@ -222,7 +222,7 @@ if [ -n "$profConf" ] ; then
 fi
 
 if test "@INTERLIB_DEPS@" = "no" -o "$static_libs" = "yes" ; then
-    extra_libs="@LPMPILIBNAME@ @WRAPPER_EXTRA_LIBS@"
+    extra_libs="@WRAPPER_EXTRA_LIBS@"
 fi
 
 # -----------------------------------------------------------------------
@@ -253,7 +253,7 @@ if [ "$linking" = yes ] ; then
         $Show $CC @WRAPPER_CPPFLAGS@ $PROFILE_INCPATHS @WRAPPER_CFLAGS@ @WRAPPER_LDFLAGS@ $allargs -I$includedir
         rc=$?
     else
-        $Show $CC @WRAPPER_CPPFLAGS@ $PROFILE_INCPATHS @WRAPPER_CFLAGS@ @WRAPPER_LDFLAGS@ $allargs -I$includedir -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@
+        $Show $CC @WRAPPER_CPPFLAGS@ $PROFILE_INCPATHS @WRAPPER_CFLAGS@ @WRAPPER_LDFLAGS@ $allargs -I$includedir -L$libdir $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ @LPMPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@
         rc=$?
     fi
 else
diff --git a/src/env/mpicxx.bash.in b/src/env/mpicxx.bash.in
index 8d6e0d9..f17bd31 100644
--- a/src/env/mpicxx.bash.in
+++ b/src/env/mpicxx.bash.in
@@ -219,7 +219,7 @@ if [ -n "$profConf" ] ; then
 fi
 
 if test "@INTERLIB_DEPS@" = "no" -o "$static_libs" = "yes" ; then
-    extra_libs="@LPMPILIBNAME@ @WRAPPER_EXTRA_LIBS@"
+    extra_libs="@WRAPPER_EXTRA_LIBS@"
 fi
 
 # A temporary statement to invoke the compiler
@@ -242,7 +242,7 @@ if [ "$linking" = yes ] ; then
         $Show $CXX $PROFILE_INCPATHS @WRAPPER_CXXFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" -I$includedir
         rc=$?
     else
-        $Show $CXX $PROFILE_INCPATHS @WRAPPER_CXXFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" -I$includedir -L$libdir $cxxlibs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@
+        $Show $CXX $PROFILE_INCPATHS @WRAPPER_CXXFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" -I$includedir -L$libdir $cxxlibs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ @LPMPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@
         rc=$?
     fi
 else
diff --git a/src/env/mpicxx.sh.in b/src/env/mpicxx.sh.in
index a121386..d72d55b 100644
--- a/src/env/mpicxx.sh.in
+++ b/src/env/mpicxx.sh.in
@@ -228,7 +228,7 @@ if [ -n "$profConf" ] ; then
 fi
 
 if test "@INTERLIB_DEPS@" = "no" -o "$static_libs" = "yes" ; then
-    extra_libs="@LPMPILIBNAME@ @WRAPPER_EXTRA_LIBS@"
+    extra_libs="@WRAPPER_EXTRA_LIBS@"
 fi
 
 # A temporary statement to invoke the compiler
@@ -251,7 +251,7 @@ if [ "$linking" = yes ] ; then
         $Show $CXX $PROFILE_INCPATHS @WRAPPER_CXXFLAGS@ @WRAPPER_LDFLAGS@ $allargs -I$includedir
         rc=$?
     else
-        $Show $CXX $PROFILE_INCPATHS @WRAPPER_CXXFLAGS@ @WRAPPER_LDFLAGS@ $allargs -I$includedir -L$libdir $cxxlibs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@
+        $Show $CXX $PROFILE_INCPATHS @WRAPPER_CXXFLAGS@ @WRAPPER_LDFLAGS@ $allargs -I$includedir -L$libdir $cxxlibs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ @LPMPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@
         rc=$?
     fi
 else
diff --git a/src/env/mpif77.bash.in b/src/env/mpif77.bash.in
index b9d0430..c4b66c1 100644
--- a/src/env/mpif77.bash.in
+++ b/src/env/mpif77.bash.in
@@ -271,7 +271,7 @@ if [ -n "$profConf" ] ; then
 fi
 
 if test "@INTERLIB_DEPS@" = "no" -o "$static_libs" = "yes" ; then
-    extra_libs="@LPMPILIBNAME@ @WRAPPER_EXTRA_LIBS@"
+    extra_libs="@WRAPPER_EXTRA_LIBS@"
 fi
 
 # A temporary statement to invoke the compiler
@@ -295,7 +295,7 @@ if [ "$linking" = yes ] ; then
         $Show $F77 $PROFILE_INCPATHS @WRAPPER_FFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" -I$includedir
         rc=$?
     else
-        $Show $F77 $PROFILE_INCPATHS @WRAPPER_FFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" -I$includedir -L$libdir $f77libs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@ @F77_OTHER_LIBS@
+        $Show $F77 $PROFILE_INCPATHS @WRAPPER_FFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" -I$includedir -L$libdir $f77libs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ @LPMPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@ @F77_OTHER_LIBS@
         rc=$?
     fi
 else
diff --git a/src/env/mpif77.sh.in b/src/env/mpif77.sh.in
index 8d815e4..f91f138 100644
--- a/src/env/mpif77.sh.in
+++ b/src/env/mpif77.sh.in
@@ -293,7 +293,7 @@ if [ -n "$profConf" ] ; then
 fi
 
 if test "@INTERLIB_DEPS@" = "no" -o "$static_libs" = "yes" ; then
-    extra_libs="@LPMPILIBNAME@ @WRAPPER_EXTRA_LIBS@"
+    extra_libs="@WRAPPER_EXTRA_LIBS@"
 fi
 
 # A temporary statement to invoke the compiler
@@ -317,7 +317,7 @@ if [ "$linking" = yes ] ; then
         $Show $F77 $PROFILE_INCPATHS @WRAPPER_FFLAGS@ @WRAPPER_LDFLAGS@ $allargs -I$includedir
         rc=$?
     else
-        $Show $F77 $PROFILE_INCPATHS @WRAPPER_FFLAGS@ @WRAPPER_LDFLAGS@ $allargs -I$includedir -L$libdir $f77libs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@ @F77_OTHER_LIBS@
+        $Show $F77 $PROFILE_INCPATHS @WRAPPER_FFLAGS@ @WRAPPER_LDFLAGS@ $allargs -I$includedir -L$libdir $f77libs $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ @LPMPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@ @F77_OTHER_LIBS@
         rc=$?
     fi
 else
diff --git a/src/env/mpif90.bash.in b/src/env/mpif90.bash.in
index c14283b..7d0bcf7 100644
--- a/src/env/mpif90.bash.in
+++ b/src/env/mpif90.bash.in
@@ -314,7 +314,7 @@ elif [ -n "$FCMODINC" ] ; then
 fi
 
 if test "@INTERLIB_DEPS@" = "no" -o "$static_libs" = "yes" ; then
-    extra_libs="@LPMPILIBNAME@ @WRAPPER_EXTRA_LIBS@"
+    extra_libs="@WRAPPER_EXTRA_LIBS@"
 fi
 
 # A temporary statement to invoke the compiler
@@ -339,7 +339,7 @@ if [ "$linking" = yes ] ; then
         $Show $FC $PROFILE_INCPATHS @WRAPPER_FCFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}"
         rc=$?
     else
-        $Show $FC $PROFILE_INCPATHS @WRAPPER_FCFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" $FCINCDIRS $FCMODDIRS -L$libdir -l at MPIFCLIBNAME@ $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@ @FC_OTHER_LIBS@
+        $Show $FC $PROFILE_INCPATHS @WRAPPER_FCFLAGS@ @WRAPPER_LDFLAGS@ "${allargs[@]}" $FCINCDIRS $FCMODDIRS -L$libdir -l at MPIFCLIBNAME@ $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ @LPMPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@ @FC_OTHER_LIBS@
         rc=$?
     fi
 else
diff --git a/src/env/mpif90.sh.in b/src/env/mpif90.sh.in
index d27e2a6..e7e7962 100644
--- a/src/env/mpif90.sh.in
+++ b/src/env/mpif90.sh.in
@@ -331,7 +331,7 @@ elif [ -n "$FCMODINC" ] ; then
 fi
 
 if test "@INTERLIB_DEPS@" = "no" -o "$static_libs" = "yes" ; then
-    extra_libs="@LPMPILIBNAME@ @WRAPPER_EXTRA_LIBS@"
+    extra_libs="@WRAPPER_EXTRA_LIBS@"
 fi
 
 # A temporary statement to invoke the compiler
@@ -355,7 +355,7 @@ if [ "$linking" = yes ] ; then
         $Show $FC $PROFILE_INCPATHS @WRAPPER_FCFLAGS@ @WRAPPER_LDFLAGS@ $allargs
         rc=$?
     else
-        $Show $FC $PROFILE_INCPATHS @WRAPPER_FCFLAGS@ @WRAPPER_LDFLAGS@ $allargs $FCINCDIRS $FCMODDIRS -L$libdir -l at MPIFCLIBNAME@ $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@ @FC_OTHER_LIBS@
+        $Show $FC $PROFILE_INCPATHS @WRAPPER_FCFLAGS@ @WRAPPER_LDFLAGS@ $allargs $FCINCDIRS $FCMODDIRS -L$libdir -l at MPIFCLIBNAME@ $PROFILE_PRELIB $PROFILE_FOO $rpath_flags -l at MPILIBNAME@ @LPMPILIBNAME@ $extra_libs $PROFILE_POSTLIB @WRAPPER_LIBS@ @FC_OTHER_LIBS@
         rc=$?
     fi
 else

-----------------------------------------------------------------------

Summary of changes:
 .gitignore                        |    1 +
 Makefile.am                       |   51 ++++------
 autogen.sh                        |    9 ++
 src/env/mpicc.bash.in             |    4 +-
 src/env/mpicc.sh.in               |    4 +-
 src/env/mpicxx.bash.in            |    4 +-
 src/env/mpicxx.sh.in              |    4 +-
 src/env/mpif77.bash.in            |    4 +-
 src/env/mpif77.sh.in              |    4 +-
 src/env/mpif90.bash.in            |    4 +-
 src/env/mpif90.sh.in              |    4 +-
 src/glue/romio/Makefile.mk        |    1 +
 src/glue/romio/all_romio_symbols  |  205 +++++++++++++++++++++++++++++++++++++
 src/mpi/Makefile.mk               |    5 +-
 src/mpi/debugger/Makefile.mk      |    2 +-
 src/util/logging/rlog/Makefile.mk |    2 +-
 16 files changed, 256 insertions(+), 52 deletions(-)
 create mode 100755 src/glue/romio/all_romio_symbols


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list