summaryrefslogtreecommitdiff
path: root/meta/classes/image.bbclass
AgeCommit message (Collapse)AuthorFiles
2012-05-06image.bbclass,kernel.bbclass: Use kmod-native instead of module-init-tools-crossKhem Raj1
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-03-21gzip/pigz-native: Install into a prefix to avoid clashing with system binariesRichard Purdie1
Due to the system providing a copy of gzip, we face some issues when we 'shadow' that copy with our own leading to a varient of race type bugs, and issues for example if a dependency such as libz is missing but the binary is still present. We usually rely on our dependency logic to protect us from this but for gzip, we don't have this protection since its not listed by all its users (and doing so would be impractical). This patch installed pigz and gzip into their own directory which we only add to PATH when we explictly want these binaries in much the same way we do with perl-native. This means dependency logic is correct when we use the binary and everything should work well. The patch adds an explict dependency into image.bbclass since the accelerated speed of compression is most appreciated at rootfs time. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-19classes/image: avoid cp race condition when building multiple imagesPaul Eggleton1
Avoid a race condition when building multiple images by ignoring a failure to copy the README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt to DEPLOY_DIR_IMAGE. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-03-13image.bbclass: fix rootfs generation without package management toolsOtavio Salvador1
When building without package management tools the ROOTFS_BOOTSTRAP_INSTALL packages need to be available to provide the bare minimal for rootfs unconfigure postinsts to be on first boot. Those packages where being include in core-image.bbclass' based images however every image needs those available for proper rootfs generation. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2012-03-05meta: Convert getVar/getVarFlag(xxx, 1) -> (xxx, True)Richard Purdie1
Using "1" with getVar is bad coding style and "True" is preferred. This patch is a sed over the meta directory of the form: sed \ -e 's:\(\.getVar([^,()]*, \)1 *):\1True):g' \ -e 's:\(\.getVarFlag([^,()]*, [^,()]*, \)1 *):\1True):g' \ -i `grep -ril getVar *` Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01image-vmdk: Create image_vmdk class and setup image and image_types to use itSaul Wold1
This creates a new image_vmdk class similar to live. The image_vmdk class needs to have a hddimg created by the image-live class, so it inherits it directly. The changes to image_types is to ensure that both live and vmdk images get the ext3 tools and dependencies. Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-29image.bbclass: do not create image manifest link if IMAGE_LINK_NAME is emptyOtavio Salvador1
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-28image_types: Refactor compression code into a generic compression solutionRichard Purdie1
The current approach of adding each different compressed image type doesn't scale. This patch changes the code so compressed images for each form are automatically available using the form <type>.<compression type> in IMAGE_FSTYPES. This doesn't change any existing externally visible behaviour and the image generation process becomes more efficient as a result too. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-26More quoting fixesMartin Jansa1
* We have various variables which are either not quoted at all or are half quoted. This patch fixes the bad exmaples so everything is consistent. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-24image.bbclass: Ensure timestamp matches format used in initscripts after ↵Richard Purdie1
recent changes Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-11Incremental rpm image generationRobert Yang1
Incremental rpm image generation, the rootfs would be totally removed and re-created in the second generation by default, but with INC_RPM_IMAGE_GEN = "1", the rpm based rootfs would be kept, and will do update(remove/add some pkgs) on it. NOTE: This is not suggested when you want to create a productive rootfs For example: 1) Add the follow config option to a conf file: INC_RPM_IMAGE_GEN = "1" 2) bitbake core-image-sato modify a package bitbake core-image-sato The rootfs would not be totally removed and re-created in the second generation, it would be simply updated based on the "package". Implatation: 1) Figure out the pkg which need to be removed or re-installed, then use 'rpm -e to remove the old one. Use the rpm's BUILDTIME to determine which pkg has been rebuilt. 2) Figure out the pkg which is newly added, and use 'rpm -U' to install it. This only for the rpm based rootfs, the deb and ipk based rootfs would be done later. [YOCTO #1651] Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2012-01-06image.bbclass: Use ?= to set LINGUAS_INSTALLDongxiao Xu1
Hob may dynamically sets BBLAYERS to bitbake server, thus we need a flexible way to load LINGUAS_INSTALL value. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-02classes/image: implement generic locale package installationPaul Eggleton1
Let each package-specific rootfs implementation provide basic functions to query the existence of a package and install a list of packages and then have a generic install function so this logic is in one place. Note: unlike previous versions of this code in OE-Core this uses the IMAGE_LINGUAS variable and not IMAGE_LOCALES - note that IMAGE_LINGUAS was what was used in OE-Classic and it is already used in OE-Core in order to install locale-base-*. This will mean that if IMAGE_LINGUAS is left at the default you will now get more packages installed. If you don't want these language support packages then you should set IMAGE_LINGUAS explicitly. This restores locale installation to the same state as OE-Classic, only we now support all the packaging backends. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2011-12-08bitbake.conf/image.bbclass: Ensure images use the correct passwd/group filesRichard Purdie1
We need pseudo to use the rootfs passwd/group files belonging to the rootfs when building images. This patch ensures that we use the rootfs files instead of those in the sysroot which can lead to incorrect file ownership issues. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10Convert to use direct access to the data store (instead of bb.data.*Var*())Richard Purdie1
This is the result of running the following over the metadata: sed \ -e 's:bb.data.\(setVar([^,()]*,[^,()]*\), *\([^ )]*\) *):\2.\1):g' \ -e 's:bb.data.\(setVarFlag([^,()]*,[^,()]*,[^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^() ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -i `grep -ril bb.data *` Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-08Add new IMAGE_CLASSES variable for classes for image generationMatthew McClintock1
Allows us to import classes only for images and not to the global namespace Signed-off-by: Matthew McClintock <msm@freescale.com>
2011-11-08multilib: Drop MULTILIB_IMAGE_INSTALLDongxiao Xu1
There should just be a single IMAGE_INSTALL variable. If the package backends need this split into different multilib components they should be responsible for doing this, not the user. This commit removes the MULTILIB_IMAGE_INSTALL variable. [YOCTO #1564] Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-06image.bbclass: No need to run most tasks except do_rootfsRichard Purdie1
Running fetch/unpack/patch/compile/install etc. is pointless since the only image task that does anything is the rootfs task. Hence mark the useless tasks as noexec so we don't bother running them. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-04image.bbclass: improve comments regarding exported functionsOtavio Salvador1
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2011-09-16image/package.bbclass: Revise multilib support for DEBIAN_NAME.Lianhao Lu1
[YOCTO #1486] 1. image.bbclass: In multilib_sanity_check, duplicated files except those matching to MULTILIBRE_ALLOW_REP are allowed if they're equal. 2. pacakge.bbclass: Allow DEBIAN_NOAUTONAMES variable to be automatically mapped in multilib case. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-08-30image.bbclass: use ${TARGET_PREFIX}depmodChris Larson1
Currently it uses ${TARGET_SYS}-. This is inconsistent, as the recipe and kernel bbclass both use the prefix. While there aren't many cases where the two differ, it is harmless to ensure that we are behaving consistently. Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23image.bbclass, kernel.bbclass: remove non-standard -n option from cp commandPaul Eggleton1
-n is not a POSIX option and does not work on some systems (e.g. Debian Lenny); in any case it is not strictly necessary here, so remove it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-18image.bbclass, kernel.bbclass: create warning file about deleting deploydir ↵Paul Eggleton1
files New users sometimes delete files in tmp/deploy/images assuming they will be re-created just by re-running the build, and then are confused when this doesn't work. To discourage people from doing this, create a file called README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt in tmp/deploy/images containing an explanation of what needs to be done to re-create files there. Fixes [YOCTO #1315] and [YOCTO #1346]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2011-08-10image: add support for generally useful {dev,doc,dbg}-pkgs featuresChris Larson1
Signed-off-by: Chris Larson <chris_larson@mentor.com>
2011-08-10image: implement IMAGE_FEATURESChris Larson1
IMAGE_FEATURES is analagous to DISTRO_FEATURES and MACHINE_FEATURES, for root filesystem construction. Currently, the only supported features are any defined package groups, as used by the oe.packagegroup python module. Example usage: PACKAGE_GROUP_myfeature = "vim iptables" IMAGE_FEATURES += "myfeature" Signed-off-by: Chris Larson <chris_larson@mentor.com>
2011-07-27image.bbclass: Added variables for multilib support.Lianhao Lu1
1. Added MULTILIB_PACKAGE_INSTALL for multilib instances of packages to be installed in the rootfs. 2. MULTILIBRE_ALLOW_REP contains the regular expression to match the files allow to be replaced by the conflicting files. 3. MULTILIBRE_FORCE_SAME contains the regular expression to match the files allow to be replaced only if the conflicting files are identical. 4. Added shell function multilib_sanity_check() to check whether the overwring for multilib situation is allowed. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-07-27classes/image*: Revamp creation of live imagesSaul Wold1
This creates a live image as an IMAGE_FSTYPES, thus removing the need to have additional -live.bb recipes. To create a live image one just needs to add live to the IMAGE_FSTYPES list Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-07-08image.bbclass: Add LINGUAS_INSTALL to dependency listRichard Purdie1
Currently if there are locales to install in the image the appropriate packages might not automatically get built since there is no dependency being exposed to bitbake. This patch exposes the missing dependencies to bitbake through the RDEPENDS field hence ensuring images build successfully when locales are added but not depended upon anywhere else in the build. [YOCTO #1215] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-01image|kernel.bblass|module-init-tools: do not use depmod-2.6Anders Darander1
Change to only depend on virtual/*/depmod. Change all calls to only use depmod. Do not install depmod as depmod-2.6 Bump PR in module-init-tools-cross. Signed-off-by: Anders Darander <anders@chargestorm.se> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-30Add umask task controlMark Hatle1
Bitbake now allows the umask to be specified per task. The following tasks will have a umask of 022 set by default: do_configure do_compile do_install do_package do_populate_sysroot do_rootfs do_configure and do_compile need a umask of 022 set because -many- recipes directly copy generated files out of recipe's build directory. Instead of fixing each existing and future recipe, it was shown to be much easier to just set the umask. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-05-17task-core-nfs/image.bbclass: Fix some libc overridesRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-17image.bbclass: use soft assignment for LDCONFIGDEPENDPhil Blundell1
This allows distros that don't want ldconfig to turn it off. Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-20Rename the remaining poky-* scripts to oe-* or runqemu-*Richard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-05image.bbclass: Disable ldconfig-native when using uclibcRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-04image.bbclass: make execution ldconfig verboseNitin A Kamble1
The failure of ldconfig was not getting logged anywhere before. Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2011-03-29image.bbclass: Remove uneeded do_populate_sysroot requirement for imagesRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-29image.bbclass: Add dependencies on native versions of update-alternatives ↵Richard Purdie1
and updated-rc.d explicitly Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-29base/kernel/image.bbclass: Clean up do_deploy ordering to ensure it just ↵Richard Purdie1
happens before a build completes Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-24bitbake.conf/image.bbclass: Move image type information into image_types.bbclassRichard Purdie1
Image generation code in .conf files is hard to read as it needs to be single line. By moving this to a separate class, multiline functions can be used instead improving readability. It also declutters bitbake.conf. There is no real functional change with this patch but it highlights the need for improvements in places such as the IMAGE_EXTRA_OPTION ext* specific variable which makes no sense. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-24image.bbclass: Move ROOTFS_SIZE into runimagecmd() functionRichard Purdie1
Image type specific size overrides for IMAGE_ROOTFS were being ignored. Moving the size calculation to after the overide expansion point addresses this problem. [YOCTO #928] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-24image.bbclass: Improve readability of the image generation codeRichard Purdie1
The quoting in get_imagecmds() is hard to read. We can simplify the constuction a little to make this easier to parse and reduce complexity slightly. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-16image.bbclass: Disable shell debug messagesMark Hatle1
By default image had a "set -x" to enable shell debug messages, this adds a lot of overhead to the system due to logging. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-01-31image/package_xx/rootfs_xx.bbclass: move rootfs_xx_log_check().Lianhao Lu1
Move function rootfs_xx_log_check() from rootfs_xx.bbclass to relevant package_xx.bbclass. (Where xx is rpm/ipk/deb). Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-01-14image.bbclass: Use the dedicated BB_WORKERCONTEXT, not bitbake internals to ↵Richard Purdie1
detect context Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2010-11-14image.bbclass/initscripts: Make /etc/timestamp usage consistent.Gary Thomas1
Timestamp is kept in UTC Remove superfluous 'create_etc_timestamp()' function - seems to be a duplicate of 'rootfs_update_timestamp()' Remove External function reference [sgw@linux.intel.com: merged 2 patches and cleanup commit message] Signed-off-by: Gary Thomas <gary@mlbassoc.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2010-10-07rootfs_rpm: Add lock file in the rpm deploy directory to allow mutliple ↵Richard Purdie1
rootfs creation tasks to coexist without breaking each other Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-09-08image.bbclass: change IMAGE_EXTRA_SPACE to IMAGE_OVERHEAD_FACTORSaul Wold1
This change allows the IMAGE_OVERHEAD_FACTOR (default to 1.2) to adjust dynamicly how much space to add for each image, thus there is 20% overhead space by default. Signed-off-by: Saul Wold <Saul.Wold@intel.com>
2010-07-16Use pseudo rather than fakeroot for fake root privilegesJoshua Lock1
Make use of the ability to configure the fake root provider and use Wind River's pseudo utility. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-07-15test: add automation framework and sanitytestJiajun Xu1
Automation test is disabled by default. User need set TESTCLASS to qemu in conf/local.conf and run bitbake command "bitbake poky-image-xxx" or "bitbake poky-image-xxx -c qemuimagetest" to trigger it. Currently only the sanity test with two testcases are added. To run the test, user need prepare a testing environment: 1) "expect" should be installed on system 2) NOPASSWD should be set for user to run bitbake Signed-off-by Jiajun Xu <jiajun.xu@intel.com>
2010-07-02image.bbclass: Don't perform mapping renaming until we're running the task ↵Richard Purdie1
itself. Need to extend bitbake to provide this information rather than refer to a bitbake internal variable. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>