Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] [OMPI svn] svn:open-mpi r27601 - trunk
From: Ralph Castain (rhc_at_[hidden])
Date: 2012-11-15 10:53:22


Looks fine to me. I would only add one further refinement - I think we should check m4, but add a check in autogen.pl so that if we get nothing useful back from -v (or whatever), then output a warning that we couldn't validate the version and assume it is okay.

I believe the tool will return a non-zero status if the option isn't supported, so we should be able to do this - yes?

On Nov 15, 2012, at 7:48 AM, "Hjelm, Nathan T" <hjelmn_at_[hidden]> wrote:

> Since the version of m4 that comes with Solaris likely works with all our .m4 files and there is no way to check the version (no --version, -v, -V, or anything from what I can tell) I guess we have no choice but to not check the m4 version.
>
> flex on the other hand we can check. How about this for the new regex (for reference the old one is $version =~ m/\s([\d\w\.]+)$/m; -- matching a version at the end of the line):
>
> $version =~ m/\s([\d\.]+\w?)/m;
>
> It works with Apple's flex and still works with glibtoolize, autoconf, and automake.
>
> Searching for autoconf
> Found autoconf version 2.69; checking version...
> Found version component 2 -- need 2
> Found version component 69 -- need 65
> ==> ACCEPTED
> Searching for libtoolize
> libtoolize not found
> Searching for glibtoolize
> Found glibtoolize version 2.4.2; checking version...
> Found version component 2 -- need 2
> Found version component 4 -- need 2
> ==> ACCEPTED
> Searching for automake
> Found automake version 1.12.2; checking version...
> Found version component 1 -- need 1
> Found version component 12 -- need 11
> ==> ACCEPTED
> Searching for flex
> Found flex version 2.5.35; checking version...
> Found version component 2 -- need 2
> Found version component 5 -- need 5
> Found version component 35 -- need 35
> ==> ACCEPTED
> Searching for m4
> Found m4 version 1.4.6; checking version...
> Found version component 1 -- need 1
> Found version component 4 -- need 4
> Found version component 6 -- need 16
> ==> Too low! Skipping this version
> Searching for gm4
> Found gm4 version 1.4.16; checking version...
> Found version component 1 -- need 1
> Found version component 4 -- need 4
> Found version component 16 -- need 16
> ==> ACCEPTED
>
>
> -Nathan
>
> ________________________________________
> From: devel-bounces_at_[hidden] [devel-bounces_at_[hidden]] on behalf of Paul Hargrove [phhargrove_at_[hidden]]
> Sent: Wednesday, November 14, 2012 7:37 PM
> To: Larry Baker
> Cc: Open MPI Developers
> Subject: Re: [OMPI devel] [OMPI svn] svn:open-mpi r27601 - trunk
>
> Larry,
>
> I just wanted to speak up quickly to be sure nobody used your example to "fix" the Mac OS problem and thereby break Solaris instead. No personal attack/affront was intended.
>
> -Paulhttps://mymail.lanl.gov/owa/?ae=PreFormAction&t=IPM.Note&a=ReplyAll&id=RgAAAAD3GfjXt9HDTI902%2b63W1IcBwCuRfL1X%2babT5m7NFXoIdcVAAAAxVZxAACuRfL1X%2babT5m7NFXoIdcVAAAa4RQFAAAJ#
>
> On Wed, Nov 14, 2012 at 7:10 PM, Larry Baker <baker_at_[hidden]<mailto:baker_at_[hidden]>> wrote:
> Paul,
>
> 1) I wasn't trying to solve the --version issue, only the parsing of the response.
> 2) I assumed from the initial e-mail that the broken parser was in a Perl script. I'm not a Perl person, so I wrote the example regular expression parser in sed.
>
> These commands were done on my Mac OS X 10.6 system. I have no idea where the apps came from. I know the sed, at least, does not recognize regular expressions documented for GNU sed (such as \< \> for begin/end word). Maybe it is a BSD sed?
>
> I was just trying to illustrate how to fix the broken parsing of Ralph's "flex --version". Assuming the RE parser I wrote is satisfactory, it would have to be adapted to fit in the framework, i.e., it has to be portable.
>
> Larry Baker
> US Geological Survey
> 650-329-5608<tel:650-329-5608>
> baker_at_[hidden]<mailto:baker_at_[hidden]>
>
>
>
> On 14 Nov 2012, at 5:41 PM, Paul Hargrove wrote:
>
> On Wed, Nov 14, 2012 at 6:26 PM, Larry Baker <baker_at_[hidden]<mailto:baker_at_[hidden]>> wrote:
> m4 --version | sed -n -E -e '1s/^.*[^A-Za-z0-9_-]?([0-9]+[.][0-9]+[.][0-9]+)[^A-Za-z0-9_-]?.*$/\1/p'
>
>
> There are STILL problems with this approach as it is TWICE specific to GNU software:
>
> 1) M4 on OpenBSD (maybe others) doesn't support a "--version" flag:
> $ m4 --version | sed -n -E -e '1s/^.*[^A-Za-z0-9_-]?([0-9]+[.][0-9]+[.][0-9]+)[^A-Za-z0-9_-]?.*$/\1/p'
> m4: unknown option -- -
> usage: m4 [-gPs] [-Dname[=value]] [-d flags] [-I dirname] [-o filename]
> [-t macro] [-Uname] [file ...]
>
> 2) sed on Solaris (maybe others) doesn't support a "-E" flag:
> $ m4 --version | sed -n -E -e '1s/^.*[^A-Za-z0-9_-]?([0-9]+[.][0-9]+[.][0-9]+)[^A-Za-z0-9_-]?.*$/\1/p'
> /bin/sed: illegal option -- E
>
> -Paul
>
> --
> Paul H. Hargrove PHHargrove_at_[hidden]<mailto:PHHargrove_at_[hidden]>
> Future Technologies Group
> Computer and Data Sciences Department Tel: +1-510-495-2352<tel:%2B1-510-495-2352>
> Lawrence Berkeley National Laboratory Fax: +1-510-486-6900<tel:%2B1-510-486-6900>
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]<mailto:devel_at_[hidden]>
> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
>
>
>
> --
> Paul H. Hargrove PHHargrove_at_[hidden]<mailto:PHHargrove_at_[hidden]>
> Future Technologies Group
> Computer and Data Sciences Department Tel: +1-510-495-2352
> Lawrence Berkeley National Laboratory Fax: +1-510-486-6900
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel