Understood.  I saw the issue with flex, and agree that testing for its version 
is good.

But we/OMPI don't require the m4 version; only the modern autotools to.  We 
only list the m4 version in HACKING and 
http://www.open-mpi.org/svn/building.php because those not used to building the 
autotools frequently miss the fact that they will need a modern m4 to build 
modern autotools.

I don't think I really care; I was just curious as to why it was done because 
it isn't directly necessary for OMPI.


On Nov 15, 2012, at 2:57 PM, Ralph Castain wrote:

> Nathan was addressing a problem that bit GP earlier this week. One of our 
> teams wasted an entire day trying to determine why the trunk wouldn't build 
> any more. Turned out that it was (a) some recent changes to code that used 
> flex that introduced a true dependency on flex 2.5.35, and (b) an older 
> version of flex on their machines.
> 
> However, although we *require* flex 2.5.35, we never actually test for it. So 
> we added that test - and then spotted the same situation wrt m4.
> 
> So we decided that if we explicitly require something, then we should 
> explicitly test for it.
> 
> HTH
> Ralph
> 
> 
> On Nov 15, 2012, at 1:19 PM, Jeff Squyres (jsquyres) <jsquy...@cisco.com> 
> wrote:
> 
>> No issue, I guess. It's just new and I wondered why it was done. 
>> 
>> Sent from my phone. No type good. 
>> 
>> On Nov 15, 2012, at 11:34 AM, "Ralph Castain" <r...@open-mpi.org> wrote:
>> 
>>> Sooo...what's the issue with checking for it then? Isn't it "required" by 
>>> association?
>>> 
>>> 
>>> On Nov 15, 2012, at 10:27 AM, "Jeff Squyres (jsquyres)" 
>>> <jsquy...@cisco.com> wrote:
>>> 
>>>> We only call out te version of m4 because the Autotools we require need 
>>>> that m4 version (which is not always already installed). We don't need 
>>>> that version of m4 for OMPI itself. 
>>>> 
>>>> Sent from my phone. No type good. 
>>>> 
>>>> On Nov 15, 2012, at 10:04 AM, "Ralph Castain" <r...@open-mpi.org> wrote:
>>>> 
>>>>> Only because we call out a minimum required version in our HACKING file, 
>>>>> but we never check for it
>>>>> 
>>>>> If we don't require a min version, then we shouldn't check - but if we 
>>>>> do, then we should
>>>>> 
>>>>> On Nov 15, 2012, at 9:00 AM, "Jeff Squyres (jsquyres)" 
>>>>> <jsquy...@cisco.com> wrote:
>>>>> 
>>>>>> Wait. 
>>>>>> 
>>>>>> Why did we just add a version check for m4?
>>>>>> 
>>>>>> Sent from my phone. No type good. 
>>>>>> 
>>>>>> On Nov 15, 2012, at 9:43 AM, "Hjelm, Nathan T" <hje...@lanl.gov> wrote:
>>>>>> 
>>>>>>> Committed as r27615. Let me know if there are any more issues.
>>>>>>> 
>>>>>>> -Nathan
>>>>>>> 
>>>>>>> ________________________________________
>>>>>>> From: devel-boun...@open-mpi.org [devel-boun...@open-mpi.org] on behalf 
>>>>>>> of Ralph Castain [r...@open-mpi.org]
>>>>>>> Sent: Thursday, November 15, 2012 8:53 AM
>>>>>>> To: Open MPI Developers
>>>>>>> Subject: Re: [OMPI devel] [OMPI svn] svn:open-mpi r27601 - trunk
>>>>>>> 
>>>>>>> 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" <hje...@lanl.gov> 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-boun...@open-mpi.org [devel-boun...@open-mpi.org] on 
>>>>>>>> behalf of Paul Hargrove [phhargr...@lbl.gov]
>>>>>>>> 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 
>>>>>>>> <ba...@usgs.gov<mailto:ba...@usgs.gov>> 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>
>>>>>>>> ba...@usgs.gov<mailto:ba...@usgs.gov>
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On 14 Nov 2012, at 5:41 PM, Paul Hargrove wrote:
>>>>>>>> 
>>>>>>>> On Wed, Nov 14, 2012 at 6:26 PM, Larry Baker 
>>>>>>>> <ba...@usgs.gov<mailto:ba...@usgs.gov>> 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                          
>>>>>>>> phhargr...@lbl.gov<mailto:phhargr...@lbl.gov>
>>>>>>>> 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
>>>>>>>> de...@open-mpi.org<mailto:de...@open-mpi.org>
>>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> --
>>>>>>>> Paul H. Hargrove                          
>>>>>>>> phhargr...@lbl.gov<mailto:phhargr...@lbl.gov>
>>>>>>>> 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
>>>>>>>> de...@open-mpi.org
>>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>>> 
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> devel mailing list
>>>>>>> de...@open-mpi.org
>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> devel mailing list
>>>>>>> de...@open-mpi.org
>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>> 
>>>>>> _______________________________________________
>>>>>> devel mailing list
>>>>>> de...@open-mpi.org
>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> devel mailing list
>>>>> de...@open-mpi.org
>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>> 
>>>> _______________________________________________
>>>> devel mailing list
>>>> de...@open-mpi.org
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>> 
>>> 
>>> _______________________________________________
>>> devel mailing list
>>> de...@open-mpi.org
>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>> 
>> _______________________________________________
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
> 
> 
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel


-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to: 
http://www.cisco.com/web/about/doing_business/legal/cri/


Reply via email to