generic-poky/meta/classes
Nitin A Kamble 068417289a image-mklibs.bbclass: add the library optimization functionality
If you want to enable the mklibs library size optimization for your image
then, edit the MKLIBS_OPTIMIZED_IMAGES line in the local.conf like this:

  MKLIBS_OPTIMIZED_IMAGES ?= "poky-image-minimal your-own-image"

Also this will enable the mklibs library size optimization for all images.

  MKLIBS_OPTIMIZED_IMAGES ?= "all"

on qemux86 machine this reduced the rootfs size of poky image-minimal
image from 7.9MB to 7.2MB. That is around 11% image foot print reduction.
That image had 38 elf executables. Generally the size optimization by
mklibs is reversely proportional to the number of elf executables in the
rootfs. So bigger images will see less optimization, and smaller images
will see large image size reductions.

Thanks to mark hatle for his help in implementation of this.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2011-02-09 22:45:47 +00:00
..
autotools.bbclass autotools.bbclass: Drop info directory listings as they're going to be broken if generated at this point and cause file conflicts 2011-02-02 16:56:24 +00:00
autotools_stage.bbclass autotools: deprecate autotools_stage class 2010-04-27 17:11:28 +01:00
base.bbclass meta/classes: Update classes to use new fetcher API 2011-02-07 09:06:37 +00:00
base_srpm.bbclass Rename /openembedded/ -> /meta/ 2006-07-21 10:10:31 +00:00
binconfig.bbclass staging: Use relative path in sysroot-destdir for target recipes 2011-01-21 11:18:37 +00:00
boot-directdisk.bbclass bootimg/boot-directdisk.bbclass: Update afer syslinux changes, fix mbr.bin location and fix dependencies 2010-03-25 14:09:06 +00:00
bootimg.bbclass bitbake: machine specific sysroots implementation 2011-01-25 12:25:46 +00:00
ccache.inc classes: Standardise whitespace in anonymous python methods and factor out functions for more efficent use by bitbake (as also patched in OE) 2006-11-20 09:16:34 +00:00
ccdv.bbclass Fix STAGING_BINDIR for multimachine use by spliting into STAGING_BINDIR and STAGING_BINDIR_NATIVE and adding both to PATH 2006-11-25 10:01:30 +00:00
cmake.bbclass cmake.bbclass: sync from openembedded 2010-08-31 17:19:53 +01:00
cml1.bbclass Rename /openembedded/ -> /meta/ 2006-07-21 10:10:31 +00:00
cpan-base.bbclass cpan.bbclass: use LIBDIR instead of DATADIR 2011-01-12 00:55:48 -08:00
cpan.bbclass cpan.bbclass: add a new parameter EXTRA_PERLFLAGS 2011-01-12 00:55:48 -08:00
cpan_build.bbclass cpan.bbclass: use LIBDIR instead of DATADIR 2011-01-12 00:55:48 -08:00
cross-canadian.bbclass cross-canadian.bbclass: Correct deb package arch. 2011-01-28 17:00:59 +00:00
cross.bbclass cross.bbclass: Move sysroot_stage_all function to the only place that uses it now (gcc-cross-intermediate) 2011-01-26 11:37:32 +00:00
crosssdk.bbclass crosssdk: Drop PACKAGES setting as its set in cross.bbclass already 2011-01-26 12:06:52 +00:00
debian.bbclass debian/kernel/gconf/gtk-icon-cache: PKGDESK/PKG fixes 2009-11-16 10:52:35 +00:00
deploy.bbclass bitbake/sstate: Implement a lookup function to speed up setscene processing 2010-10-05 22:26:33 +01:00
devshell.bbclass devshell: Clean up devshell code so this task doesn't polute the global namespace 2010-12-09 13:16:32 +00:00
distrodata.bbclass distrodata: Update to new fetcher API 2011-02-07 10:23:01 +00:00
distutils-base.bbclass distutils: Sync with OE.dev 2009-12-05 23:18:02 +00:00
distutils-common-base.bbclass distutils(-common-base) bbclass: sync with OE 2011-01-20 21:37:00 +00:00
distutils-native-base.bbclass distutils: Sync with OE.dev 2009-12-05 23:18:02 +00:00
distutils.bbclass distutils(-common-base) bbclass: sync with OE 2011-01-20 21:37:00 +00:00
flow-lossage.bbclass classes: Standardise whitespace in anonymous python methods and factor out functions for more efficent use by bitbake (as also patched in OE) 2006-11-20 09:16:34 +00:00
gconf.bbclass debian/kernel/gconf/gtk-icon-cache: PKGDESK/PKG fixes 2009-11-16 10:52:35 +00:00
gettext.bbclass gettext.bbclass: Set the gettext dependencies correctly for target, cross and native packages 2010-01-05 21:10:47 +00:00
gnome.bbclass gnome.bbclass: Remove autotools_stage reference 2010-11-02 10:15:27 +00:00
gtk-doc.bbclass classes: Add gtk-doc.bbclass 2008-05-15 14:11:13 +00:00
gtk-icon-cache.bbclass gdk-pixbuf: Add 2.22.1 as new recipe 2011-01-20 21:36:56 +00:00
icecc.bbclass Install cross-packages into the native sysroot 2010-04-27 18:29:57 +01:00
image-mklibs.bbclass image-mklibs.bbclass: add the library optimization functionality 2011-02-09 22:45:47 +00:00
image-prelink.bbclass prelink: Enable image wide prelinking 2010-08-12 15:54:39 +01:00
image-swab.bbclass Calculate CCACHE_DIR by calling host's ccache config. 2010-12-17 10:47:02 +00:00
image.bbclass image/package_xx/rootfs_xx.bbclass: move rootfs_xx_log_check(). 2011-01-31 16:58:15 +00:00
imagetest-dummy.bbclass test: add automation framework and sanitytest 2010-07-15 12:48:25 +01:00
imagetest-qemu.bbclass qemuimagetest: Use same image during sanity testing instead of copying a new image for each case 2011-01-20 21:36:57 +00:00
insane.bbclass insane.bbclass: Fix config.log error message 2011-02-08 17:53:15 +00:00
insserv.bbclass bitbake.conf/base.bbclass: Rename the staging directory to sysroots and the populate_staging task to populate_sysroot 2009-11-13 12:15:42 +00:00
kernel-arch.bbclass kernel-arch: x86-64 is no longer a valid architecture, map it to x86 2010-08-13 17:16:19 +01:00
kernel-yocto.bbclass linux-yocto: streamline BSP bootstrapping 2011-02-09 11:11:07 +00:00
kernel.bbclass kernel.bbclass: use defconfig if it exists 2011-02-09 22:44:52 +00:00
lib_package.bbclass lib_package.bbclass: Sync with OE.dev to remove hardcoded layout assumption 2009-11-16 10:53:16 +00:00
libc-package.bbclass libc-package.bbclass: should not rm scsi/*.h 2011-01-17 22:05:10 +00:00
license.bbclass license.bbclass: Add coverage by sstate code (also use cleandirs and dirs task attribures for directory handling) 2011-02-03 12:33:18 +00:00
linux-kernel-base.bbclass linux-kernel-base.bbclass: merge version detection updates from upstream 2010-05-20 14:14:22 +01:00
meta.bbclass Factor ipkg index and conf file creation into package_ipk.bbclass 2007-09-01 22:17:06 +00:00
metadata_scm.bbclass metadata_scm: Ensure that if an SCM isn't present, we dont print a revision of 'fatal:' as it looks bad 2010-10-21 23:26:40 +01:00
mirrors.bbclass base.bbclass: Split up as per the patch in OE.dev by Chris Larson making code more readable and modularised 2010-03-19 23:12:06 +00:00
module-base.bbclass module*.bbclass: set AR to KERNEL_AR during building of kernel modules 2008-01-08 14:40:51 +00:00
module.bbclass module.bbclass: Fix external module version dependencies 2008-05-21 09:35:53 +00:00
module_strip.bbclass kernel/package.bbclass: Handle kernel module stripping centrally 2010-08-10 14:47:41 +01:00
mozilla.bbclass mozilla.bbclass: Fix pkgconfig usage for pkgconfig sysroot 2009-01-23 15:51:44 +00:00
native.bbclass bitbake: machine specific sysroots implementation 2011-01-25 12:25:46 +00:00
nativesdk.bbclass bitbake: machine specific sysroots implementation 2011-01-25 12:25:46 +00:00
oelint.bbclass classes: Sync with OE - mainly quoting fixes or other minor updates 2006-11-20 15:19:39 +00:00
openmoko-base.bbclass classes: Remove and sanitise import statements 2009-11-13 12:15:28 +00:00
openmoko-panel-plugin.bbclass openmoko-panel-gsm: add openmoko-panel-gsm, om-panel-plugin.bbclass, and srvrev 2008-08-08 14:43:09 +00:00
openmoko.bbclass openmoko: added classes needed by openmoko-libs 2007-07-09 14:21:05 +00:00
openmoko2.bbclass classes: Remove and sanitise import statements 2009-11-13 12:15:28 +00:00
package.bbclass package.bbclass: Optimise file dependency calculations to ignore locales and kernel modules as these never have dependencies we'd detect anyway 2011-02-03 20:18:52 +00:00
package_deb.bbclass rootfs_deb/package_deb.bbclass: move func from rootfs_deb to package_deb 2011-02-01 23:59:37 +00:00
package_ipk.bbclass rootfs_ipk/package_ipk.bbclass: Move func from rootfs_ipk to package_ipk 2011-02-01 23:59:37 +00:00
package_rpm.bbclass rootfs_rpm/package_rpm.bbclass: Move func from rootfs_rpm to package_rpm 2011-02-01 23:59:37 +00:00
package_tar.bbclass package_*.bbclass: Always run these tasks under fakeroot 2010-08-19 22:36:26 +01:00
packagedata.bbclass classes: Remove and sanitise import statements 2009-11-13 12:15:28 +00:00
packagehistory.bbclass classes: Remove and sanitise import statements 2009-11-13 12:15:28 +00:00
patch.bbclass meta/classes: Update classes to use new fetcher API 2011-02-07 09:06:37 +00:00
patcher.bbclass Rename /openembedded/ -> /meta/ 2006-07-21 10:10:31 +00:00
pkg_distribute.bbclass Rename /openembedded/ -> /meta/ 2006-07-21 10:10:31 +00:00
pkg_metainfo.bbclass Rename /openembedded/ -> /meta/ 2006-07-21 10:10:31 +00:00
pkgconfig.bbclass pkgconfig.bbclass: No longer default to pkgconfig_stage code (breaks libdrm) 2009-07-07 15:13:56 +01:00
poky-autobuild-notifier.bbclass classes: Drop Handled/NotHandled eventhandler keywords, they don't do anything 2010-12-31 09:51:18 +00:00
poky-image.bbclass poky-image.bbclass: If not including package management, ensure the basics to handle postinstalls in images are present 2011-01-28 18:00:28 +00:00
populate_sdk.bbclass populate_sdk.bbclass/meta-toolchain: Made populate_sdk task more generic 2011-02-01 23:59:38 +00:00
populate_sdk_deb.bbclass populate_sdk_deb.bbclass: Added deb support for populate_sdk task. 2011-02-01 23:59:38 +00:00
populate_sdk_ipk.bbclass populate_sdk_ipk.bbclass: Added ipk support in populate_sdk task. 2011-02-01 23:59:38 +00:00
populate_sdk_rpm.bbclass populate_sdk_rpm.bbclass: Added rpm support for populate_sdk task. 2011-02-01 23:59:38 +00:00
python-dir.bbclass python-dir bbclass: import from OE 2011-01-20 21:37:00 +00:00
qemu.bbclass eglibc: import eglibc_2.12 recipe from OE 2010-08-13 23:37:30 +01:00
qmake2.bbclass qt4: Enable accessibility and sm option for LSB. 2011-01-20 21:37:01 +00:00
qmake_base.bbclass Import files from OE to build WebKit (patch to link icu required) 2007-12-06 10:23:27 +00:00
qt4e.bbclass qt4: add qt4-embedded 4.6.3 from meta-openembedded 2011-02-01 16:10:11 +00:00
qt4x11.bbclass qt4: Bring in improvements from meta-openembedded 2011-02-01 15:57:26 +00:00
relocatable.bbclass relocatable.bbclass: Cover libexecdir 2010-08-12 14:41:30 +01:00
rm_work.bbclass rm_work: Retain package and package-split directories to be consistent with sstate code 2011-02-03 11:34:04 +00:00
rootfs_deb.bbclass rootfs_deb/package_deb.bbclass: move func from rootfs_deb to package_deb 2011-02-01 23:59:37 +00:00
rootfs_ipk.bbclass rootfs_ipk/package_ipk.bbclass: Move func from rootfs_ipk to package_ipk 2011-02-01 23:59:37 +00:00
rootfs_rpm.bbclass rootrs_rpm.bbclass: Disable createrepo for now due to this error: 2011-02-03 11:24:19 +00:00
sanity.bbclass sanity/sstate: Due to the sysroot layout changes, the toolchain bootstrap process changes and the recent pseudo bug, bump the tmpdir layout version number and the sstate version numbers 2011-01-25 12:32:50 +00:00
scons.bbclass classes: Sync various classes with OE for various bugfixes 2007-08-08 20:41:55 +00:00
sdl.bbclass bitbake.conf/base.bbclass: Rename the staging directory to sysroots and the populate_staging task to populate_sysroot 2009-11-13 12:15:42 +00:00
setuptools.bbclass setuptools bbclass: import from OE 2011-01-20 21:37:00 +00:00
singlemachine.bbclass Merge multimachine class into bitbake.conf and create singlemachine.bbclass as a backwards compatibility option 2008-07-17 20:49:48 +00:00
sip.bbclass sip.bbclass: Sync with OE 2007-09-02 11:07:13 +00:00
siteconfig.bbclass bitbake: machine specific sysroots implementation 2011-01-25 12:25:46 +00:00
siteinfo.bbclass siteinfo: add SITECONFIG_SYSROOTCACHE definition in place of hard-coded path 2010-09-10 12:56:56 +01:00
sourcepkg.bbclass classes: Remove and sanitise import statements 2009-11-13 12:15:28 +00:00
src_distribute.bbclass src_distribute: Set EXPORT_FUNCTIONS correctly 2010-11-01 10:48:43 +00:00
src_distribute_local.bbclass classes: Sync various classes with OE for various bugfixes 2007-08-08 20:41:55 +00:00
srec.bbclass classes: Sync with OE - mainly quoting fixes or other minor updates 2006-11-20 15:19:39 +00:00
sstate.bbclass meta/classes: Update classes to use new fetcher API 2011-02-07 09:06:37 +00:00
staging.bbclass staging.bbclass: Only clean out the sysroot if we rerun configure, not at setscene time 2011-01-28 10:28:19 +00:00
syslinux.bbclass syslinux.bbclass: Clean up boot menu title 2008-10-17 08:39:34 +00:00
task.bbclass Factor ipkg index and conf file creation into package_ipk.bbclass 2007-09-01 22:17:06 +00:00
tinderclient.bbclass classes: Drop Handled/NotHandled eventhandler keywords, they don't do anything 2010-12-31 09:51:18 +00:00
tmake.bbclass Remove hardcoded staging layout assumptions 2007-11-12 11:10:08 +00:00
toolchain-scripts.bbclass bitbake: machine specific sysroots implementation 2011-01-25 12:25:46 +00:00
update-alternatives.bbclass update-alternatives.bbclass: don't expand var when appending do_install 2010-11-21 18:17:24 +00:00
update-rc.d.bbclass update-rc.d.bbclass: Changed RDEPENDS for native 2011-01-24 14:09:14 -08:00
utility-tasks.bbclass utility-tasks: Update checkuri to new fetcher API 2011-02-07 10:16:00 +00:00
utils.bbclass meta/classes: Update classes to use new fetcher API 2011-02-07 09:06:37 +00:00
xfce.bbclass Drop AUTOTOOLS_STAGE_PKGCONFIG variable as its not used anywhere 2010-12-05 20:40:03 +00:00
xlibs.bbclass Finally deprecate all legacy do_stage functions. This changes the existing warning 2010-07-22 11:44:28 +01:00