[cmake-developers] Remaining issues around umbrella Config files?

Stephen Kelly steveire at gmail.com
Mon Jan 21 17:40:00 EST 2013


Stephen Kelly wrote:

> Alexander Neundorf wrote:
> 
>> On Monday 21 January 2013, Stephen Kelly wrote:
> 
>>> I didn't closely follow the threads around this. Is there any other
>>> behavior that I should account for here?
>> 
>> Seems ok.
>> 
>> Minor nitpick:
>> I would probably prefer an error message which mentions component and the
>> exact name of the expected config-file instead of the generic
>> find_package() error message.
> 
> Sorry, I don't understand. Could you be more specific and write the error
> you expect?
> 
>> Also, since in the patch you only have
>> find_package() check in ${_qt5_install_prefix}, I think the error message
>> should mention where it expects this file exactly.
> 
> Generically, it could be in one of (for example):
> 
>  ${_qt5_install_prefix}/Qt5QuickConfig.cmake
>  ${_qt5_install_prefix}/Qt5Quick/Qt5QuickConfig.cmake
>  ${_qt5_install_prefix}/lib/cmake/Qt5Quick/Qt5QuickConfig.cmake
>  // etc
> 
> so, in the general case for umbrella config files, the prefix is the best
> we can put in the error message (and I already do, in the patch).
> 
> I was thinking though that as Qt puts all cmake files in
> 
>  ${_qt5_install_prefix}/lib/cmake/<name>
> 
> that I could put that in the error message. Is that what you meant too?
> 

I've now updated the patch to generate this in the case of not-found non-
optional components:

  Failed to find Qt5 component "Qml" config file at
  "/home/stephen/dev/prefix/qtbase/lib/cmake/Qt5Qml/Qt5QmlConfig.cmake"

I notice there does not seem to be any way to warn about why missing 
optional components are missing. Is that a missing feature? I mean, when I 
do this:

 find_package(Qt5 COMPONENTS Qml)

Qt5 is not found, and the warning is printed. However, with:

 find_package(Qt5 OPTIONAL_COMPONENTS Qml)

Qt5 *is* found, and no warning can be printed.

Bug or feature?

Thanks,

Steve.





More information about the cmake-developers mailing list