summaryrefslogtreecommitdiff
path: root/meta/classes
AgeCommit message (Collapse)AuthorFiles
2012-08-17distutils.bbclass: fix libdir for 64-bit python modules built with distutilsMatthew McClintock1
Without this some modules will be intalled in /usr/lib/python2.6/ instead of /usr/${libdir}/python2.6 Signed-off-by: Matthew McClintock <msm@freescale.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-17package_rpm.bbclass: Fix attemptonly install failuresMark Hatle1
During an attemptonly install, if you try to install two packages that conflict with each other, a message is generated: error: Failed dependencies: dropbear conflicts with openssh-6.0p1-r4.ppc603e dropbear conflicts with openssh-sshd-6.0p1-r4.ppc603e This is placed onto stderr (vs stdout), which was not being redirected. This allowed the log-check code to find the magic key of "Failed" causing the package installation process to fail. Instead the proper behavior is to simply ignore the error and proceed with the install. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17chrpath.bbclass: Account for case when ORIGIN is in RPATHKhem Raj1
This fixes a case when RPATH embedded in program have one of its path already relative to ORIGIN. We were losing that path if such a path existed. This patch appends it to the new edited rpath being created when we see it. so RPATH like below (RPATH) Library rpath: [$ORIGIN/../lib/amd64/jli:$ORIGIN/../jre/lib/amd64/jli] would end up being empty but after this patch its kept intact Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17chrpath.bbclass: Ensure we only process tmpdir in paths which actually ↵Richard Purdie1
contain that path Without this change, a path to "/lib/xxx" or "/usr/lib/xxx" would also attempt to be remapped to be relative to $ORIGIN which makes no sense. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17classes/chrpath: improve chrpath failure handlingPaul Eggleton1
When chrpath fails, prefix the error message with the name of the recipe that is being processed, and include the the output from chrpath, as well as making the calling task actually fail. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17package.bbclass: change RPATHs for cross-canadian binariesLaurentiu Palcu1
When building the meta-toolchain, the binaries didn't get relocatable RPATHs. They were hardcoded to the default path. Hence, if one had already installed one SDK in the default path and one in another location, the later toolchain's binaries would search and load libraries from the first location, ending in a "Segmentation Fault". [YOCTO #2927] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17populate_sdk_base.bbclass: fix SDK relocation issuesLaurentiu Palcu1
The problem appears if multiple setup environment scripts are found. In order to find only the script we're interested in, I removed globbing in matching pattern with ${REAL_MULTIMACH_TARGET_SYS} that will be expanded to the correct string. Also, fix a problem when changing the scripts/configs. The grep pattern matched also files that contained "text" in their name. Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17base.bbclass: Work even when there's no PNBLACKLIST entriesPeter Seebach1
It turns out that the result of getVarFlags is not a list, it's a dict. So "getVarFlags(...) or []" does not reliably produce something with a .items. This escaped detection because our local build environment never ends up running builds without PNBLACKLIST entries. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15classes/chrpath: trigger an error if chrpath failsPaul Eggleton1
If chrpath failed here we were just silently ignoring it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15pimlico: RemoveRoss Burton1
Remove the Pimlico applications (Contacts, Dates, Tasks). oe-core isn't a reference PIM stack, so we don't need this. Signed-off-by: Ross Burton <ross.burton@intel.com>
2012-08-15classes: add gsettings.bbclassRoss Burton1
This class registers postinst/postrm hooks to compile the GSetting schemas, and adds the relevant dependencies. If possible the postinst happens on the host to avoid running it on the target. [ YOCTO #2798 ] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15rpmresolve: improve debug outputPaul Eggleton2
Rename rpmresolve's -d option to -t and make -d enable debug output; add a -o option to specify the output file (so rpm debug output doesn't go to the output file) and also add a little more detail to some of the error messages. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-15kernel.bbclass: remove default module_autoload and module_conf valuesBruce Ashfield1
kernel.bbclass is a common class for many different kernel versions, and as such the default module_autoload and module_conf values that it contains are not relevant, or out of date for most builds. Individual kernel recipes or distros can better specify these values to meet their needs. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-15base.bbclass: Expand PNBLACKLIST across multilibs tooPeter Seebach1
The PNBLACKLIST feature does not currently work with multilibs, because they have different ${PN}. The obvious thing to do is to do this at the same point that we do the PREFERRED_PROVIDER and PREFERRED_VERSION fixups. (Making the PNBLACKLIST check do the for-each-multilib check requires it to do the multilib list generation repeatedly.) Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-15base.bbclass: allow specifying an lsb distro hook via the metadataChristopher Larson1
This is useful when you have a rather large set of compatible distros. For example: Centos 5.4, 5.5, 5.6, etc, RHEL server 5.x, RHEL workstation 5.x. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-07image-mklibs: pass correct libdir to mklibsJesse Zhang1
libdir should be specified, or else mklibs won't work for 64bit targets. It wouldn't be able to find the libs. Traceback (most recent call last): File "<build>/bitbake_build/tmp/sysroots/i686-linux/usr/bin/x86_64-wrs-linux/mklibs", line 553, in <module> header = elf_header(find_lib(libraries.copy().pop())) File "<build>/bitbake_build/tmp/sysroots/i686-linux/usr/bin/x86_64-wrs-linux/mklibs", line 89, in elf_header raise Exception("Cannot find lib: " + obj) Exception: Cannot find lib: Signed-off-by: Jesse Zhang <sen.zhang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-07kernel.bbclass: Revert ${base_libdir} changeRichard Purdie1
The base_libdir change in 5b8a4798ea2ea7df66bb53c26448251ea7da3dd9 breaks the kernel build for 64 bit machines. Revert this part of the change. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06classes/package: don't make locale pkgs depend on PN pkg if not in PACKAGESPaul Eggleton1
If ${PN} is not in PACKAGES then don't add it as an RDEPENDS for each locale package. This fixes the installation of gcc-runtime locale packages, for example. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06classes/buildhistory: save metadata revisionsPaul Eggleton1
Always write the metadata revisions for each layer into a machine- readable "metadata-revs" file so that you can potentially link changes in the output back to changes in the metadata. (Unlike the existing similar build-id file, this is not specific to image changes.) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06classes/buildhistory: record PKG/PKGE/PKGV/PKGRPaul Eggleton1
Save PKG (the actual output package name, which is often different due to debian renaming), and PKGE/PKGV/PKGR (which may be manipulated in certain special cases e.g. gitpkgv.bbclass in meta-oe, the external-sourcery-toolchain recipe, etc.) Note that these are only written when they are different from the normal package name in the case of PKG, or PE/PV/PR for the other variables. Also, use PKGE/PKGV/PKGR instead of PE/PV/PR when comparing package versions since these actually represent the version that the package manager sees. Implements [YOCTO #2787]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06classes/buildhistory: save preinst/postinst/prerm/postrmPaul Eggleton1
Write the value of these package script variables into the packageinfo so that any changes to them can be tracked (in separate files since they are multi-line). Inspired by an earlier patch from Andreas Müller <schnitzeltony@googlemail.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06classes/buildhistory: remove unused functionsPaul Eggleton1
getlastrecipeversion and readRecipeInfo weren't called anywhere. Remove them so we don't have to keep them up-to-date with future additions to the recipe info file. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06classes/buildhistory: ensure old package info is removedPaul Eggleton1
If a package is removed from PACKAGES, ensure that the package info file and directory are removed from buildhistory so that we don't have stale data lying around. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06classes/buildhistory: remove obsolete flat package history featurePaul Eggleton1
Remove the ability to set BUILDHISTORY_KEEP_VERSIONS = "1" to save the package history as flat versioned files rather than relying on git to keep previous versions of the package information. git has proven to work quite well in this capacity. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06kernel.bbclass: use ${base_libdir} and ${sysconfdir} instead of /lib and /etcJavier Martinez Canillas1
It is considered good practice to use the build system provided variables instead of directly specify hardcoded paths. Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06populate_sdk_rpm.bbclass: Depend do_populate_sdk task on createrepo-nativeKhem Raj1
Now that we have moved the rpm-createsolvedb.py script to createrepo-native for good reason of python-native dependency, we have to make sure that it is staged before its used, unlike before where it was under scripts/ dir and always existed outside the realm of package management. Fixes build error when doing meta-toolchain builds from scratch | /home/kraj/yocto/poky/build/tmp/work/ppc64e5500-poky-linux/meta-toolchain-1.0-r7/temp/run.populate_sdk_image.26712: line 610: rpm-createsolvedb.py: command not found | DEBUG: Python function do_populate_sdk finished | ERROR: Function failed: populate_sdk_image (see /home/kraj/yocto/poky/build/tmp/work/ppc64e5500-poky-linux/meta-toolchain-1.0-r7/temp/log.do_populate_sdk.26712 for further information) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02Complete recipe enablementBogdan Marinescu1
RP: The list of recipes in multilib.conf needs to go away and we need to just be able to extend all recipes with the multilib class. Tested by building and running lib32-core-image-sato-sdk. [YOCTO #1563] Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02package.bbclass: change RPATHs for nativesdk packagesLaurentiu Palcu1
Change binaries RPATHs, to include $ORIGIN, to make them relocatable. Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02relocatable.bbclass: split it up, to reuse codeLaurentiu Palcu2
Most of the code in relocatable.bbclass will be used for relocating the SDK binaries. So, create another class chrpath.bbclass that will contain the core of the relocatable.bbclass, so we can reuse it. Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02populate_sdk_base.bbclass: create self-extracting archiveLaurentiu Palcu1
In order for the SDK to be relocatable, the user would need to call a setup script to change the binaries acordingly. Having an auto-extracting archive has the advantage of being more user friendly and the user does not have to call the setup script separately after extracting the SDK. It is called automatically. Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02sip.bbclass: fix sip-native dependencyMartin Jansa1
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02watchdog: Upgrade to upstream v5.12Radu Moisan1
sourceforge.net link is broken at the time of this patch, so I added a mirror. License changed to GPLv2+ Signed-off-by: Radu Moisan <radu.moisan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-01core-image.bbclass: Fix typo in comment, "IMAGE_FEAETURES"Robert P. J. Day1
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-01createrepo 0.4.11: add rpm-createsolvedb.pyRobert Yang1
Move scripts/rpm-createsolvedb.py to meta/recipes-support/createrepo/createrepo/ since we should wrap it to use the native python. [YOCTO #2822] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-01imagetest-qemu.bbclass: Fix whitespace issuesRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31package_rpm.bbclass: Accomodate dash when using arraysKhem Raj1
we were assigning local variable to an array coming through positional arguments. local is a non posix contruct thats also supported by dash luckily but operates differently in this case it exapnds the array before assignment. so local pkgs="$@" turns into pkgs=locale-base-en-us locale-base-en-gb ant we see errors run.do_rootfs.25593: 932: local: locale-base-en-gb: bad variable name So lets not use defining and assigning local in one go first define a local and then the assignment Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31package.bbclass: fix TypeError in runstripMartin Jansa1
* some packages have .ko files which are not elf, without this change it fails with TypeError, with this change only runstip fails and reports where: ERROR: runstrip: ''arm-oe-linux-gnueabi-strip' '/OE/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/emacs-23.4-r0/package/usr/share/emacs/23.4/etc/tutorials/TUTORIAL.ko'' strip command failed Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31qt4: allow recipes building commercial editionPaul Eggleton1
To enable building the commercial edition of Qt (through additional recipes that are *not* provided by OE-Core) we need to tweak a few things: * Don't make recipes that inherit qt4x11.bbclass depend on qt4-x11-free - instead add qt4-x11 to DEPENDS and then have qt4-x11-free include this in its PROVIDES. A commercial equivalent recipe should do the same. * Add a QT_LICENSE_FILE variable that can be used to specify the license file required by the commercial edition. * Add a QT_LICENSE_FLAGS variable which the recipe can set to select the license option being used. The default of "-opensource" retains the current behaviour; a commercial recipe should set it to "-commercial". Fixes [YOCTO #2505]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31classes/populate_sdk_rpm: add depends on rpmresolve-nativePaul Eggleton1
As of OE-Core revision 72d1048a8381fa4a8c4c0d082047536727b4be47, rpmresolve is now required for complementary package installation during do_populate_sdk. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31classes/populate_sdk_base: don't break existing do_populate_sdk dependsPaul Eggleton1
We set do_populate_sdk[depends] in populate_sdk_*.bbclass, but since these are inherited at the top of populate_sdk_base.bbclass, those values are wiped out by using = at the end of the latter class. Use += to avoid this. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31kernel.bbclass: Copy bounds.h only if it exists, needed for 2.6.x.Leon Woestenberg1
Linux 2.6.x kernels did not (all) have the bounds.h file, so copy only iff exists. Signed-off-by: Leon Woestenberg <leon@sidebranch.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29classes/package: ensure pkgdata is cleaned out firstPaul Eggleton1
If do_package needs to be re-run and packages are removed/renamed as a result, we want the corresponding stale pkgdata files to no longer be present; for that we need to ensure all of the old pkgdata files are cleaned out prior to creating the new ones. This is particularly important now we rely on pkgdata more heavily (for complementary packages, license manifest, etc.). Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28buildhistory: improve performance of image info collectionPaul Eggleton4
Reduce the number of calls to the packaging tool, especially in the case of rpm, using helper utilities to gather the required information more efficiently where possible. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-07-28classes/image: add staticdev-pkgs IMAGE_FEATURES featurePaul Eggleton1
Add a staticdev-pkgs feature that can be added to IMAGE_FEATURES in order to install all staticdev packages. Fixes [YOCTO #2531]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-07-28Rework installation of dev, dbg, doc, and locale packagesPaul Eggleton8
Use a similar mechanism that was previously used to install locales at rootfs generation time to install other "complementary" packages (e.g. *-dev packages) - i.e. install all of the explicitly requested packages and their dependencies, then get a list of the packages that were installed, and use that list to install the complementary packages. This has been implemented by using a list of globs which should make it easier to extend in future. The previous locale package installation code assumed that the locale packages did not have any dependencies that were not already installed; now that we are installing non-locale packages this is no longer correct. In practice only the rpm backend actually made use of this assumption, so it needed to be changed to call into the existing package backend code to do the complementary package installation rather than calling rpm directly. This fixes the doc-pkgs IMAGE_FEATURES feature to work correctly, and also ensures that all dev/dbg packages get installed for dev-pkgs/dbg-pkgs respectively even if the dependency chains between those packages was not ensuring that already. The code has also been adapted to work correctly with the new SDK-from-image functionality. To that end, an SDKIMAGE_FEATURES variable has been added to allow specifying what extra image features should go into the SDK (extra, because by virtue of installing all of the packages in the image into the target part of the SDK, we already include all of IMAGE_FEATURES) with a default value of "dev-pkgs dbg-pkgs". Fixes [YOCTO #2614]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-07-28classes/rootfs_rpm: improve speed of RPM rootfs constructionPaul Eggleton2
Improve the performance of the RPM backend during do_rootfs by performing most of the package name to file resolution in a separate utility written in C, processing the entire list of packages at once rather than running rpm on the command line which loads the RPM database for every package. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-07-27package.bbclass/eglibc-locale: Ensure the correct PN is used for locale packagesRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-27sstate.bbclass: Add a string representing the lsb release to native/cross sstateRichard Purdie1
This patch adds the lsb name and revision to the path used for sstate files. This means that reuse of sstate files between different distributions is restricted by default. The behaviour can be configured using mirror urls, for example: SSTATE_MIRRORS = "file://Ubuntu-11.10/(.*) file://Ubuntu/\1 \n" would map Ubuntu 11.10 to a more generic "Ubuntu" named sstate feed. Usually, more modern distros have increased libc versions for example so whilst more older native/cross sstate packages will usually work on newer distros, the opposite is not true. This patch allows development of policy to better handle this although no default policy is currently being used. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-27sstate: Add a two character subdirectory to the sstate directory layoutRichard Purdie1
Currently all sstate files are placed into one directory. This does not scale and causes a variety of filesystem issues. This patch adds a two character subdirectory to the layout (based on the first two characters of the hash) so that files can be split into several directories. This should help performance of sstate in most cases. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-27base.bbclass: Set the NATIVELSBSTRING variable to represent the distro we're ↵Richard Purdie1
running on This can then be used by the sstate code to mark native and cross packages as being specific to a given distro. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>