[oe] Why no recipe for openjdk-headless?

Otavio Salvador otavio at ossystems.com.br
Tue Feb 24 17:57:51 UTC 2015


On Tue, Feb 24, 2015 at 2:54 PM, Paul Eggleton
<paul.eggleton at linux.intel.com> wrote:
> On Tuesday 24 February 2015 14:06:41 Otavio Salvador wrote:
>> On Tue, Feb 24, 2015 at 4:00 AM, Bruce, Henry <henry.bruce at intel.com> wrote:
>> > I'm putting together an OS image that includes  a Java headless
>> > application. Having used the openjdk7-jre-headless package on Ubuntu I
>> > was hoping to find a matching recipe, but sadly none exist,.  The
>> > openjdk7-jre recipe requires the X11 distro feature which adds
>> > unnecessary luggage for a small footprint IoT solution. Thanks to a
>> > bbappend from https://github.com/woglinde/meta-java/issues/45 I can
>> > minimize footprint, but a headless recipe would be a better solution.
>> > I'm fairly new to Yocto so could someone explain the challenges of a
>> > headless recipe and where one might start when creating one?
>>
>> Patches are welcome. I think the link you posted has a good base of
>> work done so you could start there and later follow the README file to
>> post the patches here.
>
> Perhaps more concretely, this would presumably be a place where you would use
> PACKAGECONFIG to add and remove the appropriate dependencies and also options
> in EXTRA_OECONF. It looks like that bbappend has a mixture of things that are
> and aren't related to building without X. Henry, I'm not sure if you've come
> across PACKAGECONFIG yet but just in case, here is an example from our
> mpeg2dec recipe:
>
> PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
> PACKAGECONFIG[x11] = "--with-x,--without-x,virtual/libx11 libxext libxv"
>
> (Obviously you'd need to use values appropriate for the openjdk recipe in
> the second line.)

The only drawback I see from the PACKAGECONFIG solution, for this
specific case, is that I can see use cases where one product will use
headless and another use complete Java and this would impose or
machine specific packages or split distros.

However I also think that MOST people will use headless so maybe we
could add the PACKAGECONFIG and default to headless and handle the
exception when it happens...

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750



More information about the Openembedded-devel mailing list