summaryrefslogtreecommitdiff
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* autotools.bbclass: Set the dynamic linker search path for libtool correctlyRichard Purdie2011-09-262-0/+5
| | | | | | | | | | libtool obtains the search path from /etc/ld.so.conf and hardcodes /usr/lib and /lib. This results in host contamination and variable sets of RPATH values ending up in binaries. By exporting the correct values for all autotools recipes we avoid this. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_rpm: add pkgconfig(pkg-config) to the listRichard Purdie2011-09-231-1/+1
| | | | | Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_rpm: add items to the INSTALL_PROVIDESNAME_RPM listSaul Wold2011-09-231-2/+2
| | | | | | | | | | This fixes a problem when building meta-toolchain-gmae, by adding items that will be provided by the host system, such as /bin/bash, /usr/bin/env and libGL.so Signed-off-by: Saul Wold <sgw@linux.intel.com> RP: libGL.so() -> libGL.so Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib.bbclass: Partially fix multlib image targetsRichard Purdie2011-09-223-0/+15
| | | | | | | | | | | | This patch partially fixes problems when building multilib extended images such as libXX-core-image-minimal. Its not a perfect/complete solution but works much better than any previous code did. [YOCTO #1496] (partial) [YOCTO #1497] (partial) [YOCTO #1498] (partial) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: don't warn on .so files in -nativesdk packagesDmitry Eremin-Solenikov2011-09-221-2/+2
| | | | | | | | There is no point in warning against .so symlinks in -nativesdk packages. They have to contain such links, so shut up the warning. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc.bbclass: fix handling of nativesdk and cross-canadian packagesDmitry Eremin-Solenikov2011-09-221-3/+1
| | | | | | | | | icecc.bbclass assumed that nativesdk and cross-canadian packages should use local icecc version. Instead those packages should use target-like scheme for toolchain tarball generation. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc-create-env: rename to -nativeDmitry Eremin-Solenikov2011-09-221-1/+1
| | | | | | | | | | | icecc-create-env(-native) is a native package. But if it doesn't have the -native suffix, some dependency tracking stuff in oe-core (in nativesdk.bbclass) get's crazy about it, trying to generate dependencies to icecc-create-env-native packages. To fix that simply add -native suffix to this package. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto: simplify kernel configuration check expressionBruce Ashfield2011-09-221-1/+1
| | | | | | | | | | | | | | | | | | | kernel configuration validation takes place between two files. An unprocessed configuration file (which is all the options found in the various configuration fragments) and the final .config produced by the lkc. The unprocessed configuration file's name historically is based on the name of the branch that was used to build the BSP. But with the ability to map machine names to arbitrary branches, this is no longer always true. Searching for the pattern *-config-* in the meta subdirectory will only match the config file, and frees the config validation phase from being concerned with what branch was used to build the BSP. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm: two step installationDongxiao Xu2011-09-221-4/+50
| | | | | | | | | Firstly we install a base image. Then install those multilib packages listed in MULTILIB_IMAGE_INSTALL. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Acked-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* debian.bbclass: Fix hardcoded "lib" referenceRichard Purdie2011-09-211-3/+3
| | | | | | | | | | This patch removes a hardcoded "lib" reference from debian.bbclass allowing libdirs like "lib64" to be used. Whilst working on this area of code, a similar assumption about "bin" is removed and the regular expression compilation is moved to the parent function since it doesn't change and this will improve the speed of the code. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Update python dependencies to be simply to "python"Mark Hatle2011-09-211-0/+6
| | | | | | | | | | | | | Previously python dependencies were of the format "python(abi) = ..." This format is not yet supportable within OE, so revert to a form we know we can handle. Introduce a change to package.bbclass that ensures it will causes the sstate-cache's "package" to invalidate. Since pythondeps changed, the output of rpmdeps changes, which causes the per-file dependency information to change.... thus we need to invalidate the cache! Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
* multilib_global.bbclass: Fix non-multilib package providesMark Hatle2011-09-211-5/+22
| | | | | | | | | | | | In non-multilib packages, configured in a multilib configuration we need to adjust the system provides and rprovides to include the virtual multilib variant. This resolves a problem introduced in the 329d864f9bbf94ad3aae8df43d63fe10e4237e4f commit. Where "allarch" packages were suddenly providing all variants of an object. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
* Fix RPM dependenciesMark Hatle2011-09-211-1/+1
| | | | | | | | When packaging for RPM, dependencies were not being properly added to the packages. Only the "providing" dependencies were added due to a typo. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
* multilib: install MULTILIB_IMAGE_INSTALLDongxiao Xu2011-09-212-14/+32
| | | | | | | | | | | | If user set MULTILIB_IMAGE_INSTALL, we need to install those multitlib packages into the final image. Also fix the logic in handling multilib prefix. For certain case like a normal image contains several multilib libraries, the image recipe isn't extended with MLPREFIX, therefore we need to enumerate the possible multilib prefixes and compare them with package prefixes. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
* rpm: add multilib prefix for archs under deploy/rpmDongxiao Xu2011-09-212-1/+8
| | | | | | | | | | | Currently MACHINE_ARCH deploy folder is unique in multilib system, thus a lib32 version of rpm package will override a normal rpm package if its PACKAGE_ARCH is ${MACHINE_ARCH}. Define different deploy folder for multilib architectures to avoid the confliction. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
* distrodata: fix distro_check codeSaul Wold2011-09-211-2/+17
| | | | | | This fixes a problem with package names from inherits showing up Signed-off-by: Saul Wold <sgw@linux.intel.com>
* deb packages support: switch from /var/dpkg to /var/lib/dpkgDexuan Cui2011-09-213-17/+17
| | | | | | | | | [YOCTO #1086] The pach was backported from OE: http://git.openembedded.net/cgit.cgi/openembedded/commit/?id=41e0fbf792037f249d1b8d283b3de81718887c9f Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
* sanity.bbclass: add a sanity check for KDE 4.x konsole in TERMCMDPaul Eggleton2011-09-181-0/+6
| | | | | | | | | | | If the user has specified konsole in TERMCMD and it is version 2.x from KDE 4.x, raise an error as this version will not work for patch resolution purposes (it forks into the background and returns immediately). Addresses [YOCTO #1294] Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
* base.bbclass: add crosssdk items to INCOMPATIBLE_LICENSE exclude listSaul Wold2011-09-161-1/+1
| | | | Signed-off-by: Saul Wold <sgw@linux.intel.com>
* sanity: disable mirrors for connectivity checkJoshua Lock2011-09-161-2/+6
| | | | | | | | | It's difficult to test a range of fetchers when using mirrors, therefore create a throwaway copy of the datastore and delete the MIRROR and PREMIRROR variables to ensure they aren't used in the connectivity check. Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bugzilla.bbclass: add a class to report build problems to bugzillaDmitry Eremin-Solenikov2011-09-161-0/+186
| | | | | | | | | | Add a class to report build errors to bugzilla. Idea largely based on sepukku.bbclass, however it's rewritten nearly fully to use XML-RPC interface of bugzilla. Tested with bugzilla 4.0, other version might require some sort of adaptation. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc.bbclass: replace with updated versionDmitry Eremin-Solenikov2011-09-161-246/+144
| | | | | | | | | | | Replace a non-working icecc class with a rewritten one. It's cleaned up, most things are handled now in shell scripts, as it's possible that toolchains won't exist at the time of parsing/python substitution. Packages which empty PARALLEL_MAKE are ignored now, as not to break them. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image/package.bbclass: Revise multilib support for DEBIAN_NAME.Lianhao Lu2011-09-162-13/+6
| | | | | | | | | | | [YOCTO #1486] 1. image.bbclass: In multilib_sanity_check, duplicated files except those matching to MULTILIBRE_ALLOW_REP are allowed if they're equal. 2. pacakge.bbclass: Allow DEBIAN_NOAUTONAMES variable to be automatically mapped in multilib case. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
* debian/_ipk.bbclass: Added multilib support for package_name_hook()Lianhao Lu2011-09-163-1/+6
| | | | | | | | | | [YOCTO #1486] 1. Added multilib support for package_name_hook() so MLPREFIX is kept in the final package name. 2. clean the output of log_check_ipk. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
* package.bbclass: fix spurious 'installed but not shipped' warningTom Zanussi2011-09-161-1/+4
| | | | | | | | | | | | | | | | | | | | | | | For packages that have files installed that aren't in a subdirectory, the following build WARNING is emitted (this for initramfs-live-boot as an example): WARNING: For recipe initramfs-live-boot, the following files were installed but not shipped in any package: WARNING: init The problem is that the filenames added to the 'seen' array are always added with a path separator at the beginning of the filename, but when the package dir is walked for comparison, any files at the top-level will be missing the beginning path separator and the comparison will fail despite the fact that the file was actually packaged. This because the remainder between the dirname and the dvar base name is used in the path join and in the case of files at the top-level, the remainder is the empty string, where it should be '/' for comparison purposes. Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cml1/kernel: Update do_menuconfig to use oe.terminal()Richard Purdie2011-09-151-7/+4
| | | | | | | | The recent environment fixes broke the menuconfig task since it couldn't access variables like DISPLAY. This patch updates it to use oe.terminal instead allowing it to work again. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_deb.bbclass, populate_sdk_deb.bbclass: fix meta-toolchain-gmae buildDexuan Cui2011-09-152-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [YOCTO #1070] Currently with deb packaging, we have 2 issues when running "bitbake meta-toolchain-gmae". 1) when MACHINE="qemux86", SDKMACHINE="i686", INSTALL_BASEARCH_DEB is "i686", too. This causes the following ERROR: | E: Couldn't find package task-sdk-host-nativesdk NOTE: package meta-toolchain-gmae-1.0-r6: task do_populate_sdk: Failed This is becasue: due to the DPKG_ARCH mapping, we create such a deb package tmp/deploy/deb/i686-nativesdk/task-sdk-host-nativesdk_1.0-r10_i386.deb; dpkg can't recoginze the package. We need to map INSTALL_BASEARCH_DEB in the same way. 2) when MACHINE="qemux86", SDKMACHINE="x86_64", INSTALL_BASEARCH_DEB is "x86_64", too. We get such an ERROR: | E: Couldn't find package task-cross-canadian-i586 NOTE: package meta-toolchain-gmae-1.0-r6: task do_populate_sdk: Failed This is because: dpkg can't recognize the generated package tmp/deploy/deb/x86_64-nativesdk/task-cross-canadian-i586_1.0-r0_i386.deb Here the "i386" suffix is incorrect and should be "x86_64" -- the i386 comes from the line DPKG_ARCH_i586 ?= "i386" in package_deb.bbclass. However, for canadian package, actually here the overriding of DPKG (from "x86-64" to "i386") should not happen -- it accidently happens just because TARGET_ARCH exists in OVERRIDES. We can move the overriding logic to the anonymous python function to work this around. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
* multilib: Remove recipe from multilib.conf that inherits allarchDongxiao Xu2011-09-131-0/+4
| | | | | | | | | | | | | Recipes like update-rc.d and qemu-config inherit "allarch", thus we shouldn't add multilib BBCLASSEXTEND for them in multilib.conf. Besides, we need to add multilib packages as the RPROVIDER contents for those recipes, in order to avoid the NoProvider error when parsing. [YOCTO #1471] Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: do not expand PREFERRED_PROVIDER for kernel recipeDongxiao Xu2011-09-131-1/+3
| | | | | | | | | | With Richard's commit f9c36392, we only build one kernel for a system, thus we shouldn't extend PREFERRED_PROVIDER for virtual/kernel. [YOCTO #1471] Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* imagetest-qemu/runqueue: Since we no longer support BUILDDIR, use TMPDIRRichard Purdie2011-09-091-0/+1
| | | | | | | | | | | | | | | | Commit 993672fa2739794a6dd0dbd7bb232fa60522b897 removed the BUILDDIR support from runqueue which broke the imagetest-qemu integration. We now therefore need to set TMPDIR and pass this through the environment to ensure the runqueue script finds the right locations without running bitbake directly. This patch also adds a sleep to the qemu command in the error case so that this remains on the screen for a period of time so the user can see errors more easily. This change unbreaks automated testing failures on the autobuilder. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* terminal.bbclass: Improve environment handlingRichard Purdie2011-09-091-7/+6
| | | | | | | | | | | | | | | Currently the environment handling for terminals is inconsistent. There are two fixes here: a) Ensure the environment is setup before all oe.terminal call b) Actually set the environment before the spawn calls since we need variables like DISPLAY when the commands are being executed, not just within the terminal environment. If this doesn't happen, DISPLAY can end up not set with the errors that brings with it when trying to run X commands. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: fix substring matching in COMMERCIAL_LICENSEPaul Eggleton2011-09-081-2/+2
| | | | | | | | | | | Previously, if for example you had a package called "mx", and a second package called "libomxil" listed in COMMERCIAL_LICENSE (without mx being listed there), it would match mx as being commercially licensed because mx is a substring of libomxil. Fix the search to ensure it only matches the listed package name exactly. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: use correct value for $D in postinst functionsPhil Blundell2011-09-071-3/+3
| | | | | | | | | This corrects the location of the password file used during package installation. See http://lists.linuxtogo.org/pipermail/openembedded-core/2011-September/009183.html and subsequent discussion. Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate: Avoid contention between sstate packagesRichard Purdie2011-09-071-0/+3
| | | | | | | | | If several sstate packages are decompressing at the same time, they can conflict over the "fixmepath". If two packages try to write to this at the same time it results in an error. To avoid this we remove the file once we've finished processing it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: re-enable DISTRO checkPaul Eggleton2011-09-071-3/+5
| | | | | | | | If DISTRO has been specified, ensure it is valid. (Unset or empty string is valid for DISTRO in OE-core by the use of defaultsetup.conf.) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* core-image.bbclass: zap root password if debug-tweaks not enabledPaul Eggleton2011-09-071-0/+5
| | | | | | | | | | | | If you do not have debug-tweaks in IMAGE_FEATURES, then zap the root password so that you can't log in as root without a password in an image potentially intended for a production system. Also mention debug-tweaks in the comments listing IMAGE_FEATURES in this file. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib_global.bbclass: handle kernel-module-* for multilibDongxiao Xu2011-09-071-0/+2
| | | | | | | | | | | | bitbake would report failed dependency of kernel-module-* when testing multilib. kernel-module-* are recommended by some other recipes. Do not extend name for kernel-module-* related packages. [YOCTO #1456] Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cpan.bbclass: fix native perl issueSaul Wold2011-09-071-1/+2
| | | | Signed-off-by: Saul Wold <sgw@linux.intel.com>
* package_deb.bbclass: put the stderr into log.do_xxx-attemptonly.xxxDexuan Cui2011-09-071-1/+1
| | | | | | | | | | | | Currently the stderr msgs go into log.do_rootfs and can cause a fatal failure in "log_check rootfs". However, the err msg could be spurious since we *only attempt* to install the the packages, which may not exist actually. E.g., without this patch, we can get a fatal ERROR due to E: Couldn't find package task-core-tools-dev. Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
* populate_sdk_deb.bbclass: add the missing parameter - for tarDexuan Cui2011-09-071-1/+1
| | | | Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
* image_types: Fix ubi images creationDenis Carikli2011-09-051-0/+2
| | | | | | | | | | | | | | | | Without that commit ubinize.cfg lack a volume name value, and the related ubinize.cfg line looks like that: vol_name= which result in a broken ubi image,which after beeing flashed produce the following error: UBI error: vtbl_check: volume table check failed: record 0, error 11 wich result in a kernel panic because the rootfs can't be mounted. [RP: Moved from bitbake.conf to the .bbclass file] Signed-off-by: Denis Carikli <denis@eukrea.com> Acked-by: Anders Darander <anders@chargestorm.se> Acked-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto: generalize kernel config search patternBruce Ashfield2011-09-051-1/+1
| | | | | | | | | | | | | | After constructing a kernel configuration file it then needs to be located in the tree so it can be audited against the final .config. The previous string that was used for the search pattern contains the kernel version. If the recipe space kernel version and internal tree version are out of sync, this will cause the constructed config to not be found. By removing the version from the search string, we can still find out config and gracefully adapt to minor version skew. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types.bbclass: use per-image dirs for extX.gz images generationDmitry Eremin-Solenikov2011-09-051-16/+16
| | | | | | | | | | Currently image_types.bbclass uses deploy/images/${MACHINE}tpm.gz dir for temporary files when generating extX.gz images. This can lead to races and strange errors during image generation. To overcome this use deploy/images/${MACHINE}tpm.gz-${PN} dir for temporary files. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk: We need to ensure that the SDK sysroot reflects PACKAGE_ARCHRichard Purdie2011-09-021-1/+1
| | | | | | | If we don't do this, the SDK target sysroot is named generically even when it contains package architecture specific optimisations. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: fix splitting on newlines of SANITY_TESTED_DISTROSPaul Eggleton2011-09-021-1/+1
| | | | | | | | | | | | | | | This variable should be split with \n sequences and these need to be specified literally in the string. A corrected version of the example given in the original commit (OE-core rev 75e3875341ddc8940e9ee2ccbbb2ec18194a68e6): SANITY_TESTED_DISTROS = " \ Ubuntu 11.04 \n \ Fedora release 14 (Laughlin) \n \ " Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: remove hardcoded reference to /usr/binPhil Blundell2011-09-021-2/+2
| | | | | | | | Otherwise the class doesn't work if ${bindir} is set to a different value; likewise for /var vs ${localstatedir}. Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib: Only build one kernelRichard Purdie2011-09-022-27/+51
| | | | | | | | | | | | | | | For a given system we only want one kernel to be built. This change makes the main kernel recipe provide all of the provides of the various enabled multilibs hence allowing it to fulfil all the appropriate dependencies. To make this work a global multilib class file needed to be created. This patch also enables this multi provider functionality for "allarch" packages. [YOCTO #1361] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm: setting DEFAULTTUNE for multilib archsDongxiao Xu2011-09-021-0/+3
| | | | | | | | To get the MULTILIB_PACKAGE_ARCHS, we need to get the corresponding DEFAULTTUNE value. This fixes the multilib arch directory missing issue in solvedb-ml_archs.conf. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
* sanity.bbclass: Clean up various MACHINE checksRichard Purdie2011-08-311-37/+50
| | | | | | | | | | | | | | | | | | [YOCTO #1398] Firstly we should start checking if MACHINE is set. It if isn't lets make this a sanity warning since its very hard to successfully build without setting one (and anyone wanting to do that can disable the sanity checks easily enough anyway). Some of the checks depend on a MACHINE being specified. This change moves those checks to a separate function so they only run if MACHINE has been set correctly. Both these issues combine to ensure the user sees a sane message and avoids the nasty tracebacks in the bug report referenced above. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Fix broken whitespaceRichard Purdie2011-08-311-6/+6
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>