summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* image-mklibs: Fix grep pattern when mklibs collects executables in rootfsLei Liu2013-12-121-1/+1
| | | | | | | | | | | | | | | | 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) (From OE-Core rev: 78c22d9087b3058dd947f21bd24fa621aba7dd6d) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* extrausers.bbclass: avoid infinite loopChen Qi2013-12-121-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | 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) (From OE-Core rev: 05f9c15abb0705cd9f8aa28bfb3016485730b643) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* grub-efi.bbclass: Fix startup.nsh to work on more EFI revsJason Wessel2013-12-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 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) (From OE-Core rev: a65db42d4b0c6636ee6538a28930e4d19e170d18) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* grub-efi.bbclass: Fixes GRUB_IMAGE when using boot-directdisk classJoao Henrique Ferreira de Freitas2013-12-121-0/+1
| | | | | | | | | | | | | | | | | 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) (From OE-Core rev: b14ba80d22f4892a4d9269dbf982b2f88109da98) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux.bbclass: Fix default serial port stringJason Wessel2013-12-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | 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) (From OE-Core rev: 042e0f59d058c5caad4a3b8e8f08ec724d5c837b) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* vala.bbclass: add dependency on valaJoe Slater2013-12-121-3/+6
| | | | | | | | | | | | | | | | 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) (From OE-Core rev: e68307c3fb0a02efe5e0789a58686f343c842707) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cross-canadian: Handle powerpc linux verses linux-gnuspeRichard Purdie2013-12-121-0/+31
| | | | | | | | | | | | | | | | | | | | | 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) (From OE-Core rev: b114b045687776ebc5c805e1f19758e7e37eebf2) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/ptest: fix quotingPaul Eggleton2013-12-121-1/+1
| | | | | | | | | | | | | | | 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) (From OE-Core rev: 4051c98ebfe79614d1284b38442d5a3290bb4ad1) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* pixbufcache.bbclass: gdk-pixbuf-query-loaders depends on libzKonrad Scherer2013-12-121-1/+1
| | | | | | | | | | | | | | | | | | 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) (From OE-Core rev: b9ae15b45768d25c44a9484b4a156a15da548bd9) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: fix nondeterministic PACKAGECONFIG processing orderChristopher Larson2013-12-121-1/+1
| | | | | | | | | | | | | | | | | 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) (From OE-Core rev: 73f77c195e1af3df594eecce2cab47ee963d5c2e) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cross-canadian: Fix SHLIBSDIR when using multilibRichard Purdie2013-12-121-0/+5
| | | | | | | | | | | | | | | | | 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) (From OE-Core rev: 003ddbccb260cdbfc6c1ff9e576a0584b0f25378) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* nativesdk: Fix pn checkRichard Purdie2013-12-121-1/+1
| | | | | | | | | | | | | 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) (From OE-Core rev: 48b4bb2f98a1b7b97688071af4c2d3ee390b6ab3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "utils.bbclass: Fix override ordering for FILESPATH"Richard Purdie2013-12-031-5/+4
| | | | | | | | | | 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. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: unset LDFLAGS when run devshell in kernel recipeNobuhiro Iwamatsu2013-10-141-0/+5
| | | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: e36ac3ab3a7fe02c7eeb3998ff33c001ab795841) Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uboot-config.bbclass: Raise an error for unknown configsOtavio Salvador2013-10-141-0/+5
| | | | | | | | | | | | 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> (From OE-Core rev: 5110dc988e3b8a1ce8b2309e4ddf17abb3f1cb0c) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* utils.bbclass: Fix override ordering for FILESPATHRichard Purdie2013-10-141-4/+5
| | | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: 92cbf7eeea553bfa24c7081473fa8bc4ebc1f552) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-yocto: Add a missing '['Peter Kjellerstedt2013-10-141-1/+1
| | | | | | | (From OE-Core rev: 68a7d9f0e19ed577854a04610efc902062a369a8) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uboot-config.bbclass: Fix use without IMAGE_FSTYPES appendingOtavio Salvador2013-10-141-1/+2
| | | | | | | | | | | 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> (From OE-Core rev: b833837cac377e7c1c3ff18531b152340b669329) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: tar 1.27 fixesRichard Purdie2013-10-144-7/+7
| | | | | | | | | | | | | 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. (From OE-Core rev: 3d5a6d0a480a0fa98260a3b3ffc71b8d9e3e58af) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toolchain-scripts: Fix TARGET_SYS referenceRichard Purdie2013-10-111-1/+1
| | | | | | | | | | | | | | | 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] (From OE-Core rev: e1b8b4859f00b40fb941a07a394ed35e06541663) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* run-postinst: Ensure that the postinsts are orderedMark Hatle2013-10-073-6/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: b5bafccb89f45d7cdd515b4ba45e0152ca7922de) 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>
* package_rpm.bbclass: Workaround failure in attemptonly installsMark Hatle2013-10-071-1/+1
| | | | | | | | | | | | | | | | | | | | [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. (From OE-Core rev: 4228005689e31ebcafcf0969e80fcc021d1ae063) 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>
* udpated-rc.d: Track postinst/prerm/postrm in task checksumRichard Purdie2013-10-071-0/+2
| | | | | | | | | | 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. (From OE-Core rev: 4003218f774c38bb5de0d95a43153f8b8d7fc4ce) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: Track postinst/prerm in task checksumRichard Purdie2013-10-071-0/+3
| | | | | | | | | | 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. (From OE-Core rev: c5d7100a358244085a697a23790676df5eb4afa3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license.bbclass: use shutil instead of bb.utils.copyfileRoss Burton2013-10-041-4/+6
| | | | | | | | | | | bb.utils.copyfile is for a specific purpose and more complicated than needed here, so just use shutil.copyfile. (From OE-Core rev: dc81df215cc94c279991df35125d94770a1bc3d2) 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>
* cross-canadian: Fix TUNE_PKGARCH referencesRichard Purdie2013-10-042-4/+8
| | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: f58acab6414fe96d9e07ebbe86b348d2ac2bed5f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cross/crosssdl/native/nativesdk: Fix do_packagedata stampsRichard Purdie2013-10-044-0/+4
| | | | | | | | | | | | | 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. (From OE-Core rev: a64de25d6006ec6dd777d8f3820a48244dfbf62b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* boot-directdisk: avoid loop in MBR disk signature generationJonathan Liu2013-10-041-4/+5
| | | | | | | | | | | | 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. (From OE-Core rev: 34c74ba45c04efc2dd998545bf7a31d7b06a0ee0) 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>
* boot-directdisk: ensure generated MBR disk signature is non-zeroJonathan Liu2013-09-301-1/+5
| | | | | | | | | | | A zero MBR disk signature is generally seen as no signature and another partitioning program might install a new signature. (From OE-Core rev: b6cafb1fcd6c168f8f4a4d2d5c74f3b425f156f3) 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>
* kernel.bbclass: Allow INITRAMFS_TASK to trigger copy initramfs codeJason Wessel2013-09-301-0/+8
| | | | | | | | | | | | | | | | | | | | 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> (From OE-Core rev: 36faac868e086e9c23537b107cdd973d7fd980bd) 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>
* native: Use a native site file and ensure the correct sed is usedRichard Purdie2013-09-301-1/+1
| | | | | | | | | | | | | | | | 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 (From OE-Core rev: db2eb3258844458569b7d4e6ed82c345858a3b99) 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>
* boot-directdisk.bbclass: Fix media generation problems with vmdkJason Wessel2013-09-304-23/+26
| | | | | | | | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: 63d164b755b984021f7e3cdba7280918ded6e821) 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>
* syslinux.bbclass, syslinux: Update to syslinux 6.01Jason Wessel2013-09-301-12/+9
| | | | | | | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: 17d74fbd09e377e100423e1a73b9d4ce761a21d7) 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>
* bootimage.bbclass, zisofs-tools-native: add ability to compress ISO imagesJason Wessel2013-09-301-3/+21
| | | | | | | | | | | | | | | | | | | 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 (From OE-Core rev: 808d4371939ec48ed62e0c0b6614b96d61b1f7b8) 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>
* syslinux.bbclass: Fix hard coding of console=tty*Jason Wessel2013-09-301-3/+11
| | | | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: cf2fba810a8a59cff71bf2c12e516e9080146604) 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>
* grub-efi.bbclass: Add serial and graphics menu optionsJason Wessel2013-09-301-14/+27
| | | | | | | | | | | | | | | | 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] (From OE-Core rev: 8444199fb598012f54853b010b5e5cce750db89d) 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>
* bootimage.bbclass, grub-efi.bbclass: Improve EFI & PCBIOS+EFI ISO supportJason Wessel2013-09-302-12/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: a4baf911ab9d306ce5200e7d794ed6a9ccb25f30) 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>
* testimage: Exclude BB_ORIGENV variableRichard Purdie2013-09-261-0/+2
| | | | | | | | | | 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. (From OE-Core rev: 3f5f9d2681d41e44dade5d3a5a4bff3fd38f5506) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/package_rpm: fix bitbake package-index for RPMPaul Eggleton2013-09-261-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | 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]. (From OE-Core rev: 9359719c563e1ab0ff10186d1a1b6bde7840dbf3) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: Clear umask when using os.mkdirRichard Purdie2013-09-261-0/+4
| | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: f91226553e39439bfd17ab2b06c56cb8bf41061b) 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>
* distutils: Replacing path to native path only to be done to non-native ↵Amy Fong2013-09-261-2/+6
| | | | | | | | | | | | | | | | | | | python packages distutils: Replacing path to native path only to be done to non-native python packages distutils: Replacing path to native python by path to python in the image to support python packages with console-script setup resulted in a "bad interpreter" error message because coreutils-native is not a specified dependency of a number of native python packages. We modify the change to apply specifically to non-native packages. (From OE-Core rev: 312b6b33dca565153bc2e92d7ff6dd2974db4edb) Signed-off-by: Amy Fong <Amy.Fong@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_deb, apt.conf: fix apt failure in do_rootfs()Laurentiu Palcu2013-09-241-0/+1
| | | | | | | | | | | | | | | | | The changes in this commit, dc5f6c3898555b59f16bf809ae4c5418656e6ac9, moved apt config directory from native SYSROOT to WORKDIR. Unfortunately, Dir::Etc in apt.conf was not changed accordingly and sources.list file could not be found during do_rootfs(). This commit fixes this issue. [YOCTO #5241] (From OE-Core rev: 65a2a1e1d0b0e3dcc34d47f46185f24d753b53dd) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/testimage: add informational messages about tests and do some ↵Stefan Stanacar2013-09-241-16/+24
| | | | | | | | | | | | | cleanup/formatting Adds info about tests run even if they passed (in case of errors log will be printed anyway). Also some style change for qemu object. (From OE-Core rev: 4adcf960be9c7477e314788d42b80753c2aaf572) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: uninstall package only if it's already installedChen Qi2013-09-241-1/+11
| | | | | | | | | | | | | Remove a package from rootfs only if it's already installed. Also, if a package is uninstalled, remove it from installed_pkgs.txt. [YOCTO #5169] (From OE-Core rev: b86dc63bc87763119fce8286f37f44361da824d0) 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>
* sstate.bbclass: ignore the tar failure.Roy Li2013-09-241-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | sstate_package creates hardlink from sysroot to SSTATE_BUILDDIR, and sstate_create_package stores SSTATE_BUILDDIR into a archive file by tar, these two task can be run simultaneously for different packages, and make a hardlink for a file will lead to the change of the links number of file, and if tar is reading this file, it will fail with exit code 1, and report "file changed as we read it": DEBUG: Executing shell function sstate_create_package tar: x86_64-linux/usr/share/aclocal/xorg-macros.m4: file changed as we read it 4b3e353a5[sstate.bbclass: fix parallel building issue] tries to use the tar parameter --ignore-failed-read to fix, but it does not work, and tar parameter --warning=no-file-changed can close the warning, but can not change the exit code. so close shell immediate exit, only fail if tar returns not 1 and 0. Exit codes of tar: http://www.gnu.org/software/tar/manual/html_section/Synopsis.html (From OE-Core rev: fad604b719e00b03e09da5fdb485e72332275b4a) Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gzipnative: Ensure dependencies apply to do_unpack and do_populate_licRichard Purdie2013-09-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DEBUG: Executing python function sstate_task_postfunc| DEBUG: Staging files from /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/license-destdir to /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/deploy/licenses| NOTE: Using umask 002 (not 22) for sstate packaging| DEBUG: Preparing tree /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/license-destdir for packaging at /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/sstate-build-populate-lic/license-destdir| NOTE: Removing hardcoded paths from sstate package: 'find /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/sstate-build -populate-lic/ \( -name "*.la" -o -name "*-config" -o -name "*_config" \) -type f | xargs grep -l -e '/srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/sysroots/qemux86-64' | tee /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/sstate-build-populate-lic/fixmepath | xargs --no-run-if-empty sed -i -e 's:/srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/sysroots/qemux86-64:FIXMESTAGINGDIRHOST:g'' | DEBUG: Executing shell function sstate_create_package | gzip: /lib64/libz.so.1: version `ZLIB_1.2.5.1' not found (required by gzip) | tar: Child returned status 1 | tar: Error is not recoverable: exiting now | WARNING: /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/temp/run.sstate_create_package.20384:1 exit 2 from | tar --ignore-failed-read -czf $TFILE license-destdir | DEBUG: Python function sstate_task_postfunc finished | ERROR: Function failed: sstate_create_package (log file is located at /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/temp/log.do_populate_lic.20384) NOTE: recipe core-image-minimal-1.0-r0: task do_populate_lic: Failed Imagine: pigz-native is used from sstate. zlib-native is getting rebuilt. pigz-native has some special handling to ensure its not used until the system is ready. This is through a class and installing into a subdir of PATH which only gets added in when we believe its available. We use pigz-native in the image generation code and its in DEPENDS. DEPENDS are guaranteed available for do_configure. do_populate_lic can run before do_configure so the DEPENDS isn't met and I think this is our corner case.I suspect ways of fixing this are to either: a) force do_populate_lic after do_configure everywhere b) statically link pigz-native c) add in an explicit dependency to gzipnative.bbclass forcing do_populate_lic after do_configure. If do_unpack handled a tar file in an image, it would also be at risk of course. Looking at each, a) is overkill and our dependency tree is nasty enough already. b) sounds nice but is also risky since what happens if the gzip binary is half copied when we run it. Our hardlink copying should deal with that but I'm still nervous. This leaves us with c) so we could do: do_unpack[depends] += "gzip-native:do_populate_sysroot" The reproducer is: bitbake pigz-native bitbake zlib-native -c clean bitbake core-image-minimal -c populate_lic --no-setscene -f however your system needs to have an old version of zlib on it which pigz-native can't run against. The line above fixes it. (From OE-Core rev: 16cb83d13bdb7e1abc88c18ec224efcd9ceef4f6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uboot-config.bbclass: Handle UBOOT_MACHINE settingOtavio Salvador2013-09-221-1/+17
| | | | | | | | | | | The class now consolidate the handle of UBOOT_MACHINE and UBOOT_CONFIG variables and handle possible mistakes done by user when using these variables. (From OE-Core rev: 87d9b585b2784bec04e9e244dc52c6e929484fd0) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uboot-config.bbclass: Use an annonymous python functionOtavio Salvador2013-09-221-7/+5
| | | | | | | | | | The processing needs to happen per recipe and thus it ought to use annonymous python function instead to be triggered at event. (From OE-Core rev: 75bde3ee02262cb3c6b91279ca277e3e5324ee5e) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/imagetest-qemu: remove old image testing classPaul Eggleton2013-09-222-241/+0
| | | | | | | | | This has now been superseded by testimage. (From OE-Core rev: d469c92394a1a95ae7a45b8b80dc4c2918e0e9a6) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sanity: test for DISPLAY being set with testimage classPaul Eggleton2013-09-221-3/+3
| | | | | | | | | | Update the sanity test for DISPLAY being set to handle the new testimage class rather than the old imagetest-qemu class. (From OE-Core rev: d1297c2c3ae71de0e9e5cab36e582f5df8666391) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>