summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* kernel.bbclass: allow uncompressed initramfs archivesAndreas Oberritter2016-12-081-1/+1
| | | | | | | | | | | The code failed to copy the initramfs in case it was a plain cpio archive. (From OE-Core rev: 7dbdb4ea91aa027866da2bd46c65fe65a25c848f) Signed-off-by: Andreas Oberritter <obi@opendreambox.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging: Drop unused SYSROOT_LOCKRichard Purdie2016-12-081-1/+0
| | | | | | | | | This hasn't been used in years and isn't referenced anywhere, drop the definition. (From OE-Core rev: 68258f856f08f35813964e58ef761471e29373ad) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-yocto: exit on non-zero return codeBruce Ashfield2016-12-071-1/+0
| | | | | | | | | | | | | | | | Historically the processing of kernel meta data contained some commands that exited with a non-zero return code. Special processing was required to properly deal with their exit. That is no longer true, and instead of handling all return codes and doing an explicit 'exit' call, we can remove set -e from the routine and have all errors be trapped and stop processing. (From OE-Core rev: 476ffd57cf5b6fba40d4e3f5dd913824ab8a8d3d) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: let do_deploy depend on do_packagedataRobert Yang2016-12-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The do_deploy runs depmodwrapper which requires pkgdata/kernel-depmod/kernel-abiversion, which is generated by PACKAGEFUNCS. So we need let do_deploy depend on do_packagedata. This can fix the errors which happens sometimes when kernel upgrades: DEBUG: Executing shell function do_deploy Error: Kernel version 4.8.8-WR9.0.0.1_standard does not match kernel-abiversion (4.8.8-WR9.0.0.0_standard) And we only see this error when kernel upgrades and rebuild, but doesn't see it in a normal build, this is becuase depmodwrapper doesn't exit error when kernel-depmod/kernel-abiversion doesn't exit, it just prints an error which should go into log.do_deploy: if [ ! -r /path/to/sysroots/qemux86-64/pkgdata/kernel-depmod/kernel-abiversion ]; then echo "Unable to read: /path/to/sysroots/qemux86-64/pkgdata/kernel-depmod/kernel-abiversion" >&2 else [foo] fi We can see that there is no "exit 1", I guess it was designed to let it can run without kernel-abiversion (From OE-Core rev: 64148a30397b8c92414262c0d414d103d2b97ddd) 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>
* buildstats: record disk space usagePatrick Ohly2016-12-071-2/+2
| | | | | | | | | | | | | Hooks into the new monitordisk.py event and records the used space for each volume. That is probably the only relevant value when it comes to visualizing the build and recording more would only increase disk usage. (From OE-Core rev: 21a5b569370f47cc02291e1d8b76fe43faa04ea6) 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>
* buildstats: add system state samplingPatrick Ohly2016-12-071-0/+24
| | | | | | | | | | | | | | | | | /proc/[diskstats|meminfo|stat] get sampled and written to the same proc_<filename>.log files as during normal bootchat logging. This will allow rendering the CPU, disk and memory usage charts. Right now sampling happens once a second, triggered by the heartbeat event.That produces quite a bit of data for long builds, which will be addressed in a separate commit by storing the data in a more compact form. (From OE-Core rev: 6f4e8180b5b4857eaf6caf410fd3a4a41ed85930) 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>
* upstream-version-is-even.bbclass: ensure that the full version is matched.Alexander Kanavin2016-11-301-1/+1
| | | | | | | | | | Previously 4.3.2.1 would match as 3.2.1. (From OE-Core rev: b066910f64ba964a8a0bb452925591eed1e16940) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd.bbclass: don't block on service restartMark Asselstine2016-11-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current class works fine when a recipe uses SYSTEMD_AUTO_ENABLE 'enable' and has no on device pkg_postinst(), ie when the postinst is run as part of rootfs creation. However, when there is a component of pkg_postinst() that is run on device the 'systemctl restart' is run as part of the run_postinsts.service at boot. This results in the boot spinning indefinitely with: [ *** ] A start job is running for Run pending postinsts (7s / no limit) The issue could potentially be that the packages service has an 'After' clause which comes later in the boot, beyond run_postinsts.service, creating a chicken before the egg scenario. Even service files without an 'After' clause cause this situation however. Despite this not being the cause of the issue this fix will prevent this scenario from happenning. Using strace we are able to find that during boot, when run_postinsts.service is running attempting to start or restart any service will result in the call get stuck on poll(). Since the run_postinsts.service does not monitor the outcome of the call to restart we can work around this by using '--no-block'. (From OE-Core rev: 6ad6a0084a73088fc2a27ab9958e5c46d6e094fc) Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuboot.bbclass: do not hook into do_rootfsPatrick Ohly2016-11-301-3/+3
| | | | | | | | | | | | | | | | | | | | | | Writing qemuboot.conf in write_qemuboot_conf() does not modify the rootfs and thus conceptually shouldn't be executed as part of rootfs creation. Running it as separate task is cleaner and fixes the problem of missing qemuboot.conf files for meta-swupd virtual images; those images replace do_rootfs and ROOTFS_POSTPROCESS_COMMANDs don't run at all. The task gets added such that it runs roughly at the same time as before. Probably it doesn't actually need to depend on do_rootfs, but this way we don't write a useless qemuboot.conf in cases where do_rootfs fails. (From OE-Core rev: c8260447ed115bc5be7df9b25e449a7744d9f2df) 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>
* insane: rewrite the expanded-d test as a QAPKGTESTRoss Burton2016-11-301-19/+13
| | | | | | | | | | | | | Instead of being executed for every file in every package, this is now just called for each package. It is also now correctly called for packages which don't have any content but do have postinst scripts. [ YOCTO #10711 ] (From OE-Core rev: afda72b2424528eaff9054327530bdf5654bec66) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: add QAPKGTEST, a package-wide equivilant to QAPATHTESTRoss Burton2016-11-301-0/+20
| | | | | | | | | | | | QAPATHTEST defines a function that is executed for every file in every package. For tests which just need to look at the datastore this is massive overkill. Add QAPKGTEST, which is invoked for each package in the recipe. (From OE-Core rev: acc3cc26099c77e4eeb44c75bc7167ab58ef1147) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: factor out the test matrix processingRoss Burton2016-11-301-21/+25
| | | | | | | | | Pull the test matrix processing out as a function so it can be reused. (From OE-Core rev: 3caccd3f6079b7e284d32e1eb0217107425e7bf8) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: fix expanded-d testRoss Burton2016-11-301-2/+1
| | | | | | | | | | | This test should be looking for the expanded value of ${D} in the expanded value of pkg_postinst and so on, but one of the getVar() calls was passing expand=False so the test would never be true. (From OE-Core rev: cc545044cba51317bee32e3bf674723e422e3a8a) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Add aarch64 baremetal mappings to the QA arch testAlexandre Belloni2016-11-301-0/+2
| | | | | | | | | | | Add mappings for aarch64-elf and aarch64_be-elf to binary lookup table which allows for the generation of baremetal toolchains. (From OE-Core rev: e90a1c4b8fd7baa738eb4683e5eac60905e04296) Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gnomebase: remove gnome-common-native DEPENDSRoss Burton2016-11-301-3/+0
| | | | | | | | | | | gnome-common is deprecated upstream and an increasingly smaller fraction of GNOME packages still use it. To avoid adding it redundantly to DEPENDS, remove it from the class. (From OE-Core rev: 1d18c2b7bfaed77b30e02d14ae581d920e4eb446) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "classes/populate_sdk_ext: require uninative"Ross Burton2016-11-281-3/+4
| | | | | | | | | | | | The change to move C++ ABI tweaks to bitbake.conf should make this redundant, so revert it. This reverts commit c56cd49a12645e82d0a16bb94be16ac509f8813c. (From OE-Core rev: af280990bff4a484fd8a18e3442b56a0a39b7611) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf: add C++ flags for uninative interoperatilityRoss Burton2016-11-281-11/+0
| | | | | | | | | | | | | | | | | Create a common include file for compiler flags which allow native binaries to be interoperable on a wide range of hosts. In particular the C++ ABI is problematic so choose the CXX11 version to allow interoperation between gcc4 and gcc5 based hosts. Moving this to a common include instead of uninative.bbclass allows uninative to be configured later and used in the eSDK (where its mandatory) even if the base configuration doesn't enable uninative by default (e.g. nodistro in OE-Core). [ YOCTO #10645 ] (From OE-Core rev: 60c912ae9306532bdd4c5e09a65863ee77c12f43) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildstats: Place 'Elapsed Time' stat into a single lineLeonardo Sandoval2016-11-231-2/+2
| | | | | | | | | | | All lines except one (the one containing the 'Elapsed Time') follows the format 'stat: value'. Fix that so post parsing the stats is simpler. (From OE-Core rev: 47dfd172754440a7ab28eb1b59d9bd484cdad22a) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devshell: list commands when throwing NoSupportedTerminalsStephano Cetola2016-11-231-2/+6
| | | | | | | | | | | | | | | When attempting to run devshell, if no terminal is available, the error being thrown was not very specific. This adds a list of commands that failed, informing the user of what they can install to fix the error. [ YOCTO #10472] (From OE-Core rev: c077f4aab2fc956408d4ad45c4e2e2ea6e480624) Signed-off-by: Stephano Cetola <stephano.cetola@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: fix check_connectivity() for BB_NO_NETWORK = "0"Robert Yang2016-11-231-5/+9
| | | | | | | | | | | | | | | The old code: network_enabled = not d.getVar('BB_NO_NETWORK', True) It is True only when BB_NO_NETWORK is not set (None), but BB_NO_NETWORK = "0" should also be True while "1" means no network, "0" means need network in a normal case. (From OE-Core rev: 3d8db6cb992f96023a0486f64fe6b0f1ead04184) 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:check_connectivity(): print more error messagesRobert Yang2016-11-231-1/+4
| | | | | | | | | | | | | | | | This can help fix the problem when the error happens. Now the error message is: Fetcher failure for URL: 'https://www.example.com/'. URL https://www.example.com/ doesn't work. Please ensure your host's network is configured correctly, or set BB_NO_NETWORK = "1" to disable network access if all required sources are on local disk. (From OE-Core rev: 0b31a03c59efea3a8742762772e39dcbd6f8ed25) 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>
* testsdk.bbclass: print which file is not foundRobert Yang2016-11-231-3/+3
| | | | | | | | | | This is helpful when debug. (From OE-Core rev: eef945787b5717bbb5d3bbddc446d4da86e3eb62) 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>
* populate_sdk_ext.bbclass: use weak assignment for TOOLCHAINEXT_OUTPUTNAMERobert Yang2016-11-231-1/+1
| | | | | | | | | | | | | | | The TOOLCHAINEXT_OUTPUTNAME is different from TOOLCHAIN_OUTPUTNAME, it is used for eSDK only, so that it doesn't mix with SDK, use "?=" for it so that other conf file can define it. If we don't use "?=" here, then we need use forcevariable to redfine it: TOOLCHAINEXT_OUTPUTNAME_forcevariable = "foo" (From OE-Core rev: 933539a07af3f1cca79e49b0ea92cb7699095f96) 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>
* devtool: update-recipe: fix handling of compressed local patchesPaul Eggleton2016-11-231-4/+5
| | | | | | | | | | | | | | | | | | | | It is possible to use gzip or bzip2 to compress patches and still refer to them in compressed form in the SRC_URI value within a recipe. If you run "devtool modify" on such a recipe, make changes to the commit for the patch and then run devtool update-recipe, we need to correctly associate the commit back to the compressed patch file and re-compress the patch, neither of which we were doing previously. Additionally, add an oe-selftest test to ensure this doesn't regress in future. Fixes [YOCTO #8278]. (From OE-Core rev: e47d21624dfec6f71742b837e91da553f18a28c5) 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>
* cmake.bbclass: Set CXXFLAGS and CFLAGSKhem Raj2016-11-231-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We strip the TOOLCHAIN_OPTIONS and HOST_CC_ARCH from CC/CXX in cmake.bbclass whereas CFLAFS and CXXFLAGS assume that TOOLCHAIN_OPTIONS are part of CC/CXX variables, this causes compile failures when cmake is running compiler tests during configure on some architectures especially armhf, because hf ABI information -mfloat-abi is part of TOOLCHAIN_OPTIONS, so what happens is that testcase gets compiled without hard-float, howver, during linking the float ABI option is passed via LDFLAGS, now linker rejects this and fails like /mnt/a/build/tmp-glibc/sysroots/x86_64-linux/usr/libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/6.2.0/ld: error: cmTC_27947 uses VFP register arguments, CMakeFiles/cmTC_27947.dir/src.cxx.o does not mnt/a/build/tmp-glibc/sysroots/x86_64-linux/usr/libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/6.2.0/ld: failed to merge target specific data of file CMakeFiles/cmTC_27947.dir/src.cxx.o collect2: error: ld returned 1 exit status This means that CMake now fails the configure time test too which is not right, e.g. it might disable features which actually do exist and should be enabled e.g. in case above it is resulting as below Performing C++ SOURCE FILE Test HAS_BUILTIN_SYNC_SUB_AND_FETCH failed with the following output: Its actually a bug in CMake see https://gitlab.kitware.com/cmake/cmake/issues/16421 CMake is ignoring CMAKE_CXX_FLAGS when using CHECK_CXX_SOURCE_COMPILES function. Until it is fixed upstream, we add HOST_CC_ARCH and TOOLCHAIN_OPTIONS to CFLAGS and CXXFLAGS, so that we can ensure that compiler invocation remains consistent. (From OE-Core rev: 826f3cdb474b5728b22f08d2342fc90235ca9e7d) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: Reload configuration on package installLinus Wallgren2016-11-231-0/+4
| | | | | | | | | | | When a systemd service file has changed it is required to reload systemd's configuration. Otherwise changes to a service file will not be picked up during package upgrade. (From OE-Core rev: 94efe6d1d7893e241bcf98eff80ac8d8fbf2e885) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* binconfig: Use d.getVarRichard Purdie2016-11-231-2/+2
| | | | | | | | The bb.data API is deprecated, use d.getVar instead. (From OE-Core rev: 3246319233fd111d42e0a2c2b0d6983a604d5b81) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: fix logging of an errorMarkus Lehtonen2016-11-151-1/+1
| | | | | | | | | | | Fixes a crash in exception handler. All bb logging functions need an string instances as arguments. (From OE-Core rev: a675b2c89e477af088faee9b3be96eae19a85f0b) 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>
* populate_sdk_ext.bbclass: check unfsd before create itRobert Yang2016-11-151-2/+3
| | | | | | | | | | | | | | | Fixed when nativesdk-unfs3 is installed: $ bitbake <image> -c populate_sdk_ext | Traceback (most recent call last): | File "/path/to/oe-core/scripts/lnr", line 21, in <module> | os.symlink(target, linkname) | FileExistsError: [Errno 17] File exists: '../../../../tmp/sysroots/x86_64-linux/usr/bin/unfsd' -> '/path/to/9.0/sysroots/x86_64-wrlinuxsdk-linux/usr/bin/unfsd' (From OE-Core rev: a400c130037497f08a1645984129c5ddba76c031) 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>
* cve-check.bbclass: CVE-2014-2524 / readline v5.2André Draszik2016-11-151-1/+1
| | | | | | | | | | | | | | | | | Contrary to the CVE report, the vulnerable trace functions don't exist in readline v5.2 (which we keep for GPLv2+ purposes), they were added in readline v6.0 only - let's whitelist that CVE in order to avoid false positives. See also the discussion in https://patchwork.openembedded.org/patch/81765/ (From OE-Core rev: b881a288eec598002685f68da80a24e0478fa496) Signed-off-by: André Draszik <adraszik@tycoint.com> Reviewed-by: Lukasz Nowak <lnowak@tycoint.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* chrpath: Remove standard search paths from RPATHSRichard Purdie2016-11-151-4/+9
| | | | | | (From OE-Core rev: 6b94569d5d8e8bdd575d12e260abf10d3ac11cfd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image-buildinfo: treat staged changes as modified branch, tooAndré Draszik2016-11-151-1/+3
| | | | | | | | | | | | | | | | | | | | | | | When staging changes in a layer using git add, image-buildinfo doesn't detect this as a modification, because of the way it uses git diff. Surely, merely staging, but not committing changes to git should not result in image-buildhistory assuming that the git repository hasn't been modified compared to the branch HEAD, this state should be treated similarly to modifications being unstaged. We have to use both, git diff and git diff --cached to get the desired result. (From OE-Core rev: b46906889665f6ab72bccee608276646cda50140) Signed-off-by: André Draszik <adraszik@tycoint.com> Reported-by: Lukasz Nowak <lnowak@tycoint.com> Reviewed-by: Lukasz Nowak <lnowak@tycoint.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base.bbclass: add documentation packages to SDKs if ↵Alexander Kanavin2016-11-061-1/+1
| | | | | | | | | | api-documentation is in DISTRO_FEATURES (From OE-Core rev: d2b7b3fca328449cd87997be7f897b59433a153d) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/license: copy licenses even if there are no checksummed filesRoss Burton2016-11-061-7/+1
| | | | | | | | | | | | | | | | | | | | | | | Previously do_populate_lic would bail writing the license files (such as the MIT license text) to deploy/licenses/${PN}/ if there were no files listed in LIC_FILES_CHKSUM. In general this isn't a problem since LIC_FILES_CHKSUM was effectively a required field, and for packages which don't have traditional content was generally set to a separate license such as ${COREBASE}/meta/COPYING.MIT. However LIC_FILES_CHKSUM is now only required if there are sources in SRC_URI, so oe-core b18fa5f removed these now redundant values. The unexpected side effect of this is that that recipes that generate their content (such as os-release) or are otherwise "interesting" (such as perf) don't have their license files copied over, resulting in warnings from do_rootfs. Resolve this by not returning early if LIC_FILES_CHKSUM is empty, and always copy the references license files. (From OE-Core rev: 94f5ac0651249cb98fb8d1308b7c0d10605d5a1e) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_ext: require uninativePaul Eggleton2016-11-061-4/+3
| | | | | | | | | | | | | | | | | | | It seems that possibly due to OE-Core commit ac59063bee0e32d0737340974f657341717a6abe, binaries produced without uninative aren't compatible with the uninative glibc. I did try earlier to ensure that the eSDK could work without uninative since the default configuration in OE-Core does not enable it, but it seems like I didn't go far enough. Given the practical considerations, just give up and require uninative to be enabled in order to build the eSDK. I'm not particularly happy about this, but I don't seem much of an alternative. Fixes [YOCTO #10566]. (From OE-Core rev: b59eee7bebd413c7abe5626f69508e1fe47dd0ac) 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>
* classes/populate_sdk_ext: prevent invalid TEMPLATECONF entering eSDKPaul Eggleton2016-11-061-1/+5
| | | | | | | | | | | | | | | | | | | | If you are using a repository which contains a .templateconf file that sets TEMPLATECONF to point into a layer it contains, but you aren't using that layer in your bblayers.conf, the eSDK would produce an error during the preparation step of the installation. An example would be using the poky repository but setting DISTRO to your own custom distro and removing meta-poky from your bblayers.conf. The eSDK doesn't support creating new build directories, so we don't care about the templates and can thus force a known good value to prevent this from happening. Fixes [YOCTO #10568]. (From OE-Core rev: 5ee32191a18013061dfa72e64713a94c5d321496) 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>
* texinfo.bbclass: use dummy dep for libtool-crossChristopher Larson2016-11-061-4/+7
| | | | | | | | | | | | The class clearly intends build tools to depend upon the dummy texinfo, but it does so using the class-cross override for cross recipes, and libtool-cross doesn't inherit cross. Add a special case to cover this. (From OE-Core rev: 26343dc11725c4c15b78b8d45ff7d2fb8d35ef6e) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testsdk.bbclass: Clean up comments, clarify image choices.Robert P. J. Day2016-11-061-6/+8
| | | | | | | | | | Make it clear that SDK testing can use any valid image. (From OE-Core rev: d190c69347921a626665a53469dcf99b3c86994b) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass:buildpaths: open() file with 'rb'Robert Yang2016-11-061-2/+2
| | | | | | | | | | | | | | | open() is default to 'rt' which may cause decoding errors when open binary file: $ bitbake xcursor-transparent-theme [snip] Exception: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfd in position 18: invalid start byte [snip] (From OE-Core rev: ddbab61f47efd9b4fde38ef8f0f3482c78abe37c) 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>
* classes/nativesdk: set SDK_OLDEST_KERNEL appropriatelyPaul Eggleton2016-11-062-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | SDK_OLDEST_KERNEL currently only controls the check on SDK installation, however as with OLDEST_KERNEL it should be controlling the OLDEST_KERNEL value for building glibc used in the SDK. Thus, set it in nativesdk.bbclass. This means we need to move the default to bitbake.conf so that it can be seen in both places. Also set a more reasonable default for SDK_OLDEST_KERNEL for x86/x86-64 as glibc 2.24 still supports back to 2.6.32 there and there are still people wanting to build SDKs that will install on older distros (e.g. CentOS 6). However it's not possible to set this with overrides since there aren't any for the SDK_ARCH, however we can instead set the variable from conf files in conf/machine-sdk especially as there is now a soft default for SDKMACHINE. Fixes [YOCTO #10561]. (From OE-Core rev: 42d5781e31c5bf76b5b7e27abed4f6f3fd65bf40) 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>
* classes/populate_sdk_base: fix usage of & character in SDK_TITLEPaul Eggleton2016-11-061-1/+1
| | | | | | | | | | | | | If you used an & character in SDK_TITLE (possibly indirectly from DISTRO_NAME) then sed interpreted this as a directive to paste in the replaced string (@SDK_TITLE@ in this case). Escape any & characters in SDK_TITLE to avoid that. (From OE-Core rev: acb85689c13cfdac21435509001048af5c3a7e99) 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>
* uboot-sign: fix do_concat_dtb for .img, .romGeorge McCollister2016-11-061-2/+2
| | | | | | | | | | | Now that out of tree building is enabled, ${B} must be used instead of ${S} as the path for UBOOT_BINARY. (From OE-Core rev: 1fe17c52e4d7ce1b9d69aaa2cd9d4b351a4b2603) Signed-off-by: George McCollister <george.mccollister@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuboot.bbclass: Setup the vardeps for write_qemuboot_confNathan Rossi2016-11-061-12/+9
| | | | | | | | | | | | | | Setting up the vardeps on write_qemuboot_conf forces the updating of variables in qemuboot.conf when machine/deploy configuration changes. This is particularly useful when developing or setting up the qemuboot (e.g. changing QB_* variables) for new targets or when changing deployment variables (e.g. KERNEL_IMAGETYPE). (From OE-Core rev: c568f6ce06512a108cada5c7100eb1f6de73f2ff) Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/npm: use npm install to do installationPaul Eggleton2016-11-061-1/+5
| | | | | | | | | | | | | | | Using "npm install" instead of "cp -a" is the more correct thing to be doing here, and ensures that symlinks for executable scripts are put into ${prefix}/bin. (I'd prefer ${bindir}, but npm does not allow specifying paths at that level - only a prefix.) Fixes [YOCTO #10460]. (From OE-Core rev: 90cb980a1c49de99a0aec00c0cd5fc1e165490a7) 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>
* classes/license: fix handling of symlinks pointed to in LIC_FILES_CHKSUMPaul Eggleton2016-11-061-0/+2
| | | | | | | | | | | | | | | | | | If you set LIC_FILES_CHKSUM to point to a relative symlink then you'll get "Could not copy license file" warnings in copy_license_files() since the symlink won't be valid after it's copied. If the source is a symlink then we need to dereference it first. I encountered this when I used recipetool on the sources for capnproto, where the c++ directory contains a LICENSE.txt symlink to the LICENSE file in the parent directory, and this symlink ends up being pointed to in LIC_FILES_CHKSUM. (From OE-Core rev: c4d3b1e9c37b920444e53d3231552da18d101882) 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>
* rm_work: Ensure we don't remove sigbasedata filesRichard Purdie2016-11-041-1/+1
| | | | | | | | | We don't remove sigdata files, we also shouldn't remove sigbasedata files as this hinders debugging. (From OE-Core rev: 988349f90c8dc5498b1f08f71e99b13e928a0fd0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate: Ensure we don't remove sigbasedata filesRichard Purdie2016-11-041-1/+1
| | | | | | | | | We don't remove sigdata files, we also shouldn't remove sigbasedata files as this hinders debugging. (From OE-Core rev: 1ebd85f8dfe45b92c0137547c05e013e340f9cec) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd-staticids.bbclass: catch missing uid/gid exceptionsMikko Ylinen2016-10-281-3/+2
| | | | | | | | | | | | | | | | | | | | The change to get rid of FuncFailed exceptions changed the behavior of how missing uid/gid error are be handled. Instead of catching the exception and handling that via bb.parse.SkipPackage(), a fatal error was called. This won't work with recipes that are unused and therefore do not have UID/GIDs defined. The problem triggers when parsing all recipes (e.g., oe-selftest runs bitbake -p). The right way to handle this is to raise bb.parse.SkipPackage(). This will error correctly once the recipe is needed. (From OE-Core rev: 55384cfc743a12a78bef736ee08ed453b6a6a21e) Signed-off-by: Mikko Ylinen <mikko.ylinen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* manpages.bbclass: add a classAlexander Kanavin2016-10-281-0/+5
| | | | | | | | | | | | This class enables 'manpages' feature in packages if 'api-documentation' is in distro features. This ensures that manpages are always built and installed when API documentation feature is enabled. (From OE-Core rev: 1587777f1c54137eb3dacbeb427d2f6814af1713) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types: Add support for lzo compressed initial ramdiskVesa Jääskeläinen2016-10-282-2/+7
| | | | | | | | (From OE-Core rev: 881347f6169890c63eab30017b9d63a67600439e) Signed-off-by: Vesa Jääskeläinen <vesa.jaaskelainen@vaisala.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>