On 2/8/2012 1:10 PM, Paul H. Hargrove wrote:
On 2/8/2012 8:58 AM, Jeff Squyres wrote:
* Detect when a compiler such as xlc may not report compile errors
properly, causing some configure checks to be wrong. Thanks to
Paul H. Hargrove for reporting the problem and providing a patch.
Looks like I botched this one!
I have added two Linux/ppc64 machines the xlc-7.0, xlc-8.0 and xlc-9.0
to my testing.
These are NOT running on the odd virtual node that caused assertion
failures when testing xlc-11.1.
ARGH!!!
I've applied the patches I included, and tested on the xlc-11.1 system
where auto tools are new enough.
Everything looked fine.
Now I've had a chance to retest earlier xlc (8 and 9, which are on 2
different machines), with the explict CFLAGS=-qhalt=e.
The result was NOT good.
It seems that xlc dislikes some wchar constants (see below).
In a build w/ default CFLAGS they produce an "(E)" level message, but
compilation continues to completion.
With the recommended CFLAGS=-qhalt=e these become fatal:
CC lstopo-lstopo-text.o
"/home/hargrove/OMPI/hwloc-1.3.2rc1-linux-ppc64-xlc-9.0/hwloc-1.3.2rc1/include/hwloc.h",
line 1203.34: 1506-1385 (W) The attribute "pure" is not a valid type
attribute.
"/home/hargrove/OMPI/hwloc-1.3.2rc1-linux-ppc64-xlc-9.0//hwloc-1.3.2rc1/utils/lstopo-text.c",
line 450.12: 1506-077 (E) The wchar_t value 0x250c is not valid.
"/home/hargrove/OMPI/hwloc-1.3.2rc1-linux-ppc64-xlc-9.0//hwloc-1.3.2rc1/utils/lstopo-text.c",
line 451.12: 1506-077 (E) The wchar_t value 0x2510 is not valid.
"/home/hargrove/OMPI/hwloc-1.3.2rc1-linux-ppc64-xlc-9.0//hwloc-1.3.2rc1/utils/lstopo-text.c",
line 452.12: 1506-077 (E) The wchar_t value 0x2514 is not valid.
[followed by another error for each case in the switch statement].
So, now I am not sure what to recommend. Options include:
+ Don't worry about old xlc (which OMPI doesn't support since they can't
build the opal atomics).
+ Rig things to use -qhalt=e ONLY for configure, but not for make?
+ Punt on 1.3 and revisit later
By the way:
xlc-11.1 on Linux doesn't make these complaints on lstopo-lstopo-text.
Nor does xlc-6.0 on MacOS-10.3 (honest, I am not making this up).
[And, YES, both platforms define HAVE_PUTWC]
-Paul
--
Paul H. Hargrove phhargr...@lbl.gov
Future Technologies Group
HPC Research Department Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory Fax: +1-510-486-6900