Providing FindFoo.cmake for a kde module "foo"

Ralf Habacker ralf.habacker at freenet.de
Sun Jul 8 21:26:42 CEST 2007


Andreas Pakulat schrieb:
> On 08.07.07 20:49:23, Ralf Habacker wrote:
>   
>> Andreas Pakulat schrieb:
>>     
>>> On 08.07.07 19:31:49, Andreas Pakulat wrote:
>>>   
>>>       
>>>> On 08.07.07 11:06:32, Matt Rogers wrote:
>>>>     
>>>>         
>>>>> On Jul 8, 2007, at 9:35 AM, Andreas Pakulat wrote:
>>>>>       
>>>>>           
>>>>>> due to a problem (I'd call it a bug actually) in cmake its not  
>>>>>> possible
>>>>>> to install 2 kde modules where one depends on the other into separate
>>>>>> directories (and separate directories from kdelibs). For packaging KDE
>>>>>> module's however its needed that each module is installed into its own
>>>>>> prefix.
>>>>>>         
>>>>>>             
>>>>> You'll need to explain this more clearly. I have no idea what you're  
>>>>> talking about. IIRC, all of KDE needs to be installed in the same  
>>>>> prefix.
>>>>>       
>>>>>           
>>>> That would be a regression over KDE3 and is not needed at all (there
>>>> have recently been some fixes to allow this in the buildsystem).
>>>>     
>>>>         
>>> Ooops, forgot about the more clearly part :)
>>>
>>> But during some trials with cmake it turns out that one can tell cmake
>>> its CMAKE_MODULE_PATH even providing multiple paths:
>>>
>>> cmake -DCMAKE_MODULE_PATH="/dir1;/dir2"
>>>
>>> So actually this is a non-issue, except the totally wrong error message:
>>>
>>> CMake Error: KDevPlatform_DIR is not set.  It must be set to the directory containing KDevPlatformConfig.cmake in order to use KDevPlatform.
>>>   
>>>       
>> I have added the following stuff to a new file in 
>> <kdelibs-install-dir>/lib/kdevplatform/KDevPlatformConfig.cmake
>>
>> if(WIN32)
>>     file(TO_CMAKE_PATH "$ENV{ProgramFiles}" ProgramFiles)
>>     SET(CMAKE_MODULE_PATH  ${CMAKE_MODULE_PATH} 
>> ${ProgramFiles}/kdevplatform/share/apps/cmake/modules)
>>     find_package(KDevPlatform REQUIRED)
>> endif(WIN32)
>>
>> which let me configure kdevelop on win32 without any error.
>>     
>
> Hmm.... So we could generate that file and install it along with
> kdevplatform..
>
> Did you need to add the
> -DKDevPlatform_DIR=<kdelibs-install-dir>/lib/kdevplatform/ ?
>
>   
no.

In the meantime I found a simpler way by appending all pathes from 
KDEDIRS (+ 'share/apps/cmake/module') added to the CMAKE_MODULE_PATH  in 
FindKDE4Internal.cmake. As an alternative the path list generated by 
'kde4-config --path data'  could be added.  This makes it able to use 
cmake modules without any additional effort from *all* KDE install 
locations.

The appended patch provides this support by using KDEDIRS. any problems 
with this patch ?

Ralf


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: kde4internal-set-cmake-module-path-from-kdedirs.patch
Url: http://mail.kde.org/pipermail/kde-buildsystem/attachments/20070708/026a8886/attachment.ksh 


More information about the Kde-buildsystem mailing list