Re: [yocto] Select make target for cmake

2015-12-15 Thread Burton, Ross
On 15 December 2015 at 07:42, Philipp, Damian 
wrote:

> However, I did eventually find a solution. A yocto recipe can have
> multiple packages as output. In fact, the default seems to be to create
> ${PN}, ${PN}-dev and ${PN}-dbg packages. I simply added ${PN}-client and
> ${PN}-client-dbg and manually sorted all the client files into those
> packages using the FILES_* variables. You then get a clean separation of
> client- and server packages and can install either or both using, e.g.,
> INSTALL_IMAGE.
>

Yep, that's the ideal solution: build it all and use packages to control
what is installed.

Ross
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


Re: [yocto] Select make target for cmake

2015-12-14 Thread Philipp, Damian
Hello,

> From: Burton, Ross [mailto:ross.bur...@intel.com] 
> Sent: Thursday, December 10, 2015 10:57 PM
> A clearer way would be to do:
> 
> do_compile() {
>    oe_runmake server
> }
>
> It's possible that the compile phase is building just the server, but then 
> install is building and installing everything.

I tried your suggestion - indeed, cmake is then building the remaining binaries 
in the install phase. Furthermore, it appears that cmake itself is lacking 
support for multiple install targets.

However, I did eventually find a solution. A yocto recipe can have multiple 
packages as output. In fact, the default seems to be to create ${PN}, ${PN}-dev 
and ${PN}-dbg packages. I simply added ${PN}-client and ${PN}-client-dbg and 
manually sorted all the client files into those packages using the FILES_* 
variables. You then get a clean separation of client- and server packages and 
can install either or both using, e.g., INSTALL_IMAGE.

Regards
Damian
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


Re: [yocto] Select make target for cmake

2015-12-10 Thread Burton, Ross
On 10 December 2015 at 17:24, Philipp, Damian 
wrote:

> A Google search didn't turn up anything, so I looked through
> cmake.bbclass, autotools.bbclass and base.bbclass. The source indicated
> that the variable EXTRA_OEMAKE could be abused to inject a make target -
> however, setting EXTRA_OEMAKE = "server" in my recipe did *not* exclude the
> client binaries from the resulting image. In any case, I would prefer a
> clean solution over abusing implementation details.


A clearer way would be to do:

do_compile() {
oe_runmake server
}

It's possible that the compile phase is building just the server, but then
install is building and installing everything.

Ross
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


[yocto] Select make target for cmake

2015-12-10 Thread Philipp, Damian
Hello Yocto experts,

Is it possible to specify a make target (e.g., "make server" or "make client") 
in a recipe using cmake? I am writing a set of recipies for a software that is 
built from a single source tree and thus a single CMake configuration. The 
CMake configuration currently contains 3 targets, resulting in 3 separate 
binaries. We would like to control how these binaries are distributed to 
packages - currently we'd like to have bitbake build one package with the main 
application (e.g., a server application) and another package containing all 
other binaries (e.g., a set of client applications).

A Google search didn't turn up anything, so I looked through cmake.bbclass, 
autotools.bbclass and base.bbclass. The source indicated that the variable 
EXTRA_OEMAKE could be abused to inject a make target - however, setting 
EXTRA_OEMAKE = "server" in my recipe did *not* exclude the client binaries from 
the resulting image. In any case, I would prefer a clean solution over abusing 
implementation details.

Regards,
Damian

-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto