summaryrefslogtreecommitdiff
path: root/meta/classes
AgeCommit message (Collapse)AuthorFiles
2014-01-24kernel.bbclass: Stop bundle_initramfs thwarting sstate cache and fix raceMike Crowe1
The new do_bundle_initramfs task introduced in 609d5a9ab9e58bb1c2bcc2145399fbc8b701b85a defeats using the sstate cache. The kernel is resurrected from the sstate cache but ends up being built again since do_bundle_initramfs depends on do_compile. The task is no longer nostamp to avoid causing unnecessary rebuilds. The sstate checksum stamps should know when to rebuild. The task now runs before do_deploy and part of the work has been moved to do_deploy where it now writes to ${DEPLOYDIR} rather than ${DEPLOY_DIR_IMAGE} so that the files end up in sstate. The task can also race against do_install since both call into the kernel build system. This is fixed by making do_bundle_initramfs run after do_install (which therefore also fixes the problem that 3baa63b4d588c3262254528b406ede265dd117bf was addressing.) (From OE-Core master rev: 55989cb509340bd265d0ce0d8bfe849681be4616) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2014-01-24Revert "kernel.bbclass: move bundle_initramfs after kernel_link_vmlinux"Mike Crowe1
This reverts commit 3baa63b4d588c3262254528b406ede265dd117bf. It broke builds that aren't using kernel-yocto. (From OE-Core master rev: 81831db1c32afa3346f3ed9f4325ad280e5bb005) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12image-mklibs: ensure sysroot is correctly set when calling gccNicolas Dechesne1
[YOCTO #2519] When getting gcc from sstate, it is possible to get a gcc with a bogus sysroot configuration, as discussed in [1] or in [YOCTO #2519]. mklibs script will eventually call gcc, so we need to make sure that it provides gcc with the right sysroot location. [1] http://lists.openembedded.org/pipermail/openembedded-core/2013-September/084159.html (From OE-Core master rev: 3a66dd762e493ad2cda57110be67c3b06628050a) Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12rootfs_*.bbclass: List which post-install scripts can not be runJeffrey C Honig3
When preping a read-only rootfs and finding some post-install scripts that can not be run, list the names of said scripts to avoid having to look around the rootfs to find a list. (From OE-Core master rev: 0188120691f433fdccf71b92618115195278c0af) Signed-off-by: Jeffrey C Honig <jeffrey.honig@windriver.com> Signed-off-by: Jeff Polk <jeff.polk@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12package_rpm.bbclass: Replace -linux-gnun32 with -linux.* in RPM platform fileLei Liu1
On a multilib system when one of the multibs has a different OS then other multilibs a failure can occur during the install process because RPM assumes all systems have the same OS. When an n32 platform is selected as an alternative multilib, it shows up as mips64_n32-.*-linux-gnun32 in /etc/rpm/platform. This causes problems when the smart tool tries to add a channel for the multilib. RPM archScore call always returns zero for arch "mips64_n32" - after appending default vendor and os, it finds "mips64_n32-wrs-linux" doesn't match any predefined platforms. Fix this by removing the restriction of -gnun32 suffix in platform file. (From OE-Core master rev: d9489c44ee4f195ae1b09f340b9545cddba58145) Signed-off-by: Lei Liu <lei.liu2@windriver.com> Signed-off-by: Jeff Polk <jeff.polk@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12base.bbclass: Fix incorrect setting of multilib PREFERRED_PROVIDER_virtual_pkgLei Liu1
PREFERRED_PROVIDER_virtual_pkg has been incorrectly set with more than one multilib prefixes. For example, if we have two alternative multilibs lib64 and lib32, PREFERRED_PROVIDER_virtual_pkg will be set to lib32-lib64-pkg or lib64-lib32-pkg, depending on which multilib shows up first in the list. (From OE-Core master rev: 17a432dc059e24ba10d4baec988828c0025a5e46) Signed-off-by: Lei Liu <lei.liu2@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12license.bbclass: fix missing of license files on ubuntu build hostChen Qi1
The license_create_manifest function contains bashism, this will lead to unexpected results on ubuntu build host, as sh is linked to dash on ubuntu. Even if COPY_LIC_MANIFEST and COPY_LIC_DIRS are enabled, the license files will still be missing on target. This patch fixes the above problem. [YOCTO #5549] (From OE-Core master rev: 4df9daee5c732c0a20dabe8515577238a1508512) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12image_types: newer btrfs.mkfs needs an empty file to build the disk inSaul Wold1
(From OE-Core master rev: 836396a3450e7bf151956e87bd92f70c5050c995) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12kernel.bbclass: move bundle_initramfs after kernel_link_vmlinuxMing Liu1
${KERNEL_OUTPUT} is being renamed/restored in bundle_initramfs task, so we must ensure bundle_initramfs run after kernel_link_vmlinux where the link of vmlinux is created as the bootable image. (From OE-Core master rev: 3baa63b4d588c3262254528b406ede265dd117bf) Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12kernel.bbclass: Delay rm_work to run after do_bundle_initramfsXufeng Zhang1
Since kernel will build twice when we are trying to bundle kernel and initramfs together after commit 609d5a9ab("kernel.bbclass, image.bbclass: Implement kernel INITRAMFS dependency and bundling"), thus, the second building for kernel would fail if rm_work is done previously. To fix this problem, we need to make do_bundle_initramfs task run before do_rm_work task. [YOCTO #5416] (From OE-Core master rev: 8308e22a44a2dea7d1bbfb429b9df9c63714a649) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Xufeng Zhang <xufeng.zhang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12image-mklibs: Fix grep pattern when mklibs collects executables in rootfsLei Liu1
File command in some version could print extra space between "LSB" and "executable" - it causes mklibs can't find any executables using grep "LSB executable". Fix the grep pattern to catch multiple spaces. (From OE-Core master rev: a52ef8c5dcd71f39bb48c71fb868cc0db662560e) Signed-off-by: Lei Liu <lei.liu2@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12extrausers.bbclass: avoid infinite loopChen Qi1
Avoid infinite loop if the last record in EXTRA_USRES_PARAMS doesn't end with a semicolon. It's possible the the users will write configurations like below. INHERIT += "extrausers" EXTRA_USERS_PARAMS = "useradd tester; useradd developer" In such situation, the do_rootfs task will enter an infinite loop. An infinite loop is never acceptable. This patch fixes the above problem. (From OE-Core master rev: bf4fb345a9db306fa4c7211b7e6795334a649dd5) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12grub-efi.bbclass: Fix startup.nsh to work on more EFI revsJason Wessel1
Some revs of the EFI firmware + shell do not automatically setup the path in a such a way as to execute a binary without an absolute reference like "FS0:\EFI\BOOT\bootx64.efi". All the versions that I have tested work properly by simply calling the binary which is in the EFI\BOOT directory by name like "bootx64.efi". The error you see on the console looks like the following: startup.nsh> EFI\BOOT\bootx64.efi 'EFI\BOOT\bootx64.efi' is not recognized as an internal or external command, operable program, or batch file Shell> This patch simply drops the EFI\BOOT for greater compatibility. (From OE-Core master rev: 754b52ea7a3cdf8e7e939a314525d16c4dfb52cb) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12grub-efi.bbclass: Fixes GRUB_IMAGE when using boot-directdisk classJoao Henrique Ferreira de Freitas1
When boot-directdisk class is used and EFI boot is set the grub-efi-${TRANSLATED_TARGET_ARCH}-native need to be dependent. Allowing GRUB_IMAGE to be created and bootia32.efi got from the image directory. (From OE-Core master rev: b9778975db410b8cd01ef6854c7cd3ea22a0b5b7) Signed-off-by: Joao Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12syslinux.bbclass: Fix default serial port stringJason Wessel1
The default value of SYSLINUX_SERIAL_TTY is not correct. It should be console=ttyS0,115200 else the boot string generated in the syslinux menus for the serial choice is not correct. The kernel boot parameters will get set to: /vmlinuz initrd=/initrd LABEL=boot root=/dev/ram0 ttyS0,115200 Note that the above is missing the "console=" The default value will now work the same as the value found in grub-efi.bbclass. (From OE-Core master rev: fbc864241933c6f40814f47e7a85dd71ce255393) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12vala.bbclass: add dependency on valaJoe Slater1
This class points the inheritor, if it is a target, to directories in the target sysroot, so we want to be sure the .vapi files are there. (From OE-Core master rev: 2da8bbd47686f54efeec521d521f176f6aeb8d39) Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12cross-canadian: Handle powerpc linux verses linux-gnuspeRichard Purdie1
PowerPC toolchains can use the OS "linux" or "linux-gnuspe". This patch links them together so the one cross-canadian toolchain can support both. GCC_FOR_TARGET is set for the GCC recipe as otherwise configure can pick up an incorrect value. [YOCTO #5354] (From OE-Core master rev: a1d6331238982b0c5d39b0a18794f6654b00d46a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12classes/ptest: fix quotingPaul Eggleton1
BitBake currently allows using the same quotes outside and inside the value, but it isn't really right, looks odd and might stop working in future. (From OE-Core master rev: 0af9cf31851896276a219170001047406f45de50) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-12pixbufcache.bbclass: gdk-pixbuf-query-loaders depends on libzKonrad Scherer1
ldd sysroots/x86_64-linux/usr/bin/gdk-pixbuf-query-loaders.real <snip> libz.so.1 => /sysroots/x86_64-linux/usr/bin/../../usr/lib/libz.so.1 (0x00007fab55393000) If zlib-native has not been unpacked, host libz is used which can fail. (From OE-Core master rev: 8422c759ae674856aaaee176eab5a395a620443c) Signed-off-by: Konrad Scherer <Konrad.Scherer@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-10base.bbclass: fix nondeterministic PACKAGECONFIG processing orderChristopher Larson1
The PACKAGECONFIG flags were iterated over using dict.items(), but this returns the items in an undefined order. As this order determines the EXTRA_OECONF append order, we can get EXTRA_OECONF which are functionally equivalent, but whose contents differ, resulting in not using shared state archives we should be using. (From OE-Core master rev: 843a5dd8f8f0461e286d9fdb3ba55205b4275f88) Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-10cross-canadian: Fix SHLIBSDIR when using multilibRichard Purdie1
Both nativesdk and multilib use MLPREFIX for their partciular purposes. When we have both set, cross-canadian can confuse SHLIBSDIR. This forces the variable to the correct value for cross-canadian, fixing toolchains in multilib builds. [YOCTO #5333] (From OE-Core master rev: 0633b93086a7de7226f4dc6ca403ee116bc58669) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-10nativesdk: Fix pn checkRichard Purdie1
There are missing brackets in the check meaning MLPREFIX doesn't get set for nativesdk-qemu-helper when it should be. (From OE-Core master rev: 5011f4bc8a418d0616d2936b60ecb7ca156632a3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-12-03Revert "utils.bbclass: Fix override ordering for FILESPATH"Richard Purdie1
This reverts commit 0bd63125c3b44a656e44f2a76cc5f832c9db4bbd. As discussed on the mailing list, this change changes layer layout in a stable branch which is unaccetable. The was accidentally backported and should not have been, this reverts it.
2013-10-14kernel.bbclass: unset LDFLAGS when run devshell in kernel recipeNobuhiro Iwamatsu1
When user runs devshell in kernel recipe and compiles kernel, this will fail by unrecognized option of LD. ---- $ make ... arm-poky-linux-gnueabi-ld: unrecognized option '-Wl,-O1' arm-poky-linux-gnueabi-ld: use the --help option for usage information ---- This set to empty LDFLAGS when user runs the devshell, and solve this problem. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-14uboot-config.bbclass: Raise an error for unknown configsOtavio Salvador1
When passing the wrong value for UBOOT_CONFIG it ought to raise an error otherwise it is quite difficult for user to notice it didn't behave as expected. Reported-by: Lauren Post <lauren.post@freescale.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-11utils.bbclass: Fix override ordering for FILESPATHRichard Purdie1
Currently the overrides are being applied backwards. This means something which is platform specific is overriding something which is machine specific which is clearly not intended. This patch corrects the ordering to match the normal expected behaviour of OVERRIDES. Secondly, all overrides are being searched for each path in turn. What should really happen is that we should look for the highest priority override (e.g. distro or machine) in each layer, then move on to platform/tune (e.g. armv7a) and then to arch (e.g. arm). This patch therefore also reverses the for loops to achieve this behaviour and give the result the user would expect. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-11kernel-yocto: Add a missing '['Peter Kjellerstedt1
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-11uboot-config.bbclass: Fix use without IMAGE_FSTYPES appendingOtavio Salvador1
Before checking if the image is a valid value, we need to check if the list of items is big enough or we will raise an exception. Reported-by: Lauren Post <lauren.post@freescale.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-11classes: tar 1.27 fixesRichard Purdie4
tar version 1.27 returns: tar: --same-order option cannot be used with -c with the commandlines we have been using. We can remove the -s option (which is --same-order) to remove the error. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-11toolchain-scripts: Fix TARGET_SYS referenceRichard Purdie1
There was a fix missing from a previous commit: http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=20a86e16bc54b74fbdb2a3a407d54210ea262925 since there was another section of toolchain-scripts needing updating. This patch fixes the missing reference and unbreaks the ADT toolchain. [YOCTO #5340] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-06run-postinst: Ensure that the postinsts are orderedMark Hatle3
The postinst files were being generated using purely the name of the package, this unfortunately meant the run order would be based on the name of the package and not the order in which it was installed on the filesystem. If package A requires package Z to be fully installed, this causes a problem. Note: rpm - as the rpm based install proceeds the order is defined and captured. so the problem is resolved there. ipk - this unfortunately does not appear to solve the problem for ipk, as the status file is not ordered in any appreciable way. This does not cause any regressions however and sets the stage for a proper fix. deb - this -may- fix the deb install. Early testing indicates at least some ordering to the status file. But it's unclear if it completely resolves the issue. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-06package_rpm.bbclass: Workaround failure in attemptonly installsMark Hatle1
[YOCTO #5313] When performing an attemptonly install, we should skip an errors and continue to install everything else. However, there is a case where two packages can conflict, and cause a hard failure. This workaround, ignores this and allows the image to be constructed. Note: Some items in the failed transaction may not get installed. To fix this properly we need to find the issue in smart, and make it ignore or at least attempt to resolve these kinds of conflicts. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04udpated-rc.d: Track postinst/prerm/postrm in task checksumRichard Purdie1
When these functions change, the package should rebuild but currently it does not. We need to add the dependencies manually as the dependency code can't track dynamically created variables. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04systemd: Track postinst/prerm in task checksumRichard Purdie1
When these functions change, the package should rebuild but currently it does not. We need to add the dependencies manually as the dependency code can't track dynamically created variables. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04license.bbclass: use shutil instead of bb.utils.copyfileRoss Burton1
bb.utils.copyfile is for a specific purpose and more complicated than needed here, so just use shutil.copyfile. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04cross-canadian: Fix TUNE_PKGARCH referencesRichard Purdie2
The cross-canadian compilers are now build once per architecture but were being installed into tune specific locations which is incorrect. This adjusts things so they are make TARGET_ARCH specific. We gain the tune specific parts from the target sysroot which remains tune specific, the compiler and tools are independent ot that. binutils/gcc require sysroot options but since we reset at runtime, these shouldn't have dependencies in the sstate checksums. They are therefore also excluded. With these patches, switching machines does not result in a rebuild of *-cross-canadian and the compiler is correctly located and referenced in the target images. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04cross/crosssdl/native/nativesdk: Fix do_packagedata stampsRichard Purdie4
If you build nativesdk for machine A, then change to B you will see sstate manifest warnings for the packagedata files. The stamps are machine specific and should not be, ditto for native. This patch copies the populate-sysroot extra stamp entries to avoid these warnings. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04boot-directdisk: avoid loop in MBR disk signature generationJonathan Liu1
Instead of looping until the generated signature is non-zero, just return 'ffffffff' if it's zero. This avoids an infinite loop if the generated signature is always zero. Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-30boot-directdisk: ensure generated MBR disk signature is non-zeroJonathan Liu1
A zero MBR disk signature is generally seen as no signature and another partitioning program might install a new signature. Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-30kernel.bbclass: Allow INITRAMFS_TASK to trigger copy initramfs codeJason Wessel1
Activating the INITRAMFS_TASK can cause circular dependencies, but that is up to the end user to resolve in recipes. The INITRAMFS_TASK should also trigger immediate linking of the cpio task in the first compile pass. This was a subtle regression introduced by: 609d5a9ab (kernel.bbclass, image.bbclass: Implement kernel INITRAMFS dependency and bundling). This patch restores the previous behavior and only affects the INITRAMFS_TASK which is not set by any of the default build profiles in oe-core. Reviewed-by: Andrea Adami <andrea.adami@gmail.com> Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-30native: Use a native site file and ensure the correct sed is usedRichard Purdie1
native recipes were not using the site files. There are some things we need to correct such as not using the path to sed-native. This allows us to deploy settings globally for all recipes rather than hacking around then in individual recipes as libtool-native used to for sed. This fixes a regression introduced by http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=32edeb391f2107bb66b361cdcd4b8d4447731c33 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26boot-directdisk.bbclass: Fix media generation problems with vmdkJason Wessel4
The various populate methods need to accept a path as an argument vs using hard expanded variables. In the case of the boot-directdisk class it uses a different path for HDDDIR but it gets eclipsed by the the class definition at the point in time ${HDDDIR} gets expanded. The logical fix is to pass the arguments to the functions as opposed to using globally expanded variables from the class definitions. This patch changes 3 things: 1) syslinux_hddimg_populate takes an argument for the destination 2) syslinux_iso_populate takes an argument for the destination 3) populate is changed to boot_direct_populate because there was a conflict with it overriding the populate in bootimg.bbclass [YOCTO #3994] Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26syslinux.bbclass, syslinux: Update to syslinux 6.01Jason Wessel1
A newer version of syslinux is required for an EFI enabled isohybrid. This is used for the the capability to generate 3 types of ISO images, all of which can be booted off a USB device or HDD if copied with dd. 1) PC BIOS only ISO 2) EFI only ISO 3) EFI + PC BIOS ISO The syslinux.bbclass required a minor tweak because a few .c32 libraries require dynamic loading from the created media as of syslinux 5 and up. This was a good time to also fix the duplication of the AUTO_SYSLINUXMENU block. [YOCTO #4100] Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26bootimage.bbclass, zisofs-tools-native: add ability to compress ISO imagesJason Wessel1
The mkzftree is needed to allow ISO images to be compressed with minimal runtime overhead. Below is an example of the savings on a core-image-minimal. Before ls -l: 24117248 core-image-minimal-qemux86-64.iso Using the mkzftree ls -l: 16777216 core-image-minimal-qemux86-64.iso Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Reviewed-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26syslinux.bbclass: Fix hard coding of console=tty*Jason Wessel1
The SYSLINUX_SERIAL variable was hard coded and occasionally needs to be different for the kernel argument vs the syslinux argument. In the auto-generated boot mode console=tty0 was hard coded, and this is not needed at all, and causes problems in some cases if a end user wanted to change the console=... via the kernel boot argument APPEND mechanism. The default can be forced with SYSLINUX_DEFAULT_CONSOLE for systems that need a special specification to enable the frame buffer instead of a serial port. [YOCTO #3944] Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26grub-efi.bbclass: Add serial and graphics menu optionsJason Wessel1
The syslinux.bbclass already has support for automatically generated serial and graphics menu choices. This patch adds the same concept to the grub-efi menu. That makes it possible to generate a single image which can boot on a PCBIOS or EFI firmware with consistent looking boot options. [YOCTO #4100] Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26bootimage.bbclass, grub-efi.bbclass: Improve EFI & PCBIOS+EFI ISO supportJason Wessel2
Using the latest mkisofs it is possible to generate 3 different types of ISO images, which can be used in various scenarios. 1) PCBIOS Only ISO - This option remains unchanged by this commit - Uses syslinux menus - Can be directly copied with dd to a USB device - Can be burned to optical media 2) EFI Only ISO - Uses grub 2 menus - Can be burned to optical media - If you want to use this image on a USB device extra steps must be taken in order to format the USB device with fat32, and copy an EFI loader which will in turn load the iso image 3) PCBIOS / EFI ISO - This is a hybrid image ISO that will work for case 1 or 2 as above with the same restrictions and boot menu types depending on what type of firmware is installed on the hardware or depending on if EFI or "Legacy Boot" is enabled on some UEFI firmwares. The syslinux.bbclass is now always required because that is where the isohybrid dependencies come from as well as the configuration data for the isohybrid. The isohybrid is the secret sauce which allows the ISO to work as optical media or as a disk image on USB or a HDD/SSD. [YOCTO #4100] Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26testimage: Exclude BB_ORIGENV variableRichard Purdie1
The BB_ORIGENV variable isn't picklable and causes failures when generating the task signature for the autorun image mode. We don't want to depend on its contents anyway so lets exclude it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26classes/package_rpm: fix bitbake package-index for RPMPaul Eggleton1
The function that "bitbake package-index" relies upon when using the RPM package backend (package_update_index_rpm()) uses MULTILIB_PREFIX_LIST to get the list of package architectures to be indexed, but that variable is only set when populate_sdk_rpm or rootfs_rpm are inherited, which is not the case for the package-index recipe. Until we're able to refactor this properly, for minimal impact just use the value of ALL_MULTILIB_PACKAGE_ARCHS if MULTILIB_PREFIX_LIST does not give us any architectures (the equivalent function in the ipk backend uses the former variable). Having "bitbake package-index" working is important because it's the only practical way of indexing RPM packages for use as a feed; host versions of createrepo won't work properly because they won't support indexing recommends relationships. Stopgap fix for [YOCTO #5278]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26package.bbclass: Clear umask when using os.mkdirRichard Purdie1
We switched to using os.mkdir with the file creation mode specified as the second parameter. Python masks this with umask behind the scenes which isn't what we want, we really want the permissions we specify. To avoid this we zero the umask beforehand and restore afterwards. Other solutions are possible but would not perform as well which is why we're using os.mkdir in the first place. Martin Jansa deserves the credit for debugging where the problem was. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>