Am 25.07.2012 12:57, schrieb Jakob Gruber: > I spent this morning setting up KDE Windows (thanks SaroEngels for all > the help). The good news is that picmi > compiles and runs without any changes to the source code (mingw and KDE > 4.8). > > I have not set up a build with MSVC or KDE trunk, so I can't say > anything about these yet. > > On to specific issues below... > > On 07/25/2012 07:10 AM, Laszlo Papp wrote: >> About picmi: >> >> 1) The makefile is a non-crossplatform specific file in the project >> root. I do not see much value in that file to be honest since it is >> practically a file to avoid a simple alias? I would like to get that >> either removed (my preference) or make cross-platform. NMake or >> preferrably Jom is used on Windows, but you would need to sort out the >> Mac compiler there and the like. I do not think it is worth it in >> comparison with the additional maintainance. > > This is basically a convenience makefile and is not part of the actual > cmake build system (= it can be ignored). Following SaroEngels' > suggestion, it has been renamed to GNUmakefile - this way it should only > be executed by GNU make. > >> 2) find_package(LibKDEGames REQUIRED) -> Broken on Windows. I have >> made a local alering to KDEGames, but I am unsure if that is the real >> fix. My arch box seems to install LibKDEGames.cmake, so probably not. >> Please unbreak this. > > I mentioned this in my initial mail. find_package(LibKDEGames) does not > work for trunk (find_package(KDEGames) does). > > Does everyone here use trunk? If yes, I will change this in the > repository - let me know. > >> 3) Do not use gcc specific compilation options, like /extra please. I >> do not see the real need for that, but if you desperately need that, >> use conditions... > > Thanks, these are now conditionally added (if (CMAKE_COMPILER_IS_GNUCXX)). > >> 4) C:\Projects\picmi\src/settings.h(30) : fatal error C1083: Cannot >> open include file: 'kgamedifficulty.h': No such file or directory -> >> Something is wrong around the private libkdegames topic. > > kgamedifficulty.h is only included if HAVE_KGDIFFICULTY is not set. In > turn, if you are running a recent version of libkdegames, > HAVE_KGDIFFICULTY should be set by > > check_include_file_cxx(kgdifficulty.h HAVE_KGDIFFICULTY) > > (https://github.com/schuay/picmi/blob/master/src/CMakeLists.txt#L19) > > So it seems like cmake is unable to find kgdifficulty.h in your > installation? As discussed in #kde-windows, I will be around later > tonight to follow up on this. > > However, I don't see 2) and 4) as much of an issue - if picmi is > accepted into the kdegames module, all support for the old libkdegames > classes will be removed anyway.
Well, it should be easy to fall back to find_package(KDEGames) if find_package(LibKDEGames) fails (and fail completely if none is found). This way you can also integrate the check for kgdifficulty.h. Except my personal broken setup, picmi seems to build & work nicely now. So Ship It! ;-) > > As always, > thanks for your time and effort, > Jakob > regards, Patrick