* [PATCH 0/1] Restore poky-tiny without eglibc wchar changes
@ 2012-01-05 23:37 Darren Hart
2012-01-05 23:37 ` [PATCH 1/1] distro: Add poky-tiny distro definition Darren Hart
0 siblings, 1 reply; 3+ messages in thread
From: Darren Hart @ 2012-01-05 23:37 UTC (permalink / raw)
To: Richard Purdie, Khem Raj, Yocto Project, Chris Larson, philb,
Koen Kooi
Restore the poky-tiny distro definition addressing concerns raised on the list.
Rather than conditionally drop eglibc-utils based on wchar support, this
version sets USE_NLS="no" in the distro config to avoid pulling in gettext.
Also addresses some confusion over the "All rights reserved." statement by
explicitly referencing the MIT license.
The following changes since commit 7f837eb05f924996c89283ec8b74e46f6b5cd343:
bitbake/runqueue: Improve the setscene logging (2012-01-05 13:04:19 +0000)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib dvhart/tiny
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dvhart/tiny
Darren Hart (1):
distro: Add poky-tiny distro definition
meta-yocto/conf/distro/poky-tiny.conf | 110 +++++++++++++++++++++++++++++++++
1 files changed, 110 insertions(+), 0 deletions(-)
create mode 100644 meta-yocto/conf/distro/poky-tiny.conf
--
1.7.6.4
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 1/1] distro: Add poky-tiny distro definition
2012-01-05 23:37 [PATCH 0/1] Restore poky-tiny without eglibc wchar changes Darren Hart
@ 2012-01-05 23:37 ` Darren Hart
2012-01-06 11:34 ` Richard Purdie
0 siblings, 1 reply; 3+ messages in thread
From: Darren Hart @ 2012-01-05 23:37 UTC (permalink / raw)
To: Richard Purdie, Khem Raj, Yocto Project, Chris Larson, philb,
Koen Kooi
Poky-tiny is intended for building very small OS images. The distro
definition sets the providers for the kernel and the runtime services.
It also drops NLS support and reduces the eglibc component list and
other DISTRO_FEATURE elements.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
meta-yocto/conf/distro/poky-tiny.conf | 110 +++++++++++++++++++++++++++++++++
1 files changed, 110 insertions(+), 0 deletions(-)
create mode 100644 meta-yocto/conf/distro/poky-tiny.conf
diff --git a/meta-yocto/conf/distro/poky-tiny.conf b/meta-yocto/conf/distro/poky-tiny.conf
new file mode 100644
index 0000000..411347a
--- /dev/null
+++ b/meta-yocto/conf/distro/poky-tiny.conf
@@ -0,0 +1,110 @@
+# Distribution definition for: poky-tiny
+#
+# Copyright (c) 2011, Intel Corporation.
+# All rights reserved.
+#
+# This file is released under the MIT license as described in
+# ../meta/COPYING.MIT.
+#
+# Poky-tiny is intended to define a tiny Linux system comprised of a
+# Linux kernel tailored to support each specific MACHINE and busybox.
+# Poky-tiny sets some basic policy to ensure a usable system while still
+# keeping the rootfs and kernel image as small as possible.
+#
+# The policies defined are intended to meet the following goals:
+# o Serial consoles only (no framebuffer or VGA console)
+# o Basic support for IPV4 networking
+# o Single user ash shell
+# o Static images (no support for adding packages or libraries later)
+# o Read-only or RAMFS root filesystem
+# o Combined Linux kernel + rootfs in under 4MB
+# o Allow the user to select between eglibc or uclibc with the TCLIBC variable
+#
+# This is currently a partial definition, the following tasks remain:
+# [ ] Integrate linux-yocto-tiny ktype into linux-yocto
+# [ ] Define linux-yocto-tiny configs for all supported BSPs
+# [ ] Drop ldconfig from the installation
+# [ ] Modify the runqemu scripts to work with ext2 parameter:
+# runqemu qemux86 qemuparams="-nographic" bootparams="console=ttyS0,115200 root=0800"
+# [ ] Modify busybox to allow for DISTRO_FEATURES-like confiruration
+
+require conf/distro/poky.conf
+DISTRO = "poky-tiny"
+
+# FIXME: consider adding a new "tiny" feature
+#DISTRO_FEATURES_append = " tiny"
+
+# Distro config is evaluated after the machine config, so we have to explicitly
+# set the kernel provider to override a machine config.
+PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-tiny"
+PREFERRED_VERSION_linux-yocto-tiny = "3.0%"
+
+# We can use task-core-boot, but in the future we may need a new task-core-tiny
+#POKY_DEFAULT_EXTRA_RDEPENDS += "task-core-boot"
+# Drop kernel-module-af-packet from RRECOMMENDS
+POKY_DEFAULT_EXTRA_RRECOMMENDS = ""
+
+# FIXME: what should we do with this?
+TCLIBCAPPEND = ""
+
+# Disable wide char support for ncurses as we don't include it in
+# in the LIBC features below.
+ENABLE_WIDEC="false"
+
+# Drop native language support. This removes the
+# eglibc->bash->gettext->libc-posix-clang-wchar dependency.
+USE_NLS="no"
+
+# Reconfigure eglibc for a smaller installation
+# Comment out any of the lines below to disable them in the build
+DISTRO_FEATURES_LIBC_TINY = "libc-libm libc-crypt"
+# Required for "who"
+DISTRO_FEATURES_LIBC_MINIMAL = "libc-utmp libc-getlogin"
+DISTRO_FEATURES_LIBC_REGEX = "libc-posix-regexp"
+DISTRO_FEATURES_LIBC_NET = "libc-inet libc-nis"
+
+DISTRO_FEATURES_LIBC = "${DISTRO_FEATURES_LIBC_TINY} \
+ ${DISTRO_FEATURES_LIBC_MINIMAL} \
+ ${DISTRO_FEATURES_LIBC_REGEX} \
+ ${DISTRO_FEATURES_LIBC_NET} \
+ "
+
+# Comment out any of the lines below to disable them in the build
+# DISTRO_FEATURES options:
+# alsa bluetooth ext2 irda pcmcia usbgadget usbhost wifi nfs zeroconf pci
+DISTRO_FEATURES_TINY = "pci"
+DISTRO_FEATURES_NET = "ipv4"
+DISTRO_FEATURES_USB = "usbhost"
+#DISTRO_FEATURES_USBGADGET = "usbgadget"
+#DISTRO_FEATURES_WIFI = "wifi"
+
+DISTRO_FEATURES = "${DISTRO_FEATURES_TINY} \
+ ${DISTRO_FEATURES_NET} \
+ ${DISTRO_FEATURES_USB} \
+ ${DISTRO_FEATURES_USBGADGET} \
+ ${DISTRO_FEATURES_WIFI} \
+ ${DISTRO_FEATURES_LIBC} \
+ "
+
+# Use tmpdevfs and the busybox runtime services
+VIRTUAL-RUNTIME_dev_manager = ""
+VIRTUAL-RUNTIME_login_manager = ""
+VIRTUAL-RUNTIME_init_manager = ""
+VIRTUAL-RUNTIME_keymaps = ""
+
+# FIXME: Consider adding "modules" to MACHINE_FEATURES and using that in
+# task-core-base to select modutils-initscripts or not. Similar with "net" and
+# netbase.
+
+# By default we only support ext2 and initramfs. We don't build live as that
+# pulls in a lot of dependencies for the live image and the installer, like
+# udev, grub, etc. These pull in gettext, which fails to build with wide
+# character support.
+IMAGE_FSTYPES = "ext2 cpio.gz"
+
+# Drop v86d from qemu dependency list (we support serial)
+# Drop grub from meta-intel BSPs
+# FIXME: A different mechanism is needed here. We could define -tiny
+# variants of all compatible machines, but that leads to a lot
+# more machine configs to maintain long term.
+MACHINE_ESSENTIAL_EXTRA_RDEPENDS = ""
--
1.7.6.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 1/1] distro: Add poky-tiny distro definition
2012-01-05 23:37 ` [PATCH 1/1] distro: Add poky-tiny distro definition Darren Hart
@ 2012-01-06 11:34 ` Richard Purdie
0 siblings, 0 replies; 3+ messages in thread
From: Richard Purdie @ 2012-01-06 11:34 UTC (permalink / raw)
To: Darren Hart; +Cc: philb, Yocto Project
On Thu, 2012-01-05 at 15:37 -0800, Darren Hart wrote:
> Poky-tiny is intended for building very small OS images. The distro
> definition sets the providers for the kernel and the runtime services.
> It also drops NLS support and reduces the eglibc component list and
> other DISTRO_FEATURE elements.
>
> Signed-off-by: Darren Hart <dvhart@linux.intel.com>
> ---
> meta-yocto/conf/distro/poky-tiny.conf | 110 +++++++++++++++++++++++++++++++++
> 1 files changed, 110 insertions(+), 0 deletions(-)
> create mode 100644 meta-yocto/conf/distro/poky-tiny.conf
I'd already restored the file but I've merged the delta with an
appropriate commit message to resolve this, thanks.
Richard
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-01-06 11:35 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-01-05 23:37 [PATCH 0/1] Restore poky-tiny without eglibc wchar changes Darren Hart
2012-01-05 23:37 ` [PATCH 1/1] distro: Add poky-tiny distro definition Darren Hart
2012-01-06 11:34 ` Richard Purdie
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.