aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes
AgeCommit message (Collapse)Author
2015-02-03opkg: Merge in opkg-collateralPaul Barker
All non-arch-specific and non-distro-specific configuration is now kept in the main 'opkg' recipe and package. Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
2015-02-03insane: add unknown-configure-option to default WARN_QARoss Burton
The unknown-configure-option check is generally useful and should be enabled by default. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-02-03native: remove PN from DEPENDS automaticallyRoss Burton
If a recipe (say, wayland) has DEPENDS=wayland-native and BBCLASSEXTEND=native, when built as wayland-native it has DEPENDS=wayland-native which results in a circular dependency. Typically this is resolved by having explicit DEPENDS_class-native statements but as this is duplication which can lead to inconsistent dependencies, automatically remove the circular dependency. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-02-03image.bbclass: make kernel depmod data optionalDan McGregor
This allows an image to skip the creation of kernel depmod data. It is useful for creating an image that will run as a container image inside a host with no knowledge of the parent's kernel. Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-02-03classes/image: ensure uninstalled packages do not appear in manifestsPaul Eggleton
Since the rewrite of the image construction code in python a few releases ago, we remove a couple of packages from the image as one of the final steps when constructing the image (notably update-rc.d and run-postinsts). However, because of the order of operations, these packages are still listed both in the buildhistory installed_package*.txt files and in the manifest file created next to the image, which is wrong. There were two possible solutions to this: (1) change the order such that the uninstallation occurs before calling ROOTFS_POSTPROCESS_COMMAND or (2) add another hook variable in such that we can have the package list collection code run at the right time. Because it's currently possible (but very much not recommended) to install additional packages within ROOTFS_POSTPROCESS_COMMAND, which may have postinstall scripts and thus require the packages we would otherwise uninstall if we were to take option 1, option 2 is really the least likely to cause problems. Therefore, add ROOTFS_POSTUNINSTALL_COMMAND and make the image and buildhistory classes use it. Fixes [YOCTO #6479]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-02-03classes/image: skip recipe on invalid IMAGE_FEATURES itemPaul Eggleton
If you add an item to EXTRA_IMAGE_FEATURES in your local.conf that is not supported by image.bbclass itself (such as "tools-sdk" which is implemented in core-image.bbclass), it can be somewhat annoying to have the parse fall over if you have a recipe that inherits image.bbclass only. Change the error from bb.fatal to skip the recipe instead so that you only see the error when attempting to build the recipe, plus add a bit of logic to report if the feature is coming in via EXTRA_IMAGE_FEATURES. Fixes [YOCTO #5023]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-02-03classes/image: drop unused default of MACHINE_POSTPROCESS_COMMANDPaul Eggleton
In the daisy (1.6) timeframe, when we rewrote the image construction in Python, we neglected to reimplement the support for the little used and undocumented variable MACHINE_POSTPROCESS_COMMAND, and apparently nobody noticed. We have a better method for implementing machine-specific image formats that is in wider use (i.e. add a custom class which implements the new image type, add the class to IMAGE_CLASSES and the type to IMAGE_FSTYPES), and we now also have wic. Thus it makes more sense to just call this variable unsupported now and drop the sole remaining reference to it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-02-03report-error: Catch un-readable log dataMichael Wood
If a log data cannot be decoded to utf-8 or read then handle this gracefully. This can happen if a log file contains binary or something goes wrong with the file open process. Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-02sed-native: dropPaul Eggleton
This was added back in the depths of history (around 2006 in OE-Classic) when apparently the host sed couldn't always be relied upon. We now call the host sed all over the place without this dependency and don't have any problems. On the other hand, having it around can lead to races where we're calling sed in one task and staging it to the sysroot in another, the result being nasty failures compiling binutils for example. Since it isn't needed, let's just drop it completely. Fixes [YOCTO #7264]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-02btrfs: create an empty file to build the fs inSaul Wold
The newer btrfs-utils needs an empty file to build the filesystem in, so create an empty file and use it for the mkfs to build the fs in. [YOCTO #6804] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-29kernel: Fix depmod for multilibRichard Purdie
Using populate_sysroot for this data was a nice idea but flawed as it doesn't work in multilib builds. Instead we can use PKGDATA_DIR since this is consistent over multilib builds. It also turns out to be slightly neater code too. Hopefully this resolves the problem once and for all. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-29image: Add missing depends on virtual/kernel for depmod dataRichard Purdie
We need the depmod data so that the kernel depmod command works successfully at rootfs time. The fact this was working inconsistently is now highlighted after the command was made to error out. A simple test case is: bitbake virtual/kernel image bitbake vrituak/kernel -c clean bitbake image -c rootfs -f We fix it by adding the missing dependency, the data is in PKGDATA_DIR and hence we use packagedata. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-29recipes-qt: add x11 to required DISTRO_FEATURESMartin Jansa
* it's not complete, but recipes depending on virtual/libx11 are easiest to spot, I've long list of PNBLACKLIST for all recipes which cannot be built in distro without x11 in DISTRO_FEATURES Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-29kernel-yocto.bbclass: Bug Fix inside do_kernel_checkout()Theodor Gherzan
--047d7b3a7fac0eebee050cb47483 Content-Type: text/plain; charset="UTF-8" After we check the existence of 'machine_branch' with 'git show-ref' the following if statement should change the 'machine_branch' to the default (i.e. master) if the 'git show-ref' has returned an exit code that is not 0, not the other way around. Signed-off-by: Theodor Gherzan <theodor@resin.io> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-28binconfig-disabled: install config scripts in sysrootPatrick Ohly
The purpose of binconfig-disabled is to manipulate config scripts such that using them causes errors. But that only works when the modified config script really gets installed in the sysroot. That is not the case with the staging code in binconfig.bbclass. Only patched config files get staged. For that reason it seemed more appropriate to change binconfig-disabled instead of binconfig. The reason for the change was the observation that the swig recipe needs pcre-config installed on the host system. Staging pcre-config removes that host dependency. swig did not actually end up *using* the pcre-config from the host, because later during do_compile the patched configure.ac is used to re-generate configure. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-28binconfig-disabled: try harder to prevent usage of config scriptsPatrick Ohly
Returning a non-zero exit code is not enough to cause errors when configure scripts call the patched config scripts: for example, swig's configure script uses PCRE_LIBS=`$PCRE_CONFIG --libs` and does not abort on errors. Using empty output may then succeed, for example when the required library is available indirectly. Returning some nonsense command line arguments covers such cases, because using them will definitely lead to errors during compilation. The faked arguments were chosen such that these errors can be linked back to the root cause. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-28image_types.bbclass: manage 'cpio_append' directoryEnrico Scholz
For cpio images, do_rootfs() can operate on a dirty '${WORKDIR}/cpio_append' directory which contains e.g. files from previous builds. This can cause unwanted files in the image or can break the build. E.g. when there is a cpio_append/init -> /sbin/init symlink symlink, the 'ln -sf' can fail due to SELinux restrictions: | $ ls -la cpio_append/init | lrwxrwxrwx. 1 ensc ensc 10 22. Jan 16:26 cpio_append/init -> /sbin/init | | $ strace ln -sf /sbin/init cpio_append/init | ... | stat("cpio_append/init", 0x7fffbb9ca310) = -1 EACCES (Permission denied) | exit_group(1) = ? Patch cleans up 'cpio_append' before executing the 'do_rootfs' task by adding it to 'cleandirs'. An alternative implementation (which avoids creation of this empty dir for non-cpio images) might remove it within IMAGE_CMD_cpio, but this might break builds where people rely on the existence of this directory (e.g. to add local files). Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-28image_types.bbclass: fixed 'init' creation for cpio imagesEnrico Scholz
When /init is a dangling symlink or a symlink to a file which can not be stated on the build system (e.g. due to SELinux restrictions), the '[ ! -e .../init ]' test will succeed which causes the manual creation of /init. E.g. here: | $ ls -la cpio_append/init | lrwxrwxrwx. 1 ensc ensc 10 22. Jan 16:26 cpio_append/init -> /sbin/init | | $ strace /bin/test -e cpio_append/init | stat("cpio_append/init", 0x7fff374a9db0) = -1 EACCES (Permission denied) | exit_group(1) = ? To test for the existence of a file, both '-L' and '-e' checks must be executed and to prevent SELinux noise, the '-L' should happen before '-e'. Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-23kernel/image/depmodwrapper: Fixups for depmodRichard Purdie
With the rpm package backend enabled, running: bitbake <image> bitbake virtual/kernel -c clean bitbake <image> -c rootfs -f results in an image with incorrect kernel module dependency information. The problem is that the System.map and kernel-abiversion files are needed for depmod and after the recent kernel changes, these are no longer in sstate. Its reasonable to require the kernel to unpack/build if you're about to build a module against it. It is not reasonable to require this just to build a rootfs. Therefore stash the needed files specifically for depmod. Also fix some STAGING_KERNEL_DIR references which were incorrect, found whilst sorting through his change. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-23package.bbclass: Let PR server update PKGV, not PVMike Looijmans
PV is the package version as we need it to be during the build. PKGV is the final version as it ends up in the package, and defaults to PV. The packager handled builds without PR-server by replacing the AUTOINC string in PKGV, but when the PR-server is being used, the script replaces the contents of PKGV with the PV if the PV contains "AUTOINC". Thus the packager overrides any change to PKGV the recipe might have made. This breaks classes like gitpkgv that provide a correctly numbered PKGV, the number as calculated by that class will simply be replaced with a 0-based index from the PR-server. This patch makes the packager look at the PKGV version instead of the PV, and update the PKGV only based on the PKGV contents as set by the recipe. See also the discussion here: http://lists.openembedded.org/pipermail/openembedded-core/2015-January/100329.html From investigating the history of the code and changes in the past year, the use of "pv" instead of "pkgv" appears to be just an oversight, introduced in: commit b27b438221e16ac3df6ac66d761b77e3bd43db67 "prs: use the PRServer to replace the BB_URI_LOCALCOUNT functionality" A later commit 865d001de168915a5796e5c760f96bdd04cebd61 "package/prserv: Merge two similar functions into one" silently fixed this only for the case without PR-server by using pkgv there. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-23fix '[[: not found' error message using dashVincent Génieux
Remove bash specific syntax '[[ test ]]' replaced with '[ test ]'. Fixes [YOCTO #7112] Signed-off-by: Vincent Génieux <vincent2014@startigen.fr> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-23base.bbclass: detect when S has been set incorrectlyPetter Mabäcker
Currently base.bbclass is creating S if it's not created by unpacking an archive or fetching a repository. If we avoid creating S we can detect when S hasn't been set correctly, since it will not exist. Then we can tell the user that they should set S to a proper value, instead of just failing with odd errors in later tasks. Besides removing the auto-creation of S this change will introduce a warning if S is set incorrectly. The reason for not display an error and return is due to all external layers that might have recipes that will fail otherwise and that might be a bit to hard to start with. So use a warning until people have had a chance to cleanup affected recipes. [YOCTO #5627] Signed-off-by: Petter Mabäcker <petter@technux.se>
2015-01-16autotools.bbclass: print make cleanRobert Yang
It makes us easier to see make clean failed. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2015-01-16package.bbclass: Fix support for private libsMartin Jansa
* n is a tuple since this commit: commit d3aa7668a9f001044d0a0f1ba2de425a36056102 Author: Richard Purdie <richard.purdie@linuxfoundation.org> Date: Mon Jul 7 18:41:23 2014 +0100 Subject package.bbclass: Improve shlibs needed data structure since then 'n in private_libs' was always false and private libs were always processed * this is bad when we have libfoo in private libs, but also some package providing libfoo, that way we ship own libfoo.so, but together with runtime dependency on package providing libfoo Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-16icecc.bbclass: properly handle disabling of iceccDmitry Eremin-Solenikov
Always use use_icc to check if IceCC should be enabled. Move ICECC_DISABLED variable checking to use_icc function. Also while we are at it, fix condition in icc_is_allarch function. Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-16cross-canadian/meta-environment: Allow modification of TARGET_OS to be optionalRichard Purdie
There are some cases we want the manipulation cross-canadian performance on TARGET_OS, there are also cases like meta-environment where we do not want this manipulation. We did try and use immediate expansion to avoid this problem and it works in the non multilib case. If we have a multilib that used an extension, like for example: require conf/multilib.conf MULTILIBS = "multilib:lib32 multilib:lib64" DEFAULTTUNE = "mips32r2" DEFAULTTUNE_virtclass-multilib-lib32 = "mips64-n32" DEFAULTTUNE_virtclass-multilib-lib64 = "mips64" then the n32 extension case will be misconfigured. It turns out saving an unexpanded variable is hard. The best I could come up with was: SAVEDTOS := "${@d.getVar('TARGET_OS', False).replace("{", "*")}" and then localdata.setVar("TARGET_OS", d.getVar("SAVEDOS", False).replace('*','{')) which is rather evil, I'd challenge someone to come up with a nicer way of making it work though! Rather than the above madness, we modify cross-canadian to make the problamtic code conditional. This fixes the original issue (where a linux-gnuspe target was seeing 'linux') of http://cgit.openembedded.org/openembedded-core/commit/?id=0038634ee6e2b6035c023a2702547f20f67c103a but also fixes the multilib one. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-16kernel-yocto: remove GUILT_BASE from terminal exportsBruce Ashfield
guilt is no longer used to manage linux-yocto kernel pathes, so we no longer need to export variables that it needed to locate patches in the tree. 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>
2015-01-16kernel.bbclass: Update cleandirs to remove new kernel staging dirsDarren Hart
Fixes [YOCTO 6818] Update do_unpack[cleandirs] to include the STAGING_KERNEL_BUILDDIR, and add the same set of updated cleandirs for do_clean. Signed-off-by: Darren Hart <dvhart@linux.intel.com> 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>
2015-01-16kernel: move source and build output to work-sharedBruce Ashfield
commit 3b3f7e785e279 [kernel: Rearrange for 1.8] began the process of moving the kernel source and build artefacts out of sstate control and into a shared location. This changed triggered some workflow issues, as well as bugs related to the kernel source containing build output, and hence being dirty and breaking kernel rebuilds. To solve these issues, and to make it clear that the kernel is not under sstate control, we move the source and build outputs to: work-shared/MACHINE/kernel-source work-shared/MACHINE/kernel-build-artifacts Where kernel-build-artifacts is the kernel build output and kernel-source is kept "pristine". The build-artifacts contain everything that is required to build external modules against the kernel source, and includes the defconfig, the kernel-abiversion, System.map files and output from "make scripts". External module builds should either pass O= on the command line, or set KBUILD_OUTPUT to point to the build-artifacts. module-base.bbclass takes care of setting KBUILD_OUTPUT, so most existing external module recipes are transparently adapted to the new source/build layout. recipes that depend on the kernel source must have a depedency on the do_shared_workdir task: do_configure[depends] += "virtual/kernel:do_shared_workdir" With this dependency added, the STAGING_KERNEL_DIR will be populated and available to the rest of the build. 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>
2015-01-16kernel.bbclass: When linux/version.h exists, copy itOtavio Salvador
Old Linux kernel versions rely on linux/version.h for modules; this needs to be published for external modules to use. Copy it when available. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-16module.bbclass: Add KERNEL_SRC in EXTRA_OEMAKEOtavio Salvador
When the sstate hash changes for do_configure task, the do_configure default implementation triggers the 'clean' to be run. For it to succeed we need to have KERNEL_SRC defined in EXTRA_OEMAKE. Fixes following error: ,---- | DEBUG: Executing shell function do_configure | NOTE: make -e MAKEFLAGS= clean | make -C M=.../tmp/work/... clean | make[1]: *** M=.../tmp/work/...: No such file or directory. Stop. | Makefile:20: recipe for target 'clean' failed | make: *** [clean] Error 2 | ERROR: oe_runmake failed `---- Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-07base.bbclass: Avoid explicit ${MAKE} in do_configureOtavio Salvador
The do_configure may eventually call 'make clean' when the sstate signature does not match. We should respect EXTRA_OEMAKE when doing so, so use 'oe_runmake' for it. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-07rm_work: Fix RM_WORK_EXCLUDE for image/sdk recipesRichard Purdie
A previous change meant image/sdk recipes were removed unconditionally by the class and did not respect RM_WORK_EXCLUDE. This fixes that problem. [YOCTO #7114] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-07insane.bbclass: fix desktopRobert Yang
The desktop-file-utils-native lacks a space. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-07kernel.bbclass: fix do_unpack function when S ends with slashMartin Jansa
* slash at the end causes os.symlink(kernsrc, s) to use s as directory name and fails with: ERROR: Error executing a python function in /OE/build/owpb/webos-ports/meta-smartphone/meta-samsung/recipes-kernel/linux/linux-samsung-tuna_git.bb: The stack trace of python calls that resulted in this exception/failure was: File: 'base_do_unpack', lineno: 26, function: <module> 0022: subprocess.call(d.expand("mv /OE/build/owpb/webos-ports/tmp-glibc/work/maguro-webos-linux-gnueabi/linux-samsung-tuna/3_3.0.72+gitrAUTOINC+f8ed73f94a-r12/git/ /OE/build/owpb/webos-ports/tmp-glibc/sysroots/maguro/usr/src/kernel"), shell=True) 0023: os.symlink(kernsrc, s) 0024: 0025: *** 0026:base_do_unpack(d) 0027: File: 'base_do_unpack', lineno: 23, function: base_do_unpack 0019: bb.utils.mkdirhier(kernsrc) 0020: bb.utils.remove(kernsrc, recurse=True) 0021: import subprocess 0022: subprocess.call(d.expand("mv /OE/build/owpb/webos-ports/tmp-glibc/work/maguro-webos-linux-gnueabi/linux-samsung-tuna/3_3.0.72+gitrAUTOINC+f8ed73f94a-r12/git/ /OE/build/owpb/webos-ports/tmp-glibc/sysroots/maguro/usr/src/kernel"), shell=True) *** 0023: os.symlink(kernsrc, s) 0024: 0025: 0026:base_do_unpack(d) 0027: Exception: OSError: [Errno 2] No such file or directory ERROR: Function failed: base_do_unpack ERROR: Logfile of failure stored in: /OE/build/owpb/webos-ports/tmp-glibc/work/maguro-webos-linux-gnueabi/linux-samsung-tuna/3_3.0.72+gitrAUTOINC+f8ed73f94a-r12/temp/log.do_unpack.17042 ERROR: Task 0 (/OE/build/owpb/webos-ports/meta-smartphone/meta-samsung/recipes-kernel/linux/linux-samsung-tuna_git.bb, do_unpack) failed with exit code '1' Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-31image.bbclass: Remove 'set_image_autologin' functionOtavio Salvador
The set_image_autologin function is GPE Login specific and the package is not available in OE-Core so the function should be added in the meta-gpe layer, if necessary. Drop this from the OE-Core as it is unused. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-24pythonnative: set PYTHON_EXECUTABLE so that cmake can find itAndreas Müller
| CMake Error at /home/a.mueller/tmp/oe-core-glibc/sysroots/x86_64-linux/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message): | Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE) [RP: Added comment that is used by cmake] Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-24image.bbclass: avoid boot error on read-only systemd imageChen Qi
New version of systemd implements a new feature of updating /etc or /var when needed at boot. For details, please see link below. Opointer.de/blog/projects/stateless.html For now, at boot time, the systemd-sysusers.service would update user database files (/etc/passwd, /etc/group, etc.) according to the configuration files under /usr/lib/sysusers.d. This step is necessary for other systemd services to work correctly. Examples of such services are systemd-resolved and systemd-tmpfiles-setup. The problem is that on a read-only file system, that is, if /etc is read-only, the user database files could not be updated, causing failures of services. This patch fixes this problem by adding users/groups at rootfs time. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-24license.bbclass: hardlink requires write permissionRobert Yang
Fixed: * The os.link() reqiures write permission on the src file (suppose the src file belongs to another user, then you need write permission to harlink to it since the link count would change) * Print more info when failed to copy The warning was like: WARNING: Could not copy license file COPYING: [Errno 1] Operation not permitted We couldn't know which recipe print the warning from this message. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-24license: Validate if LICENSE is well defined.Aníbal Limón
Add check_license_format function that shows warning if LICENSE don't have valid operators and also if have space separated entries without operator, add check_license_format validation into base class. [YOCTO #6758] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-24license_class: fix license.manifest shows LICENSE field differently to recipeAníbal Limón
Drop removal of [|&()*] operators in pkged_lic because this removal is only needed to validate if license is collected. [YOCTO #6757] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-24image_types.bbclass: Rework code to map types for 'ext3'Otavio Salvador
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-24image_types.bbclass: Respect IMAGE_TYPEDEP dependenciesOtavio Salvador
The IMAGE_TYPEDEP dependencies also need to be taken into account when building an IMAGE_FSTYPE. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-21libc-package.bbclass: add aarch64 target to locale_arch_optionsKai Kang
Add aarch64 target to locale_arch_options in libc-package.bbclass to support Arm V8. Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-21siteinfo: account for 32 and 64 bit armJoe Slater
Pull wordsize related items from arm-common and put in arm-32. Leave them as they were. Copy arm-32 to arm-64 and comment out all variables. Re-define to correct values leaving items which do not appear to be used undefined. Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-21classes/externalsrc: set do_compile as nostampPaul Eggleton
Most of the time what you want when using this class is for do_compile to execute more than just once - every time the source changes would be ideal, but that's a little tricky to accomplish. Thus, set do_compile as nostamp to get something close. Note that in order to be effective this also requires the change to bitbake that causes nostamp task signatures to change on each execution. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-21classes/package: move read_shlib_providers() to a common unitPaul Eggleton
This allows us to use this function elsewhere in the code. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-21boot-directdisk: Use kernel from DEPLOY_DIR_IMAGE, not sysrootRichard Purdie
After the recent kernel changes, this avoids failures like: DEBUG: Executing shell function build_boot_dd install: cannot stat '/home/pokybuild/yocto-autobuilder/yocto-worker/build-appliance/build/build/tmp/sysroots/qemux86-64/usr/src/kernel/bzImage': No such file or directory WARNING: exit code 1 from a shell command. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-21bootimg: Use deploy artefacts, not STAGING_KERNEL_DIRRichard Purdie
bzImage is no longer in STAGING_KERNEL_DIR. Rather than add it back, depend on the kernel deploy task and find it in DEPLOY_DIR_IMAGE. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-21kernel: Fix non linux-yocto buildsRichard Purdie
After the recent kernel changes, non linux-yocto builds stopped working properly for two reasons: a) ${S} was being reset to ${WORKDIR}/git for example and STAGING_KERNEL_DIR did not contain the source b) Most builds were using ${B} == ${S} This patch adds a fixup to the unpack function to handle the case where ${S} != ${STAGING_KERNEL_DIR} and also set up the infrastrcture so that B != S for kernel builds from now on. The kernel build system is one of the best for supporting this and there is no good reason not to take advantage of it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>