summaryrefslogtreecommitdiff
path: root/meta/classes
AgeCommit message (Collapse)AuthorFiles
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>
2012-06-21kernel: save $kerndir/tools and $kerndir/lib from pruningBruce Ashfield1
The kernel source tree in the sysroot has all unecessary source code removed. The existing use case is to support module building out of the sysroot, but as more toolsa are moved into the kernel tree itself there are new use cases for the kernel sysroot source. To avoid putting dependencies on the kernel, and to be able to individually build and package these tools out of the source tree, we can save $kerndir/tools and $kernddir/lib from being removed. This enables tools like perf to be built our of the kernel source in the sysroot, without significantly increasing the amount of source in the sysroot. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21package_rpm.bbclass: fix incremental rpm generationRobert Yang1
Fixes: * Remove the "echo '# Remove manifest padding....' > remove.manifest, The remove.manifest would be used via "rpm -e `remove.manifest`", there would be error since there is no pkg called: Remove, manifest or padding * The incremental.manifest can't be null when used by rpm, so check it before use. * The rpm needs: --root "${target_rootfs}/install" when use: -D "_dbpath ${target_rootfs}/install" Otherwise it would use the ${target_rootfs} as the root, and use the ${target_rootfs}/var/lib/rpm as the dbpath, this is OK in a fresh installation, but there would be errors when increment rpm generation. [YOCTO #2617] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21classes/cml1: ensure -c menuconfig forces a rebuild next timePaul Eggleton1
Ensure the following results in the kernel being rebuilt, repackaged and re-deployed in the final step: bitbake virtual/kernel bitbake -c menuconfig virtual/kernel [ make changes to the kernel configuration and save ] bitbake virtual/kernel If there are no changes to the configuration saved, the rebuild will not be triggered. Note that this relies on a function recently added to BitBake and requires full hashing (i.e. BB_SIGNATURE_HANDLER must be set to a signature handler that inherits from BasicHash) - if this is not the case or the function is not available in the version of BitBake being used this change will do nothing. Fixes [YOCTO #2256]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-06-21kernel.bbclass: pass KERNEL_VERSION to depmod calls in postinstMartin Jansa1
* without this, kernel upgrades where KERNEL_VERSION is changed e.g. 3.4.2 -> 3.4.3 generate .dep for running 3.4.2 and after reboot user ends up without any module loaded to make it worse after reboot nothing is upgraded to trigger another kernel(-module) postinst to generate .dep for now running 3.4.3 Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2012-06-19bitbake.conf: add PN-bin and cleanup lib_package.bbclassSaul Wold1
Since we now have PN as the end of the package list, we can almost get rid of lib_package, each recipe can just add PACKAGES =+ PN-bin instead of the inherit Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-06-19lib_package: remove the -dev listSaul Wold1
Since we have re-order the full PACKAGES list, we do not need to reset the -dev list, we still need this since the -bin package needs to be inserted. Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-06-19binconfig: add *-config files to the -dev packageSaul Wold1
This is part of the the package reorder, by having binconfig add -config will the files first due to the order being greedy. Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-06-18debian.bbclass: invoke target objdumpJames Limbouris1
Using the host objdump can lead to errors like: objdump: library.so.1.0.0: File format is ambiguous objdump: Matching formats: elf32-littlearm elf32-littlearm-symbian elf32-littlearm-vxworks with certain configurations of binutils. Signed-off-by: James Limbouris <james@digitalmatter.com.au> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-15distrodata: cleanup after moving distro_tracking_fieldsSaul Wold1
Remove some of the older fields that are not in the new list as we are able to better automagically generate this directly from the recipe files the extra files will go away. To use this, one will have to include the appropirate files, such as maintainers.inc, upstream_status.inc Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-13sanity.bbclass: warn the user if BBPATH contains wrong entriesLaurentiu Palcu1
If BBPATH references the working directory, the user is warned and asked to fix the problem. [Yocto #1465] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-12cmd1.bbclass: Ensure ncurses is built and used for menuconfig tasksRichard Purdie1
Currently, the task just exits if something goes wrong. This adds the ncurses-native dependency. It also adds a small delay before closing the window so any messages displayed there can be seen. Trying to get the kernel build system to correctly find and link with our copy of ncurses is some kind of nightmare. I ended up having to add it to HOST_LOADLIBES globally for this task which is rather nasty but I couldn't find any other way. [YOCTO #2513] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-12package_rpm: Verify that the package manifests are not emptyMark Hatle1
An empty manifest will cause a failure condition. We ensure that any install actions occur only with a manifest larger then size 0. Also ensure that padding is added to the end of the manifest, instead of the beginning to enable this size check. (Padding is required for very small manifest files..) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-12rootfs_rpm.bbclass: Update database configuration fileMark Hatle2
Move the creation of the database configuration files to just before we perform the install actions. This ensures they will exist even in SDK or other non-target filesystem images. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-12package_rpm: Add capability to directly query packageoriginMark Hatle1
Add functionality to RPM to directly query the packageorigin (path) from the resolver database, instead of having to do this via an indirect method. This results in a minor performance improvement. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-12rpm: Upgrade RPM to 5.4.8 (db to 5.3.15)Mark Hatle1
RPM 5.4.8 requires db 5.3.x, so both are upgraded together. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-12gnomebase: add GNOME_COMPRESS_TYPE variableSaul Wold1
Upstream Gnome projects are starting to migrate to the .xz compress format, so we need to add this to allow recipes to override the default of .bz2 as the upstreams make the transition. [YOCTO #2241] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-11cmake.bbclass: Add OECMAKE_C_LINK_FLAGS and OECMAKE_CXX_LINK_FLAGS variablesKhem Raj1
In some cases we need to specify linker flags and right now we do not have a way to communicate that to cmake based systems. cmake defines CMAKE_C_LINK_FLAGS and CMAKE_CXX_LINK_FLAGS for these needs. This patch therefore defines two local variables namely OECMAKE_C_LINK_FLAGS and OECMAKE_CXX_LINK_FLAGS which can be altered by recipes to tweak linker flags Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-06-08rootfs_rpm.bbclass: save rpmlib rather than remove itRobert Yang2
The rpmlib was removed when images that add "remove_packaging_data_files" to ROOTFS_POSTPROCESS_COMMAND, which would make the increment rpm image generation doesn't work in the second build, since list_installed_packages would get incorrect value in the second build, move the rpmlib to ${T} rather than remove it, and move it back when INC_RPM_IMAGE_GEN =1. [YOCTO #2440] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08archiver.bbclass: Reduce some duplication for function get_licensesXiaofeng Yan1
The content to modify this bbclass is as follow: - Use the existing functions to get license as a directory instead of rewriting it for avoiding code duplication. - Use SPDXLICENSEMAP to map licenses [YOCTO #2473] Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com> Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08insane.bbclass: Make ldd exec_prefix error reporting easier to readMark Hatle1
Remove the long obtuse sysroot path from the ldd output. Make the error message significantly easier to read and understand. Old Style: WARNING: QA Issue: keyutils: /home/mhatle/git/oss/oe-core/build-i386/tmp-eglibc/work/i586-oe-linux/keyutils-1.5.5-r1/packages-split/keyutils/sbin/request-key links to something under exec_prefix WARNING: QA Issue: ldd reports: libkeyutils.so.1 => /home/mhatle/git/oss/oe-core/build-i386/tmp-eglibc/sysroots/qemux86/usr/lib/libkeyutils.so.1 (0xdead1000) libc.so.6 => /home/mhatle/git/oss/oe-core/build-i386/tmp-eglibc/sysroots/qemux86/lib/libc.so.6 (0xdead2000) /lib/ld-linux.so.2 => /home/mhatle/git/oss/oe-core/build-i386/tmp-eglibc/sysroots/qemux86/lib/ld-linux.so.2 (0xdead3000) New style: WARNING: QA Issue: keyutils: /sbin/request-key, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libkeyutils.so.1 => /usr/lib/libkeyutils.so.1 (0xdead1000) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-05license.bbclass: optimize pkg runtime dataElizabeth Flanagan1
This fixes an ugly way I was trying to find pkg runtime data for package and license manifest creation. rootfs generation times for core-image-minimal: Prior to patch real 0m41.570s user 1m40.466s sys 0m6.768s With patch real 0m27.527s user 0m9.833s sys 0m3.496s Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com> Conflicts: meta/classes/license.bbclass
2012-06-05license.bbclass: Adding PV to package.manifestElizabeth Flanagan1
Per request, adding the package version to the package manifest file. Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
2012-06-05archiver.bbclass: Improve the usability for the archiver classesXiaofeng Yan1
The usability of the archiver classes can be improved, beyond the simple addition of default values for the variables. A user could well inherit just archiver rather than the individual useful classes, and not realize it will do nothing. [YOCTO #2472] Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com>
2012-06-05cpan.bbclass: Fix config error while patches to Makefile.PLXin Ouyang1
If there is a patch to Makefile.PL, a Makefile.PL but no Makefile will be placed in ${B}/.pc/xxx.patch/ after do_patch. And no Makefile will be generated for *this* Makefile.PL. While do_configure, the original code tries to sed Makefiles matching with each Makefile.PL in {B}, so this would fail. Signed-off-by: Xin Ouyang <Xin.Ouyang@windriver.com>
2012-05-30update-alternatives: Fix absolute symlink handlingRichard Purdie1
After the class changes, absolute symlinks are not being handled correctly by the class file. This adds handling for absolute symlinks to account for the pkgdest directory, removing dangling symlink messages from recipes like bzip2. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30package.bbclass: Add warning about FILES containing '//'Richard Purdie1
'//' in a FILES variable causes hard to track down issues with packaging. This adds a warning and attempts to auto-correct the issue to try and make the problem more user friendly. [YOCTO #2448] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30Revert "meta: replace os.popen with subprocess.Popen"Richard Purdie7
This reverts commit e83d8e58a6b107eea87df0ec233a1bc932b2c6e as the conversion is not correct. Its replacing readlines() calls which generate an array with what are effectively strings. There are split("\n") calls missing in many cases so this needs to be reverted until it gets fixed.
2012-05-30classes/sanity: fix a couple of grammatical errors in messagesPaul Eggleton1
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>