summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* classes/buildhistory: write out files in UTF-8 formatPaul Eggleton2014-02-061-21/+25
| | | | | | | | | | | | | If the package information contained unicode characters (for example, in the package file listing) then writing them out as ASCII would fail, so write them out using codecs.open() instead of open() using UTF-8. This fixes ca-certificates failing in do_packagedata when buildhistory is enabled. (From OE-Core rev: dcf228fe69bfee4e22baad477ad407248c0f9cdb) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate: Improve funciton checksumsRichard Purdie2014-02-041-0/+4
| | | | | | | | | | | Now that bitbake is recursing into pre/postfuncs, we need to ensure the dependencies of these functions is correct. We don't want dependencies on MACHINE or other related variables. This patch adds in appropriate variable exclusions to achieve this. (From OE-Core rev: 8461283a648d7c5affd51971ebd9b35a8a4c625f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Fix python function whitespace changesRichard Purdie2014-02-031-96/+96
| | | | | | (From OE-Core rev: 9dee6c2fe0d1882521c0f9a6998257a652845854) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/buildhistory: fix expansion of escape sequencesPaul Eggleton2014-02-031-1/+1
| | | | | | | | | | | | | OE-Core commit 259b8718a31b886f8a158aeb5de164840c9a28b2 fixed UTF-8 errors but broke decoding of escape sequences in strings (e.g. pkg_postinst scripts had \n \t in them instead of newlines and tabs.) We need a second call to decode() here as specifying 'string_escape' as the second parameter won't do anything. (From OE-Core rev: 15e0cdff08b8b9b826bbb9f00192a27318a3ee65) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_ipk: Ensure that BAD_RECOMMENDATIONS are honoured for all architecturesPhil Blundell2014-02-021-7/+1
| | | | | | | | | | | | | | | | | | | | Commit a5362de60c0051f16b88a40bd9cb41915bee0b0f restricted us to writing only a single entry to the status file for any given package. This avoids writing garbage entries (with no Status) when multiple versions of the same package exist in the feed. However, in the case where the same version exists for multiple architectures (for example, has been built for both cortexa15 and generic armv7a), we do need to write out status file entries for all of them since we can't trivially determine which one opkg will decide to install. Fix this by undoing a5362de60c0051f16b88a40bd9cb41915bee0b0f and writing out an entry for everything that matches, but ensuring that we force the Status to the correct value for each one. (From OE-Core rev: 12d7b44c817bdf6eea425bda607379594057c3fb) Signed-off-by: Phil Blundell <pb@pbcl.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: Also uninstall update-alternatives and shadow for ↵Phil Blundell2014-02-021-1/+1
| | | | | | | | | | | | | | | | read-only-rootfs If the rootfs is read-only then we aren't going to be updating any alternatives or modifying the password file and these binaries will be redundant. In an ideal world we would be able to stop them from being installed in the first place but this is non-trivial to arrange. As a workaround in the meantime, let's just uninstall them once image construction is finished. (From OE-Core rev: d41097a970e9bfa553cd4bc3c9fad4b9073d7bd5) Signed-off-by: Phil Blundell <pb@pbcl.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* distutils: Introduce PYTHON_ABI variableKhem Raj2014-02-023-0/+5
| | | | | | | | | | | | | | | | In python3 this has to be taken care of, it defines a variable to denote ABI currently its at 'm' and it uses this to construct the directory names for installing the python headers and library names in sysroot. e.g. it will be something like ../python3.3m/... We need this information when we are using distutils to cross build python extentions and want to know the locations of python headers and libraries install locations (From OE-Core rev: 9a3e4ac4a4eeed64ec80d400130dff3d26daf336) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Add distutils for python3Khem Raj2014-02-026-2/+192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In line with python2 add distutils and setuptools classes for handing python3 Use python-distribute instead of python-setuptools in setuptools bbclass Remove --single-version-externally-managed since its setuptools specific and we dont use it anymore Do build_ext as separate step during compile Add DISTUTILS_BUILD_EXT_ARGS for modules to pass flags to build_ext step in setup.py Add build_ext as sepate step during compile and add the cross sysrooted library and headers since we are cross compiling Use ${PYTHON_PN} in place of hardcoding python name Remove the /etc/share if its empty Since OE-Core times we now have machine specific sysroots for targets unlike before when we used arch specific sysroots so reflect that here Use MACHINE for sysroot when not building for build host Python's machinery replaces directories in sysroot path to match OE's staging area sysroots. Earlier we use to have HOST_SYS represent sysroot always but now we use MACHINE to represent target sysroots but HOST_SYS to represent host sysroot. This patch caters to that difference (From OE-Core rev: 8bb0206ed67228c88dd5bc2d8b36ce28f48b78f4) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/distutils: Introduce PYTHON_PNKhem Raj2014-02-025-19/+23
| | | | | | | | | | This is needed to accomodate python3 alongside python2 (From OE-Core rev: ae931c2cf9e48e1fb74b4b727dbf668ea880023f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: Trigger the regexp on exact keyword matchKhem Raj2014-02-021-1/+1
| | | | | | | | | | This causes issues when postinstalls have ERROR keywords its interpreted as error and image build is cancelled (From OE-Core rev: f5bc3cfac9545c402b415695c4e0f98ad38fb2b0) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3native.bbclass: Add python3 abstraction classKhem Raj2014-02-021-0/+7
| | | | | | | (From OE-Core rev: ead30aa5e3046f450ee688e14f6d5268d9ed0bd8) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: check that TMPDIR is not located on nfsRobert Yang2014-02-021-1/+19
| | | | | | | | | | | | | | | | | | | | | There would be some unexpected errors when the whole TMPDIR is located on nfs, so add a test for it in sanity.bbclass. Note: The better way to get the filesystem id should be get f_fsid from struct statvfs, but there is no f_fsid in os.stat() or os.statvfs(), so we use 'stat -f -c "%t"' here. BTW., s/tmpdir/TMPDIR/ in the previous comment message to make them have a uniform. [YOCTO #5442] (From OE-Core rev: ee4061b43522c4893b41c3be63d06be1ee7e3c70) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* update-rc.d: automatically rdepend on initscripts-funtionsChen Qi2014-02-021-0/+12
| | | | | | | | | | | | | | | Automatically add 'initscripts-functions' to packages when needed. This extra dependency is added only when the package's init script would be used at system start-up. In other words, in a systemd based image, if the package has already got its service files, it will not have this extra dependency. (From OE-Core rev: de875cb8893fd8372dd77babaef54ab2d790693d) 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>
* kernel.bbclass: Fix empty modules directory QA issueNathan Rossi2014-02-021-0/+2
| | | | | | | | | | | | | | | | | | | | | If a kernel is built without any external modules (aka no CONFIG_*=m), then during a modules_install of the kernel an empty directory is created at /lib/modules/${KERNEL_VERIONS}/kernel. This is behaviour of the kernel infrastructure, the directory would normally be populated with the modules that were built. However because of the expectations of kernel-modules-split, no packages are created when there are no modules and an empty directory lingers. This raises QA issues as warning or errors (depending on the distro). The following patch changes the kernel_do_install task to check if the directory is empty and if so removes it. (From OE-Core rev: 63d3070b7e1207164891b154a5b9017731e75872) Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toaster.bbclass: save original package nameAlexandru DAMIAN2014-01-291-0/+4
| | | | | | | | | | | If we can get the original package name when reading package infos in toaster.bbclass, we save it for proper referincing in the toater ui. (From OE-Core rev: c3f3fed1b397b6ee6d44e7d39e63d084e4a88e30) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: Show which files require given dependency in debug outputMartin Jansa2014-01-291-2/+10
| | | | | | | | | | | * when log.do_package shows some unexpected dependency, people usually need to grep package directory to find which binary was creating that dependency, show it directly in the debug output (From OE-Core rev: cf0696a39b811b13bb6e7dd06a2dad607e93a643) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: Don't search for providers of PRIVATE_LIBSMartin Jansa2014-01-291-2/+11
| | | | | | | | | | * split PRIVATE_LIBS and don't use find(), so that libfoo cannot be found in PRIVATE_LIBS = "libfoobar" (From OE-Core rev: 2dec075478f977b554061dd9a4b2b8ff4af3597a) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cml1.bbclass: Fix return code handling in do_menuconfig()Jacob Kroon2014-01-281-1/+1
| | | | | | | | | | | | | | | | | | | On my system, doing "bitbake -c menuconfig busybox" pops up a gnome-terminal, I can see that the compilation starts but then the terminal automatically exits. It turns out I don't have ncurses development package installed on my host, and OE's host sysroot isn't being passed to gcc, so compilation fails. The window automatically closes before I can read the error message since the '$' in the return code check needs to be escaped. Make sure the user can read the error message by properly checking the return code. (From OE-Core rev: a2241a92fc48e4286de17b23124a9e2f0fd8185b) Signed-off-by: Jacob Kroon <jacob.kroon@mikrodidakt.se> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib.bbclass: fix Multilib QA IssueMing Liu2014-01-281-1/+1
| | | | | | | | | | | | | | | | Multilib QA warning was observed, as follows: ------ WARNING: Multilib QA Issue: lib32-oprofile package lib32-oprofile - suspicious values 'kernel-vmlinux' in RRECOMMENDS ------ The package starting with 'kernel-vmlinux' should be ok with multilib QA checking. (From OE-Core rev: 00012b63fefd77c57169f7cc06d648f54890e5df) Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory.bbclass: Improve robustness in image file listingOtavio Salvador2014-01-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The filenames sometimes may have strange names. With the 'awk' script it handled a limited number of spaces in the filename and a package installing a file named "test file with spaces" would have its name truncated. This patch uses the find's printf formating to simplify the code and properly handle this case. From a testing image, the only diff produced is: ,----[ files-in-image.txt diff ] | --rwxr-xr-x root root 0 ./usr/bin/test\ file\ with\ | +-rwxr-xr-x root root 0 ./usr/bin/test file with spaces `---- The options used are available since findutils 4.2.5, released in 19 Nov 2004, making it available in all supported host distributions. (From OE-Core rev: b09e24449c1c9ae335732dd070eacf66777556a1) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scons bbclass: enable parallel makeKoen Kooi2014-01-281-1/+1
| | | | | | | | | | Scons supports -jX parallel make, so let's use that. A small scale test of a few recipes shows no failures! (From OE-Core rev: a3ad3602b0e8d4a6387cac3f118722af1a0781eb) Signed-off-by: Koen Kooi <koen.kooi@linaro.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: fix paths to run-postinstsRoss Burton2014-01-281-2/+2
| | | | | | | | | | | | The run-postinsts script has been moved to ${sbindir}. [YOCTO #5719] (From OE-Core rev: 2c8dc1b00c0cf83da106ef9544cd11cde7ce43a1) 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>
* sanity.bbclass: check required perl modulesRobert Yang2014-01-281-1/+14
| | | | | | | | | | | | | | | | | Several required perl modules may missing on the host, for example the Text::ParseWords, Thread::Queue and Data::Dumper are not installed by default on recent Fedora releases (19 and 20 AFAIK). There would be wild errors if they don't exist, so check them in sanity.bbclass. And add perl to SANITY_REQUIRED_UTILITIES. [YOCTO #5744] (From OE-Core rev: b46d82bea23208733b71642bb262c9a05c08efec) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_{ipk, deb, rpm}.bbclass: support additional user-defined metadataLeonid Borisenko2014-01-283-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Additional metadata from user-defined variable is written into control/spec file of binary package. Three variables are searched for adiitional package metadata: * PACKAGE_ADD_METADATA_<PKGTYPE>_<PN> * PACKAGE_ADD_METADATA_<PKGTYPE> * PACKAGE_ADD_METADATA First found variable with defined value wins. <PN> is a package name. <PKGTYPE> is a distinct name of specific package type: * IPK for .ipk packages * DEB for .deb packages * RPM for .rpm packages Variable can contain multiple [one-line] metadata fields separated by literal sequence '\n'. Separator can be redefined through variable flag 'separator'. In package control/spec file separator is replaced by newline character. (From OE-Core rev: 773d7352309241e15ef5acadcbe416bdd7d45c18) Signed-off-by: Leonid Borisenko <ive.found@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: add getter of additional metadataLeonid Borisenko2014-01-281-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | Two variables are searched for value of additional package metadata: * PACKAGE_ADD_METADATA_<PKGTYPE> * PACKAGE_ADD_METADATA First found variable with defined value wins. <PKGTYPE> is a parameter of getter and expected to be a distinct name of specific package type. For example: 'DEB' or 'RPM'. Variable can contain multiple [one-line] metadata fields, separated by literal sequence '\n'. Separator can be redefined through variable flag 'separator'. Getter returns found value with separator replaced with newline character. As side-effect, searched variables acquired flags 'type' (equals to 'list') and 'separator'. (From OE-Core rev: 98ea2fc35a3ef609a944929e21e0f9be2889036d) Signed-off-by: Leonid Borisenko <ive.found@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* boot-directdisk: fix the support of vmdkJoao Henrique Ferreira de Freitas2014-01-231-10/+8
| | | | | | | | | | | | | | | Previous change (086ce22b88f5ef5f75a83119a32c8b3fdcfa296d) broke the creating of vmdk images. This protects shell expansion variables and let dd generate the image to be transformed to vmdk by image-vmdk.class. (From OE-Core rev: 2fe667afbdc6880c377657b5ff27e6db3b6cbe77) Signed-off-by: Joao Henrique Ferreira de Freitas <joaohf@gmail.com> [edit to change the usage of IMAGE_FSTYPE to IS_VMDK] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cmake.bbclass: fix note when warning about deprecated variablesRoss Burton2014-01-221-1/+1
| | | | | | | | | | | The note issues when OECMAKE_BUILDPATH and OECMAKE_SOURCEPATH were being used stated that an in-tree build would be done, but the default is in fact an out-of-tree build. (From OE-Core rev: 0dafb9f78e9ab9ec1a1483efc37902c2e8de3623) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate.bbclass: remove previous version's stampRobert Yang2014-01-211-9/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a potential problem if we don't remove the previous version's stamp, for example: The depend chain is: libtool-native -> autoconf-native -> m4-native We have two m4-native: 1.4.9 and 1.4.7 1) Clean all of them to make a fresh build so that we can reproduce the problem $ bitbake m4-native autoconf-native libtool-native -ccleansstate 2) Build libtool-native so that the m4-native_1.4.17 will be built $ bitbake libtool-native 3) Set PREFERRED_VERSION_m4-native = "1.4.9" and build again $ bitbake libtool-native 4) Set PREFERRED_VERSION_m4-native = "1.4.17" and build again $ bitbake libtool-native -ccleansstate && bitbake libtool-native Then the build will fail: [snip] | m4: unrecognized option '--gnu' | Try `m4 --help' for more information. | autom4te: m4 failed with exit status: 1 [snip] The is because when we change m4-native to 1.4.17 and build libtool-native again: 5) libtool-native depends on autoconf-native, and autoconf-native's version isn't change, so it can remove the current stamp and mirror the sstate (the one depends on m4-native_1.4.9) from the SSTATE_DIR correctly. 6) The mirrored autoconf-native depends on m4-native_1.4.17's do_populate_sysroot, and the stamp is already there (which is made by step 2), so it would do nothing, but this is incorrect, since the one that really in the sysroot is m4-native_1.4.9, then the error happens. Remove previous version's stamp in sstate_clean() will fix the problem. [YOCTO #5422] (From OE-Core rev: 4659d29b1040349116549644e45035a5b37d9311) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: show warning when package is providing already provided shlibMartin Jansa2014-01-211-2/+9
| | | | | | | | | | | | | * move read_shlib_providers before registering package as provider and show warning when different package tries to provide something already provided. [YOCTO #4628] (From OE-Core rev: 8141e3f61f12c8901b990496bcf6b76a9db95a57) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: move reading shlibs providers to separate functionMartin Jansa2014-01-211-20/+23
| | | | | | | | | | | | * prepare for reading shlibs providers only from dependency tree of current recipe [YOCTO #4628] (From OE-Core rev: c5076f33ac27c0c2b0743bf6dc4edc983254c467) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: use exact match in blacklists, re-start with empty ↵Martin Jansa2014-01-211-15/+18
| | | | | | | | | | | | | | | | | system_package_blacklist * unify debug messages a bit * old implementation allowed partial match in blacklist, it's safer to explicitly list exact matches * I was able to build all entries from system_package_blacklist with icecc enabled, lets assume that they were already resolved by newer versions (we've fixed a lot of parallel issues in recipes which were detected even without icecc and this list is very old). (From OE-Core rev: 5a5319d2e6f41bb0e290d6a1decbd996e9572690) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Fix allarch and native recipes having different signaturesMartin Jansa2014-01-211-0/+4
| | | | | | | | | | | | * for different MACHINES * is there more elegant way to have "overridable" function so that signature handler properly uses only the branch without STAGING_BINDIR_TOOLCHAIN? (From OE-Core rev: 418a353a011ca8f04ecc3e2d29f2d1a415492081) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: use bb.utils.which also for 'as'Martin Jansa2014-01-211-1/+6
| | | | | | | | | | | | | | | | | | * it was introduced in commit 3a842ec52e7d010767b13bdcb5629ac07b3ee9e7 Author: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Date: Fri Sep 16 10:55:16 2011 +0400 Subject: icecc.bbclass: replace with updated version without any explanation in which case ${ICECC_CC} -print-prog-name=as is returning as in current working directory, but will keep old behavior just in case (From OE-Core rev: 6092da20fc3ceb1bc6b4872ad16df565f05723b7) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Don't replace non-empty PARALLEL_MAKE with empty ICECC_PARALLEL_MAKEMartin Jansa2014-01-211-1/+1
| | | | | | | | | | | | | | | | | | | | * it's needed for use-case like this: # Inherit icecc here, so that all builders have the same sstate signatures INHERIT_DISTRO += "icecc" # and then disable its function by default (so that people still need to explicity # enable it in local.conf if they have configured icecc and want to use it. # You need to set _empty_ value in local.conf to enable icecc function: # ICECC_DISABLED = "" ICECC_DISABLED ??= "1" * so default ICECC_PARALLEL_MAKE is still empty, but we want build to respect our PARALLEL_MAKE, unfortunately we cannot do something like ICECC_PARALLEL_MAKE ??= "${PARALLEL_MAKE}", because that would cause PARALLEL_MAKE to reference itself. (From OE-Core rev: 7e586d5b7c8c7f20eafc32624200f60a8ed9a582) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* allarch: Set empty TARGET_PREFIX and TARGET_FPUMartin Jansa2014-01-211-0/+2
| | | | | | | | | | | | | | | | | | | * set empty TARGET_PREFIX This has a bit weird reason caused by unsupported setup where external-toolchain is used in some DISTRO only for some MACHINEs and internal is used for other MACHINEs. Because external-toolchain usually comes with different TARGET_PREFIX it was causing allarch recipes to have different signatures even when they don't use toolchain at all. Empty TARGET_PREFIX also helps to find allarch recipes which still have default dependency on e.g. virtual/${TARGET_PREFIX}gcc. * add TARGET_FPU just for completeness (it was used in icecc.bbclass but now it's vardepexcluded there as well) (From OE-Core rev: 180ba7f6603b35eb66946649d8860022d2c329b7) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* update-alternatives: We now use u-a in nativesdk so make sure the dependency ↵Richard Purdie2014-01-191-1/+1
| | | | | | | | | | | | | | is present When update-alternatives was part of opkg which got built in most nativesdk scenarios, this missing dependency wasn't an issue. We now need nativesdk-opkg-utils so we need to ensure the dependency is present in nativesdk cases. This avoids build failures with the recent u-a move to opkg-utils. (From OE-Core rev: 7e0adf676da45e49287b7ce6478a6dbfd8fa117f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm: Fix a race with package_deb/package_ipkRichard Purdie2014-01-161-0/+5
| | | | | | | | | | | | | | | | | We have the odd situation where the CONTROL/DEBIAN directory can be removed in the middle of the walk, the isdir() test would then fail and the walk code would assume its a file hence we check for the names in files too. This resolves the autobuilder failure: error: File not found: /home/pokybuild/yocto-autobuilder/yocto-slave/nightly-fsl-arm/build/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/xinit/1_1.3.3-r0/package/DEBIAN RPM build errors: File not found: /home/pokybuild/yocto-autobuilder/yocto-slave/nightly-fsl-arm/build/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/xinit/1_1.3.3-r0/package/DEBIAN (From OE-Core rev: e38d7702be279d6d6d4c79b3f2379e689a7473d2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* allarch.bbclass: set SDK_ARCH and SDK_CC_ARCH to "none"Laurentiu Palcu2014-01-161-0/+2
| | | | | | | | | | | allarch packages shouldn't use these variables. [YOCTO #5396] (From OE-Core rev: c7253ad1b00fcef8fe0aeaab06d2fe76c82ba0dc) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cmake: specify all install pathsRoss Burton2014-01-141-0/+9
| | | | | | | | | | | Specify the full set of install paths (bindir, libdir, etc) for packages that use the GNUInstallDirs module, instead of just the prefix and leaving the rest as default (which breaks with multilib). (From OE-Core rev: d3995ac14ba05c0420f15f264f7e9d0c3af71f74) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ptest: d.keys() is slow, use a list insteadRichard Purdie2014-01-141-1/+1
| | | | | | | | | | Unfortunately d.keys is extremely slow. Using a list in this case should be fine since the addtask lines are immediately above the code and aren't going to change often. (From OE-Core rev: 5901189f0442cefc4d17623547f7358ffc2d37a6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types bbclass: add support for tar.lz4 and cpio.lz4Koen Kooi2014-01-141-2/+4
| | | | | | | (From OE-Core rev: 0a541a0497902ee9993449b47da853b6c6a306d9) Signed-off-by: Koen Kooi <koen.kooi@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: add support for LZ4 initramfs filesKoen Kooi2014-01-141-1/+6
| | | | | | | (From OE-Core rev: 4cf53999459f3984f541ad5e666057a6727a066c) Signed-off-by: Koen Kooi <koen.kooi@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* distrodata bbclass: add support for lz4 archivesKoen Kooi2014-01-141-2/+2
| | | | | | | (From OE-Core rev: 4c6fb26d3fb54c75e99f6531a53054b8c6482a8b) Signed-off-by: Koen Kooi <koen.kooi@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base bbclass: add support for lz4 compressed archivesKoen Kooi2014-01-141-0/+5
| | | | | | | (From OE-Core rev: 8b31b2d612b7bcd98c393c3760bb2e1542c02bd5) Signed-off-by: Koen Kooi <koen.kooi@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cmake: default to out-of-tree buildsRoss Burton2014-01-141-0/+1
| | | | | | | | | | | Set B=${WORKDIR}/build in cmake.bbclass so that recipes using cmake.bbclass do out-of-tree builds by default. (From OE-Core rev: 783fb88f476c94d5d4f4b954f7053464d9a6dff5) 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>
* cmake: respect ${S} and ${B}Ross Burton2014-01-141-24/+11
| | | | | | | | | | | | | | | | | | | Instead of the class-specific variables OECMAKE_BUILDPATH and OECMAKE_SOURCEPATH, just use ${B} and ${S}. If these two paths are different, delete any existing ${B} before running a build so that previous builds don't taint the current build. Note that OECMAKE_SOURCEPATH and OECMAKE_BUILDPATH are not respected, so recipes that manually set these in the past will need to be updated to either use something along the lines of separatebuilddir.inc or set B themselves. If the old variables are set, a warning is displayed. (From OE-Core rev: 43073569cb67d98c11aa71211d77b566b64f9145) 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>
* ptest.bblass: Fix package QA issues when disabledNathan Rossi2014-01-141-13/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | When the ptest distro feature is disabled, a ptest directory is still created in the install phase, This directory is not cleaned up or consumed by any package and will throw a QA error, e.g. ERROR: QA Issue: glib-2.0: Files/directories were installed but not shipped /usr/lib/glib-2.0/ptest ERROR: QA run found fatal errors. Please consider fixing them. ERROR: Function failed: do_package_qa This is caused by the do_install_ptest_base[cleandirs] attribute which is not setup to be conditional on ptest being enabled. This patch refactors the use of PTEST_ENABLED in the *ptest_base tasks, replacing the conditional execution with the removal of the tasks from the build, this prevents any part (including cleandirs) of the ptest tasks from executing when disabled. (From OE-Core rev: def21f3f0bedae51651f1f0fc58b62b8aaaf37ae) Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* terminal.bbclass: do not export PS1Anders Darander2014-01-101-0/+4
| | | | | | | | | | | | | | With a complex PS1 setup, PS1 might not have all characters correctly escaped when terminal.bbclass writes the export. This caused the run.do_terminal.PID to terminate, making it impossible to use the devshell. As the spawned shell will parse e.g. .bashrc (or whatever rc-file is being used), PS1 will be reset in the devshell. (From OE-Core rev: a5e6926cd409140d16391c72316da00ffbfe5429) Signed-off-by: Anders Darander <anders@chargestorm.se> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package: Keep global pkgfiles[] up to date when snapping library symlinksPhil Blundell2014-01-101-0/+2
| | | | | | | | | | | | | Since ca86603607a69a17cc5540d69de0e242b33382d3 we are now calling stat() on all the pkgfiles[] during emit_pkgdata(). If symlink snapping has removed some of the files then we will blow up trying to stat a path that no longer exists. Fix that by ensuring that pkgfiles[] is updated when we process the list of library renames. (From OE-Core rev: bdad58c51dfdda5253933c3e371a7d526cdbb67e) Signed-off-by: Phil Blundell <pb@pbcl.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-module-split: Remove extraneous call to depmod from module postinstPhil Blundell2014-01-101-1/+3
| | | | | | | | | | | During rootfs construction, image.bbclass will call depmod after all the modules are installed. There's no need to run it from the postinst when operating in offline root mode. (From OE-Core rev: e8db81e4655ab7535db04aa3c8d7f9868ced6039) Signed-off-by: Phil Blundell <pb@pbcl.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>