summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* classes/populate_sdk_ext: support setting vars from environment at build timePaul Eggleton2016-03-311-0/+20
| | | | | | | | | | | | | | | | | | | | | | When running bitbake you may pass in values of variables from the external environment (making use of BB_ENV_EXTRAWHITE), and you may choose to do this when building the extensible SDK, for example: MACHINE=qemuarm bitbake -c populate_sdk_ext core-image-minimal You would naturally expect those settings to be reflected in the extensible SDK itself; however they were not, since we were only considering local.conf and auto.conf. Check the variables mentioned in BB_ENV_EXTRAWHITE to see if any are different than the values set in local.conf/auto.conf and add lines setting them in the SDK's local.conf if so. Fixes [YOCTO #9339]. (From OE-Core rev: 2bfed75c48a6f6596ded9cb64cb96f00510f914e) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image-live.bbclass: DEPENDS on syslinuxRobert Yang2016-03-311-0/+1
| | | | | | | | | | | The mkisofs requires syslinux/isolinux.bin which is provided by target syslinux, for pcbios, the depends is already there, but for EFI, it isn't, so add the depends. (From OE-Core rev: e9adedd32a7f2015e58efe2f460a99e8d745b4c6) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Use pythonexception to raise real exceptions without backtracesRichard Purdie2016-03-311-2/+2
| | | | | | | | | | | | | | | If the sanity code encounters a version change is doesn't understand, the current output is unreadable and confusing for the user, particularly due to the presence of the backtrace. Use improved functionality in bitbake to improve this and correctly pass python exceptions around. [YOCTO #9291] (From OE-Core rev: a0860e308645f17dbf4b9005b2fc0e9869d730bf) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uninative: Switch md5sum -> sha256Richard Purdie2016-03-312-2/+2
| | | | | | | | There are various concerns about md5 so use sha256 instead. (From OE-Core rev: a88603cb2ffd4f995e16349a389902eb884252e5) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: addtask do_deploy_archives_setsceneRobert Yang2016-03-301-0/+1
| | | | | | | | | There was a do_deploy_archives_setscene, but no addtask. (From OE-Core rev: 81db27c208468dc460e9d8f0063ad24b2b37dc97) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* siteinfo: Fix musl 64bit targetsKhem Raj2016-03-291-2/+5
| | | | | | | | | | | | | | | Found that ssize_t was being wrongly computed for mips64 musl because it was using wrong cache files. alias them to glibc versions, musl doesn't _yet_ have target incompatibilities to note in siteinfo thankfully. Add musl aliases for aarch64 and ppc64 targets (From OE-Core rev: d3867743e7028046454dc135efeefadfa382f463) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory.bbclass: create image directory when neededPatrick Ohly2016-03-291-0/+1
| | | | | | | | | | | | | | | | | buildhistory_get_imageinfo() assumed that the buildhistory directory for the image had already been created earlier. That assumption is not true for special images (like the virtual swupd images from meta-swupd) where the entire traditional do_rootfs/do_image is skipped. Creating files-in-image.txt still makes sense for such images, so support them by creating the directory also in buildhistory_get_imageinfo(). (From OE-Core rev: 723328319ee53235969ec9cce7ff5d7729dcf8d7) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf/bitbake.conf package.bbclass: fix dbg package not contain sources while ↵Hongxu Jia2016-03-281-4/+20
| | | | | | | | | | | | | | | | | | | | | | -fdebug-prefix-map used Tweak DEBUG_FLAGS to use "/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}" as source target path in DWARF. While use gdb to debug binary, it could work with sources in dbg package. While -fdebug-prefix-map is used for compiling, we do not need invoking debugedit to edit DWARF at do_package time, but list where sources files are. The copydebugsources uses the list to copy sources to dbg package. It works whether -fdebug-prefix-map used or not. [YOCTO #9305] (From OE-Core rev: ecb56a6ae0c870af680da03db9d39703b525fc98) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* externalsrc: remove nostamp from do_configureMarkus Lehtonen2016-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Extend the srctree_hash_files() function in externalsrc.bbclass to handle non-Git source trees. If the source tree is not a git repository, srctree_hash_files() now simply adds the whole source tree as a dependency, causing bitbake to basically hash every file in it. Hidden files and directories in the source tree root are ignored by the glob currently used. This has the advantage of automatically ignoring .git directory, for example. During the first bitbake run preparing of the task runqueue may take much longer if the source tree is not a git repository. The reason is that all the files in the source tree are hashed. Subsequent builds are not significantly slower because (most) file hashes are found from the cache. [YOCTO #8853] (From OE-Core rev: a797abe08bfe4144e120c984d1718c2cc3d87c0a) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* externalsrc: do not use do_configure[nostamp] for git srctreesMarkus Lehtonen2016-03-281-2/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Be a bit more intelligent than mindlessly re-compiling every time. Instead of always using 'nostamp' flag for do_compile run a python function to get a list of files to add as 'file-checksums' flag. The intention is to only re-run do_compile if something in the source tree content changes. This python function, srctree_hash_files(), works differently, depending if the source tree is a git repository clone or not. If the source tree is a git repository, the function runs 'git add .' and 'git write tree' to get a hash of the working tree and writes this hash into a file under the .git directory. This file containing the hash is then returned as the file for the task to depend on. Hash is changed if any changes are made in the source tree causing the task to be re-run. A trick is used to parse the recipe every time so that the hash file gets updated. If the source tree is not a git repository behaviour remains the same. In this case srctree_hash_files() currently sets the 'nostamp' flag for do_compile causing it to be re-run every time. This method of tracking changes source tree changes to determine if re-build is needed does not work perofectly, though. Many packages are built under ${S} which effectively changes the source tree causing some unwanted re-compilations. However, if do_compile of the recipe does not produce new/different artefacts on every run (as commonly is and should be the case) the re-compilation loop stops. Thus, you should usually see only one re-compilation (if any) after which the source tree is "stabilized" and no more re-compilations happen. [YOCTO #8853] (From OE-Core rev: a26becdf981b35d7ef8524f9e65c25a74b842f1d) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: Just archive gcc-source for all gcc recipesMariano Lopez2016-03-281-0/+6
| | | | | | | | | | | | | | It is pointless to archive several times the gcc source. This change will archive gcc source once, for the gcc-source-{PV} recipe. [YOCTO #9327] (From OE-Core rev: 2f53fb2ae561e2eb599682ba95ce83ad1b4b7ada) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gio-module-cache: Add class for Gio modulesJussi Kukkonen2016-03-281-0/+37
| | | | | | | | | | | | | | | | | | | | | The new class uses gio-querymodules tool on postinst and postrm. This regenerates the module cache which is useful to avoid loading modules that are not needed at runtime: If a Gio module is not listed in the cache file it will always get loaded. * Add a postinst-intercept 'gio-module-cache': it runs gio-querymodules using qemuwrapper. This is required because the tool actually loads the modules to generate the cache. * Add a gio-module-cache class that adds postinstall and postrm scripts. In the sysroot population case use the new intercept. * Inherit the new class in glib-2.0, glib-networking and gconf. Fixes [YOCTO #9241]. (From OE-Core rev: 168cf5502a2dda78348cc9679e37bed0c69c0208) Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: run wicenv task only for wic imagesEd Bartosh2016-03-281-1/+1
| | | | | | | | | | | | | | | | | | Currently do_wicenv task is run for all images. However, its result is used only to produce wic image. It's better to run this task only for wic images. If another rootfs is required to produce wic image, dependency to its do_wicenv must be added to the wic image recipy. Stopped running do_wicenv for all images. Added explicit dependency to this task in wic-image-minimal recipe. [YOCTO #9095] (From OE-Core rev: b81c176fb2f1ee818b6049c39ef353a7d7d5e078) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs-postcommands: don't write manifest when IMAGE_MANIFEST emptyJoshua Lock2016-03-281-1/+4
| | | | | | | | | | | | Return early in write_image_manifest () if the IMAGE_MANIFEST variable is unset. This allows us to prevent writing of the manifest where we prevent images being created for a recipe by unsetting IMAGE_FSTYPES. (From OE-Core rev: 54387be24d6a157574496f1b20b21c7fc2a51d3e) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: rename 'gobject-introspection-data' machine feature to ↵Alexander Kanavin2016-03-282-4/+13
| | | | | | | | | | | | | 'qemu-usermode' The new value is more general and better reflects what having the feature really means. Introspection data, then, is built only if 'gobject-introspection-data' is in DISTRO_FEATURES and 'qemu-usermode' is in MACHINE_FEATURES. (From OE-Core rev: 9927a3d72e2272d8e3dc4785ba02e27802ee1c6c) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: consider .csp firmware filesKhem Raj2016-03-281-1/+1
| | | | | | | | | | | | | | | | | Fixes kernels which package sb16 firmware e.g. directories were installed but not shipped in any package: /lib/firmware/sb16 /lib/firmware/sb16/ima_adpcm_playback.csp /lib/firmware/sb16/ima_adpcm_init.csp /lib/firmware/sb16/mulaw_main.csp /lib/firmware/sb16/ima_adpcm_capture.csp /lib/firmware/sb16/alaw_main.csp (From OE-Core rev: 826bc56e77bd9a53f6bc19548549f6d92de09911) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc.bbclass: replace icc with iceccAlex Franco2016-03-281-28/+28
| | | | | | | | | | | | | Make this class more clear and consistent, and avoid confusion with the Intel C compiler (icc); the changes affect function names, and calls to those functions [YOCTO #8934] (From OE-Core rev: daf59103c26ca8f1be7229f73a5b496d862e1f1e) Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc.bbclass: expand package archAlex Franco2016-03-281-1/+1
| | | | | | | | | | | | Expanding PACKAGE_ARCH might be necessary as it is being checked against to determine if this is allarch [YOCTO #8934] (From OE-Core rev: 45c59ffb742568e4f0d8cf53e4dfba5198bdc9f0) Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc.bbclass: add icc_is_allarch inherit checkAlex Franco2016-03-281-1/+1
| | | | | | | | | | | | | Additional check for inheritance of allarch.bbclass, for when checking that PACKAGE_ARCH == "all" is not enough to be sure a recipe is "allarch"; e.g. nativesdk-buildtools type recipes [YOCTO #8934] (From OE-Core rev: 0f9a3b445186b58d2c1f731da94c6b3a05494369) Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sanity: use proper multi-line string literalsPaul Eggleton2016-03-281-4/+4
| | | | | | | | | | A python string literal isn't meant to be split over multiple lines unless it is explicitly multi-line. Use three quotes to indicate that. (From OE-Core rev: 8cdb505bb3d9748be1744f36cbbfb4f62fa20b67) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uninative: don't try to relocate static binariesRoss Burton2016-03-261-0/+2
| | | | | | | | | | patchelf will understandably error out if there isn't a .interp section to relocate, so don't try to relocate static binaries. (From OE-Core rev: 2a1803e64174825d9392094ae6e680a1ac96eb4a) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uninative: ensure patchelf errors are visibleRoss Burton2016-03-261-1/+2
| | | | | | | (From OE-Core rev: 9840bfbe7d860bdb7ad9ac444a82f95510d48c2d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: Fix tar name for git repositoriesMariano Lopez2016-03-251-15/+6
| | | | | | | | | | | | | | When archiving the original source, the git repositories have the name as they are in the $DL_DIR plus the source revision; i.e. "git.yoctoproject.org.linux-yocto-4.4.git.89419d8b90_dadb436904.tar.gz". This change set the tar name to $PF.tar.gz instead, to have consistency with the others archives created by the class. (From OE-Core rev: 3f903cb767150e316337929d72559cad6931039a) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: Fix gcc-source corner caseMariano Lopez2016-03-251-2/+16
| | | | | | | | | | | | | | | | Bitbake couldn't add the task ar_configured when trying to archive the configured source for gcc-source-${PV} recipes. This is because the task depended in the do_configure and this task doesn't exist for gcc-source. This fix allows to archive configured gcc-source recipe. (From OE-Core rev: 5be5eae2e1630a151a9f5866d60325d439150ced) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: Fix use of ARCHIVER_WORKDIR and ARCHIVER_OUTDIRMariano Lopez2016-03-251-11/+11
| | | | | | | | | | | | | Currently do_unpack_and_patch() and do_ar_configured() are using the ARCHIVER_OUTDIR as the ARCHIVER_WORKDIR, this lead to have duplicated files inside the tars when using the archiver class for patched and configured source. (From OE-Core rev: 09dfc99a813090043262529beb6d900900e983dc) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: Don't expand python functions in dumpdataMariano Lopez2016-03-251-8/+7
| | | | | | | | | | | | | Currently the dumpdata task expands python data in the datastore, in some functions this causes a silent error and the task will fail. The change also rewrite the function to make a bit clearer. (From OE-Core rev: e3239ade430ff48e00dce47066abe8fcb990af61) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: check host tool dependencies on change in NATIVELSBSTRINGBill Randle2016-03-251-3/+10
| | | | | | | | | | | | | | | | When a user upgrades their host distro, it may no longer have all the required tools installed, but this won't be caught by bitbake resulting in possible build errors. Rather than check for installed tools on every startup, use the NATIVELSBSTRING change as indicator to rescan for host tool dependencies. Store the NATIVELSBSTRING in the sanity_info file. [YOCTO #8585] (From OE-Core rev: e838b581397bbea9a0f4d74648fcc250073db1ae) Signed-off-by: Bill Randle <william.c.randle@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: Treat .node files same as .so when checking what to stripBrendan Le Foll2016-03-251-1/+1
| | | | | | | | | | | | Typically in a node/npm compiled modules the module is named .node. This is a binary module without a wrapper so it can actually be relatively large if unstripped. (From OE-Core rev: d14bc2667575bc0e29b9e90d80c01703639b76f1) Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimg.bbclass: only inherit syslinux when pcbiosRobert Yang2016-03-254-8/+10
| | | | | | | | | | syslinux.bbclass should not be seen when use efi. (From OE-Core rev: f994eef0aeae861857756d3cc05c49cca17bd12b) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* grub-efi.bbclass: make it can build vm and live togetherRobert Yang2016-03-252-5/+6
| | | | | | | | | | | | * Make it can build vm and live (e.g., iso + vmdk) together as we did for syslinux. * GRUBCFG -> GRUB_CFG as other GRUB_FOO vars (From OE-Core rev: e38039e43f22d55a443064efa91752e2943fda79) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimg.bbclass: fix settings for grub-efi.bbclassRobert Yang2016-03-257-23/+22
| | | | | | | | | | | | | | | | | Fixed: - Found potential conflicted var LABELS ... Set LABELS to "boot install" would build out broken images when build vm + live together, use set_live_vm_vars() to fix the problem. - Use ROOT and LABEL in boot-directdisk.bbclass and image-foo.bbclass, they are not only used by syslinux.bbclass, but also grub-efi.bbclass, add "SYSLINUX_" prefix would mislead users. (From OE-Core rev: d7d1e0193c94abb1cd2daf1c298c8c1788f3616d) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass cleanupBill Randle2016-03-251-3/+6
| | | | | | | | | | | | | | | | | | Limit search for a version var name to start at the beginning of a line, otherwise, if the var name is used in a comment, that comment line will be replaced, rather than the desired assignment line. Move bblayer update message into function where it's actually updated, rather than assuming all successful config file update are to the bblayers.conf file. Replace a stray tab with spaces for consistency. [Fixes YOCTO #9318] (From OE-Core rev: 7c1e53bb802f021f06231243077d0e007a64274c) Signed-off-by: Bill Randle <william.c.randle@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gpg_sign.py: get rid of pexpectRobert Yang2016-03-251-4/+6
| | | | | | | | | | | | | The python-expect is not installed on the distro such as Ubuntu by default, and we can get rid of it. Use RPM_GPG_PASSPHRASE to replace of RPM_GPG_PASSPHRASE_FILE which is more straightforward. (From OE-Core rev: 4a8a74c62836a20610daf029d4cec0b3087758b2) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: add: delete externalsrc files on npm recipe do_installPaul Eggleton2016-03-251-2/+4
| | | | | | | | | | | | | | The npm class just installs whatever is in ${S}; if you're using externalsrc in conjunction with it the symlinks (oe-workdir and oe-logs by default) plus singletask.lock will end up in the final package, which isn't really right. Introduce a variable so we know the path the files will be installed into within npm.bbclass, and append to do_install within the workspace bbappend to delete the files. (From OE-Core rev: 766845e06db9d7d595e836ea1364c16fa132a413) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_ext: parse metadata on minimal SDK installPaul Eggleton2016-03-251-1/+1
| | | | | | | | | | | | Instead of skipping the build system preparation step within the extensible SDK install process when SDK_EXT_TYPE is "minimal", run bitbake -p so that the cache is populated ready for the first time devtool is run. (From OE-Core rev: 6b38a991a3475fb82889428b94563968c7570473) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/distutils*: don't hide logs when setup script failsPaul Eggleton2016-03-253-12/+12
| | | | | | | | | | | | We need to see the output of the setup script in the error message because what we are having bbfatal print here doesn't completely describe what went wrong, thus we should use bbfatal_log here and not bbfatal. (From OE-Core rev: 970a02061b474a238f57cd0cc4db7b62e36dfa3d) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/packagegroup: drop complementary -ptest if ptest not in DISTRO_FEATURESPaul Eggleton2016-03-251-1/+4
| | | | | | | | | | If ptest isn't in DISTRO_FEATURES, there won't be any -ptest packages and thus no need for the -ptest package for the packagegroup either. (From OE-Core rev: 52f9b12601c02f1585438f890f847b4596170362) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/packagegroup: fix dbg/dev/ptest complementary packagesPaul Eggleton2016-03-251-3/+6
| | | | | | | | | | | | | OE-Core commit 8981ed20234c42dc1f5cdef802ebe7214bd55238 (from 2013) caused a regression where -dbg/-dev/-ptest packages weren't generated for packagegroups because we weren't setting ALLOW_EMPTY for them. Break out the code for adding complementary groups to its own conditional so we can set ALLOW_EMPTY at the same time. (From OE-Core rev: 340e9d619c881f320070474d5c4674dcaeabad35) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* externalsrc: use shared stamp directory if B=SMarkus Lehtonen2016-03-201-6/+4
| | | | | | | | | | | | | | | | | | | | | | | We have a common build directory for all target architectures if externalsrc is used and ${B}=${S}. In this case we also need to have a common stamp directory. The reason is that e.g. changing MACHINE will basically "invalidate" the artefacts in ${B} (wrt. to the new MACHINE) but old stamp files with matching hashes from an earlier build might be available in the machine-specific stamps directory and tasks would not be correctly re-run. Previous attempt in f44f12af346888bdeb3ae01a275cb5dd4396b505 to handle this correctly was faulty as it threw some spurious warnings and caused do_configure to be re-run in every build if that would not be necessary. [YOCTO #8950] [YOCTO #9237] (From OE-Core rev: f5031fb37ceef83c85f0dfec773da75c05b2a631) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gobject-introspection.bbclass: wrap comments at 80 columnsAndre McCurdy2016-03-201-14/+12
| | | | | | | | | | Whitespace and comment updates only, no functional changes. (From OE-Core rev: 738393ea98baec364d3da117a1307a39d348b660) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: allow customizing config file update error messagesPatrick Ohly2016-03-201-3/+8
| | | | | | | | | | | | The default file pattern may be amiguous and "meld" might not always be the preferred tool, so allow distros to override those parts of the error messages. (From OE-Core rev: 98fc50436dfa5d0e5bee0930154a5563ffc8151d) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: fix success message when config file was updatedPatrick Ohly2016-03-201-1/+1
| | | | | | | | | | | The code now iterates over different config files, but always printed a message about conf/bblayers.conf for each file. (From OE-Core rev: af55727fc1920c4c23476304f57a3720835ec203) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: expand error messages for version checksPatrick Ohly2016-03-201-2/+5
| | | | | | | | | | | | | | | | | | | | | | The ${WORKDIR} variable was not getting expanded (anymore?), leading to less helpful error messages like: Exception: NotImplementedError: Your version of bblayers.conf has the wrong LCONF_VERSION (has 7, expecting 8). Please compare your file against bblayers.conf.sample and merge any changes before continuing. "meld conf/bblayers.conf ${COREBASE}/meta*/conf/bblayers.conf.sample" is a good way to visualise the changes. ERROR: Execution of event handler 'check_sanity_eventhandler' failed After adding expansion, embedding ${LCONF_VERSION} and ${LAYER_CONF_VERSION} in the error message seems a bit more readable and consistent. (From OE-Core rev: 7fd08497cf780018fa144a870bdea0e7a69dae20) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd_base.bbclass: replace retry logic with flockKai Kang2016-03-202-125/+46
| | | | | | | | | | | | | | | | | When perform useradd during populate sysroot, it locks files passwd.lock and group.lock at same time. And then it meets a dead lock issue randomly. Use flock to reslove it by using an universal lock directory for all the user and group related operations. [YOCTO #9022] (From OE-Core rev: 2ebf697b46c42cee8bfa6d2e6087397f8cce385c) Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: track ROOTFS_POSTUNINSTALL_COMMAND in do_rootfs vardepsPatrick Ohly2016-03-201-1/+1
| | | | | | | | | | | | | The list of variables influencing do_rootfs was not updated when introducing ROOTFS_POSTUNINSTALL_COMMAND. As a result, making changes in commands listed there or the variables they depend on did not trigger a re-run of do_rootfs. (From OE-Core rev: 66b461ce9df7ed06d7651b9b54a49a950b97a1d4) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uninative: Add a fix for icu-native to use the correct ABIRichard Purdie2016-03-121-0/+5
| | | | | | | | | | | | | If no -std= option is passed to icu's configure, it defaults to CXX11. This isn't what we want for uninative, so pass an explicit option which selects an older ABI on newer versions of g++. This avoids the __cxa_bad_array_new_length@CXXABI_1.3.8 symbol being used. (From OE-Core rev: ac59063bee0e32d0737340974f657341717a6abe) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/buildhistory: record a few more variables for extensible SDKPaul Eggleton2016-03-121-1/+2
| | | | | | | | | | | | We've recently added SDK_EXT_TYPE and SDK_RECRDEP_TASKS and these will have an effect on the size and functionality of the SDK, so record them in sdk-info.txt. (From OE-Core rev: 1be0ae80f97bdee758232ec5397c09d73d57e1e0) 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>
* package-deb: Ignore circular dependenciesRicardo Ribalda Delgado2016-03-121-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a package depends on itself apt-get fails to install it with the error attached to this patch. This patch checks for this conditions and notifies the user so the recipe maintainer can fix his RDEPENDS variable. root@qt5022:~# apt-get install perl-module-cpan Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: perl-module-cpan 0 upgraded, 640 newly installed, 0 to remove and 0 not upgraded. Need to get 0 B/5964 kB of archives. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] E: Internal error: MaxLoopCount reached in SmartUnPack (2) for perl-module-cpan:amd64, aborting E: Internal error, packages left unconfigured. perl-module-cpan:amd64 root@qt5022:~# apt-get install perl-modules (From OE-Core rev: d8bf148c3b740254ed23d52cf244f0f6e9c7a4ab) Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_deb: Fix python runtime errorRicardo Ribalda Delgado2016-03-121-2/+2
| | | | | | | | | | | | | | | | The dictionary cannot be used for iteration if its size may change during the loop. ERROR: Error executing a python function in /home/ricardo/curro/qt5022/build-qt5022/repo/yocto/meta/recipes-devtools/perl/perl_5.22.0.bb: Exception: RuntimeError: dictionary changed size during iteration Acked-by: Aníbal Limón <anibal.limon@linux.intel.com> (From OE-Core rev: 04aa40be126e00e2eb97311510e4d3ea90bfe7eb) Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image-buildinfo.bbclass: fix performance problemsPatrick Ohly2016-03-121-13/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | Inheriting image-buildinfo.bbclass primarily slowed down image building for two reasons: 1. The content of the shell command "buildinfo" gets expanded multiple times, each time again checking the state of all layers. 2. When expanded as part of the actual image creation, git is invoked under pseudo, which makes the check quite a bit slower (from a few seconds to a minute with many layers). To fix this, buildinfo now is a Python method which calls the checks only when really executed. Pseudo is told to unload itself when starting git. In addition, "git diff" is invoked with "--quiet", which avoids producing output that is just getting thrown away. As before, any kind of problem or output causes the layer to be marked as "modified". [Revision 2 of the change with some dead code removed] (From OE-Core rev: e59547e4154b772a36f4e58f1d454c0c38653c84) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>