[CMake] xlC / HAVE_GETHOSTBYNAME_R_6 (Was Re: CMake 2.8.0 RC 1 ready for testing!)

Mathieu Malaterre mathieu.malaterre at gmail.com
Thu Oct 1 03:42:45 EDT 2009


On Wed, Sep 30, 2009 at 3:39 PM, Brad King <brad.king at kitware.com> wrote:
> Mathieu Malaterre wrote:
>>> /opt/ibmcmp/vacpp/9.0/bin/cc   -DHAVE_GETHOSTBYNAME_R_5   -o CMakeFiles/cmTryCompileExec.dir/CurlTests.c.o   -c "/home/mmalater/Dashboards/My Tests/CMakeXLC/Utilities/cmcurl/CMake/CurlTests.c"
>> "/home/mmalater/Dashboards/My
>> Tests/CMakeXLC/Utilities/cmcurl/CMake/CurlTests.c", line 247.16:
>> 1506-098 (E) Missing argument(s).
>>> echo $?
>> 0
> [snip]
>> This seems quite a common things to always add -qhalt=e in all
>> configure script I found. Looking at what curl does with this compiler
>> this leads to the following local changes for me:
>
> I've factored the XL compiler flags out of AIX.cmake into per-compiler
> files, and also added the flags you propose.  See commits below.
>
> -Brad
>
>
> Split XL compiler information files
> /cvsroot/CMake/CMake/Modules/Compiler/XL-C.cmake,v  <--  Modules/Compiler/XL-C.cmake
> new revision: 1.2; previous revision: 1.1
> /cvsroot/CMake/CMake/Modules/Compiler/XL-CXX.cmake,v  <--  Modules/Compiler/XL-CXX.cmake
> new revision: 1.2; previous revision: 1.1
> /cvsroot/CMake/CMake/Modules/Compiler/XL-Fortran.cmake,v  <--  Modules/Compiler/XL-Fortran.cmake
> new revision: 1.2; previous revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/AIX-VisualAge-C.cmake,v  <--  Modules/Platform/AIX-VisualAge-C.cmake
> initial revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/AIX-VisualAge-CXX.cmake,v  <--  Modules/Platform/AIX-VisualAge-CXX.cmake
> initial revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/AIX-XL-C.cmake,v  <--  Modules/Platform/AIX-XL-C.cmake
> initial revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/AIX-XL-CXX.cmake,v  <--  Modules/Platform/AIX-XL-CXX.cmake
> initial revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/AIX-XL-Fortran.cmake,v  <--  Modules/Platform/AIX-XL-Fortran.cmake
> initial revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/AIX.cmake,v  <--  Modules/Platform/AIX.cmake
> new revision: 1.22; previous revision: 1.21
> /cvsroot/CMake/CMake/Modules/Platform/Darwin-VisualAge-C.cmake,v  <--  Modules/Platform/Darwin-VisualAge-C.cmake
> initial revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/Darwin-VisualAge-CXX.cmake,v  <--  Modules/Platform/Darwin-VisualAge-CXX.cmake
> initial revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/Darwin-XL-C.cmake,v  <--  Modules/Platform/Darwin-XL-C.cmake
> initial revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/Darwin-XL-CXX.cmake,v  <--  Modules/Platform/Darwin-XL-CXX.cmake
> initial revision: 1.1
> /cvsroot/CMake/CMake/Modules/Platform/Darwin-xlc.cmake,v  <--  Modules/Platform/Darwin-xlc.cmake
> new revision: delete; previous revision: 1.3
>
> Add initial XL C compiler flags for safer builds
> /cvsroot/CMake/CMake/Modules/Compiler/XL-C.cmake,v  <--  Modules/Compiler/XL-C.cmake
> new revision: 1.3; previous revision: 1.2
>

The 32bits xlC is now perfectly clean, congrats !

http://www.cdash.org/CDash/viewTest.php?onlyfailed&buildid=439244

A couple of warnings that's all:
http://www.cdash.org/CDash/viewBuildError.php?type=1&buildid=439244


However, there are still two issues remaining with xlC -q64 (64bits
compilation) :
http://www.cdash.org/CDash/viewTest.php?onlyfailed&buildid=439310

I do not understand what I need to adjust to get the path right, for instance:

> file /usr/lib/qt3/lib/libqt-mt.so.3.3.7
/usr/lib/qt3/lib/libqt-mt.so.3.3.7: ELF 32-bit MSB shared object,
PowerPC or cisco 4500, version 1 (SYSV), stripped
> file /usr/lib/qt3/lib64/libqt-mt.so.3.3.7
/usr/lib/qt3/lib64/libqt-mt.so.3.3.7: ELF 64-bit MSB shared object,
cisco 7500, version 1 (SYSV), stripped

Thanks again !

-- 
Mathieu


More information about the CMake mailing list