Problems with ECM / FindKDE4Internal and plasma-framework

Ben Cooksley bcooksley at kde.org
Fri Feb 8 01:40:57 UTC 2013


On Fri, Feb 8, 2013 at 11:16 AM, Alexander Neundorf <neundorf at kde.org> wrote:
> On Thursday 07 February 2013, Ben Cooksley wrote:
>> On Fri, Feb 8, 2013 at 6:38 AM, Alexander Neundorf <neundorf at kde.org> wrote:
>> > On Thursday 07 February 2013, Ben Cooksley wrote:
>> >> On Thu, Feb 7, 2013 at 7:34 AM, Alexander Neundorf <neundorf at kde.org>
> wrote:
>> >> > On Tuesday 05 February 2013, Alexander Neundorf wrote:
>> >> >> On Monday 04 February 2013, Ben Cooksley wrote:
>> >> >> > Hi all,
>> >> >> >
>> >> >> > Currently the KDE CI system is unable to build the newly created
>> >> >> > 'plasma-framework' repository. Through some debugging I have
>> >> >> > determined that although all appropriate environment variables are
>> >> >> > set correctly (to the best of my knowledge) it seems that CMake is
>> >> >> > simply blind, or something (likely in ECM) is making it blind.
>> >>
>> >> Hi Alex,
>> >>
>> >> > how is plasma-framework trying to find the installed kdelibs from the
>> >> > frameworks branch ?
>> >> > AFAIK this is not possible.
>> >> > If it does
>> >> > find_package(KDE4)
>> >> > this does not work.
>> >> > FindKDE4.cmake coming with cmake searches for kde4-config, but the
>> >> > frameworks branch installs kde5-config, so no chance of being found.
>> >> > Are they doing something else ?
>> >>
>> >> Please see
>> >> https://projects.kde.org/projects/playground/libs/plasma-framework/repos
>> >> it ory/revisions/master/entry/CMakeLists.txt
>> >>
>> >> It appears they are running
>> >>
>> >>    find_package(KDE4Internal REQUIRED)
>> >>
>> >> From all indications, this should work, as kdelibs frameworks is
>> >> installing a FindKDE4Internal.cmake file.
>> >
>> > Wow, what a mess ;-)
>> > Don't know where to start.
>> >
>> > FindKDE4Internal.cmake is a find-module, and cmake does not "search"
>> > those, it expects them to be either in its own share/cmake/Modules/
>> > directory or in CMAKE_MODULE_PATH.
>> > So it can't be found.
>> > Probably you can run cmake -
>> > DCMAKE_MODULE_PATH=/where/kf5/is/share/cmake/modules and it seems to work
>> > when.
>>
>> I see. From my testing, it also seems that CMake does seem to care if
>> a environment variable CMAKE_MODULE_PATH is set.
>> Is this correct?
>>
>> If so, I wonder why it works for everything else but Frameworks stuff.
>> If Extra-CMake-Modules is blocking an environment variable from
>> working i'd appreciate it if it didn't, because environment variables
>> are *far* more convenient for build.kde.org compared to CMake
>> arguments.
>
> No, e-c-m does not block anything from working.
> Find-modules should not be searched, it's their task to search, not to be
> found.

I see.

>
> I am working on the plasma buildsystem right now.

Thanks for fixing the Plasma Framework build system Alex, much appreciated.
The build now passes the CMake stage without a hitch on build.kde.org.

http://build.kde.org/job/plasma-framework_master_qt5/53/consoleText

>
> Alex

Regards,
Ben


More information about the Kde-buildsystem mailing list