summaryrefslogtreecommitdiff
path: root/meta/classes
AgeCommit message (Collapse)AuthorFiles
2012-07-17mirrors: Add debian archive snapshot mirrors to search listKhem Raj1
I ran across this problem when apt 0.7.14 was not fetchable from regular debian mirrors and existing snapshot mirror did not have it either since we did not use proper syntax so it was not hitting that. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-17base.bbclass: add GNUmakefile to the list of possible makefile namesRoss Burton1
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-17crosssdk/nativesdk: Ensure EXTRA_OECONF_FPU is unsetRichard Purdie2
If EXTRA_OECONF_FPU is left set, certain ARM variables related to hard-float can get pulled in and trigger rebuilds of the crosssdk code. The best solution is to simply force the variable to a known correct value for the SDK targets currently supported in the same way as TARGET_FPU. There is some slight rearrangement of the gcc code to ensure the variable is always used to call the fpu function. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16sstate.bbclass: Move crosssdk before cross to ensure correct variables are setRichard Purdie1
There was a bug showing up where the crosssdk recipes were being installed as machine specific in the sstate-control directory. This turned out to be due to the architecture fields used by sstate being set incorrectly. The problem is that the crosssdk inherits the cross class. It therefore needs to be listed in this if statement block before the cross check, not after. This should resolve some package architecture issue of crosssdk sstate files. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16image_types.bbclass: Default XZ_COMPRESSION_LEVEL to -e -6Andrei Gherzan1
Having XZ_COMPRESSION_LEVEL on -e -9 and -T 0 will make xz eat more than 6Gb memory. Reduce this to -6 to make xz to use about 471Mb on the tested machine. Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Andrei Gherzan <andrei@gherzan.ro> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16image_types.bbclass: Add XZ variable to set number of threads to be used ↵Andrei Gherzan1
while compressing Default this variable to 0. This will make xz use as many threads as there are CPU cores on the system. Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Andrei Gherzan <andrei@gherzan.ro> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16image_types.bbclass: Fix COMPRESS_CMD for xz to redirect compressed data to fileAndrei Gherzan1
Having -c modifier makes xz to output the compressed data to stdout. In this way the needed data will be in the do_rootfs log. Redirect data to ${IMAGE_NAME}.rootfs.${type}.xz . Signed-off-by: Andrei Gherzan <andrei@gherzan.ro> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16cpan.bbclass: Fix CCFLAGS.Xin Ouyang1
We should not just replace CCFLAGS with CFLAGS while compiling, because this may cause run-time errors with perl's DynaLoader.pm. Tested on qemux86 with new libnet-libidn-perl bb recipe: root@qemux86:~# perl -e "use Net::LibIDN" Not a CODE reference at /usr/lib/perl/5.14.2//DynaLoader.pm line 213. END failed--call queue aborted at /usr/lib/perl/vendor_perl/5.14.2//Net/LibIDN.pm line 213. Compilation failed in require at -e line 1. BEGIN failed--compilation aborted at -e line 1. Signed-off-by: Xin Ouyang <Xin.Ouyang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16classes/rootfs_deb: use more reliable check for package existencePaul Eggleton1
It turns out "apt-cache showpkg" does return some information when a package does not exist but another package recommends it, which can occur for empty *-dev packages; so use "apt-cache policy" with a different line count instead. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16package.bbclass: Allow overriding of debugedit starting pathPeter Seebach1
In the usual case, the computed path used for debugedit to fix up path references for the target filesystem is correct. However, prebuilt binary components, such as prebuilt toolchains, can have debug paths that do not reflect paths within the local build directory. Providing an override lets us continue to use the standard debugedit logic in package.bbclass. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16package install failure on systems without /sbin/ldconfigAmy Fong1
Package install failures due to issues in post install rules. package_do_shlibs only looks for libraries in a directory "lib", this should be modified to the variable baselib. ldconfig_postinst_fragment failure observed on systems without /sbin/ldconfig [ -x /sbin/ldconfig ] && /sbin/ldconfig results in the post install rule returning a failure. Modify to if [ -x /sbin/ldconfig ]; then /sbin/ldconfig; fi Signed-off-by: Amy Fong <amy.fong@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-10ccache: Ensure CCACHE_DIR is cleaned by do_clean taskRichard Purdie1
This ensures a rebuild does really build from scratch when ccache is in use. [YOCTO #2696] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09kernel.bbclass: add non-santized kernel providesBruce Ashfield1
If the kernel version string uses characters or symbols that need to be santized for the package name, we can end up with a mismatch between module requirements and what the kernel provides. The kernel version is pulled from utsrelease.h, which contains the exact string that was passed to the kernel build, not one that is santized, this can result in: echo "CONFIG_LOCALVERSION="\"MYVER+snapshot_standard\" >> ${B}/.config <build> % rpm -qp kernel-module-uvesafb-3.4-r0.qemux86.rpm --requires update-modules kernel-3.4.3-MYVER+snapshot_standard % rpm -qp kernel-3.4.3-myver+snapshot-standard-3.4-r0.qemux86.rpm --provides kernel-3.4.3-myver+snapshot-standard = 3.4-r0 At rootfs assembly time, we'll have a dependency issue with the kernel providing the santizied string and the modules requiring the utsrelease.h string. To not break existing use cases, we can add a second provides to the kernel packaging with the unsantized version string, and allowing the kernel module packaging to be unchanged. RPROVIDES_kernel-base += "kernel-${KERNEL_VERSION}" % rpm -qp kernel-3.4.3-myver+snapshot-standard-3.4-r0.qemux86.rpm --provides kernel-3.4.3-MYVER+snapshot_standard kernel-3.4.3-myver+snapshot-standard = 3.4-r0 Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2012-07-09utils.bbclass: add helper function to add all multilib variants of a ↵Richard Purdie1
specific package This is useful for the scenario where we want to add 'gcc' to the root file system for all multilib variants Signed-off-by: Matthew McClintock <msm@freescale.com>
2012-07-09classes/license: fix manifest to work with debPaul Eggleton1
Prepend the license manifest creation call to ROOTFS_POSTPROCESS_COMMAND instead of appending to ROOTFS_POSTINSTALL_COMMAND. The latter is not implemented for the deb backend (and probably ought to just be removed completely), and by using _prepend we can still ensure it occurs before package info is removed (and before buildhistory in case it is needed there in future). Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-07-09sanity.bbclass: the tmpdir can't be longer than 410Robert Yang1
There will be errors when the length of the tmpdir is longer than 410: 1) Longer than 420: Can't exec "/bin/sh": Argument list too long at /usr/lib/perl/5.10/IO/File.pm line 66. This error happens on both Ubuntu 10.04 and 10.10 when the pkg needs run "autoreconf", this is because it passes many files with absolute path to aclocal, aclocal passes them to perl, this is a limitation of the perl on Ubuntu 10.04 and 10.10, and the perl-native is not ready at this very early stage. 2) Longer than 490: bitbake/lib/bb/persist_data.py", line 197, in connect(database=...) > return sqlite3.connect(database, timeout=5, isolation_level=None) OperationalError: unable to open database file This error happens on Ubuntu 10.04, 10.10 and Fedora 17. This is because the length of the database in sqlite3 module (host's) can't be longer than 490 (or little smaller). The python-native is not ready at this very early stage. The 2 errors are host related, I think that limit the length of the TMPDIR to 410 is OK for most of the build, rarely build sets TMPDIR's longer than 410. [YOCTO #2434] Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2012-07-09multilib: Enable multilib remapping for SDK generationMark Hatle1
Enable the remapping for SDK generation, this is required to be able to create an SDK that targets an alternative multilib. Note, this work does not finish SDK/multilib support, but it is one more step toward making it work properly. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09package_rpm: Avoid duplicate package generation failuresMark Hatle1
When constructing a multilib based image, it's possible to end up with the same package listed in multiple steps of the install. During resolution we use the --replacepkgs option to avoid errors, as the resulting install solution will be as expected. (We do not enable the replacepkgs option for the final install step, only the generation of the install solution.) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09populate_sdk_rpm: Sync multilib configuration with rootfs_rpmMark Hatle2
An anonymous python chunk configures some multilib settings for both populate_sdk_rpm and rootfs_rpm. The two classes should contain identical versions to ensure that the generated multilib configuration is the same for the SDK and the rootfs. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-06bootimg: Use STAGING_KERNEL_DIRDarren Hart1
bootimg.bbclass using STAGING_DIR_HOST/kernel instead of STAGING_KERNEL_DIR, resulting in build failure of live images. | install: cannot stat `/usr/local/dev/yocto/fishriver-test/build/tmp/sysroots/fishriver/kernel/bzImage': No such file or directory Replace it with STAGING_KERNEL_DIR. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Tested-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04prexport.bbclass: Fix typo in warning: "AUROPR" -> "AUTOPR".Robert P. J. Day1
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
2012-07-04image_types: Add elf image typeRaymond Danks1
On x86, an ELF image file may be stored as a coreboot payload. The image file is constructed, using the mkelfimage utility, from a kernel and an initrd. Signed-off-by: Raymond Danks <ray.danks@se-eng.com> Acked-by: Darren Hart <dvhart@linux.intel.com>
2012-07-04package.bbclass: enable the use of package_qa_handle_errorSaul Wold1
This will allow the reporting of these errors as either WARNINGs (default) or ERRORs if installed_vs_shipped is added to the ERROR_QA of the policy file (such as a <distro_name>.conf file. V2: found the code I had intended to send instead of that other junk, was just not watching what I pushed on that one, sorry. (this is edit in no in the actual commit message) Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-04lib_package: use PACKAGE_BEFORE_PNSaul Wold1
Since this check effective is not a change becase the package order that was in this file has not really changed no PR Bumps are needed. Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-04kernel: Add kernel headers to kernel-dev packageDarren Hart1
[YOCTO #1614] Add the kernel headers to the kernel-dev package. This packages what was already built and kept in sysroots for building modules with bitbake. Making this available on the target requires removing some additional host binaries. Move the location to /usr/src/kernel Before use on the target, the user will need to: # cd /usr/src/kernel # make scripts This renders the kernel-misc recipe empty, so remove it. As we use /usr/src/kernel in several places (and I missed one in the previous version), add a KERNEL_SRC_DIR variable and use that throughout the class to avoid update errors in the future. Now that we package the kernel headers, drop the kernel_package_preprocess function which removed them from PKGD. All *-sdk image recipes include dev-pkgs, so the kernel-dev package will be installed by default on all such images. Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Bruce Ashfield <bruce.ashfield@windriver.com> CC: Tom Zanussi <tom.zanussi@intel.com> CC: Khem Raj <raj.khem@gmail.com>
2012-07-04meta/classes: Update recrdeptask fields for recursive dependency handling ↵Richard Purdie3
changes in bitbake This also deletes the buildall task since I seen usecases for it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03image/core-image: Handle conflicting IMAGE_FEATURES.Lianhao Lu2
IMAGE_FEATURES such as 'ssh-server-dropbear' and 'ssh-server-openssh' can't be both enabled. User can use the following variables to define the relationship of image features: IMAGE_FEATURES_REPLACES_foo = "bar" means including image feature "foo" would replace the image feature "bar". IMAGE_FEATURES_CONFLICTS_foo = "bar" means including both image features "foo" and "bar" would cause an parsing error. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03base.bbclass: Add cross-canadian-${TRANSLATED_TARGET_ARCH} to the license ↵Mark Hatle1
exclusion list This appears to be an oversight in the original implementation. All of the host package types were being ignored except for the SDK cross-canadian type. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03image.bbclass: Add support to build the SDK in parallel with the imageMark Hatle6
When building an image recipe, you can now build a companion SDK by calling the populate_sdk task: bitbake -c populate_sdk core-image-minimal Note: there are still issues w/ the SDK not working completely with multilibs. A lock is required between rootfs and populate_sdk activities to prevent configuration file clashes and similar package management problems in ipk and deb based systems. (RPM already had a lock for a different reason.) Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03package.bbclass: Allow a package to skip per file dependency generationMark Hatle1
Most of the time skipping per file dependency generation is a bad idea, but when building a nativesdk or similar you may be required to pickup host dependencies. These host dependencies can not always be reconciled within the scope of other nativesdk components, so if we skip them we can facilitate this unique situation. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03libc-common: Allow -dbg package to append, and not just set package variablesMark Hatle1
The libc-common attempts to rewrite the package information in a way similar to debian.bbclass. When it does this, it should be appending to the dependency variables (RPROVIDES, RREPLACES, and RCONFLICTS), instead of simply setting a hard coded value. Otherwise the lib package can not tailor the dependency variables to suite it's needs. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03autotools.bbclass: When configure fails, dump the config.log files the logsRichard Purdie1
When configure fails, it usually says "see config.log" yet nobody ever shares the config.log file meaning the person trying to help invariably has to ask for more information. This patch dumps all the config.log files into the main bitbake log files when configure fails, meaning all the information is present to help someone debug such failures. It does make the log rather larger but this is preferable to not having enough information in most cases. [YOCTO #2463] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03populate_sdk: enable basic multilib supportMark Hatle2
In order to enable basic multilib support for the export of an SDK image, a number of minor changes had to be made: The value of MULTIMACH_TARGET_SYS needs to be variable. This way we can define the value to the appropriate multilib. (Also in some cases the default PACKAGE_ARCH is set to MACHINE_ARCH which is incorrect for the SDK.) Add a companion REAL_MULTIMACH_TARGET_SYS, based on code from meta-environment, to allow for this. We have to convert the do_populate_sdk into a python call, and then break up the previous items into three parts. * Image construction * Setup of environment files * Generation of the tarball Then we can iterate over the multilibs to populate the environment files. Finally, matching changes were needed in the toolchain-scripts file. And what I presume is an optimization of immediate evaluation for TOOLCHAIN_CONFIGSITE_NOCACHE and ..._SYSROOTCACHE needed to be done at runtime, otherwise the wrong values may be used. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03populate_sdk_base.bbclass: Change to using task specific dependsMark Hatle1
If we combine the do_populate_sdk with the image generation, we want to avoid the dependency processing unless do_populate_sdk is run. This requires the bitbake change to implement task based rdepends. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03populate_sdk: Allow for attempt only packages in the SDKMark Hatle4
We want to be able to supply attempt only packages in the SDK in order to support more advanced SDK images that more closely match specific image recipes. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03populate_sdk.bbclass: Split into two partsMark Hatle2
populate_sdk was renamed to populate_sdk_base in order to allow for changes that may break existing SDK recipes. Any such changes need an analog in populate_sdk (new version) to restore previous desired behavior. In addition to the rename, one minor change was made. The _base version only had the do_populate_sdk as an added task, but no before or after defined. For compatibility, populate_sdk has do_populate_sdk defined as "after" do_install and before do_build, this is identical to the original behavior. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03Fix manual log file pathsMark Hatle5
When a recent change, the path to log files may be contained within an arbitrary directory. To generate the manual log files in the correct path we should be using the ${BB_LOGFILE}'s path instead of always assuming the logs go into ${WORKDIR}/temp. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-02package.bbclass: Add missing PKGR, PKGV, PKGE and ALTERNATIVE variables from ↵Richard Purdie1
PACKAGEVARS These variables all take package name extensions and should be considered in sstate dependency processing. This may also fix some multilib alternatives issues (unconfirmed). [YOCTO #2056] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-02package_deb: When searching for E:, anchor expressionRichard Purdie1
If we don't do this it will match on expressions like "NOTE:" which are not fatal errors. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-02EXTRA_IMAGEDEPENDS is used to ensure things like qemu-native are built andRichard Purdie1
these are not strictly dependencies of the do_rootfs task. This patch moves them to the do_build task allowing bitbake a little more flexibility about when things need to get built by. I noticed this when qemu-native failed to build and a rootfs was not generated which is not the intended behaviour. Also update the syntax to use appendVarFlag instead of get/setVarFlag Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-02kernel-arch: Remove test for long-dead arm26 architecture.Robert P. J. Day1
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-28bitbake.conf: disable ccache explicitly if it is not enabledRobert Yang1
The autogen-native built error on FC17: ccache: failed to create /dev/null/.ccache This is because the default gcc command of FC17 is a symlink to ccache, so the ccache will always be used regardless to the setting of CCACHE, ccache uses $HOME/.ccache as the CACHE_DIR by default, but autogen set HOME=/dev/null, so the error happens. Disable ccache explicitly if it is not enabled would fix the problem, otherwise it would always use ccache regardless to the setting of CCACHE on Fedora 17. The ccache 3.1.7 has a bug, it would always create $CCCHE_DIR/.ccache even CCACHE_DISABLE=1. Unset CCACHE_DISABLE in ccache.bbclass, since ccache only checks whether there is a CCACHE_DISABLE in the environment or not, it doesn't care about its value, so we need unset it explicitly when enable ccache. [YOCTO #2554] Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2012-06-28archiver.bbclass: Add the function of filtering packagesXiaofeng Yan1
This function can miss packages whose license is in "COPYLEFT_LICENSE_EXCLUDE" and tarball packages with license in "COPYLEFT_LICENSE_INCLUDE". [YOCTO #2473] Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com>
2012-06-28gconf.bbclass: don't register schemas in the install stageRoss Burton1
Previously this was installing schemas in the sysroot, which is wrong for native packages as nothing should touch the sysroot directly, and even more wrong for non-native packages as the sysroot is irrelevant. So, export the environment variable that stops the registration happening at install time. The postinst script will handle the non-native case, and for the sysroot I've opened #2648. This isn't a massive problem as nothing to my knowledge actually installs schemas to the sysroot. [YOCTO #2245] Signed-off-by: Ross Burton <ross.burton@intel.com>
2012-06-28native.bbclass: correct PATH to have native-intercept be prependedSaul Wold1
This was needed since it was after the sysroots and thus in some cases the native sysroot chown was being found and used instead of the script provided by native-intercept/chown. This was noticed by the non-gplv3 build since it's coreutils depends on coreutils-native. Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-06-28kern-tools: add buildall and robustness fixesBruce Ashfield1
Updating the kern-tools SRCREV to pickup the following functionality: - buildall: provides the ability to build all kernel branches without a build system, only a cross compiler and configme are required. - robustness/cleanups: obselete/unused code removal and general robustness fixes from Paul Gortmaker and Bruce Ashfield The following kern-tools commits are part of this series: b8dfd3d buildall: add whitelist/blacklist support 0ef039c configme: catch errors found during fragment sanitization 5b6498c buildall: remove all instances of it using/reading scc files 2e57550 buildall: support semi seamless restarts 4b5dd4d kconf_check: simplify cmdline args, dont store data per branch 58fbb6e configme: relieve it of all knowledge of scc files a03e291 configme: strip out alternative meta series logic. 96d2bcf kgit-init: check for valid branchpoint 5598db6 buildall: allow a max cap on the number of builds done b46abec buildall: add support for randomizing build order 68a04e9 buildall: dont copy failed build logs into main build dir 5575d85 buildall: script to independently build all board kernels 86d6200 configme: delete unused variable 8d4e29d configme: delete unused KPROFILE setting 7e15436 configme: ensure we have a valid machine type set 152b9cb scc: remove depreciated/unused commands bb4e96a scc: allow includes within conditional statements 7da7951 configme: derive path to tools from $0 152dc45 configme: test for BUILD_DIR != "" 129f7b0 kgit-scc: add warnings about bad input args. e977662 kgit-scc: add text for no arg and invalid arg case. [YOCTO #843] Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2012-06-27classes/image: Allow openssh empty passwords login.Lianhao Lu2
Allow empty passwords login so that the default root user can login in through openssh. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2012-06-25distrodata: Fix missed VARIABLE name changeSaul Wold1
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-06-25cml1.bbclass: Only delay exit if the command failsDarren Hart1
Rather than pause for 5 seconds, test the return code of the command and require user input before exiting on failure. This avoids pausing after successful command execution as well as possibly not waiting long enough if the user happens to be doing something else for 5 seconds. Signed-off-by: Darren Hart <dvhart@linux.intel.com>
2012-06-21recipes-kernel: make perf a standalone packageLiang Li1
perf has been coupled to the kernel packages via kernel.bbclass. While maintaining the build of perf out of the kernel source tree is desired the package coupling has proved to be awkward in several situations such as: - when a kernel recipe doesn't want to build/provide perf - when licensing of dependencies would prohibit perf and hence the kernel from being built. To solve some of these problems, this recipe is the extraction of the linux-tools.inc provided perf compilation into a standalone perf recipe that builds out of the kernel source, but is otherwise independent. No new functionality is provided above what the linux-tools.inc variant provided, but the separate recipe provides baseline for adding new functionality. Signed-off-by: Liang Li <liang.li@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>