summaryrefslogtreecommitdiff
path: root/meta/classes
AgeCommit message (Collapse)AuthorFiles
2012-07-19buildhistory.bbclass: Fix python whitespaceRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19package_ipk.bbclass: Fix python whitespaceRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19Remove a number of unneeded import os/bb callsRichard Purdie16
The bb and os modules are always imported so having these extra import calls are a waste of space/execution time. They also set a bad example for people copy and pasting code so clean them up. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19toolchain-scripts: Remove extra - from ar/nm command namesRichard Purdie1
TARGET_PREFIX already has the dash included. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19Remove the - between ${TARGET_PREFIX} and ar/nm for the env script, as this ↵Martin Ertsaas1
will make autotools look for arm-none-linux-gnueabi--ar instead of arm-none-linux-gnueabi-ar. Signed-off-by: Martin Ertsaas <mertsas@cisco.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19Convert tab indentation in python functions into four-spaceRichard Purdie35
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18boot-directdisk: Fix kernel location after STAGING_KERNEL_DIR changeRichard Purdie1
This catches up with the STAGING_KERNEL_DIR location change and uses the correct variable to future proof this issue. [YOCTO #2783] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18sanity: display the parsed PATH when complaining about CWD elementsRoss Burton1
Many people don't understand the nuances of PATH, so help them by clarifying the warning and displaying the parsed PATH element-by-element. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18bitbake.conf: Add git-native to ASSUME_PROVIDEDRichard Purdie1
Originally, git was something new, not installed everywhere and had commandline stability problems. This has changed and git it no longer makes sense to continually build this when the system installed version is likely sufficient. This speeds up build since recipes no longer have to wait for git-native to build if they're fetched from a git:// SRC_URI. Also add git to the sanity checks and drop the no unneeded svn reference. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18meta-ide-support: Add native qemu support for meta-ide-supportJessica Zhang1
[YOCTO #2761] This patch fixed the issue that after "bitbake meta-ide-support" and try to start qemu and it will fail. This is due to the meta-ide-support lacking dependency for qemu native and ended up using qemu under /usr/bin. Fix the issue by adding dependency for qemu native in meta-ide-support and also add the path info in the environment-setup script. Signed-off-by: Jessica Zhang <jessica.zhang@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-17toolchain-scripts: Sync the SDK/ADT values to the build systemMark Hatle1
The build system passes specific TUNE (fundamental) flag values to various tools instead of using a shell wrapper or similar. It is important that the build system and ADT/SDK match the behaviors exactly, or we are likely to have differences in the way build-system and external components are built leading to configuration, compilation and/or run-time problems. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17useradd.bbclass: Fix for multilib buildsRichard Purdie1
The class adds a setscene dependency on base-passwd as well as adds this to DEPENDS. The DEPENDS version will be auso-converted to include MLPREFIX whilst the setscene dependency will not. This result in errors about non-existent tasks. This patch ensures MLPREFIX is added when it is needed and fixes various build failures. Whether we should have two base-passwd recipes in a multilib system is a question which would need to be addressed by future changes. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17kernel.bbclass: Dont package kxgettext.oKhem Raj1
kxgettext.o is generated when building ppc kernels so we end up with packaging errors like > ERROR: QA Issue: Architecture did not match (20 to 62) on > /work/virtex5-poky-linux/linux-xilinx-2.6.38-r00/packages-split/kernel-dev/usr/src/kernel/scripts/kconfig/kxgettext.o Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17mirrors: Add debian archive snapshot mirrors to search listKhem Raj1
I ran across this problem when apt 0.7.14 was not fetchable from regular debian mirrors and existing snapshot mirror did not have it either since we did not use proper syntax so it was not hitting that. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-17base.bbclass: add GNUmakefile to the list of possible makefile namesRoss Burton1
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-17crosssdk/nativesdk: Ensure EXTRA_OECONF_FPU is unsetRichard Purdie2
If EXTRA_OECONF_FPU is left set, certain ARM variables related to hard-float can get pulled in and trigger rebuilds of the crosssdk code. The best solution is to simply force the variable to a known correct value for the SDK targets currently supported in the same way as TARGET_FPU. There is some slight rearrangement of the gcc code to ensure the variable is always used to call the fpu function. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16sstate.bbclass: Move crosssdk before cross to ensure correct variables are setRichard Purdie1
There was a bug showing up where the crosssdk recipes were being installed as machine specific in the sstate-control directory. This turned out to be due to the architecture fields used by sstate being set incorrectly. The problem is that the crosssdk inherits the cross class. It therefore needs to be listed in this if statement block before the cross check, not after. This should resolve some package architecture issue of crosssdk sstate files. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16image_types.bbclass: Default XZ_COMPRESSION_LEVEL to -e -6Andrei Gherzan1
Having XZ_COMPRESSION_LEVEL on -e -9 and -T 0 will make xz eat more than 6Gb memory. Reduce this to -6 to make xz to use about 471Mb on the tested machine. Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Andrei Gherzan <andrei@gherzan.ro> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16image_types.bbclass: Add XZ variable to set number of threads to be used ↵Andrei Gherzan1
while compressing Default this variable to 0. This will make xz use as many threads as there are CPU cores on the system. Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Andrei Gherzan <andrei@gherzan.ro> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16image_types.bbclass: Fix COMPRESS_CMD for xz to redirect compressed data to fileAndrei Gherzan1
Having -c modifier makes xz to output the compressed data to stdout. In this way the needed data will be in the do_rootfs log. Redirect data to ${IMAGE_NAME}.rootfs.${type}.xz . Signed-off-by: Andrei Gherzan <andrei@gherzan.ro> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16cpan.bbclass: Fix CCFLAGS.Xin Ouyang1
We should not just replace CCFLAGS with CFLAGS while compiling, because this may cause run-time errors with perl's DynaLoader.pm. Tested on qemux86 with new libnet-libidn-perl bb recipe: root@qemux86:~# perl -e "use Net::LibIDN" Not a CODE reference at /usr/lib/perl/5.14.2//DynaLoader.pm line 213. END failed--call queue aborted at /usr/lib/perl/vendor_perl/5.14.2//Net/LibIDN.pm line 213. Compilation failed in require at -e line 1. BEGIN failed--compilation aborted at -e line 1. Signed-off-by: Xin Ouyang <Xin.Ouyang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16classes/rootfs_deb: use more reliable check for package existencePaul Eggleton1
It turns out "apt-cache showpkg" does return some information when a package does not exist but another package recommends it, which can occur for empty *-dev packages; so use "apt-cache policy" with a different line count instead. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16package.bbclass: Allow overriding of debugedit starting pathPeter Seebach1
In the usual case, the computed path used for debugedit to fix up path references for the target filesystem is correct. However, prebuilt binary components, such as prebuilt toolchains, can have debug paths that do not reflect paths within the local build directory. Providing an override lets us continue to use the standard debugedit logic in package.bbclass. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-16package install failure on systems without /sbin/ldconfigAmy Fong1
Package install failures due to issues in post install rules. package_do_shlibs only looks for libraries in a directory "lib", this should be modified to the variable baselib. ldconfig_postinst_fragment failure observed on systems without /sbin/ldconfig [ -x /sbin/ldconfig ] && /sbin/ldconfig results in the post install rule returning a failure. Modify to if [ -x /sbin/ldconfig ]; then /sbin/ldconfig; fi Signed-off-by: Amy Fong <amy.fong@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-10ccache: Ensure CCACHE_DIR is cleaned by do_clean taskRichard Purdie1
This ensures a rebuild does really build from scratch when ccache is in use. [YOCTO #2696] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09kernel.bbclass: add non-santized kernel providesBruce Ashfield1
If the kernel version string uses characters or symbols that need to be santized for the package name, we can end up with a mismatch between module requirements and what the kernel provides. The kernel version is pulled from utsrelease.h, which contains the exact string that was passed to the kernel build, not one that is santized, this can result in: echo "CONFIG_LOCALVERSION="\"MYVER+snapshot_standard\" >> ${B}/.config <build> % rpm -qp kernel-module-uvesafb-3.4-r0.qemux86.rpm --requires update-modules kernel-3.4.3-MYVER+snapshot_standard % rpm -qp kernel-3.4.3-myver+snapshot-standard-3.4-r0.qemux86.rpm --provides kernel-3.4.3-myver+snapshot-standard = 3.4-r0 At rootfs assembly time, we'll have a dependency issue with the kernel providing the santizied string and the modules requiring the utsrelease.h string. To not break existing use cases, we can add a second provides to the kernel packaging with the unsantized version string, and allowing the kernel module packaging to be unchanged. RPROVIDES_kernel-base += "kernel-${KERNEL_VERSION}" % rpm -qp kernel-3.4.3-myver+snapshot-standard-3.4-r0.qemux86.rpm --provides kernel-3.4.3-MYVER+snapshot_standard kernel-3.4.3-myver+snapshot-standard = 3.4-r0 Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2012-07-09utils.bbclass: add helper function to add all multilib variants of a ↵Richard Purdie1
specific package This is useful for the scenario where we want to add 'gcc' to the root file system for all multilib variants Signed-off-by: Matthew McClintock <msm@freescale.com>
2012-07-09classes/license: fix manifest to work with debPaul Eggleton1
Prepend the license manifest creation call to ROOTFS_POSTPROCESS_COMMAND instead of appending to ROOTFS_POSTINSTALL_COMMAND. The latter is not implemented for the deb backend (and probably ought to just be removed completely), and by using _prepend we can still ensure it occurs before package info is removed (and before buildhistory in case it is needed there in future). Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-07-09sanity.bbclass: the tmpdir can't be longer than 410Robert Yang1
There will be errors when the length of the tmpdir is longer than 410: 1) Longer than 420: Can't exec "/bin/sh": Argument list too long at /usr/lib/perl/5.10/IO/File.pm line 66. This error happens on both Ubuntu 10.04 and 10.10 when the pkg needs run "autoreconf", this is because it passes many files with absolute path to aclocal, aclocal passes them to perl, this is a limitation of the perl on Ubuntu 10.04 and 10.10, and the perl-native is not ready at this very early stage. 2) Longer than 490: bitbake/lib/bb/persist_data.py", line 197, in connect(database=...) > return sqlite3.connect(database, timeout=5, isolation_level=None) OperationalError: unable to open database file This error happens on Ubuntu 10.04, 10.10 and Fedora 17. This is because the length of the database in sqlite3 module (host's) can't be longer than 490 (or little smaller). The python-native is not ready at this very early stage. The 2 errors are host related, I think that limit the length of the TMPDIR to 410 is OK for most of the build, rarely build sets TMPDIR's longer than 410. [YOCTO #2434] Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2012-07-09multilib: Enable multilib remapping for SDK generationMark Hatle1
Enable the remapping for SDK generation, this is required to be able to create an SDK that targets an alternative multilib. Note, this work does not finish SDK/multilib support, but it is one more step toward making it work properly. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09package_rpm: Avoid duplicate package generation failuresMark Hatle1
When constructing a multilib based image, it's possible to end up with the same package listed in multiple steps of the install. During resolution we use the --replacepkgs option to avoid errors, as the resulting install solution will be as expected. (We do not enable the replacepkgs option for the final install step, only the generation of the install solution.) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09populate_sdk_rpm: Sync multilib configuration with rootfs_rpmMark Hatle2
An anonymous python chunk configures some multilib settings for both populate_sdk_rpm and rootfs_rpm. The two classes should contain identical versions to ensure that the generated multilib configuration is the same for the SDK and the rootfs. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-06bootimg: Use STAGING_KERNEL_DIRDarren Hart1
bootimg.bbclass using STAGING_DIR_HOST/kernel instead of STAGING_KERNEL_DIR, resulting in build failure of live images. | install: cannot stat `/usr/local/dev/yocto/fishriver-test/build/tmp/sysroots/fishriver/kernel/bzImage': No such file or directory Replace it with STAGING_KERNEL_DIR. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Tested-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04prexport.bbclass: Fix typo in warning: "AUROPR" -> "AUTOPR".Robert P. J. Day1
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
2012-07-04image_types: Add elf image typeRaymond Danks1
On x86, an ELF image file may be stored as a coreboot payload. The image file is constructed, using the mkelfimage utility, from a kernel and an initrd. Signed-off-by: Raymond Danks <ray.danks@se-eng.com> Acked-by: Darren Hart <dvhart@linux.intel.com>
2012-07-04package.bbclass: enable the use of package_qa_handle_errorSaul Wold1
This will allow the reporting of these errors as either WARNINGs (default) or ERRORs if installed_vs_shipped is added to the ERROR_QA of the policy file (such as a <distro_name>.conf file. V2: found the code I had intended to send instead of that other junk, was just not watching what I pushed on that one, sorry. (this is edit in no in the actual commit message) Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-04lib_package: use PACKAGE_BEFORE_PNSaul Wold1
Since this check effective is not a change becase the package order that was in this file has not really changed no PR Bumps are needed. Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-04kernel: Add kernel headers to kernel-dev packageDarren Hart1
[YOCTO #1614] Add the kernel headers to the kernel-dev package. This packages what was already built and kept in sysroots for building modules with bitbake. Making this available on the target requires removing some additional host binaries. Move the location to /usr/src/kernel Before use on the target, the user will need to: # cd /usr/src/kernel # make scripts This renders the kernel-misc recipe empty, so remove it. As we use /usr/src/kernel in several places (and I missed one in the previous version), add a KERNEL_SRC_DIR variable and use that throughout the class to avoid update errors in the future. Now that we package the kernel headers, drop the kernel_package_preprocess function which removed them from PKGD. All *-sdk image recipes include dev-pkgs, so the kernel-dev package will be installed by default on all such images. Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Bruce Ashfield <bruce.ashfield@windriver.com> CC: Tom Zanussi <tom.zanussi@intel.com> CC: Khem Raj <raj.khem@gmail.com>
2012-07-04meta/classes: Update recrdeptask fields for recursive dependency handling ↵Richard Purdie3
changes in bitbake This also deletes the buildall task since I seen usecases for it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03image/core-image: Handle conflicting IMAGE_FEATURES.Lianhao Lu2
IMAGE_FEATURES such as 'ssh-server-dropbear' and 'ssh-server-openssh' can't be both enabled. User can use the following variables to define the relationship of image features: IMAGE_FEATURES_REPLACES_foo = "bar" means including image feature "foo" would replace the image feature "bar". IMAGE_FEATURES_CONFLICTS_foo = "bar" means including both image features "foo" and "bar" would cause an parsing error. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03base.bbclass: Add cross-canadian-${TRANSLATED_TARGET_ARCH} to the license ↵Mark Hatle1
exclusion list This appears to be an oversight in the original implementation. All of the host package types were being ignored except for the SDK cross-canadian type. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03image.bbclass: Add support to build the SDK in parallel with the imageMark Hatle6
When building an image recipe, you can now build a companion SDK by calling the populate_sdk task: bitbake -c populate_sdk core-image-minimal Note: there are still issues w/ the SDK not working completely with multilibs. A lock is required between rootfs and populate_sdk activities to prevent configuration file clashes and similar package management problems in ipk and deb based systems. (RPM already had a lock for a different reason.) Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03package.bbclass: Allow a package to skip per file dependency generationMark Hatle1
Most of the time skipping per file dependency generation is a bad idea, but when building a nativesdk or similar you may be required to pickup host dependencies. These host dependencies can not always be reconciled within the scope of other nativesdk components, so if we skip them we can facilitate this unique situation. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03libc-common: Allow -dbg package to append, and not just set package variablesMark Hatle1
The libc-common attempts to rewrite the package information in a way similar to debian.bbclass. When it does this, it should be appending to the dependency variables (RPROVIDES, RREPLACES, and RCONFLICTS), instead of simply setting a hard coded value. Otherwise the lib package can not tailor the dependency variables to suite it's needs. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03autotools.bbclass: When configure fails, dump the config.log files the logsRichard Purdie1
When configure fails, it usually says "see config.log" yet nobody ever shares the config.log file meaning the person trying to help invariably has to ask for more information. This patch dumps all the config.log files into the main bitbake log files when configure fails, meaning all the information is present to help someone debug such failures. It does make the log rather larger but this is preferable to not having enough information in most cases. [YOCTO #2463] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03populate_sdk: enable basic multilib supportMark Hatle2
In order to enable basic multilib support for the export of an SDK image, a number of minor changes had to be made: The value of MULTIMACH_TARGET_SYS needs to be variable. This way we can define the value to the appropriate multilib. (Also in some cases the default PACKAGE_ARCH is set to MACHINE_ARCH which is incorrect for the SDK.) Add a companion REAL_MULTIMACH_TARGET_SYS, based on code from meta-environment, to allow for this. We have to convert the do_populate_sdk into a python call, and then break up the previous items into three parts. * Image construction * Setup of environment files * Generation of the tarball Then we can iterate over the multilibs to populate the environment files. Finally, matching changes were needed in the toolchain-scripts file. And what I presume is an optimization of immediate evaluation for TOOLCHAIN_CONFIGSITE_NOCACHE and ..._SYSROOTCACHE needed to be done at runtime, otherwise the wrong values may be used. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03populate_sdk_base.bbclass: Change to using task specific dependsMark Hatle1
If we combine the do_populate_sdk with the image generation, we want to avoid the dependency processing unless do_populate_sdk is run. This requires the bitbake change to implement task based rdepends. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03populate_sdk: Allow for attempt only packages in the SDKMark Hatle4
We want to be able to supply attempt only packages in the SDK in order to support more advanced SDK images that more closely match specific image recipes. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03populate_sdk.bbclass: Split into two partsMark Hatle2
populate_sdk was renamed to populate_sdk_base in order to allow for changes that may break existing SDK recipes. Any such changes need an analog in populate_sdk (new version) to restore previous desired behavior. In addition to the rename, one minor change was made. The _base version only had the do_populate_sdk as an added task, but no before or after defined. For compatibility, populate_sdk has do_populate_sdk defined as "after" do_install and before do_build, this is identical to the original behavior. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-07-03Fix manual log file pathsMark Hatle5
When a recent change, the path to log files may be contained within an arbitrary directory. To generate the manual log files in the correct path we should be using the ${BB_LOGFILE}'s path instead of always assuming the logs go into ${WORKDIR}/temp. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>