Improved export-sets in CMake
Alexander Neundorf
neundorf at kde.org
Mon Aug 13 20:17:14 UTC 2012
On Monday 04 June 2012, Stephen Kelly wrote:
> Stephen Kelly wrote:
> > Yury G. Kudryashov <urkud.urkud <at> gmail.com> writes:
> >> > After that I'd post to the cmake list for initial feedback.
> >>
> >> `git bisect` tells me that 'Remove cmTargetExport constructor'
> >> (07901863b6) makes test #53 (ExportImport) fail. I fail to understand
> >> why.
> >
> > I looked into this, and the problem is that you do not initialize the
> > FrameworkGenerator member, and the class has no default ctor to
> > initialize
> >
> > it either. You need a line like:
> > te->FrameworkGenerator = frameworkGenerator;
>
> Ah, looks like you figured that out last month.
>
> > Please also add a test or extend the existing test. Also, why is the
> > content of 9bbb00ef9214aef75152f4b8c6147294a57b2103 in a separate commit?
> > It would make sense to add that stuff in the commit that adds the class.
> >
> > Do you have time to finish this feature?
Ok, cmake 2.8.9 has been released.
How does actually the interface for this proposed extension look like ?
Currently I could do the following:
------------------------------------
add_library(foo SHARED foo.c)
install(TARGETS foo EXPORT FooExport DESTINATION lib )
install(TARGETS foo EXPORT FooExportX DESTINATION libx )
install(EXPORT FooExport DESTINATION lib/foo )
install(EXPORT FooExport DESTINATION lib/foo2 )
install(EXPORT FooExportX DESTINATION lib/fooX )
add_library(bar SHARED bar.c)
target_link_libraries(bar foo)
install(TARGETS bar EXPORT BarExport DESTINATION lib )
install(EXPORT BarExport DESTINATION lib/bar )
------------------------------------
and I would get the error with the BarExport export set, that it does not
contain target foo, which it depends on.
Just to show what is possible, I added those two additional install(EXPORT ..)
commands, one where the same export is installed to a different location, and
a second one where the same target is installed to two different locations,
each with a separate export set.
So, how is this intended to be handled ?
Alex
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-buildsystem/attachments/20120813/3e2db6ff/attachment.html>
More information about the Kde-buildsystem
mailing list