On Tuesday 23 July 2013 18:54:47 Alexander Neundorf wrote: > On Tuesday 23 July 2013, Milian Wolff wrote: > > On Monday 22 July 2013 22:28:08 Alexander Neundorf wrote: > > > Hi Millian, > > > > > > On Tuesday 16 July 2013, Milian Wolff wrote: > > > > On Tuesday 16 July 2013 11:30:22 Andreas Pakulat wrote: > > > > > Hi, > > > > > > > > > > On Mon, Jul 15, 2013 at 10:52 AM, Milian Wolff <[email protected]> > > wrote: > > > > > > Hey guys, > > > > > > > > > > > > the handling of CMAKE_BUILD_TYPE=debugfull in > > > > > > FindKDE4Internal.cmake is > > > > > > guarded by `if (CMAKE_COMPILER_IS_GNUCXX)` so it won't work if you > > > > > > use clang. > > > > > > It gets worse if you use ccache as well, i.e. via > > > > > > > > > > Hmm, interesting, I just noticed that Debian seems to have dropped > > > > > support for Debugfull completely, only 1 reference in the file and > > > > > that is in a comment. > > > > > > > > > > I'd say an "OR CMAKE_CXX_COMPILER_ID MATCHES 'clang'" should be > > > > > sufficient, the cmake manual hints towards the compiler id being set > > > > > to 'clang' (in a more or less unrelated part, but the other > > > > > mentioned id's match whats in that variable on the corresponding > > > > > compilers). So the line should be > > > > > > > > > > if (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES > > > > > 'clang' > > > > > ) > > > > > > > > OK, but the FindKDE4Internal contains more such checks and everywhere > > > > I > > > > wonder whether clang shouldn't do the same... I.e. more pedantic > > > > linker > > > > flags, determining include dirs, fPIE, visibility, etc. pp. - I > > > > actually wonder why I can compile stuff with clang at all ;-) > > > > > > > > So, anyways. Should I write a patch with what you hint at as an > > > > initial > > > > step towards better clang support? Or do we need to think more about > > > > that? > > > > > > There is/was nothing about clang in these files because nobody who used > > > felt the need to fix it. > > > So thanks for your effort. :-) > > > > > > While at it, could you please also have a look at extra-cmake-modules ( > > > https://projects.kde.org/projects/kdesupport/extra-cmake-modules/reposit > > > o > > > ry ), in kde-modules/KDECompilerSettings.cmake there are the compiler > > > settings for KF5. They have been moved there from > > > FindKDE4Internal.cmake, so that whoever wants, can or cannot use the > > > compiler settings from KDE. > > > > > > ...IS_GNU_CXX is not used anymore there, but instead always the > > > COMPILER_ID, i.e. it is now compared against "GNU". > > > > Yeah, I think at least loc 155 needs to include Clang. The block starting > > at loc 239 needs to also support Clang, whereas the code above with the > > version check should stay gcc specific. > > > > Anyhow, I don't have a KF5 setup available, so I can't test this properly > > - > > so no patch from me for now :( > > Oh, that's easy. > Get cmake 2.8.11. > git clone extra-cmake-modules, build it and install it. > Add the install dir to CMAKE_PREFIX_PATH if necessary. > > And write a small hello world: > > cmake_minimum_required(VERSION 2.8.11) > > find_package(ECM NO_MODULE REQUIRED) > > include(${ECM_KDE_MODULE_DIR}/KDECompilerSettings) > > add_executable(hello main.cpp) > > This should give you just the KDE-recommended compiler flags. > > It would be cool if you could give this a try, and let me know if it works > or whether there are issues.
Yay for modularity! https://git.reviewboard.kde.org/r/111661/ Cheers -- Milian Wolff [email protected] http://milianw.de _______________________________________________ Kde-buildsystem mailing list [email protected] https://mail.kde.org/mailman/listinfo/kde-buildsystem
