1. 02 Apr, 2014 1 commit
  2. 01 Apr, 2014 11 commits
    • Pavan Balaji's avatar
      Add backward compatibility symlinks. · daa5a151
      Pavan Balaji authored
      
      
      Create symlinks for libmpich and friends, for applications that might
      still be relying on those names.
      
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      daa5a151
    • Pavan Balaji's avatar
      Merge libmpif77 and libmpifort. · 6f421a8b
      Pavan Balaji authored
      
      
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      6f421a8b
    • Pavan Balaji's avatar
      Updated the CHANGES file with library management changes. · adf6ddf6
      Pavan Balaji authored
      No reviewer.
      adf6ddf6
    • Pavan Balaji's avatar
    • Pavan Balaji's avatar
      Use library dependencies. · 4adb3207
      Pavan Balaji authored
      
      
      When the conditions are right, we use libtool's interlibrary
      dependencies to only link the application with the minimum set of
      libraries required.  Those libraries will pull in the other required
      libraries on demand.  That way, the application library dependencies
      would be minimal, allowing us to add/remove extra libraries in the
      future.
      
      The "conditions are not right" when one of the following is true:
      
      1. MPICH shared library builds are disabled.
      
      2. libtool doesn't support interlibrary dependencies on this platform.
      
      3. The user passed -static or -mpich-alllibs to the command line.
      
      4. Interlibrary dependency tracking is explicitly disabled at
      configure time.
      
      Fixes #2040.
      
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      4adb3207
    • Pavan Balaji's avatar
      Reorder library names in pkg-config. · da256e24
      Pavan Balaji authored and Kenneth Raffenetti's avatar Kenneth Raffenetti committed
      
      
      We moved the symbols around in libmpi and libpmpi.  pkg-config should
      match this.
      
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      da256e24
    • Pavan Balaji's avatar
      Move symbols to correct libraries. · 9c337914
      Pavan Balaji authored and Kenneth Raffenetti's avatar Kenneth Raffenetti committed
      
      
      Maintain a list of files that go into each library.  If a particular
      binding is not enabled, the list variable still exists, but will just
      be empty.  This simplifies the management of which files/symbols go
      into which library.
      
      Move all MPI_ symbols to the libmpi library and all other symbols to
      the libpmpi library.  All Fortran 77 symbols go into libmpif77.so,
      while C symbols go into libmpi.so.  There are some exceptions, such as
      status_f2c, which are handled by the Fortran code but used in C.  Our
      Fortran 90 build only creates a few symbols and uses the f77 symbols
      for everything else.  These few symbols go into libmpifort.so.
      
      Also update compiler wrappers to link to correct libraries.  mpif77
      should now link with libmpif77.  mpif90 links with both libmpifort and
      libmpif77, since our F90 build still keeps the core Fortran library
      symbols in libf77.
      
      We completely ignored the F77 library earlier.  This was OK because
      all of the Fortran symbols were ending up in libmpi.  Now that we have
      separated out the symbols to the right library, we now need to link to
      libmpif77 as well.
      
      Also added inter-library dependencies.
      
      libmpi has a dependency on several internal libraries: libmpl, libopa.
      libmpicxx did not have a dependency on libmpi, added.
      libmpif77 did not have a dependency on libmpi, added.
      libmpifort did not have a dependency on libmpi, added.
      
      This dependency model is sufficient for C and F77, but not for C++ and
      F90.  The C and F77 libraries contain all the symbols the application
      relies on, but the F90 and C++ libraries don't.  In the case of F90,
      symbols such as mpi_bcast are missing and are borrowed from the F77
      library.  In the case of C++, mpicxx.h contains calls directly to C
      functions (such as MPI_Reduce_local), which get embedded into the
      application.
      
      Fixes #2023.
      
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      9c337914
    • Pavan Balaji's avatar
      Make binding automake conditional names consistent. · be23b0d8
      Pavan Balaji authored and Kenneth Raffenetti's avatar Kenneth Raffenetti committed
      
      
      Rename BUILD_CXX_LIB to BUILD_CXX_BINDING.  Rename BUILD_F90_LIB to
      BUILD_FC_BINDING.
      
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      be23b0d8
    • Pavan Balaji's avatar
      Use CPPFLAGS for preprocessor macros. · 88083800
      Pavan Balaji authored and Kenneth Raffenetti's avatar Kenneth Raffenetti committed
      
      
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      88083800
    • Pavan Balaji's avatar
      Rename mpich libraries. · 42fe2ccf
      Pavan Balaji authored and Kenneth Raffenetti's avatar Kenneth Raffenetti committed
      
      
      The following library names are used to make the naming consistent
      across the ABI compatibility group:
      
      C libraries: libmpi.* and libpmpi.*
      C++ library: libmpicxx.*
      F77 libraries: libmpif77.*
      F90+ library: libmpifort.*
      
      This patch also gets rid of the FWRAPNAME variable, which is a
      duplicate of MPIFLIBNAME.  Similarly, FCWRAPNAME is removed and a new
      variable MPIFCLIBNAME is added, so it's consistent with the other
      names.
      
      PMPIFLIBNAME, which was unused, is no longer present.
      
      Fixes #2039.
      
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      42fe2ccf
    • Pavan Balaji's avatar
      Incorrect placement of the MPIR_Comm_split_type_impl symbol. · 0ab70e76
      Pavan Balaji authored and Kenneth Raffenetti's avatar Kenneth Raffenetti committed
      
      
      This symbol should go into libmpich, not libpmpich.
      
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      0ab70e76
  3. 28 Mar, 2014 2 commits
  4. 27 Mar, 2014 5 commits
  5. 26 Mar, 2014 21 commits