summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* 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>
* image_types: Add support to compress initramfs with lz4Vesa Jääskeläinen2016-10-282-2/+6
| | | | | | | | | | | | | | | Changed to use lz4 as lz4c seems to be deprecated. Removed use of redirection in favor of using output file. As Linux kernel supports only legacy format for initial ramdisk add COMPRESS_CMD_lz4_legacy mode in case some users are using newer format. (From OE-Core rev: 0ce5ccc7ec81a1e875c025fa0b384afdbe77fa45) 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>
* buildhistory: fix latest_srcrev in the common caseChristopher Larson2016-10-281-1/+1
| | | | | | | | | | | | | | | | | | | buildhistory was writing srcrevs.values() as SRCREV when only one srcrev/branch exists. This returns a view of the dictionary values in python 3, and used to return a list in python 2, neither of which is an appropriate value for SRCREV. It was resulting in latest_srcrev files like this: # SRCREV = "346584bf6e38232be8773c24fd7dedcbd7b3d9ed" SRCREV = "dict_values(['346584bf6e38232be8773c24fd7dedcbd7b3d9ed'])" Which in turn would result in invalid output in buildhistory-collect-srcrevs. Fix by calling `next(iter())` on the `.values()` (From OE-Core rev: ef826a395612400924bbe49859d256b237ff59e1) 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>
* image_types: Use softer setting of WKS_FILESaul Wold2016-10-251-1/+1
| | | | | | | | | | | This will allow for more flexibility and overrides in BSP layers. (From OE-Core rev: 1886ab2f1dc1e3b5758a85604998e8deb9198f5e) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildstats: check IMAGE_ROOTFS exists before checking its sizeMikko Ylinen2016-10-251-6/+7
| | | | | | | | | | | | | | | | | | After 0d6b7276003f1afabc6de683f663540327d52bdc, the exceptions are correctly checked if the rootfs size check fails. In case of a failure a build error is triggered. However, there are cases where this is known to fail (e.g., with meta-swupd the rootfs for swupd images is other than IMAGE_ROOTFS). Because of that, check IMAGE_ROOTFS exists before trying to get the size of it. Also, in case of any error catched as err, simply print out a warning. (From OE-Core rev: b4929542ff01a24bea5edd1c40e3174f55e213ff) Signed-off-by: Mikko Ylinen <mikko.ylinen@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: fix package_qa_check_arch() for mips64-o32Robert Yang2016-10-151-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed: MACHINE = "qemumips64" DEFAULTTUNE = "mips64-o32" $ bitbake linux-yocto ERROR: linux-yocto-4.8+gitAUTOINC+03bf3dd731_674818dad5-r0 do_package_qa: QA Issue: Bit size did not match (32 to 64) linux-yocto on /work/qemumips64-poky-linux/linux-yocto/4.8+gitAUTOINC+03bf3dd731_674818dad5-r0/packages-split/kernel-module-parport/lib/modules/4.8.0-yocto-standard/kernel/drivers/parport/parport.ko [arch] The mips64-n32 works since it would set ABIEXTENSION to "n32" so that TARGET_OS is linux-gnun32, and it will skip the check, but "mips64-o32" doesn't set ABIEXTENSION to "o32", "n32" or "32", so the error happend. Skip the check if mips64.*32 matches DEFAULTTUNE can fix the problem. Another way to fix the problem is define ABIEXTENSION to "o32" or "32" for mips64-o32, but that may make things confused since "o32" is purely 32 bit. [YOCTO #10305] (From OE-Core rev: 4e61d8d6f4619dbfaeb5ca642449de7cf4b3e92d) 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: explicitly set DL_DIRRoss Burton2016-10-151-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | The eSDK generation assumes that DL_DIR is downloads/ under the build directory, and puts files such as a freshly buily uninative tarball in there expecting bitbake will find it later. Whilst ${TOPDIR}/downloads/ is in fact the default value for DL_DIR in bitbake.conf, and any instances of DL_DIR are removed from the original local.conf, there is still the possibility that other layers could contain a site.conf that assigns DL_DIR. If this happens the errors are quite mysterious as it fails to find the uninative tarball and so the hashes all change, and eSDK building fails. Ensure that this cannot happen by explicitly assigning the DL_DIR that we require, instead of assuming that the default value will be used. [ YOCTO #10439 ] (From OE-Core rev: bc2e6f5eab47e869dbc4a3eacfe759b9b1cacaee) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* live-vm-common.bbclass: Allow to use different kernel image than ↵Martin Jansa2016-10-151-2/+6
| | | | | | | | | | | | | | KERNEL_IMAGETYPE for /vmlinuz * syslinux config hardcodes kernel image as /vmlinuz add warning message when the selected image doesn't exist and allow to select different image with VM_DEFAULT_KERNEL variable (qemuboot.bbclass is using QB_DEFAULT_KERNEL) (From OE-Core rev: e6b21d1b3716ee6f4aec1674e56f06b2963a7968) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types.bbclass: add dependency do_image_wic -> do_bootimgEd Bartosh2016-10-151-0/+5
| | | | | | | | | | | | | | | | | | To produce certain types of images wic uses do_bootimg results to assemble final image. For example, it copies BOOT/EFI directory produced by do_bootimg to boot partition for every EFI image. The tricky part of this is that do_bootimg task is not always run, so we can't always make do_image_wic depend on do_bootimg. We only need to do it if do_bootimg present in task graph. Thank to Cristopher Larson for this fix. (From OE-Core rev: 1a961b4becf677c9eb07c5b24a8ddb75044663d1) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_tar: avoid chdir warnings and restore cwd after packagingRobert Yang2016-10-151-0/+5
| | | | | | | | | | | Fixed: WARNING: attr-2.4.47-r0 do_package_write_tar: Task do_package_tar changed cwd to /path/to/attr/2.4.47-r0/packages-split/attr-locale-sv (From OE-Core rev: 3753d07c9ff33b9a97aca61ad312b0e283c4c68d) 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>