Usage of COMPONENT in ECMQtFramework.cmake

Stephen Kelly steveire at gmail.com
Mon May 7 21:44:29 UTC 2012


Alexander Neundorf wrote:

> Hi,
> 
> the COMPONENT argument for install() is used in different ways in the
> frameworks branch.
> 
> This is done:
> 
> set(ECM_TARGET_DEFAULT_ARGS
> #   EXPORT ${PROJECT_NAME}LibraryTargets
>   RUNTIME DESTINATION "${BIN_INSTALL_DIR}" COMPONENT ${PROJECT_NAME}
>   LIBRARY DESTINATION "${LIB_INSTALL_DIR}" COMPONENT ${PROJECT_NAME}
>   ARCHIVE DESTINATION "${LIB_INSTALL_DIR}" COMPONENT ${PROJECT_NAME}
> )
> 
> which is reasonable as long as everything is still in one repository.
> Then there are components like itemmodels, kcoreaddons, etc.

This is probably why it is that way.

> 
> OTOH, there is
> 
> install(FILES
>   "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
>   "${CMAKE_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
>   DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
>   COMPONENT Devel
> )
> 
> so e.g. the Config file for itemmodels doesn't belong to the component
> "itemmodels", but to the component "Devel", while e.g. the Windows lib
> file belongs to "itemmodels", although it is clearly part of the
> development package.

I didn't know that the windows .lib belongs in the dev package.

> 
> Is this intentionally ?
> 
> I'd prefer to put the development files always into a "Devel" component.

Yes.

> Once all libraries have moved into their own repositories, naming the
> component after the library doesn't provide any benefit anymore, or am I
> missing something ?

You're probably right.

Thanks,

Steve.




More information about the Kde-frameworks-devel mailing list