Fixes #3806: Bring MPI _x function weak symbol declaration fixes to v1.7

---svn-pre-commit-ignore-below---

r29284 [[BR]]
Fix type in weak symbol declarations for the new _x functions.
Fixes #3810: Move r29294 to v1.7 branch (Fix typo in uGNI prepare)

---svn-pre-commit-ignore-below---

r29294 [[BR]]
Fix typo in uGNI prepare source that could cause incorrect results with
non-contiguous datatypes.

cmr=v1.7.3
Fixes #3804: Move r29273 to v1.7 branch (Add missing library dependency)

---svn-pre-commit-ignore-below---

r29273 [[BR]]
Add missing library dependency

cmr:v1.7.3:reviewer=jsquyres
Fixes #3807: Move r29293 to v1.7 branch (fix memory corruption)

---svn-pre-commit-ignore-below---

r29293 [[BR]]
fix memory corruption
cmr:v1.7.3:reviewer=ompi-rm1.7
Fixes #3812: Move r29297 to v1.7 branch (add "--distdir /path/to/move/openmpi-*" param to)

---svn-pre-commit-ignore-below---

r29297 [[BR]]
add "--distdir /path/to/move/openmpi-*" param to select where to store build products
needed for jenkins, the default ".." is r/o fs in jenkins

cmr=v1.7.4:reviewer=jsquyres
Fixes #3814: Move r29298 to v1.7 branch (fix [i]alltoallw mpi_f08 wrapper functions)

---svn-pre-commit-ignore-below---

r29298 [[BR]]
Make the Alltoall/Ialltoallw F08 interfaces a little less sucky.

Use proper array types for the sendtypes and recevtypes params in the
definition of these subroutines (since they're prototyped to be array
parameters in the module).  See the comment in the code for a more
complete explanation.

Note that after talking to Craig Rasumussen, he says that this is
fairly common practice in the Fortran community (i.e., pass a scalar
that is part of an array to effectively pass an offset into that
array, since Fortran passes by reference).  So this might be a hack,
but it's a commonly-accepted hack.

Reviewed by Craig Rasmussen.

cmr=v1.7.3:subject=Fix [I]Alltoallw mpi_f08 wrapper functions

r29301 [[BR]]
Missed updating the profiling versions of [I]Alltoallw in r29298.

Refs #3814.
Fixes #3811: Move r29285 to v1.7 branch (fix convertor set_position)

---svn-pre-commit-ignore-below---

r29285 [[BR]]
Fix a corner case for a non-contiguous send convertor where the
convertor accepted to be set to a position in the middle of a
predefined datatype. Once set there is was unable to provide the
second part of the datatype. This fix force the convertor to be
aligned on predefined datatypes boundaries for any non-contiguous
send convertor.

r29296 [[BR]]
regression test for r29285 (convertor_set_position)