On Monday 31 May 2010, Pavel Heimlich, a.k.a. hajma wrote: > 2010/5/30 Alexander Neundorf <neund...@kde.org>: > > On Wednesday 26 May 2010, Pavel Heimlich, a.k.a. hajma wrote: > >> Hi Alex, > >> > >> 2010/5/26 Alexander Neundorf <neund...@kde.org>: > >> > On Wednesday 26 May 2010, Pavel Heimlich, a.k.a. hajma wrote: > >> >> Hi Alex, > >> >> > >> >> 2010/5/5 Alexander Neundorf <neund...@kde.org>: > >> >> > I never used OpenMP, so I don't know. > >> >> > For the time being I wouldn't oppose a patch to get kdegraphics > >> >> > compiling. > >> >> > >> >> Attached is the patch that makes kdegraphics compile here. > >> >> The part for libs/libkdcraw/test/CMakeLists.txt would need some > >> >> IF-ing, I am not sure how to best handle it. > >> > > >> > Attached is an updated version of the patch. > >> > Can you please verify that it works for you ? > >> > >> works fine > >> http://my.cdash.org/buildSummary.php?buildid=69868 > >> > >> > The -xopenmp flag depends on the compiler, not on the operating > >> > system, right ? > >> > >> correct > >> > >> > One thing I noticed when looking at the cmake output on my.cdash.org > >> > is that it says > >> > -- The C compiler identification is SunPro > >> > -- The CXX compiler identification is Unknown > >> > > >> > The problem here is the "Unknown" for the CXX compiler. > >> > If you look in share/cmake-2.6/Modules/CMakeCXXCompilerId.cpp.in, you > >> > will see: > >> > > >> > #elif defined(__SUNPRO_CC) > >> > # define COMPILER_ID "SunPro" > >> > > >> > This should be defined for the SunStudio compiler (also according to > >> > http://docs.sun.com/app/docs/doc/820-7599/6nirkt75m?l=en&a=view#bkaoe > >> > ). > >> > >> it is defined. > >> However I think in this case the > >> share/cmake-2.6/Modules/CMakeDetermineCXXCompiler.cmake > >> comes into play, which does not know anything about Sun Studio (at > >> least in 2.6.4) > > > > Sure ? > > Attached is the file from the clean cmake 2.6.4 binary package for Linux, > > which contains the code for SunPro. > > Does it look different on your installation ? > > this file does look the same here. Adding > ----- > std::cout << PLATFORM_ID; > std::cout << COMPILER_ID; > ----- > proved that PLATFORM_ID is assigned 'SunOS', and COMPILER_ID is > assigned 'SunPro'.
There is a CMAKE_C_COMPILER_ID and a CMAKE_CXX_COMPILER_ID. The one for CXX seems to be unknown in your case, since cmake says so. > But I don't think it's being used in the kdegraphics context: > 1. Grepping for the two variables does not yield anything useful in > kdegraphics sources. Yes, but as you can see in my modified patch, I think CMAKE_CXX_COMPILER_ID should be used for setting the openmp flag, instead of basing it on the operating system. > 2. in CMakeCXXCompilerId.cpp.in, unknown compiler is labelled with > empty string, while the cmake output > --------- > pkgbuild: -- The C compiler identification is SunPro > pkgbuild: -- The CXX compiler identification is unknown > --------- > refers to 'unknown': > --------- > #else /* unknown compiler */ > # define COMPILER_ID "" > --------- > > Actually the above identification messages come from > share/cmake-2.6/Modules/CMakeDetermineCompilerId.cmake: > --------- > # Display the final identification result. > IF(CMAKE_${lang}_COMPILER_ID) > MESSAGE(STATUS "The ${lang} compiler identification is " > "${CMAKE_${lang}_COMPILER_ID}") > ELSE(CMAKE_${lang}_COMPILER_ID) > MESSAGE(STATUS "The ${lang} compiler identification is unknown") > ENDIF(CMAKE_${lang}_COMPILER_ID) > --------- Yes, and they get this result from compiling CMakeCXXCompilerId.cpp.in. Can you put something like #warning "Here I am" in places where it makes sense in CMakeCXXCompilerId.cpp.in and then run cmake again in clean build trees (small hello-world like projects should be good enough for that). Alex _______________________________________________ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem