diff options
author | Khem Raj <raj.khem@gmail.com> | 2015-12-20 00:05:17 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-02-04 23:45:05 +0000 |
commit | 1e95ebd4c3f8364479c371d2c4bc4f643db3262f (patch) | |
tree | c1c526ee562ae88f5e26283cd8263776409d1b6f /meta-yocto/conf/distro | |
parent | 6594bd543f7f0794448f69a2509147fbec59bc20 (diff) | |
download | poky-1e95ebd4c3f8364479c371d2c4bc4f643db3262f.tar.gz |
poky-tiny: Use musl for default system C library
poky-tiny is reference for smallest footprint distro that can be
generated using yocto project infrastructure. Therefore switch to using
musl which gives the smallest footprint with a lot of extra stretching
for adding new package if needed, core-image-minimal for qemux86 comes
out to be 716K ( rootfs only ), boot tested on qemux86/poky-tiny
(From meta-yocto rev: e1b4918a4f3a19a125537a984ce4dadb79badcea)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta-yocto/conf/distro')
-rw-r--r-- | meta-yocto/conf/distro/poky-tiny.conf | 25 |
1 files changed, 5 insertions, 20 deletions
diff --git a/meta-yocto/conf/distro/poky-tiny.conf b/meta-yocto/conf/distro/poky-tiny.conf index ee84d4039d..0ac46ac0b9 100644 --- a/meta-yocto/conf/distro/poky-tiny.conf +++ b/meta-yocto/conf/distro/poky-tiny.conf | |||
@@ -25,12 +25,12 @@ | |||
25 | # [ ] Define linux-yocto-tiny configs for all supported BSPs | 25 | # [ ] Define linux-yocto-tiny configs for all supported BSPs |
26 | # [ ] Drop ldconfig from the installation | 26 | # [ ] Drop ldconfig from the installation |
27 | # [ ] Modify the runqemu scripts to work with ext2 parameter: | 27 | # [ ] Modify the runqemu scripts to work with ext2 parameter: |
28 | # runqemu qemux86 qemuparams="-nographic" bootparams="console=ttyS0,115200 root=0800" | 28 | # runqemu qemux86 qemuparams="-nographic" bootparams="console=ttyS0,115200 root=0800" |
29 | # [ ] Modify busybox to allow for DISTRO_FEATURES-like confiruration | 29 | # [ ] Modify busybox to allow for DISTRO_FEATURES-like confiruration |
30 | 30 | ||
31 | require conf/distro/poky.conf | 31 | require conf/distro/poky.conf |
32 | DISTRO = "poky-tiny" | 32 | DISTRO = "poky-tiny" |
33 | 33 | TCLIBC = "musl" | |
34 | # FIXME: consider adding a new "tiny" feature | 34 | # FIXME: consider adding a new "tiny" feature |
35 | #DISTRO_FEATURES_append = " tiny" | 35 | #DISTRO_FEATURES_append = " tiny" |
36 | 36 | ||
@@ -57,27 +57,11 @@ ENABLE_WIDEC_class-native = "true" | |||
57 | # eglibc->bash->gettext->libc-posix-clang-wchar dependency. | 57 | # eglibc->bash->gettext->libc-posix-clang-wchar dependency. |
58 | USE_NLS="no" | 58 | USE_NLS="no" |
59 | 59 | ||
60 | # Reconfigure eglibc for a smaller installation | ||
61 | # Comment out any of the lines below to disable them in the build | ||
62 | DISTRO_FEATURES_LIBC_TINY = "libc-libm libc-crypt" | ||
63 | DISTRO_FEATURES_LIBC_TINY_append_x86-64 = " libc-libm-big" | ||
64 | |||
65 | # Required for "who" | ||
66 | DISTRO_FEATURES_LIBC_MINIMAL = "libc-utmp libc-utmpx libc-getlogin" | ||
67 | DISTRO_FEATURES_LIBC_REGEX = "libc-posix-regexp" | ||
68 | DISTRO_FEATURES_LIBC_NET = "libc-inet libc-nis" | ||
69 | |||
70 | DISTRO_FEATURES_LIBC = "${DISTRO_FEATURES_LIBC_TINY} \ | ||
71 | ${DISTRO_FEATURES_LIBC_MINIMAL} \ | ||
72 | ${DISTRO_FEATURES_LIBC_REGEX} \ | ||
73 | ${DISTRO_FEATURES_LIBC_NET} \ | ||
74 | " | ||
75 | |||
76 | # Comment out any of the lines below to disable them in the build | 60 | # Comment out any of the lines below to disable them in the build |
77 | # DISTRO_FEATURES options: | 61 | # DISTRO_FEATURES options: |
78 | # alsa bluetooth ext2 irda pcmcia usbgadget usbhost wifi nfs zeroconf pci | 62 | # alsa bluetooth ext2 irda pcmcia usbgadget usbhost wifi nfs zeroconf pci |
79 | DISTRO_FEATURES_TINY = "pci" | 63 | DISTRO_FEATURES_TINY = "pci" |
80 | DISTRO_FEATURES_NET = "ipv4" | 64 | DISTRO_FEATURES_NET = "ipv4 ipv6" |
81 | DISTRO_FEATURES_USB = "usbhost" | 65 | DISTRO_FEATURES_USB = "usbhost" |
82 | #DISTRO_FEATURES_USBGADGET = "usbgadget" | 66 | #DISTRO_FEATURES_USBGADGET = "usbgadget" |
83 | #DISTRO_FEATURES_WIFI = "wifi" | 67 | #DISTRO_FEATURES_WIFI = "wifi" |
@@ -87,13 +71,14 @@ DISTRO_FEATURES = "${DISTRO_FEATURES_TINY} \ | |||
87 | ${DISTRO_FEATURES_USB} \ | 71 | ${DISTRO_FEATURES_USB} \ |
88 | ${DISTRO_FEATURES_USBGADGET} \ | 72 | ${DISTRO_FEATURES_USBGADGET} \ |
89 | ${DISTRO_FEATURES_WIFI} \ | 73 | ${DISTRO_FEATURES_WIFI} \ |
90 | ${DISTRO_FEATURES_LIBC} \ | ||
91 | " | 74 | " |
92 | 75 | ||
93 | # Enable LFS - see bug YOCTO #5865 | 76 | # Enable LFS - see bug YOCTO #5865 |
94 | DISTRO_FEATURES_append_libc-uclibc = " largefile" | 77 | DISTRO_FEATURES_append_libc-uclibc = " largefile" |
78 | DISTRO_FEATURES_append_libc-musl = " largefile" | ||
95 | 79 | ||
96 | DISTRO_FEATURES_class-native = "${DISTRO_FEATURES_DEFAULT} ${DISTRO_FEATURES_LIBC} ${POKY_DEFAULT_DISTRO_FEATURES}" | 80 | DISTRO_FEATURES_class-native = "${DISTRO_FEATURES_DEFAULT} ${DISTRO_FEATURES_LIBC} ${POKY_DEFAULT_DISTRO_FEATURES}" |
81 | DISTRO_FEATURES_class-nativesdk = "${DISTRO_FEATURES_DEFAULT} ${DISTRO_FEATURES_LIBC} ${POKY_DEFAULT_DISTRO_FEATURES}" | ||
97 | 82 | ||
98 | # Use tmpdevfs and the busybox runtime services | 83 | # Use tmpdevfs and the busybox runtime services |
99 | VIRTUAL-RUNTIME_dev_manager = "" | 84 | VIRTUAL-RUNTIME_dev_manager = "" |