summaryrefslogtreecommitdiff
path: root/meta/classes
AgeCommit message (Collapse)AuthorFiles
2012-09-14patch.bbclass: Use one TMPDIR per patching processConstantin Musca1
We must use one TMPDIR per process (/tmp/${PID}) so that the patching processes don't generate the same temp file name (the "patch" program uses the TMPDIR environment variable for deciding where to create the temp files). [YOCTO #3070] Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12classes/license: place all found licenses on one lineVladimir Zapolskiy1
Cosmetic change, settle all found licenses into one line and report warning about missing licenses loudly. Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12classes/license: correct license info in lisense.manifestVladimir Zapolskiy1
Trivial change, do not cut off plus symbol from license name, otherwise information about package license is corrupted. Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12classes/license: account LICENSE_${pkg} values in manifestVladimir Zapolskiy1
Trivial change, process LICENSE_${pkg} and LICENSE values. This fixes multiple cases, when license is not specified at all in license.manifest Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12classes/license: remove redundant nested if statementsVladimir Zapolskiy1
Cosmetic change, which improves code perception. Also check for locale packages firstly, this shall improve performance a little. Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12classes/license: check license manifest for double recordsVladimir Zapolskiy1
Trivial typo bugfix, avoid multiple records in license.manifest. Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12classes/license: define LICENSE_MANIFEST variableVladimir Zapolskiy1
Cosmetic change, saves space and reduces code line length. Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12autotools.bbclass: Add functionality to force a clean of ${B} when ↵Richard Purdie1
reconfiguring (and ${S} != ${B}) Unfortunately whilst rerunning configure and make against a project will mostly work there are situations where it does not correctly do the right thing. In particular, eglibc and gcc will fail out with errors where settings do not match a previously built configuration. It could be argued they are broken but the situation is what it is. There is the possibility of more subtle errors too. This patch adds removal of the build directory (${B}) when configure is rerunning, the sstate checksum for do_configure has changed and ${S} != ${B}. We could simply use a stamp but saving out the previous configuration checksum adds some data at no real overhead. If we find there are things where we want to disable this behaviour with CONFIGURESTAMPFILE = "" in the recipe, or users could disable it globally. [YOCTO #2774] [YOCTO #2848] This is particularly helpful for eglibc and gcc which use split builds by default and are a particular source of reconfigure type problems. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12classes/sanity: remove obsolete codePaul Eggleton1
We can now rely upon the minimum BitBake version having the SanityCheckFailed event, so remove the code to handle if this is not there. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12classes/sanity: skip tune checks if machine is invalidPaul Eggleton1
If there is no valid machine configuration it's almost guaranteed that the tune checks will fail, so just suppress them in that case. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12package_rpm.bbclass: Avoid unnecessary installs in complementary passMark Hatle1
When called with the complementary install option, the first step is to backup the install manifest so that we can avoid installing items previously installed. However, this backup process skipped the initial_install portion of the manifest, causing early install items like libc6, bash, and base-files to be installed a second time. Fix this by cating the files to original_solution. This is done as an append to allow multiple calls to package_install_internal_rpm to work. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12image.bbclass: Enable the complementary install to be called w/ globbing paramsMark Hatle1
If the image.bbclass is called with arguments, and these arguments are not "populate_sdk", they will be passed in as the expected GLOBS. This enables external components and scripting to use the rootfs_install_complementary code. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-12sstate: Append to EXTRASSTATEMAPS and add commentRichard Purdie1
Appending to EXTRA_SSTATEMAPS is better than just hardcoding a value. Also add a comment about why this is necessary. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-10classes/packageinfo: use better method to check if package existsPaul Eggleton1
Instead of using a rather error-prone method of looking for output package files in order to determine if a package got created, use the .packaged file within pkgdata. This fixes two separate issues: * Some packages apparently not being found by this code e.g. all apm/apmd packages when using ipk packaging. * Buggy implementation of this checking code which triggered an exception during the event handler if PKGV was overridden on a per-package basis (as it is with external-sourcery-toolchain), which blocked Hob from completing parsing at 99% - fixes [YOCTO #2651]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-10core-image: allow root login when debug-tweaks is enabledSaul Wold1
This allows root to login over ssh with an empty password just like dropbear when the debug-tweaks are enabled, it's important to disable debug-tweaks for a production system as this will leave open a security hole! Thanks to Marc for the settings. Cc: Marc Ferland <marc.ferland@gmail.com> [Yocto #3078] Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-10package_rpm.bbclass: fix incremental rpm image generationRobert Yang1
* Check ${target_rootfs}/etc/passwd rather than ${target_rootfs}${rpmlibdir} to make sure that it has been previously installed. * Remove the "--nodeps" when incremental image generation, it should take care of the dependencies. Still use "--replacefiles --replacepkgs" in case there are conflicts. [YOCTO #3047] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-10bin_package.bbclass: binary package recipe classRobert Yang1
This is used for the binary package recipe, it's been suggested that it would be a useful feature to be able to easily take an RPM or similar containing a software binary from a 3rd party software vendor and integrate it into an image created by the build system. * Brief introduction - The binary pkg can be .rpm, .deb, .ipk and other formats which can be unpacked by bitbake fetcher. - Let bitbake unpack the bianry package, just like unpack the source package. - Skip the do_configure and do_compile. - Install the files to ${D} - Other steps are similar to the source package's recipe. * Note: - The "subdir" parameter in the SRC_URI is useful for the binary package recipe, so I added an example in the comment. - I have sent a patch to bitbake-devel mailing list to support unpack the .rpm, .ipk, and .deb files. [YOCTO #1592] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-10package_rpm.bbclass: fix the arch (replace "-" with "_")Robert Yang1
rpm can't use the "-" as the arch, which causes problem, e.g., when MACHINE = "beagleboard": * The arch should be armv7a-vfp-neon, but rpm only takes the armv7a, this is incorrect since it is mixed with real arch armv7a. * The nativesdk's arch should be i686-nativesdk (or x86_64-nativesdk), but rpm only takes the i686 (or x86_64), this in incorrect since it is mixed with the arch i686 (or x86_64). Replace "-" with "_" when rpm package and the rootfs generation would fix the problem, I think this is fine since it doesn't change the tune's arch, the package manager doesn't care about the arch's name, but it needs a unify arch system to avoid confusing. This is similar to what we have done on the deb which fixed the arch i486, i586 and so on to i386. [YOCTO #2328] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-10distrodata: replace Tab with SpaceSaul Wold1
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-07classes/mirrors: remove bogus gnutls mirrorPaul Eggleton1
This mirror entry which maps to itself plus a slash, if matched, put the fetcher into a circular loop until the stack space is exhausted. A patch has been sent to fix this issue in BitBake, but we should remove the bogus entry as well. (Note that this entry does not actually trigger the issue with current master because the gnutls recipe now uses GNU_MIRROR instead of ftp.gnutls.org, thus the bogus mirror entry is not matched.) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-07image_types.bbclass: add variable for HobKang Kai1
Add a new variable "IMAGE_EXTENSION_live" for Hob to map image type "live" with real image file extension names. This is for Hob to remove the hard-coded maps. Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-07classes/core-image: improve comments listing IMAGE_FEATURESPaul Eggleton1
Ensure this listing is complete. (Comment change only.) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-05gsettings.bbclass: fix whitespaceRoss Burton1
As nothing in oe-core uses gsettings, it wasn't noticed that the whitespace is wrong. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-05classes/qmake_base: support linux-gnuspe/linux-uclibcspe TARGET_OSPaul Eggleton1
Fix borrowed from OE-Classic. This should fix build failures during do_configure of Qt applications with the p1022ds machine from meta-fsl-ppc, for example. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-05sanity.bbclass: Move back to running at ConfigParsed timeRichard Purdie1
If we don't do this, users can get extremely confused errors since the sanity tests happen too late (after parsing) and don't see the warnings. Also cleanup messages about merging configuration file changes to give better hints at where the updated files may be. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04linux-yocto: check for bad SRCREV before branch checksBruce Ashfield1
do_validate_branches ensures that the desired SRCREV is at the tip of every branch that contains the revision. To do this, it looks for containing branches and processes them. This processing was mistakenly placed before the check for an invalid SRCREV, hence a git error message is seen in the log if a bad SRCREV is used, rather than a clear message. reordering the checks, and fixing a check for master, ensures that clear messages are generated in all cases. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04linux-yocto: fix unapplied patch error messageBruce Ashfield1
When patches fail to apply, the status of all pending patches should be exported to the logs and to the user. Currently, a missing export of GUILT_BASE makes it look more like an internal error, than a 'normal' patch failure: | [ERROR] unable to complete push | pending patches are: | Patches directory doesn't exist, try guilt-init With this variable exported, we have this: | [INFO] validating against known patches (qemux86-standard-meta) | error: patch failed: Makefile:2 | error: Makefile: patch does not apply | To force apply this patch, use 'guilt push -f' | [ERROR] unable to complete push | pending patches are: | links/files/0002-makefile-patch.patch Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-03packagegroup-core-console: removePaul Eggleton2
This provides one package group, packagegroup-core-apps-console, which is usually brought in by adding "apps-console-core" to IMAGE_FEATURES. Aside from the naming inconsistencies, this is a group of mostly unrelated packages, none of which are actually "apps". Handling each one: * dbus: should mostly be brought in by package runtime dependencies * avahi-daemon: if you are using packagegroup-base (as all images that inherit from core-image do) this is brought in by having "zeroconf" in DISTRO_FEATURES. * portmap: not very useful by itself; should be brought in by selecting NFS server/client through other means. * psplash (or whatever SPLASH is set to): this has been changed to be an explicit item "splash" in IMAGE_FEATURES. Since this is a fairly fundamental feature, a piece of code has been added to automatically handle this for images still using apps-console-core (and show a warning). Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03packagegroup-core-qt: rename -demos to -demoappsPaul Eggleton1
Try to avoid confusion with the Qt demos distributed with Qt itself. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03classes/packagegroup: disable superfluous tasksPaul Eggleton1
Disable tasks other than do_package* (similar to how image.bbclass disables everything except do_rootfs). This saves a little time as well as neatly avoiding the LIC_FILES_CHKSUM verification within do_configure which is not needed for package groups. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03packagegroup-core-x11*: adjust X11 package groupsPaul Eggleton1
Now the Sato pieces have been moved out, rebase packagegroup-core-x11 on packagegroup-x11-mini but using the structure/contents of meta-oe's task-x11 so that it can replace that; rename packagegroup-core-x11-mini to packagegroup-core-x11-base and pull in the xserver/utils packages via packagegroup-core-x11, and move both of these recipes under recipes-graphics. x11-mini is renamed to x11-base as it's what people should build on top of and since x11-mini is newer, the corresponding IMAGE_FEATURES item is less likely to be used in existing user recipes. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03packagegroup-core-x11: move out Sato applicationsPaul Eggleton1
Move Sato applications to packagegroup-core-x11-sato. Note that this eliminates both the apps-x11-core and apps-x11-games IMAGE_FEATURES; in practice it is unlikely these were useful to anyone outside of the Sato images however. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03classes/packagegroup: add ability to disable complementary packagesPaul Eggleton1
This allows package group recipes that do not want the automatic addition of complementary packages (e.g. for SDKs) to still inherit from this class and thus it becomes very easy to determine if a recipe is a package group which we need to do in certain circumstances. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03classes/packagegroup: Use package group nomenclaturePaul Eggleton1
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03Rename task to packagegroupPaul Eggleton7
"Package group" is a much more appropriate name for these than task, since we use the word task to describe units of work executed by BitBake. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03classes/core-image: remove erroneous nfs-server commentPaul Eggleton1
It has never been true that this enables exporting the entire rootfs. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03classes/core-image: remove *_IMAGE_FEATURES variablesPaul Eggleton1
This indirection does not add anything in terms of configuration and only serves to increase confusion; and given the nature of these it is unlikely they are being used outside of OE-Core. Change the sato-sdk and sato-dev images to be based on the main Sato image (avoiding the need for a common SATO_IMAGE_FEATURES variable) and eliminate all references to them. Fixes [YOCTO #2458]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-03classes/core-image: remove SSHSERVER_IMAGE_FEATURESPaul Eggleton1
This variable was added in the very same commit that added a mechanism that makes it obsolete: if you have dropbear and you want openssh, you just add ssh-server-openssh to your IMAGE_FEATURES and it will replace dropbear via IMAGE_FEATURES_REPLACES_. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-02image.bbclass: Convert runtime_mapping_rename to event handlerRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-02package.bbclass: fix stripping for kernel modulesTomas Frydrych1
runstrip(path, elftype, d) does bitwise & on the elftype parameter, so it has to be passed an integer. Passing None fails with: TypeError: unsupported operand type(s) for &: 'NoneType' and 'int'. Signed-off-by: Tomas Frydrych <tomas@sleepfive.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-31sstate.bbclass: Remove hardcoded task mappingsRichard Purdie1
I've not idea why this got left in but as per the comment, it needs fixing and we shouldn't have hardcoded mappings like this. Lets remove it and dynamically generate the data instead. [YOCTO #3039] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-31nativesdk: Switch to using nativesdk as a prefix, not a suffixRichard Purdie9
As discussed on the mailing lists, using a suffix to package names is hard and has lead to many recipes having to do PKGSUFFIX games. Its looking extremely hard to scale nativesdk much further without hacking many recipes. By comparison, using a prefix like multilib does works much better and doesn't involve "hacking" as many recipes. This change converts nativesdk to use a prefix using the existing multilib infrastructure. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-31nativesdk: Convert to use classextend.pyRichard Purdie1
This patch converts the nativesdk class itself from operating as a suffix to a prefix (see the proceeding patch for the related changes outside this class). The big benefit here is that we can reuse the generic class extension code. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-30sstate: Ensure master.list exists if it doesn't alreadyRichard Purdie1
This fixes builds where master.list doesn't already exist. This change was meant to be part of the previous sstate commit but ended up separated. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-30sstate.bbclass: Detect overwriting files in sstate controlled directoriesRichard Purdie1
We have a potential problem where two sstate packages try and touch the same file. This adds code which will print a warning whenever this happens. The implementation does but by maintaining a master file list and comparing file accesses against this. There are a number of places we have duplicate accesses which are harmless, mostly in the deploy directory so these are whitelisted. For now the code prints warnings, this could be strengthened in future to become error messages. Whilst working on this code on and off over the past few months various issues were uncovered, some serious. [YOCTO #238] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-28archiver.bbclass: fix the remove errorRobert Yang2
* The "tar-package" is used for saving the "Source" list for rpmbuild, there is no such a file when "ARCHIVER_MODE[type] ?= srpm", and there would be errors, it hadn't happen before was becuase that the remove function didn't work. Let the "rpmbuild --rmsource" to remove the Sources, and the remove function will just remove the tar-package file. * Remove several unwanted "try ... exception" sentences, let the error raise rather than ignore them when the error happens. * Remove several un-needed code. [YOCTO #2619] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-28copyleft_compliance.bbclass: remove the duplicated codeRobert Yang1
A part of the code in copyleft_compliance.bbclass is duplicated to archiver.bbclass, remove the duplicated lines. [YOCTO #2619] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-28archiver.bbclass: remove the "upper()" functionRobert Yang2
The configuration value from the conf file is lower case, e.g. srpm, tar, so there is no reason to use the upper case which makes things complicated. [YOCTO #2619] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-28archiver.bbclass: fix the fakeroot and other issuesRobert Yang2
* Fix the fakeroot issue The archiver.bbclass is used for archiving sources, patches, and logs, it uses the "rpmbuild -bs" from the package_rpm.bbclass to generate the .src.rpm, but it didn't work (it's not easy to explain it clearly): Reason: - It directly used the "fakeroot" command, we don't have such a command in native tools, so it would use the fakeroot from the host, and it would fail when there is no fakeroot on the host. - The "rpmbuild -bs" doesn't need to work under root, but it is in the function do_package_write_rpm which is running under fakeroot, and "rpmbuild" needs to know the source file's user/group name, the source file is the tarball which is created by the postfuncs of do_unpack or do_patch which doesn't use the fakeroot, so the created file's owner would be the real user, e.g.: robert, but there is no such a user under our native tools' fakeroot(pseudo), then the rpmbuild would fail. It worked when use the host's fakeroot in the past was because that the host's fakeroot knows the users on the host. Fix: - Remove the incorrect "fakeroot". - Change the source file's owner to root.root under fakeroot will fix the problem. * Other fixes: - The typo: "do_remove_taball -> do_remove_tarball" which will cause the tarball is not removed. - Add the _sourcedir defination to the rpmbuild command since the the SOURCES would be added to the specfile when archiver.bbclass is inherited, otherwise there would be errors when "rpmbuild -bb", though the build is OK. It only added the defination to "rpmbuild -bs", didn't add to "rpmbuild -bb". [YOCTO #2619] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-28archiver.bbclass: fix the coding styleRobert Yang4
* Make the comment line under 80 characters. * Use the triple double quotes for the docstring. * Add a whitespace behind the comma (,). * Other minor fixes. [YOCTO #2619] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>