Why are KDE includes installed with COMPONENT Devel?
Alexander Neundorf
neundorf at kde.org
Mon Jun 20 21:29:44 CEST 2011
On Monday 20 June 2011, Stephen Kelly wrote:
> Andreas Pakulat wrote:
> > No, its also usable on the commandline with a make install
> > CMAKE_INSTALL_COMPONENT=Devel. This could in theory be used to make it
> > easier to generate binary packages in distro scripts, since there don't
> > need to be any manual selection of files/folders to fetch only parts of
> > a full install tree for the -devel package.
>
> Could you say more exactly home to do a component installation?
>
> I tried
>
> cmake -DCMAKE_INSTALL_COMPONENT=Devel && make && make install
>
> But that seems to install everything.
Yes. CMAKE_INSTALL_COMPONENT is a variable just used in the
cmake_install.cmake script, so it must be given when running this script.
"make install" basically does "cmake -P cmake_install.cmake".
In script mode (-P) no cache or anything is read, just the given script file
is executed, so at this moment it doesn't matter whether
CMAKE_INSTALL_COMPONENT is in the cache or not.
> I also found:
>
> http://www.cmake.org/pipermail/cmake/2006-October/011362.html
>
> But when I run
>
> cmake -DCOMPONENT=Runtime -P cmake_install.cmake
>
> it does not also install the dependency component of Runtime. Ie, set with:
>
> set(CPACK_COMPONENT_RUNTIME_DEPENDS OtherComponent)
Puh, don't know about that one.
Did you have a look at the cmake_install.cmake script already ?
They are quite straightforward.
I guess that CPACK_COMPONENT_RUNTIME_DEPENDS is used by cpack and then calls
cmake -P cmake_install.cmake multiple times.
grep says it is used in cmPackGenerator.cxx.
So, when you set this variable, and then run cpack/make package with
component support I think it should be used.
> That's an old thread, so if there's a more modern way of doing this I'd
> like to try it before filing a bug.
I didn't follow the cpack development too closely since Eric Noulard is
basically taking care of it.
Alex
More information about the Kde-buildsystem
mailing list