[OE-core] Adding a "tiny" DISTRO_FEATURE and having packages build smaller

Daniel F. Dickinson cshored at thecshore.com
Thu Feb 1 12:55:06 UTC 2018


Hi all,

I'm wondering if is doable and would be accepted to add a "tiny" 
DISTRO_FEATURE that automatically does PACKAGECONFIG += "tiny", and
packages which honour this make choices that build smaller editions 
and/or create smaller binary sub-packages than default (i.e. things that 
can be split out of build packages are, so that a -core or -base package 
has only the minimum, and a one uses metapackages to install expected 
packaging (so ${PN} would by default RDEPEND on ${PN}-base and other 
sub-packages (or other recipes packages/sub-packages) that give the 
'usual' use case for the package, but can be managed in parts for 
systems that are quite small.

Or is the splitting into sub-parts preferred anyway and patches to make 
smaller splits would accepted relatively easily, but usually just don't 
get done because it's more work to have more sub-packages and so it just 
doesn't get done to the level a project like OpenWrt pieces things up, 
and OpenEmbedded usually has more space available than a typical OpenWrt 
device?

I think PACKAGECONFIG[tiny] would really translate into different things 
in different packages (hence the idea of having a top-level flag that
makes it easier to do across the board rather than having to specify 
specific flags for each recipe, except in exceptional circumstances), 
although something like nossl should perhaps be a separate top-level 
flag since even if you want small you probably want some kind of ssl, 
but there may be relevant use cases where nossl would be wanted but 
isn't just about size.  With -tiny one could perhaps emphasize the 
choice of smaller SSL libraries like mbedtls and wolfssl (cyassl) when 
they are an option and warn (or refuse to build) if a big library like 
openssl can't be avoided.

I think that this is needed for e.g. poky-tiny and meta-openwrt to 
really get onto small systems.

Regards,

Daniel



More information about the Openembedded-core mailing list