Fixes #3577: Move opal_datatype assert fix to v1.7

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

r28398 [[BR]]
As initially reported by Eric Chamberland in
http://www.open-mpi.org/community/lists/users/2013/04/21689.php, the
assert in opal_datatype_is_contiguous_memory_layout() is not always
correct -- he supplied a test case where it was not valid,
essentially:

 1. Call MPI_Type_create_indexed_block(0, ..., &newtype) and commit newtype
 1. Call MPI_Type_create_resized(newtype, 0, nonzero_value, &resized) and commit resized
 1. Call MPI_File_set_view with resized

This will eventually call opal_datatype_is_contiguous_memory_layout(),
and the assert will fail.  After some consultation with George, it was
determined that the assert() is basically good, but it needs to also
check for (count != 0).
Fixes #3576: Cleanup stale filem code
Fixes #3572: Move r28381 to v1.7 branch

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

r28381 [[BR]]
Fix the @#$!@# ompi_info --version option. Via long chat with Jeff, simplify this option a lot by dumping all the silly suboptions it covered. Instead, just provide the very basic "ompi_info -V|--version" like all other tools do

cmr:v1.7.2


r28382 [[BR]]
Crud - missed this file, needs to go with prior commit, will add to cmr
Fixes #3402: CMR: Move r27601 to v1.7 (enforce minimum flex version)

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

r27601 [[BR]]
enforce minimum flex version in autogen.pl
Fixes #3394: Move r27571 to v1.7 branch (cleanup flex parsing properly)

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

r27571 [[BR]]
Remove the finish_parsing function from various .l files. The function is incomplete (doesn't clean up the lex state) and should be replaced by *_yylex_destroy which correctly cleans up the state.

Checked with the flex 2.5.35. Verified with valgrind that this fixes several "still reachable" leaks.

cmr:v1.7


r27577 [[BR]]
instead of relying on yyterminate to clean up the lex context call the destroy functions directly (after closing the file)

r27580 [[BR]]
add prototypes for lex destroy functions

r27647 [[BR]]
Per discussion on the OMPI teleconf this morning:

 * Remove the check for a specific m4 version.  We don't require it.
   Autoconf requires a specific version of m4, but we don't.
 * Reduce flex min version to 2.5.4
 * Update a bunch of language in HACKING, including:
   * General text updates
   * OMPI doesn't require a specific m4; Autoconf does
   * Soften language about flex version
   * Reserve the right to upgrade min flex version to 2.5.35 someday
Revert r24815 - the trunk no longer checks minimum flex version, and the test fails on Mac anyway
Sigh - revert r24816 as well. The flex patch just isn't complete - will request it be combined and tested with CMR #3583
Fixes #3580: Move openib "no BTLs" fix to v1.7

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

r28402 [[BR]]
If there are no BTLs, do ''not'' actually shut down the fd listener,
because a) it may still be needed to shut down the CPCs, and b) it
will be shut down during component_close().
Fixes #3353: Move r27451 to v1.7 branch (remove deprecated stuff and cmd_line processor changes)

RHC: Note that I still had to hand-edit orterun.c to fix one incorrect cmd line declaration

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

r27437 [[BR]]
remove unused, deprecated function opal_cmd_line_make_opt

r27451 [[BR]]
MCA: remove deprecated mca_base_param functions (mca_base_param_register_int, mca_base_param_register_string, mca_base_param_environ_variable). Remove all uses of deprecated functions.
cmr:v1.7
Fixes #3583: CMR: Move more flex fixes to 1.7

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

r27571 [[BR]]
Remove the finish_parsing function from various .l files. The function is incomplete (doesn't clean up the lex state) and should be replaced by *_yylex_destroy which correctly cleans up the state.

Checked with the flex 2.5.35. Verified with valgrind that this fixes several "still reachable" leaks.

cmr:v1.7


r27574 [[BR]]
A prior commit apparently broke the trunk when something was inadvertently left behind - so remove a reference to a no-longer-existing function


r27577 [[BR]]
instead of relying on yyterminate to clean up the lex context call the destroy functions directly (after closing the file)

r27580 [[BR]]
add prototypes for lex destroy functions

r27647 [[BR]]
Per discussion on the OMPI teleconf this morning:

 * Remove the check for a specific m4 version.  We don't require it.
   Autoconf requires a specific version of m4, but we don't.
 * Reduce flex min version to 2.5.4
 * Update a bunch of language in HACKING, including:
   * General text updates
   * OMPI doesn't require a specific m4; Autoconf does
   * Soften language about flex version
   * Reserve the right to upgrade min flex version to 2.5.35 someday

r27657 [[BR]]
Re-add support for old flex (2.5.4a and earlier) while still cleaning up properly in new flex.
Fixes #3584: Move r28430 MRECV STATUS_IGNORE fix to v1.7.2

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

r28430 [[BR]]
Don't assign the status if MPI_STATUS_IGNORE is passed in.  Thanks to
Lisandro Dalcin for finding the issue.
Fixes #3587: CMR: Bring useful opal_list_t macros to 1.7

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

r27985 [[BR]]
add iterator macros for opal_list_t

r28029 [[BR]]
The opal_list_t destructor doesn't release the items on the list prior to destructing or releasing it. Provide two convenience macros for doing so.