aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes
AgeCommit message (Collapse)Author
2016-05-10Revert "kernel/kernel-arch: Explicitly mapping between, i386/x86_64 and x86 ↵Tom Zanussi
for kernel ARCH" This reverts commit a6f52930a68d8462e23486d51cdda715072dd752. In addition to also causing the problem in [YOCTO #9579], this commit was reverted in krogoth and master but wasn't reverted in jethro but should be. The original revert message was: This reverts commit 8d310b24927d0f348fb431895f0583733db2aad0. That commit completely breaks KBUILD_DEFCONFIG because it relies on $ARCH to match between the target OE arch and the kernel subdirectory containing the defconfigs. In the kernel all defconfigs for everything x86-based (including x86_64) is stored in dir arch/x86/configs/ kernel-yocto.bbclass correctly searches for all the defconfigs inside ${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG} Commit 8d310b249 makes it search in wrong places and _only_ if you define TARGET_ARCH = "athlon" will it search x86 which is nonsensical. The commit further adds an if clause to hack the mungled kernel arches back to their original values (ugh) in do_shared_workdir which is run after do compile, but of course the build breaks before that in do_kernel_metadata because of the KBUILD_DEFCONFIG mentioned above (so that hack is useless). Please fix that corner case bug in another way which does not completely screw up the kernel arch mapping & defconfig logic. If 64bit configs are generated in the kernel for 32bit machines because the host is asked, then it it a bug in the kernel, it is of no use to hack around it in OE. (From OE-Core rev: bc02a478a5d4a5de7b3943ed809d5c22711f5b1f) Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
2016-05-09boot-directdisk.bbclass: remove HDDIMG before createRobert Yang
Fixed when rebuild: mkdosfs: file /path/to/hdd.image already exists Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (cherry-pick from 9abcd309c098558360cde2bff65be840ead25f83) Signed-off-by: Tim Kilbourn <tkilbourn@gmail.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09license.bbclass: fix warnings when run in unprivileged "container" envBjørn Forsman
An unprivileged "container" environment like this[1] doesn't have root account (uid 0) which causes tons of "Invalid argument" warnings: $ bitbake ... ... WARNING: Could not copy license file [src] to [dest]: [Errno 22] Invalid argument: '[src]' WARNING: Could not copy license file [src] to [dest]: [Errno 22] Invalid argument: '[src]' WARNING: Could not copy license file [src] to [dest]: [Errno 22] Invalid argument: '[src]' ... Fix it by handling EINVAL similar to existing handling of EPERM (which was added for when not running under pseudo). [1]: The real environemnt is buildFHSUserEnv from NixOS/nixpkgs, but a demonstration of the issue can be done like this: $ touch f $ unshare --user --mount chown 0:0 f chown: changing ownership of ‘f’: Invalid argument (From OE-Core master rev: d00b2250a6afebd7d1373c04b4006290f0cd4043) Signed-off-by: Bjørn Forsman <bjorn.forsman@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>
2016-03-15license.bbclass: fix host contamination warnings for license filesJagadeesh Krishnanjanappa
We get below host contamination warnings of license files for each recipe, when we try to create a separate ${PN}-lic package (which contains license files), by setting LICENSE_CREATE_PACKAGE equal to "1" in local.conf. -- snip -- WARNING: QA Issue: libcgroup: /libcgroup-lic/usr/share/licenses/libcgroup/generic_LGPLv2.1 is owned by uid 5001, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated] WARNING: QA Issue: attr: /attr-lic/usr/share/licenses/attr/libattr.c is owned by uid 5001, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated] WARNING: QA Issue: bash: /bash-lic/usr/share/licenses/bash/COPYING is owned by uid 5001, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated] -- CUT -- Since the license files from source and OE-core, are populated in a normal shell environment rather in pseudo environment (fakeroot); the ownership of these files will be same as host user running bitbake. During the do_package task (which runs in pseudo environment (fakeroot)), os.link preserves the ownership of these license files as host user instead of root user. This causes license files to have UID same as host user id and resulting in above warnings during do_package_qa task. Changing ownership of license files to root user (which has UID and GID as 0) under pseudo environment will solve above warnings, and on exiting pseudo environment the license files will continue to be owned by host user. Perform this manipulation within try/except statements, as tasks which are not exected under pseudo (such as do_populate_lic) result in OSError when trying to change ownership of license files. (From OE-Core master rev: a411e96c3989bc9ffbd870b54cd6a7ad2e9f2c61) Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2016-03-11base: check for existing prefix when expanding names in PACKAGECONFIGRoss Burton
When the DEPENDS are added as part of the PACKAGECONFIG logic the list of packages are expanded so that any required nativesdk-/-native/multilib prefixes and suffixes are added. However the special handling of virtual/foo names doesn't check that the prefix already exists, which breaks under nativesdk as in that situation there's an explicit nativesdk- prefix *and* MLPREFIX is set to nativesdk-. This results in the same prefix being applied twice, and virtual packages such as virtual/libx11 ending up as virtual/nativesdk-nativesdk-libx11. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03image_types_uboot: add cpio.gz.uboot to supported IMAGE_TYPESArnold Csorvasi
U-Boot needs the U-Boot header in a ramdisk image to boot it. Add this header to the cpio.gz image, so that it can be booted with U-Boot. Signed-off-by: Arnold Csorvasi <arnold.csorvasi@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (From OE-Core master rev: 8376fa3d4ef6175b83ab7f1ec8e4e20ec14964f4) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
2016-03-03image_types.bbclass: Rebuild when WICVARS changeMariano Lopez
The procces to do a wic image is to save a file with variables required by wic and then call wic using this file. Because this is external to bitbake if the vars change, the image won't be rebuild; an example of such is IMAGE_BOOT_FILES. This patch adds these variables to vardeps of do_rootfs when a wic image is build. This will rebuild the image if a variable needed by wic changes. [YOCTO #8693] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (From OE-Core master rev: 12c54d50ed4c321dc272beb3c6cb770965c979f1) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
2016-03-03image_types: improve wks path specificationChristopher Larson
Hardcoding a full input path with zero flexibility goes against everything the Yocto Project is about. Rework it to let the user specify the wks base filename with WKS_FILE and it'll search the layers for the wks file and use it. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (From OE-Core master rev: 8cc7f5229f5447c2183ac319dd52c7ed737ec89b) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
2016-02-01kernel-yocto: fix checkout bare-cloned kernel repositoriesJianxun Zhang
The existing code doesn't tell regular (with .git) and bare cases and just move the unpacked repo to the place of kernel source. But later steps will fail on a bare-cloned repo because we can not checkout directly in a bare cloned repo. This change performs another clone to fix the issue. Note: This change doesn't cover the case that S and WORKDIR are same and the repo is bare cloned. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (cherry picked from commit ccfa2ee5c4f509de4c18a7054b2a66fc874d5d69) Signed-off-by: Saul Wold <sgw@linux.intel.com>
2016-01-15kernel/kernel-arch: Explicitly mapping between i386/x86_64 and x86 for ↵Jianxun Zhang
kernel ARCH For a bare-bone kernel recipe which specifies 32 bit x86 target, a 64 bit .config will be generated from do_configure task when building 32-bit qemux86, once all of these conditions are true: * arch of host is x86_64 * kernel source tree used in build has commit ffee0de41 which actually chooses i386 or x86_64 defconfig by asking host when ARCH is "x86" (arch/x86/Makefile) * bare-bone kernel recipe inherits directly from kernel without other special treatments. Build will fail because of the mismatched kernel architecture. The patch sets ARCH i386 or x86_64 explicitly to configure task to avoid this host contamination. Kernel artifact is also changed so that it can map i386 and x64 back to arch/x86 when needed. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15classes/populate_sdk_ext: disable signature warningsPaul Eggleton
The user of the extensible SDK doesn't need to see these. (From OE-Core master rev: 7045fabf73d4eef9c023edb9e0a8b8d1d3f04680) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15classes/populate_sdk_ext: fix cascading from preparation failurePaul Eggleton
During extensible SDK installtion, if the build system preparation step fails we try to put something at the end of the environment setup script to show an error when it is sourced, in case the user doesn't realise that the partially-installed SDK is broken. However, an apostrophe in the message (actually a single quote) appears to terminate the string and therefore breaks the command. Drop it to avoid that. (From OE-Core master rev: 21e591d182e24c399ae010a8eff9b89947061a46) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15buildhistory: fix not recording SDK informationPaul Eggleton
After OE-Core revision baa4e43a29e45df17eaa3456acc179b08d571db6 we lost recording SDK the contents in buildhistory. This was due to the SDK_POSTPROCESS_COMMAND variable being set with = in populate_sdk_base.bbclass which overwrote any value set with += in buildhistory.bbclass; to fix it, use _append in buildhistory.bbclass instead. Fixes [YOCTO #8839]. (From OE-Core master rev: 11d1aa82ef4a00051e0a50a87a1efed1c50c73b5) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15classes/populate_sdk_ext: error out of install if buildtools install failsPaul Eggleton
If the installation of buildtools fails then we should fail the entire installation instead of blindly continuing on. (From OE-Core master rev: 34bb63e6c72fb862e0ef0d2b26e1bfddaf7ddb99) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27autotools: Allow recipe-individual configure scriptsJens Rehsack
OpenJDK-8 has it's configure script at common/autotools - which will cause the entire assumption of ${S}/configure is regenerated by autoreconf, intltoolize or alike fails heavily. Also - other configure mechanisms can be supported more similar (see how pkgsrc manages different ones ...) (From OE-Core master rev: fe506eddb0790e37ac1e50f37fa2e32ad81d5493) Signed-off-by: Jens Rehsack <sno@netbsd.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2015-12-27toolchain-scripts.bbclass: unset command_not_found_handleFang Jia
On Ubuntu-system, When sourcing the env.sh from an exported sdk, and running a bogus linux command (for example "asd"), a core dump of python is usually generated. Unset the command_not_found_handle to fix it. (From OE-Core master rev: 473ccbebb426df757adb8955eaa5e191d88180d1) Signed-off-by: Fang Jia <fang.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27populate_sdk_ext.bbclass: Be more permissive on the name of the buildtoolsMark Hatle
We want to support different names for the buildtools tarball. The name may not always be of the default oe-core format. For instance, at Wind River we define the built-tools name to be: ${SDK_ARCH}-buildtools-nativesdk-standalone-${DISTRO_VERSION} because thes standard SDK_NAME has additional information that is not relevant to the builtools tarball. (From OE-Core master rev: b49c6f179b06a8b97106aa4c95f2cdb3c4dc0920) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27classes/populate_sdk_ext: fail if SDK_ARCH != BUILD_ARCHPaul Eggleton
The extensible SDK relies upon uninative, and with the way that uninative works, the build system architecture must be the same as the SDK architecture or the extensible SDK won't be usable. At some point in future hopefully we can remove this limitation, but until then it's disingenuous to allow this to build, so add a check to ensure SDK_ARCH == BUILD_ARCH and fail if it isn't. (From OE-Core master rev: 9e30e849eda3b0a0c54d3f7ed0102760fdaef06c) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27classes/populate_sdk_ext: tweak reporting of workspace exclusionPaul Eggleton
If you have a local workspace layer enabled when building the extensible SDK, we explicitly exclude that from the SDK (mostly because the SDK has its own for the user to use). Adjust the message we print notifying the user of this so it's clear that we're excluding it from the SDK, and scale it back from a warning to a note printed with bb.plain(). (From OE-Core master rev: 90f46f74a088a7b965d2205eceb9eff6f276dd38) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27classes/populate_sdk_ext: make it clear when SDK installation has failedPaul Eggleton
When SDK preparation fails: * Insert an ERROR: in front of the error message * Add an error message to the environment setup script Hopefully this should make it more obvious when this happens. Fixes [YOCTO #8658]. (From OE-Core master rev: 105df569b3b1982005c2edb37f4690f9ba6bde35) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27classes/populate_sdk_ext: tidy up preparation log file writingPaul Eggleton
Use a variable for the log file which includes the full path; this is not only neater but avoids us writing the first part (the output of oe-init-build-env) to a file in another directory since we are changing directory as part of this subshell. (From OE-Core master rev: 001af71752a9e9aab460cbd49ed049e1eb726295) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27classes/license: fix intermittent license collection warningPaul Eggleton
Fixes the following warning sometimes appearing during image builds: WARNING: The license listed ABC was not in the licenses collected for recipe xyz The files being looked for here, which runs during do_rootfs, are written out by the do_populate_lic task for each recipe. However, there was no explicit dependency between do_rootfs and all of the do_populate_lic tasks to ensure they had run - only an implicit link via do_build, so it is possible that sometimes they had not depending on how the tasks were scheduled. Add an explicit set of dependencies to fix this. (From OE-Core master rev: ef7dc532e800d9b170246550cbc8703adf624beb) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27classes/metadata_scm: fix git errors showing up on non-git repositoriesPaul Eggleton
Fixes the following error showing up for layers that aren't a git repo (or aren't parented by one): fatal: Not a git repository (or any of the parent directories): .git This was because we weren't intercepting stderr. We might as well just use bb.process.run() here which does that and returns stdout and stderr separately. (This was a regression that came in with OE-Core revision 3aac11076e22ac4fea48f5404110bb959547a9fe). Fixes [YOCTO #8661]. (From OE-Core master rev: f533c1bf4c6edbecc67f9e2c62fd475d64668e86) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27classes/distrodata: split SRC_URI properly before determining typePaul Eggleton
We weren't splitting SRC_URI values containing multiple URIs here; this didn't cause any errors except when a trailing ; was left on a URI, in which case the next URI was considered part of the parameter, which didn't contain a = and therefore was considered invalid. We only care about the first URI in SRC_URI in this context (since that's the upstream URI by convention) so split it as we should and take the first item. Fixes [YOCTO #8645]. (From OE-Core master rev: 8e75b7e7d54e5638b42b9e7f90f2c6c17e62033f) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27uninative.bbclass: Choose the correct loader based on BUILD_ARCHRandy Witt
Previously UNINATIVE_LOADER was always ld-linux-x86-64.so.2. That is incorrect when the host is 32-bit. This change also changes to using ?= so the user can override UNINATIVE_LOADER if so desired. [YOCTO #8124] (From OE-Core master rev: b78fa0bcadd54bb29b6f1bb3a9308d4c454bf4e2) Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2015-12-08allarch: Force TARGET_*FLAGS variable valuesMike Crowe
TARGET_CPPFLAGS, TARGET_CFLAGS, TARGET_CPPFLAGS and TARGET_LDFLAGS may differ between MACHINEs. Since they are exported they affect task hashes even if unused which leads to multiple variants of allarch packages existing in sstate and bouncing in the sysroot when switching between MACHINEs. allarch packages shouldn't be using these variables anyway, so let's ensure they have a fixed value in order to avoid this problem. (Compare with 05a70ac30b37cab0952f1b9df501993a9dec70da and 14f4d016fef9d660da1e7e91aec4a0e807de59ab.) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2015-10-29perl: Remove errornous extra path-specs for Module::Build based modulesJens Rehsack
This patch removes errornous extra path-specs from cpan_build.bbclass because corrected path specs at build time are enough. * fixes wrong path used when building using Module::Build toolchain Signed-off-by: Jens Rehsack <sno@netbsd.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-29perl: fix Perl5 module buildsJens Rehsack
This patch fixes some issues in classes providing cpan module build support: * add support even for xs modules with more than 3 levels as B::Hooks::End::Of::Scope or Math::Random::ISAAC::XS * correct handling of Module::Build (as far as stolen from pkgsrc and my humble knowledge) * configure to install to vendor_libs as default, even when inherited do_install remains unused (overwritten do_install) Signed-off-by: Jens Rehsack <sno@netbsd.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-29gtk-icon-cache: pass the native libdir to the interceptRoss Burton
The intercept runs against the native sysroot so we need to pass it the native libdir instead of the target libdir, as otherwise it will use target paths (such as lib64) in the native sysroot. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-29useradd-staticids.bbclass: Do not require trailing colonsPeter Kjellerstedt
Before, the users and groups specified in the passwd file and the groups file had to have trailing colons to make sure there were enough elements in the definitions, or bitbake would throw a Python exception. After this change one can omit the trailing colons, which especially simplifies passwd files used only to specify static UIDs. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-24classes/gtk-icon-cache: don't pass STAGING_LIBDIR_NATIVE to interceptsRoss Burton
The intercept doesn't need STAGING_LIBDIR_NATIVE anymore, so don't pass it. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-24sanity: check that the host has file installedRoss Burton
Now that file-native is ASSUME_PROVIDED, check that it's actually present. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-24populate_sdk_base: Ensure PKGDATA_DIR existsRichard Purdie
The code assumes that PKG_DATADIR exists and will fail if an image has not been generated which creates it. This occurs when something like buildtools-tarball is built which doesn't have target packages, only nativesdk ones. Since this shouldn't be fatal, workaround this by creating the missing directory. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-24prserv.bbclass: remove it since it is nullRobert Yang
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-24image-mklibs.bbclass: update i586 TARGET_ARCH test to i*86Andre McCurdy
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-24base.bbclass: considering multilib when setting LICENSE_EXCLUSIONJian Liu
The PACKAGES is not mapped with MLPREFIX when setting LICENSE_EXCLUSION in base.bbclass. For example, For libgcc-dev, LICENSE_EXCLUSION-libgcc-dev=1 but for lib32-libgcc-dev, LICENSE_EXCLUSION-libgcc-dev=1 Obviously it is wrong for lib32-libgcc-dev. Add MLPREFIX before the package name during setting LICENSE_EXCLUSION Signed-off-by: Jian Liu <jian.liu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-24classes/insane: rename invalid-pkgconfig QA check to invalid-packageconfigPaul Eggleton
We have enough confusing name clashes already, let's not precipitate another one. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-24package signing: automatically export public keysMarkus Lehtonen
Automatically export public key(s) of the signing key(s) from the gpg keyring. Adds a new simple recipe that does the actual task of exporting the keys. This patch makes the RPM_GPG_PUBKEY and PACKAGE_FEED_GPG PUBKEY settings obsolete. Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2015-10-24Add new bbclass for package feed signingMarkus Lehtonen
After this change signed package feeds should be enabled by adding INERIT += "sign_package_feed" instead of definining PACKAGE_FEED_SIGN="1". Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2015-10-24sign_rpm.bbclass: make RPM_GPG_NAME a mandatory settingMarkus Lehtonen
Simplifies the configuration. Makes way for the removal of RPM_GPG_PUBKEY setting and possible future implementation of a separate signing server support. Also, moves the configuration sanity checking into a separate function. Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2015-10-24sign_rpm.bbclass: be more verbose in case of errorMarkus Lehtonen
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2015-10-24sign_rpm.bbclass: introduce GPG_PATH variableMarkus Lehtonen
This bitbake configuration variable can be used to define the gpg home directory. Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2015-10-24linux-yocto: skip kernel meta data branches when finding machine branchBruce Ashfield
Before the fetcher validated the specified SRCREV was reachable on a specified branch, linux-yocto style kernel's were comparing the value of KBRANCH and branch on the SRC_URI and then allowing a SRC_URI specified branch to override KBRANCH. With the introduction of kernel meta data on the SRC_URI, this routine is incorrectly picking up a kernel-cache repository and then attempting to apply that branch information to the kernel repository. The rationalization of the branch specification is largely no longer required, and will may be removed in the future. But for now, to keep changes minimal, we can simply not return branch information that comes from kernel meta data by checking the 'type' parameter and skipping if it is of type 'kmeta'. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21archiver.bbclass: Fixes and improves archiver class for kernel and gcc packagesAlejandro Hernandez
gcc packages use a shared source directory, this causes an issue since the archiver will try to patch the same source several times (one for each gcc package), producing an error, the archiver class used stamp-base to check this, nonetheless our gcc packages no longer use stamp-base, they use gcc-shared instead, which is what broke this functionality. This patch adds a check to see whether or not the source should be patched, avoiding patching the source when it shouldn't. Also, we dont need to create multiple identical tarballs for all gcc packages, this patch fixes this and creates a single source tarball for gcc. When requesting patched sources, a race condition is created for linux-yocto tasks, unpack_and_patch is executed along with kernel_configme, which most of the time causes errors during configure, since kernel_configme task is specific to the kernel, simply modifying the tasks order by creating a dependency to kernel_configme was impossible, causing errors on all other packages that didnt use kernel_configme, this is fixed by creating a special case for the kernel, adding tasks with correct dependencies, avoiding the race condition and behaving the way it should for all other packages as well. [YOCTO #8378] Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-21useradd_base.bbclass: Do not warn without a reasonPeter Kjellerstedt
In c0da4270c76375a7a8cbcc09319fe4570ebbc5bd two bbwarn were changed to bbnote for the case where an added user or group already exists. The same should have been done for groupmems, groupdel and userdel as well since the warnings that are currently generated are superflouous. The two remaining similar bbwarn for groupmod and usermod are left as is since there they actually make sense. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-21sanity.bbclass: expand warning when chmod failsAlex Franco
As suggested, add exception message to warning in sanity.bbclass when chmod fails on TMPDIR. [YOCTO #7669] Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-20libc-package: Fix localedef multilib dependency issuesRichard Purdie
Building nativesdk-glibc-locale results in many messages like: QA Issue: nativesdk-locale-base-en-sg rdepends on localedef, but it isn't a build dependency? [build-deps] It should depend on ${MLPREFIX}localedef, not just localedef to fix these warnings. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-20classes/populate_sdk_ext: detect and warn if running in OE environmentPaul Eggleton
If you run the extensible SDK environment setup script in a shell session where oe-init-build-env has been run already, and attempt to use the two together, strange things happen - you may not even be running devtool from the extensible SDK, but the OE tree. This isn't a supported use case anyway, so show a warning recommending starting a new shell session. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-20classes/populate_sdk_ext: add note to env setup scriptPaul Eggleton
Print a note at the end of the environment setup script pointing to devtool. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-20classes/populate_sdk_ext: prevent image construction from executing on installPaul Eggleton
In order to prepare the build system within the extensible SDK, we actually go ahead and build the targets specified by SDK_TARGETS (by default the image the SDK was built for). Assuming that's an image, we don't actually need to build the image itself - we just need to have everything done up to the point before building the image, so that we have everything needed in the sysroot. In order to do this, create temporary bbappends for each of the targets in the workspace layer that stub out do_rootfs and related tasks if they exist. This is a little bit of a hack but is the least intrusive fix at this point. To make things a bit tidier, I have split out the preparation commands into a separate script so we can run that in the appropriate environment rather than all the commands separately. Fixes [YOCTO #7590]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>