The target SDK packages don't need to fulfil a shell dependency
so add /bin/sh to the list of packages we don't need to resolve.
(From OE-Core rev: da761df049249e1ca99eb569642246e51e5bae91)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This fixes some error messages in the do_rootfs logs of non-multilib
builds.
(From OE-Core rev: 439867efcc9a7df6062fdb8dae85004b1e9ed08c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
patch depends on unpack
configure depends on patch
We simply don't need a configure dependency on unpack. This simplifies
the dependencies of every recipe slightly and should make bitbake
slightly faster at resovling dependency graphs.
It also makes the .dot dependency graphs slightly more readable by
removing noise.
(From OE-Core rev: c54c1280fc0d06a53e23339c3913ec88eead13d9)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is no point in us spending time generating a ton of dependency
information in source directories when we don't actually use it
for our one off builds. We might as well disable the option and
take the speed up.
(From OE-Core rev: 970e0ae610804638d00b0a6b85c6e2e895778e8e)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The help2man script is pretty useless to us. It requires to run the target
binary to extract help information which is not possible for any of our
cross compiled target binaries.
We're not interested in man pages for -cross/-native tools.
It therefore makes no sense to have this as a core build dependency.
This patch removes the dependeny and replaces it with a script
returning false. This will trigger autotool's missing utility
to use the copy of the man page included with the sources which
is what would already happen when we tried to run cross compiled
binaries anyway.
(From OE-Core rev: 288343e30604b944dc18fd82172febd314d9c520)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Machines can now add ext2.lzma and ext2.lzma.u-boot images as a
generated image type.
(From OE-Core rev: 927b2ce72c026e5e41bdd5690c48ebbc8b19e45e)
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Machines can now add ext2.bz2 and ext2.bz2.u-boot images as a
generated image type. This also adds an extra parameter to
oe_mkimage which is the image compression type for mkimage
(From OE-Core rev: 4502a83ce67ac778112c25a1f4fa097c47e895b1)
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We agreed a while back that we'd start ERRORing on QA issues, not just
WARNING about them. This patch changes the default QA levels to error
on everything except ldflag and useless rpath issues.
It also stops giving out QA warnings about desktop files since it
adds noise to the build and until someone plans to seriously tackle
that problem, its pointless.
We can promote the ldflag and rpath warnings too, when the issues in
OE-Core are resolved (they're mostly there now, just a few more to go).
(From OE-Core rev: f9305dac1926207c0ed580168708a18ce2581891)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add MLPREFIX to multilib deploy forlder to avoid the confliction between
multilib and normal package deploy directory.
(From OE-Core rev: 18b8d1f7769b63725c3b6883298a841806cd06ab)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Introducing a hook variable for various .conf files to add
extra path elements to cmake. For example, it can be used
in external toolchain conf file to add ${TOOLCHAIN_PATH}
to cmake root path search.
(From OE-Core rev: 23be60dad6a705f151520e3eda2da5e02230f5fd)
Signed-off-by: Andrew Gabbasov <andrew_gabbasov@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
On OpenSUSE within an X session, TMPDIR is set to the system temporary
directory (/tmp) which is incorrect for these scripts. Thus, change
runqemu and oe-setup-rpmrepo to use OE_TMPDIR from the external
environment rather than TMPDIR.
Fixes [YOCTO #1530]
(From OE-Core rev: 4e24c10952c7a52af7f2447595fd484692d35534)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Drop two unsed files (modules.order and modules.builtin) in do_install
to stop the "unshipped files" warning.
(From OE-Core rev: 73a1101044465d74bb5bb1a449f757d5c50ff67e)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
.cis firmware files are used by kernel to patch incorrect CIS fir PCMCIA
cards. Create respective packages.
(From OE-Core rev: 843093658c528d7e5297dd5fb7c90e1a64540ba5)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There are some places that PACKAGES are dynamically set. To support
multilib, we need to add MLPREFIX before the package name in those
settings.
(From OE-Core rev: 693a4c31c9c071e5af21570107698ec79f709246)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When RPM does the real install, if the first manifest file is empty, the
installation will stop without handling the second manifest file.
Merge the two manifest files together to fix this issue.
(From OE-Core rev: e0ffab2321b22b40333a0e857d42c16ae599cc0c)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
currently we have allarch type of recipes, which may still have
architecture dependency, like x11-common. So we need to drop the
handling to allarch in multilib case.
Also remove the PV postfix in python-pygobject DEPENDS, since multilib
code will treat a native package multilib capable.
[YOCTO #1497]
[YOCTO #1498]
(From OE-Core rev: 64c0279e6b0d2325a326058476228360898550f3)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
RDEPENDS of image type recipe needs to be mapped to make sure that the
packages included in the image should be multilib version.
Also add LINGUAS_INSTALL into MULTILIB_PACKAGE_INSTALL list.
[YOCTO #1496]
[YOCTO #1527]
(From OE-Core rev: 93984bb1c9440294a694986831d7a4114c55a282)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The code displaying console events has been handled by the bitbake
UI since 1.8 so the legacy code path can be removed. If a log event
is wanted, there are much better (and more complete) ways to do this
so remove the EVENTLOG code too.
(From OE-Core rev: aa60484384385a8b0f07e8062d58056a3670e399)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 93e595d5c89ebacdb8d1e6fcfe6f58fe2d30de28)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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
(From OE-Core rev: 01361f9d25b0a0027bbbe713b93051a4663b14fc)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
RP: libGL.so() -> libGL.so
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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)
(From OE-Core rev: 00c38774ef0232cc2be924ed8e59220e7c452096)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is no point in warning against .so symlinks in -nativesdk
packages. They have to contain such links, so shut up the warning.
(From OE-Core rev: 287d02a731e45ce5d843db1fd4d78ba17e9ed487)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 394c7c8cf262efeaafce40dc5eb480a1e041ac50)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 83f9ebe9afb8bec4531899f8001a585c974e1db4)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 92e0d61f5bf15ca4eb262dfa3c533f9209a87915)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 6b2e41023941f15d0f9211ef17339ba1fca9a3b9)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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!
(From OE-Core rev: 30064a98dc9049db4a37f119d15fbb59aa3c8377)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 66fa6b7e13fbcc5f75fb1b8aa3aedfbdbc148688)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When packaging for RPM, dependencies were not being properly added
to the packages. Only the "providing" dependencies were added due
to a typo.
(From OE-Core rev: c5d4e17f29d7f032d566d3b222a0ee231da03f78)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: a94cc552dc764d3cc83ea638cb08b9a2a8829d2f)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 921f984aa65e23d5a8ec5c2e58a96cb8a4790b5d)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This fixes a problem with package names from inherits showing up
(From OE-Core rev: edb2a11994ac21e790155ea519bded4b37ef9307)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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]
(From OE-Core rev: 843f9af47ffccb7ffdf3039c560bc3e4c88175a2)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 31cb3974eeaf2a808e8da3864e70986578c58cb9)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 20529035a4c0befb3c6bdbcb289a2de930fb143d)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 3a842ec52e7d010767b13bdcb5629ac07b3ee9e7)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[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.
(From OE-Core rev: 66f9045e17c39f5c64a0699b72ea460a0701717a)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[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.
(From OE-Core rev: e59c4e34daa688c033dd4ac07a69099610ac5705)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: cb19503139b9102f02ba3e5be63d5e85f280f2ef)
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: e876a44fa8ed0aa2e09084c1e7ddfc876c3f981b)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[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.
(From OE-Core rev: 63010b9ee89643c8e83656783231f0a7848d9e45)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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]
(From OE-Core rev: 329d864f9bbf94ad3aae8df43d63fe10e4237e4f)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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]
(From OE-Core rev: 90ad70fe13a9f8409387ca70289998bdca649aeb)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: de470333dbdeea444199340e4cd458c13fed6a5a)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 6b680c8da02017bdb17a4826f1819fe0e5f68652)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: b23e51e6c961cf3f7e2aaf89648fecce78424c99)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 848bb277769af5b094031aeb54d287c158256724)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: c08d7093bf654ffedb155c5627972e9ecfeb0b60)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.)
(From OE-Core rev: 895aa6b8ee9636a9f9d716c62c0adf951e1ff138)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 5ddda44efc97b4d6cf863033348e57e5cfdcd392)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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]
(From OE-Core rev: 30ac343888dc801614922045b374537c6c54f312)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 5f00bda874ccaebdb00714b5cb5227462d43f8fb)
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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]
(From OE-Core rev: 534dcaba0517ebfb6e48b6b436960a74e642a556)
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>
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.
(From OE-Core rev: f072ddc43828ebe8df4dd7433726775dd547580b)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 3016f8f13e86034cc1c5686fc01a3bf39eb33d79)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If we don't do this, the SDK target sysroot is named generically even
when it contains package architecture specific optimisations.
(From OE-Core rev: 0616557a8c29b42bae0ffd5fd665a046810047e4)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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 \
"
(From OE-Core rev: cfc72d5796b6f83a01e06f3a1f044869db2d5d18)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otherwise the class doesn't work if ${bindir} is set to a different value;
likewise for /var vs ${localstatedir}.
(From OE-Core rev: 21371df16917cd82642b39763793783d61ee5516)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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]
(From OE-Core rev: 2fd257f6c610624f05c8dd3fe1486364af04696f)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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.
(From OE-Core rev: 54306ff373e13696637b547fa1514e0ef8633248)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[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.
(From OE-Core rev: 02aceca132f9e259cdc5283c4bfe84e6a55df54d)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #1388]
This change is needed to correctly add the dependencies for the do_package
task which bitbake is unable to automatically detect itself.
(From OE-Core rev: 0614b9aa62a46f81d334ca4230080cc707347f3c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This reverts 19fb07bf337e1d724798e2eb4479c35fc45b1941 and restores
the behaviour of the code to the way it was prior to 561d875404.
See http://lists.linuxtogo.org/pipermail/openembedded-core/2011-August/007407.html and subsequent messages.
(From OE-Core rev: e5810439cc394d8ebfc264b05e1fbfad19e8fcd3)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently it uses ${TARGET_SYS}-. This is inconsistent, as the recipe
and kernel bbclass both use the prefix. While there aren't many cases
where the two differ, it is harmless to ensure that we are behaving
consistently.
(From OE-Core rev: 8aec52f4fd1ad3e4148e2ad32700a4378e69dcd3)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
- Don't use a variable reference in the IMAGE_DEPENDS
- Inherit kernel-arch to get UBOOT_ARCH
- Don't include the .bz2 variants, since the base types aren't in
oe-core
- Add the new types to IMAGE_TYPES
- Inherit image_types, to be certain we load after it
(From OE-Core rev: f67789b83599b86be052b3f2d686791cbf24f540)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Use KERNEL_OUTPUT variable to find the generated kernel image rather than
duplicating the existing path. This also means it can be overridden simply.
(From OE-Core rev: de5b502330ded38c0efe2c4e30967ef12dbad72a)
Signed-off-by: Mike Crowe <mac@mcrowe.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Initscripts are missing in target image in multilib case. This commit
adds the renaming logic for the related variables in multilib.bbclass.
This fixes the no response of mouse/keyboard in target system due to
the missing of udev startup script.
(From OE-Core rev: 477fc6e2fc034c68a250005461774bc8ecf91a52)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add "pkg_postinst" and "pkg_postrm" as renaming elements, which fixes
missing post install/rm scripts in target image.
(From OE-Core rev: a5c9f8af79c1632d2f3de5dd9627a7ca24fa0b76)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In the orignal logic, the renaming will not work for "FILES_" if defined
variables as:
PACKAGES = "${PN}"
FILES_abc = "/usr/include/abc.h"
It is because ${PN} is "lib64-abc" so it will not be contained in
pkgrename.
This commit enumerates all element in PACKAGES, getting the original
packages and multilib packages, then doing renaming for "FILES_",
"RDEPENDS_", etc. This fixes a lot of missing files and incorrect
dependencies.
(From OE-Core rev: ea7c196b4097d64b4f42faccaf075334c297ba20)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add support for a gzipped vmlinux kernel by specifying:
KERNEL_IMAGETYPE = "vmlinux.gz"
(From OE-Core rev: cb17b6c2a72f260c61b0ec46887c2a04ac5b3f80)
Signed-off-by: Mike Crowe <mac@mcrowe.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
For image type of recipes, we need to define do_package_write as its
do_build recrdeptask, which ensures that all packaging types listed in
PACKAGE_CLASSES will be built out.
[YOCTO 1370]
(From OE-Core rev: b68cd33673fdc17711d7b9fde9cc23b0d8498c17)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Switch to use the checkstatus fetcher API for the network connectivity test,
this has several advantages:
* we no longer print any messages to the console whilst the check is
being run
* we don't actually download anything, removing the need for tidy up and
making the code more concise
(From OE-Core rev: 81aa4bfbde871af1d569b64499c34a315bf6218e)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #892]
Use the new cached site config files generation mechanism in
toolchain-script.bbclass.
(From OE-Core rev: 445d6426197579a9c0317498cc6919bb63e7f726)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #892]
Modify the function toolchain_create_sdk_siteconfig to collect the
cached site config files which are specified by
TOOLCHAIN_NEED_CONFIGSITE_CACHE in runtime.
Also added task dependency to ensure the cached site config files are
generated.
(From OE-Core rev: 9e87f1347788beed181476dc4563085db14a4729)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When using binary locales rootfs generation fails with:
| Unknown package 'locale-base-en-us'.
| Collected errors:
| * opkg_install_cmd: Cannot install package locale-base-en-us.
This is due to:
$ dpkg-deb -I ipk/armv7a/locale-base-en-us_2.12-r16_armv7a.ipk | grep Depends
Depends: eglibc-binary-localedata-en.us
Note the '.' seperator
$ ls ipk/armv7a/ | grep binary-localedata-en | grep us
eglibc-binary-localedata-en-us_2.12-r16_armv7a.ipk
Note the '-' seperator vs the '.' in the locale-base packages.
(From OE-Core rev: 19fb07bf337e1d724798e2eb4479c35fc45b1941)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This should resolve the devshell issue people are seeing.
(From OE-Core rev: 332f2a9febfc3697ed4a20fca3016e0399ae90eb)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-n is not a POSIX option and does not work on some systems (e.g. Debian
Lenny); in any case it is not strictly necessary here, so remove it.
(From OE-Core rev: 13e14763f14b5b84051ecb158404dcef937cc4e0)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Change to a proper sentence and add a reference to the
COMMERCIAL_LICENSE variable so that the user knows where this can be
controlled.
Addresses remainder of [YOCTO #846]
(From OE-Core rev: 463d1719cc627ef22089282acfe70d7fcb835419)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* if there is multiple .bbappend files with FILESEXTRAPATHS_prepend := "/:"
then the one parsed last is causing trailing ':' and that's causing empty element in
path = extrapaths.split(:) + path
* it's hard to keep all .bbappends from foreign layers to follow this rule, so it's better
to be able to handle trailing ':'
(From OE-Core rev: 3b5591d423324da076d038ad335af47b616a7903)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Save the kernel image name into sysroot so it can be used during image
build if need. This is used by O.S. Systems products and probably
useful to others.
(From OE-Core rev: 19a587cb98a20f0e659483541fc8cec874f6afa9)
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
SANITY_TESTED_DISTROS, if specified, is expected to be a
newline-delimited list of distro identifier strings, e.g.
SANITY_TESTED_DISTROS = " \
Ubuntu 11.04 \
Fedora release 14 (Laughlin) \
"
(spaces, tabs etc. are trimmed)
If SANITY_TESTED_DISTROS is defined, we will attempt to detect the host
distribution. If the distribution is not in SANITY_TESTED_DISTROS or we
could not detect the distribution then we show a warning during sanity
checking.
Provides the mechanism for fixing [YOCTO #1096].
(From OE-Core rev: 75e3875341ddc8940e9ee2ccbbb2ec18194a68e6)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
New users sometimes delete files in tmp/deploy/images assuming they will
be re-created just by re-running the build, and then are confused when
this doesn't work. To discourage people from doing this, create a file
called README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt in
tmp/deploy/images containing an explanation of what needs to be done to
re-create files there.
Fixes [YOCTO #1315] and [YOCTO #1346].
(From OE-Core rev: 4316c5e9eec67d71f4699102a63a5f968bd8d1d9)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixes [YOCTO #1276]
As of Linux kernel version 3.0.1, and much earlier, the make clean target
removes arch/powerpc/lib/crtsavres.o. As this object is present in
KBUILD_LDFLAGS_MODULE, it is required to build external modules, and should
therefor not be removed by make clean.
While I do not advocate fixing buggy kernels in the generic kernel classes,
we should probably account for this one in kernel.bbclass as it affects
such a long list of kernel versions.
(From OE-Core rev: 2e83e6755441cb14bd907d306974338c15173189)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
CC: Bruce Ashfield <bruce.ashfield@windriver.com>
CC: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Task endtime got left out of recent changes. Adding it back in.
(From OE-Core rev: f1e4b049438218347922f13de810782be0205c3d)
Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Partial sync of qmake_base from meta-oe.
* Add a matching rule for *linux-uclibceabi-oe-g++, to make qmake_base.bbclase more
similar to the version in meta-oe.
(From OE-Core rev: 2a1fa5b3f1424e9264d29027c589b55cf2feb109)
Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #1345]
The new variable ALL_MULTILIB_PACKAGE_ARCHS contains all the values of
PACKAGE_ARCHS for each multilib variants. The opkg backend now uses this
new value insteald of the PACKAGE_ARCHS to update the opkg indexes and
to generate the opkg configuration files. This allows the normal
packages and multilib packages may be installed into the same rootfs.
(From OE-Core rev: b774bf44ef004276da12a83ebd69715c00b596ac)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When dynamically setting RDEPENDS, we need to add MLPREFIX to adapt
multilib case.
[YOCTO #1368]
(From OE-Core rev: 2ed808b764f023c074fa3aabef18b4f874cd82c7)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
do_package task will write information into pkgdata and
do_package_write_rpm will read them out. Take lib32-dates as an example,
one of its RDEPENDS is li32-gtk+, and PKG_lib32-gtk+ = "libgtk-2.0",
these info is stored at:
tmp/pkgdata/x86_64-pokymllib32-linux/runtime/lib32-dates.
Function "mapping_rename_hook" in do_package_write_rpm is to handle
those renamed packages. However before it executes, translate_vers
has stripped the multilib prefix out, making it failed to find PKG_gtk+
value in pkgdata.
This commit moves the strip_multilib out of translate_vers and call it
after "mapping_rename_hook".
[YOCTO #1368]
CC: Mark Hatle <mark.hatle@windriver.com>
(From OE-Core rev: 216a1cfe7973e99e3e79585040e91f7a6e298884)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The previous logic could only strip MLPREFIX from the first element in
an array, take an example, strip_multilib the [lib32-a lib32-b lib32-c]
will result in [a lib32-b lib32-c]. We need to strip prefix one by one.
This commit change the logic to strip all elements' multilib prefix.
[YOCTO #1368]
CC: Mark Hatle <mark.hatle@windriver.com>
(From OE-Core rev: ca729de4b261e4feba74fdf0b2578890bc80ea90)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
"virtclass-multilib" is set to OVERRIDES in multilib.bbclass, remove the
duplicated settings here.
Besides, DEFAULTTUNE has overrided and it can be directly used.
[YOCTO #1368]
CC: Mark Hatle <mark.hatle@windriver.com>
(From OE-Core rev: dc78cdb318671862c5cd15711364c1c4462d9ece)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When CMake is looking for perl, it only searches in the specific directories
that it's told about and ignores ${PATH}. If perlnative is in use, ensure
that the appropriate installation path is added to the list of places that
cmake will look for perl, otherwise it won't ever be found.
(From OE-Core rev: add9e4e30e0b1e0f93479b43ce61953efb90985d)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
1. Added variable MULTILIB_VARIANTS to store all the instance variants
for multilib extend.
2. Added function all_multilib_tune_values to collect the variable
values for all multilib instance.
3. multilib bbclass handler will save the orignal value of all variables
defined in MULTILIB_SAVE_VARNAME.
(From OE-Core rev: 18bba910e04bff75460f408e4557d4bae21ad592)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #1325] [YOCTO #1366]
Packages that were in the PACKAGE_ATTEMPTONLY and SUGGESTS were not
being properly found, which was causing image creation failures.
In PACKAGE_ATTEMPTONLY, when an item was not found, it caused an
error. This should have been a note, followed by skipping the
package.
The SUGGESTS processing was simply broken. It was using a
non-existant function, due to an apparently typo.
In addition to the above, the MLPREFIX processing was not being
done properly, preventing multilib packages from working in this
with PACKAGE_ATTEMPTONLY. (SUGGESTS doesn't need this as the names
are munged when creating the packages.)
(From OE-Core rev: 4fb6723ab1ee14cf539f0ef2df63a3ee1b978de6)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When constructing the /etc/rpm/platform file, we need to ensure that
the any, all, and noarch platforms will allow any "linux" variant to
be installable, not just matching variants.. i.e.
arm-oe-linux-gnueabi should be able to install noarch-oe-linux
Also ensure that we pass the full canonical arch via the --target=
parameter. This allows us to define the proper platform settings
for all packages.
(From OE-Core rev: c6bb9445de90cfb46db9c40842dbe1bfbb5b8ce8)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Magic file path should be given for rpmbuild in
_rpmfc_magic_path define so that build system default file
is not used by accident. Not doing this caused many
packages to fail building in several systems.
Fixes [YOCTO #1358]
Signed-off-by: Jani Uusi-Rantala <jani.uusi-rantala@nokia.com>
Currently its hard to figure out if/when sstate is checking for possible
packages to speed up builds. This patch adds level 2 debug output which
better indicates what files are being searched for an why.
[YOCTO #1259]
(From OE-Core rev: a752b23767189f2678367e47ca0b41f49c56a631)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In the new implementation, each known terminal is defined as a class in
oe.terminal, as a subclass of bb.process.Popen. terminal.bbclass wraps this
functionality, providing the metadata pieces. It obeys the OE_TERMINAL
variable, which is a 'choice' typed variable. This variable may be 'auto',
'none', or any of the names of the defined terminals.
When using 'auto', or requesting an unsupported terminal, we attempt to spawn
them in priority order until we get one that's available on this system (and
in the case of the X terminals, has DISPLAY defined). The 'none' value is
used when we're doing things like automated builds, and want to ensure that no
terminal is *ever* spawned, under any circumstances.
Current available terminals:
gnome
konsole
xterm
rxvt
screen
(From OE-Core rev: 69f77f80965fa06a057837f8f49eda06855c4086)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
IMAGE_FEATURES is analagous to DISTRO_FEATURES and MACHINE_FEATURES, for
root filesystem construction. Currently, the only supported features are
any defined package groups, as used by the oe.packagegroup python
module.
Example usage:
PACKAGE_GROUP_myfeature = "vim iptables"
IMAGE_FEATURES += "myfeature"
(From OE-Core rev: f9f4416a8cfbd37c7d3a8eb19ee82820e2e6b38c)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
For x86_64 new ABI : x32, there is a new
name for the TARGET_OS: linux-gnux32
(From OE-Core rev: 9dd0a7bf64ca2ca3613ab45dc779e9dcc1592342)
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #1350]
Since do_kernel_configme is added before the standard do_configure task
we needed to add CCACHE_DIR so when the kernel builds it's host configure
tools the CCACHE_DIR exists.
(From OE-Core rev: 564d5fd5a289be0ca47d53608e43f9b78d5c6ee0)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When building an external tree or bootstrapping a BSP the
external branch may not have been checked out. The tools now ensure
that the tree is ready for configuration, so we no longer need to
force the checkout of the external branch.
This change is coupled with some kern tools tweaks as follows:
40d9bab updateme: allow the location of board descriptions based on defines
59859ca createme: use branch name when creating meta data
91b4275 configme: determine meta branch based on directories, not branch naming
f5a915c kgit-meta: make branch creation and renaming more robust
(From OE-Core rev: 02c82bf5255b09bb27a0a4509861a3d2bd84b09f)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
To support the mapping of any oe/yocto MACHINE to a kernel
branch that may not share that naming structure we have
KMACHINE and KBRANCH. To allow the mapping to work, we
actually have to pass KMACHINE into updateme and not MACHINE.
(From OE-Core rev: 658f2cc721b121c0a9a9e7aa8b41463952314c0b)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Only the package with the icons needs it
[Squashed laster RDEPENDS fix from koen into commit]
(From OE-Core rev: 34fca51d84d4629d82880aa0f47123db86de256b)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #1335] Using BPN instead of BP to decide the DEPENDS content for
multilib cases.
(From OE-Core rev: 32faad3b901345a31978664fd1743c9a1729c67d)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This fixes do_rootfs breaking because OE didn't resolve the RDEPENDS added with python
(From OE-Core rev: fbb7ecaf9b49d2d7570e6440fe84b4046ec08fd2)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
KERNEL_LD was using ${LD} in it's definition, which is not correct for
different ABIs such as x32 or i386 on x86_64 machine. This brings it
into sync with the corresponding gcc settings, likewise the same with
the KERNEL_AR variable.
[RP: Updated commit message]
(From OE-Core rev: 9c525241c564a458db8ecd9ba325edeb13ec1c58)
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We might redefine ${base_libdir} from being set to just /lib.
(From OE-Core rev: 7615f81f86bb5ccfe52b84b38eb9ae80a852d214)
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit adds disk-io statistics functionality on a build
and per-task basis.
It pulls measurements for whatever partition TMPDIR exists on.
This data could be off if SSTATE_DIR and DL_DIR exist on
a different partition/volume.
Notes on what this pulls:
ReadsComp: Total number of reads complete
ReadsMerged: Total number of adjacent reads merged
SectRead: Total number of sectors read
TimeReads: Total number of m/s spent reading
WritesComp: Total number of writes completed
SectWrite: Total number of sectors written
TimeWrite: Total number of m/s spent writing
IOinProgress: Total amount of IO in progress at the time of
we look at /proc/diskstats.
TimeIO: Total number of m/s spent doing IO
WTimeIO: Weighted time doing I/O. From iostats.txt:
"This field is incremented at each I/O start, I/O completion, I/O
merge, or read of these stats by the number of I/Os in progress
(field 9) times the number of milliseconds spent doing I/O since the
last update of this field. This can provide an easy measure of both
I/O completion time and the backlog that may be accumulating."
(From OE-Core rev: eeebcebf0d695358e72f3aed753f66cddd5e0e61)
Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is comming from x32 need to pass special parameters to ld & as.
(From OE-Core rev: 96931af89f9cc3056e413cff437a85eca85b3b75)
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* The menuconfig target exists in places other than the kernel that use kernel style config.
(From OE-Core rev: 1ceaf45f634d11b65aab0f591a86865df49c8c90)
Signed-off-by: Noor, Ahsan <noor_ahsan@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #1306] Fixing.
Added and unified version related variables in all environment files
generated by package meta-toolchain, meta-ide-support,
meta-environment-xxx.
(From OE-Core rev: 5fbea0f2614d5bc9aec0819a337cdec9b5331f71)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tested with gnome-icon-theme and libsoup recipes on angstrom.
(From OE-Core rev: 229ba02322ce49d13e2d64eff6bb637f23f1f16b)
Signed-off-by: Koen Kooi <koen@openembedded.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In multilib support, it iterate values in PACKAGES and then extend name
for variables like "FILES_xxx", "SUMMARY_xxx", etc.
However eglibc-gconv is dynamically put in PACKAGES by
package_do_split_gconv function. Therefore the name will not be
extended automatically.
Specially handle the FILES variable for eglibc-gconv to fix the issue
of missing "lib32-eglibc-gconv" issue in doing multilib do_rootfs.
Also when set PACKAGES, add the MLPREFIX.
(From OE-Core rev: 4a5cc82218fa730b898c553875accfeb6800f9a4)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently, if a file is provided as an alternative link within the package, rpm
doesn't see the dependency. This works out badly for dependencies such as /bin/sh
which scripts might require.
Since rpm detects and adds these dependencies we do need to ensure the dependency
information in the packages is correct. This patch does so for the rpm backend
ensuring internal consistency whilst the approach for addressing this problem in
the other package backends is considered.
(From OE-Core rev: 102fc29b9c9eae8435b29edb41b5090ace2373c5)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If something removes .m4 files from the aclocal directory whilst aclocal is
running it gets upset. To avoid this we need to take a copy of the aclocal
directory and build against this instead.
[YOCTO #861]
(From OE-Core rev: 6a4778e21341f031569f561e7699d2c616b60af0)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
During SDK generation the multilib_sanity_check function is being called,
however it is not available unless we've been called from the image.bbclass.
Disable the check if MULTILIB_CHECK_FILE (also set in image.bbclass) doesn't
exist or is empty.
(From OE-Core rev: 0611cceca1595ea4656ebcb985cbd92bb9774ec8)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In order for things to be easier to maintain in the future, sync up
the sdk and rootfs versions.
(From OE-Core rev: 3c78da15457d8d20c9964cd845f6e021d442aaae)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add SDK_PACKAGE_ARCHS to avoid the sed operations we were previously doing
inside of the variouns populate_sdk functions and related items.
Also add documentation to populate_sdk to explain when the various functions
are expected to be doing.
Finally fix a bug in populate_sdk_rpm where the wrong value was being set,
noticed while working on this change.
(From OE-Core rev: 587c1d5bac71fa6faa65ee3a271391cbf931e8f7)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
in packages_rpm.bbclass:
Cleanup the way package_update_index_rpm works. Break this out into two
functions, one for common functionality and one for controlling target vs
sdk package processing.
Similar change to package_generate_rpm_conf.
Usage of IMAGE_ROOTFS should actually be "target_rootfs", this fixes a problem
with the SDK case.
in rootfs_rpm.bbclass:
Minor re-order of the values, and avoid multiple uses of IMAGE_ROOTFS in order
to make the merge with the SDK behavior easier.
(From OE-Core rev: 46559f36d8a39655060b45d3d235de44a2c4c09b)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
fix the MLPREFIX referrence typo which cause multilib rpm
do_rootfs failure
CC: Mark Hatle <mark.hatle@windriver.com>
(From OE-Core rev: 9653089620ad5aef7876b582708561c3a315a064)
Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Earlier iterations of the multilib patch used "TUNENAME", which was later
renamed to DEFAULTTUNE. This file was missed in the rename.
(From OE-Core rev: fdd39925df8268ad41c1ff643a0761b03fad8e08)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Its possible we get duplications if we explicity add TUNE_PKGARCH to
PACKAGE_ARCHS so instead just add a sanity check to verify it.
(From OE-Core rev: b2ae0444eb1984b86c02e571bb1efeaacdeafcf1)
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixed [BUGID #1299]. OLD_MULTIMACH_TARGET_SYS is no longer available.
Use new recipe-scope variable REAL_MULTIMACH_TARGET_SYS instead.
(From OE-Core rev: b69a2be2f30dc633597399d42d6c87d9f0910c1a)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This makes debugging the new tune code easier since it doesn't involve staring at 'bitbake -e' output anymore.
(From OE-Core rev: c1903b1221e9b419aefe49e40a8acd61575de797)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Support install multiple multilib in opkg backend.
The installation is done in 3 phases.
Phase 1: install normal packages to IMAGE_ROOTFS.
Phase 2: install multilib packages under MULTILIB_TEMP_ROOTFS. Packages
belongs to the same multilib arch would be installed to a unique
directory.
Phase 3: check file confliction between IMAGE_ROOTFS and
MULTILIB_TEMP_ROOTFS, install multilib packages to IMAGE_ROOTFS only if
the sanity check passed.
(From OE-Core rev: 9d81c2166be7ed388e5616e01ca2b4059e524c8e)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
1. Added MULTILIB_PACKAGE_INSTALL for multilib instances of packages to
be installed in the rootfs.
2. MULTILIBRE_ALLOW_REP contains the regular expression to match the
files allow to be replaced by the conflicting files.
3. MULTILIBRE_FORCE_SAME contains the regular expression to match the
files allow to be replaced only if the conflicting files are identical.
4. Added shell function multilib_sanity_check() to check whether the
overwring for multilib situation is allowed.
(From OE-Core rev: 137a4626a7e8107fc8a71724d5124f44236293b9)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a first pass at adding multilib support to the RPM package
and image handling code.
(From OE-Core rev: 1939a4395997098862912e013a2b13ed2f385f9f)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
in multilib case, the PACKAGE_DYNAMIC is overrided with multilib
prefix. Take multilib:lib64-perl as example. the "perl-module-*"
will become "lib64-perl-module-*"
the output_pattern in do_split_packages is designed to work with
PACKAGE_DYNAMIC, so it should be applied with the same logic, i.e.
overriding with multilib prefix. otherwise the do_split_package will
split incorrect files
this patch implements the mulitlib override logic for do_split_packages
We also need to rename the extra_depends to support multilib case
(from Dongxaio Xu).
(From OE-Core rev: a4bc86713892502aeefbbdb3053e8cf1e1fc0bdb)
Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Xu Dongxiao <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch adds the core multilib class which can be used along with a
parameter specifying the mutlilib to use in BBCLASSEXTEND.
The MLPREFIX variable is added and can be used in cases where its too
difficult to dynmaically work out where a mutltilib prefix is needed
to be added to a variable.
This includes:
* SHLIBSDIR and PACKAGE_ARCH fixes from Lianhao Lu.
* PACKAGE_DYNAMIC mapping from Yu Ke
* PACKAGE_INSTALL mapping from Yu Ke
* RPROVIDES mapping from Yu Ke
* TARGET_VENDOR fix from Mark Hatle
* Ignorning *-native-runtime dependnecies as well as *-native from Yu Ke
* Map PKG and ALLOW_EMPTY from Dongxiao Xu
* Ensure RCONFLICTS and PKG field dependencies are remapped (from Dongxiao Xu)
* Ensure PN and MLPREFIX are set at the same time to ensure consistent BPN values (Yu Ke)
(From OE-Core rev: 5d9453049915db48ec4b5972e12287417ebb61a2)
Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Xu Dongxiao <dongxiao.xu@intel.com>
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This means if PKGARCHCOMPAT_ARMV7A is set, "armv7a-vfp-neon" is renamed
to be "armv7a". Other compatibility mappings can be added as needed.
(From OE-Core rev: 08c0b7060009113e8dffdef51ff6b9b4b7f28894)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We switch to using os.lchown in order to avoid following a symlink.
We also now check if an item is a symlink, if so we avoid the
os.chmod as a symlink inherits the mode of it's target.
(From OE-Core rev: c64d075b3d367e6c76aafa17782585d026b1f31e)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This helper function and associated header will allow us to
resolve two/three header files that conflict due to contents
that change based on wordsize and ABI.
(From OE-Core rev: 1fe66d01b7bce70a37245d47b1abce155fae926e)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This creates a live image as an IMAGE_FSTYPES, thus removing the
need to have additional -live.bb recipes. To create a live image
one just needs to add live to the IMAGE_FSTYPES list
(From OE-Core rev: b3ff63796cd6629975ff0a726ba18cc168e0a2b2)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This ensure that the command line options from the creation of the wrapper
are actaully passed into the wrapper.
(From OE-Core rev: 190b4f17f5fc9879e680278dd0e31e26e5f5bca0)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
I believe that powerpc-linux is now a common file across 32bit/64bit
linux for powerpc be it uclibc or glibc. I compared the differences
between powerpc-linux-uclibc and powerpc-linux files and it
powerpc-linux was more uptodate and all the new stuff it had was needed
for uclibc anyway so we do not need to keep exact copy of powerpc-linux
as powerpc-linux-uclibc instead we use powerpc-linux for powerpc/uclibc
targets.
Secondly linux specific files were added in archinfo dictionary
which I think logically belongs to targetinfo dictionary therefore
moved them to targetinfo
now uclibc/powerpc is buildable again
(From OE-Core rev: 0fc798640ba60cbb9074d617ba18518b113b7186)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some of these entries are required by the GUI to enable the expected workflow
of the ADT, namely a compressed rootfs image.
(From OE-Core rev: dad2169cfb331b7af5c6d380347ea279a59bd716)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is this discrepency in spelling. Lets fix it in
core. There are lot of layers using SITEINFO_ENDIANNESS
This was shielded since meta-oe had its own copy of
siteinfo class. But that class has now been deleted in
favor of oe-core
(From OE-Core rev: 54a54778fad39931ac7d43daaf37ce7c1946a29b)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch removes the variables BASE_PACKAGE_ARCH, BASEPKG_HOST_SYS,
BASEPKG_TARGET_SYS and also removes the immediate assignments in
several core classes as these are no longer required.
This should make it clearer what some of the core variables do and
simplfy some overly complex and confusing class code.
(From OE-Core rev: d5521be2dcbaf213c140b0d12a4176380874426b)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is currently consideradble confusion over how the tune files operate
and how these interact with the rest of the build system. This update/overhaul
changes things so the tune files are primarily resonsible for setting:
TUNE_ARCH - What was formerly set as TARGET_ARCH and is the value that
represents the architecture we're targetting.
TUNE_PKGARCH - The value that represents the tune confuration that this set
of tune parameters results in.
This allows the significant improvement that the core can now always determine
the target architecture value, even when TARGET_ARCH needs to be reset to
something different and likewise, there is one package architecture variable
the core can reference allowing simplification of the BASE_PACKAGE_ARCH, PACKAGE_ARCH
and FEED_ARCH variables.
(From OE-Core rev: a10de4cf8b424ee95c8e283e75d486be5b3b8eac)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add the ability to dynamically change the library directory from "lib" to
other values. This allows the tune files to specifiy altnerative ABIs
which can be dynamically enabled by the multilib BBCLASSEXTEND code.
A variety of approaches have been attempted with this, the immediate
expansions in cross.bbclass being problematic as they are they are expanded
before the bbclass extend event hander runs. This approach ensures the
${baselib} variable is retained in the expressions resolving that complication.
Derived from some ideas from Mark Hatle.
(From OE-Core rev: aeea22da699b276a97ca1a17e3c53176c9afd9de)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Now that we have a unique powerpc32-linux config, we share powerpc-linux
between ppc32 & ppc64.
(From OE-Core rev: 405a9a90f756c215e7454a4231179bc49c77ad1d)
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
powerpc-common was really Linux PPC32 specific. So move all the options
in it to powerpc32-linux and we can refactor out common bits shared
between into powerpc-linux and powerpc-common.
(From OE-Core rev: 6ba64ae1030c879021f0ee0789bee4f8d3c135c0)
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
For kernel's that use a split source/object build the copy
of defconfig to {S} in the base kernel class is problematic.
The previous solution for this was to override the do_configure
of the base kernel class in a subclass. While this is still
a viable/valid option, it does mean that changes to the base
do_configure will be missed.
The solution to this is to copy a defconfig to {B} which is
typically the same as {S}, so most kernel recipes won't see or
care about this change.
With this change in place, linux-yocto.bbclass can drop its
override of do_configure.
Tested with linux-yocto and oe linux recipes.
(From OE-Core rev: 4f03d922ce32f602a5a407cf422d82a0d036e4a0)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In oe.dev we have a sets to pick out hostos/hostarch/etc site
files out of and include things like a common-linux site file.
This should also help out with adding multilib-specific site files
(ie x32). In oe.dev we have an iterator but at Richard's request
we continue to return a list of files in siteinfo_get_files().
(From OE-Core rev: cb3d7cd1c0f2bbcd448abbb832074ca965e0af5e)
Signed-off-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
On hosts where we may already be past the #! limit this is required
and this is safe on the target as well. This is be7fe31 in oe.dev.
Related to this we now bump all PRs for recipes that inherit cpan.
Note that in oe.dev we mangle for perl but here we use the new
nativeperl script.
(From OE-Core rev: 682a213dc732074985bf86f508305fc6eafe18d9)
Signed-off-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Make it more obvious which file, and which recipe, are at issue.
(From OE-Core rev: 207a2176bdebe217daf81d5c5b1d2ab4ab2e6adc)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
nls disabling is target specific but USE_NLS=no will
disable nls even for other kind of recipes. We should
let them build with nls
(From OE-Core rev: 7be58f695aaa8b111fcf79a3505964e9f49b108a)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
With help2man no longer being required by sanity.bbclass we need to
make sure that if we are going to build autotools stuff that help2man
will be there as it's a frequent implicit dependency.
(From OE-Core rev: fd03530b4e2fb0660212a5ffb849c2169076585c)
Signed-off-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a 'side port' of current oe.dev versions. PR is kept in sync
but we drop out the target recipes in order to punt on potential perl
problems. Here we do re-configure as we don't have a dance with
perl-native to deal with. Now that we can build it, don't require it.
(From OE-Core rev: 9673d7aa1f9e1c88ba69047b2e22636c755edaaa)
Signed-off-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We have no hg URIs in the metadata, so don't require and don't
ASSUME_PROVIDED it either. meta-oe has a mercurial-native recipe
if hg URIs are added in a recipe later.
(From OE-Core rev: 6473c9096bf4995c21147e737322d800219c89ab)
Signed-off-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The problem occured when unzip-native is not yet staged, and ZIP
archive unpacking already started resulting in failed do_unpack task.
(oe.dev has a NEED_UNZIP_FOR_UNPACK variable we did not bring over)
[RP: Use srcuri from already existing variable]
(From OE-Core rev: 6ca80453618fa308cc2d6329450aaf5dfdf2d610)
Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
Signed-off-by: Koen Kooi <koen@openembedded.org>
Signed-off-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Recent versions of qemu seem to be happy enough building with gcc 4.x, and indeed most modern distributions aren't shipping gcc3 any more, so there is no point checking for its presence as part of sanity.
Also remove the check_gcc3 function from base since nothing else uses it.
(From OE-Core rev: ec5c68e9368111bd51c1cfd6a9a135c53b82ceca)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
These classes are not used within oe-core and really belong in an upper
layer that makes use of them, if they are still useful:
* mozilla.bbclass
* openmoko*.bbclass
* srec.bbclass
* xfce.bbclass
(From OE-Core rev: fa8779452de5e1a8ded92bdf4a952158fda6160a)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
All of these classes are currently unused in oe-core and meta-oe; several
are no longer in use even in OE classic:
* base_srpm.bbclass
* ccdv.bbclass
* flow-lossage.bbclass
* patcher.bbclass
* singlemachine.bbclass
* tmake.bbclass
* xlibs.bbclass
patcher.bbclass and singlemachine.bbclass probably still work but it is
unlikely that anyone is still using them.
(From OE-Core rev: 7416bdaf01daaeb183b1cc8d13a043e244c464e1)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* during an unfortunate round of tests right before commiting the patch
* do_configure[depends] became kernel_do_configure[depends]
* Nonsense!
* As documented in commit 4dfef62dfe54a3b2c557a6df81d155adc1e03ccb
* of OpenEmbedded git server, this must be in do_configure[depends]
* to do the magic.
(From OE-Core rev: df31400ef89c14b45860feb906d4355d5f7de0c7)
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It isn't safe to make assumptions about the order of the entries in the dynamic section. Fix the ldflags test to cope with the case where GNU_HASH comes before NEEDED and/or INIT.
Also, add a new warning for binaries which contain useless (but benign) rpath entries pointing to the default search locations.
(From OE-Core rev: 9adac72a77dafd2a203e29beec0b65f0ef5f2cb6)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is for use in the Hob GUI to enable the user to change the type of the
generated image.
(From OE-Core rev: 12600138721262ce02e9dd243bcf44e52e065179)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
when libdir set to non /usr/lib like /usr/lib64, there is do_configure error:
"
-- Libraries will be installed in /usr/lib
CMake Error at /home/kyu3/sdb/lib64/tmp/sysroots/x86_64-linux/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:91 (MESSAGE):
Please install 'check' and 'check-devel' packages (missing: CHECK_LIBRARY)
Call Stack (most recent call first):
/home/kyu3/sdb/lib64/tmp/sysroots/x86_64-linux/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:252 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindCheck.cmake:17 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:35 (FIND_PACKAGE)
-- Configuring incomplete, errors occurred!
"
The reason is that cmake did not search /usr/lib64 for libcheck, thus report error
add ${libdir} to the CMAKE_SYSTEM_LIBRARY_PATH can fix this issue.
(From OE-Core rev: f4de87ce30a37bb2f09855d442b34d153ada8c0e)
Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The kernel and module recipes have very few dbg/dev packages, however
they can easily have false positive results from the rdepends QA checks
(e.g. kernel-module-lirc-dev). Thus disable these tests for any recipe
that inherits kernel or module-base.
(From OE-Core rev: 7a383f8ae8433c14b6995966216b9e6e81ea6a51)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* "All 2.6 Linux kernels contain a gzipped "cpio" format archive, which is
* extracted into rootfs when the kernel boots up."
* (http://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt)
*
* In some cases it can be useful to take advantage of this ability and embed your
* customized rootfs ("the move to early userspace is necessary because finding
* and mounting the real root device is complex").
*
* Therefore, some code was added and since 2009 OpenEmbedded metadata
* provides a convenient way to include your initramfs by setting
* INITRAMFS_IMAGE = "your_initramfs_image.bb"
* and specifying the chosen output format in the initramfs image recipe, e.g.
* IMAGE_FSTYPES = "cpio.gz cpio.lzma"
*
*
* Patch was imported from the OpenEmbedded git server
* (git://git.openembedded.org/openembedded)
*
* Add satndalone task "builtin_initramfs".
* commit 72761e468bb3e905459f2b81ce1bc4d80419481f
* (From OE-Core rev: 19bda7f2c2dac6363468a49295c38f2095c67c98)
Signed-off-by:Paul Sokolovsky <pmiscml@gmail.com>
*
* 'Remove usage of non-standard variables (DEPLOY_TO) and random renaming
* of output.'
* commit 456ba7ffd159821e86ad7ad4b66ec7d5790bd054
* Richard Purdie <rpurdie@rpsys.net>
*
* 'Fis typo in do_builtin_initramfs.'
* commit 37f2fe4b801df832e93553a08eff24fec736c7d4
* Signed-off-by:Paul Sokolovsky <pmiscml@gmail.com>
*
* 'comment initramfs stuff till rootfs locking works properly (initramfs
* should be optional as well)'
* commit 2818d8b7be1a0d9a59ad3528091d47517d59328b
* Signed-off-by: Koen Kooi <koen@openembedded.org>
*
* 'get initramfs stuff working
* commit 1642b3e8fc81c666713951fdd4e7ff9a50d1c5a8
* Signed-off-by: Thomas Kunze <thommycheck@gmx.de>
*
* 'Fix INITRAMFS logic to stop breaking builds for people not using it'
* commit dcf3049eb9eedf0838af59969b3f70a43298d3d7
* Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
*
* '-change initramfs-logic'
* commit 3e3f297457138e96e2b652658675796853eb0293
* Signed-off-by: Thomas Kunze <thommycheck@gmx.de>
*
* 'move initramfs stuff to configure so we can do postprocessing
* on it with do_configure_append'
* commit fc03e2be0b4470748a8b7707cea7293303adc424
* Signed-off-by: Koen Kooi <koen@openembedded.org>
*
* 'copy gz, lzo, lzma initramfs cpio images.'
* commit 572abc3fdd1076ca35d8c15d269cc9d862101805
* Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
*
* 'move the kernel size check to linux-kexecboot.inc.'
* commit 45f82a941c77e9d747814fa1e337ba803475d327
* Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
*
* Finally, two refinements as discussed on openembedded-core
* mailing list:
* - replace "if image != '' and image is not None:" with "if image"
* - add cpio.xz support
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Once we add support for building kernel containing initramfs images
* we expect compressed cpio archives.
* Thus, add support for lzma and xz compressors for the initramfs images.
* While there, add support for tar.xz as done in org.openembedded.dev.
*
* Patch was imported from the OpenEmbedded git server
* (git://git.openembedded.org/openembedded)
*
* 'bitbake.conf: add cpio and ext4 .xz support'
* commit 7977d3325a09e2edf4a8a1b02f48085f88f7a631
* (From OE-Core rev: 38334acdc60432baf4f89f95663d64fab240131b)
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
*
* 'bitbake.conf: Define tar.xz image types.'
* 1fca8dc50a821f4589fa5e339e6e279dd3c0dafe
* Signed-off-by: Tom Rini <tom_rini@mentor.com>
*
* 'bitbake.conf: add XZ_INTEGRITY_CHECK and LZMA_COMPRESSION_LEVEL variables'
* commit 312b42bcf2cc9b11266ba497ade68e8ddabb3007
* Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
*
* 'bitbake.conf: unbreak and improve lzma image compression handling and adapt
* linux-kexecboot.inc'
* commit c382a9ce64bf4291572665652138aa01b2e54306
* Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
As discussed on IRC on 30/06/11, this patch adds support for
BAD_RECOMMENDATIONS to rootfs_ipk, which is a list of packages NOT to
install if suggested or recommended by a recipe. Taken from
http://thread.gmane.org/gmane.comp.handhelds.openembedded/30417.
Note that current support for this in oe.dev may also be broken,
depending on the version of opkg in use.
(From OE-Core rev: 2b6900ad73919a0ecb8c5f1de31744ce7afe65f5)
Signed-off-by: Chris Elston <celston@katalix.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
currently, the libdir in native.bbclass is inherited from target libdir
defined in bitbake.conf. This is not correct in concept, instead, it
should be inherited from libdir_native. Current code works because both
the target libdir and libdir_native are the same value "/usr/lib".
But if libdir changes (e.g. to /usr/lib64), then build will break.
This patch make libdir generated from libdir_native to fix this issue.
(From OE-Core rev: fe45ef3d77d963136a13687bc14165a30e170d23)
Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #1171]
This is a temporary fix to address the fact that zypper's db configuation
uses a large amount of /var space. When the correct'ed zypper config can
be applied, this fix can be removed. The zypper bug for yocto is 1174
http://bugzilla.pokylinux.org/show_bug.cgi?id=1174
(From OE-Core rev: 05995abe8d74ed8a460f6c29b686f812f62b3d92)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fix package_qa_handle_error so that it returns the correct values in order
to determine error/warning status.
(From OE-Core rev: a66ed717f5f5991ee4072df67428564677e7d220)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add the missing check in package_qa_check_rdepends to allow dependencies
from non-development packages on development packages to be skipped.
(From OE-Core rev: 26fd8892337e60aa439cedde51b15c42a6fd8540)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some classes, as for example nativesdk, defines CPPFLAGS and CXXFLAGS
to be passed to compiler. Using those makes more sense and avoid some
hacks on packages using CMake.
(From OE-Core rev: de60d1d91b28c3f5568b132a8eb29d9a754e68a0)
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently if there are locales to install in the image the appropriate
packages might not automatically get built since there is no dependency
being exposed to bitbake.
This patch exposes the missing dependencies to bitbake through the RDEPENDS
field hence ensuring images build successfully when locales are added but
not depended upon anywhere else in the build.
[YOCTO #1215]
(From OE-Core rev: 2f731352aa21b43b35247eafd873de775eb0de34)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add microblaze little endian target information
Endian little, 32 bits
(From OE-Core rev: d0e55b37763932036eb4c19b14cc7265af838c46)
Signed-off-by: Adrian Alonso <aalonso@secretlab.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add microblaze little endian target info to
package_qa_get_machine_dict
(From OE-Core rev: 33679729f0dafedb143e2dd6174472de46fc36fe)
Signed-off-by: Adrian Alonso <aalonso@secretlab.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* In map_kernel_arch function return valid arch for
microblazeel target arch.
if TARGET_ARCH = "microblazeel" return "microblaze"
(From OE-Core rev: 86e36055dc61279c9c3616ad4bc47695f83bad06)
Signed-off-by: Adrian Alonso <aalonso@secretlab.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Sanity test to verify files can be fetched from the network using git, http
and https fetchers point users at a page to help get set up in the case of a
failure.
Requires a variable CONNECTIVITY_CHECK_URIS to be set, using the same pattern
as SRC_URI, of URI's to test against.
The variable CONNECTIVITY_CHECK_MSG can be set to provide a custom error
message, such as a pointer to some help, when this check fails.
Addresses [YOCTO #933]
(From OE-Core rev: 8fdea2a1ac8875a42b3a57f0fd7b530f851c20e9)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kernel-source do not exist in STAGING_KERNEL_DIR any longer.
Remove the exported KERNEL_SOURCE as the STAGING_KERNEL_DIR can
be used in module recipes directly.
(From OE-Core rev: b67ef579db4c1906d6e508a8451cd2b01b7b62ab)
Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If you include a bitbake variable as a comment in a shell function
then it gets expanded by the bitbake signature handling code.
This could be classed as a bug or a feature depending on your viewpoint
(e.g. a multiline variable included in a comment could actually contain
executable code).
Since we don't always want kernel-yocto to reparse this changes the
syntax of the comment so it doesn't trigger the problem.
(From OE-Core rev: 512be74ee0d7ad7e76c1be62d1e0f499aa51d174)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Based on some code from Phil Blundell but reworked against insae.bbclass changes.
(From OE-Core rev: 2e06a1a843756e9d50291c4533b10096af2d852b)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The patch removes METADATA_BRANCH and METADATA_REVISION, and treats the meta/
in the same way as other layers.
In the case some layers belonging to the same repo, the branch and revision
are only printed once, but all the layer names are still printed.
An example output can be:
OE Build Configuration:
BB_VERSION = "1.13.1"
TARGET_ARCH = "i586"
TARGET_OS = "linux"
MACHINE = "emenlow"
DISTRO = "poky"
DISTRO_VERSION = "1.0+snapshot-20110702"
TARGET_FPU = ""
meta
meta-yocto = "dcui/banner_v3:4b712dba68a98c827b8f3d0242da9153c4f65473"
meta-emenlow
meta-sugarbay
meta-n450 = "dcui/test1:76d1178ba1a43cf6457c89717134aeb9f1275fae"
(From OE-Core rev: f271498638a9da271ed5da973666fe4a7bd0ac63)
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It is now unused.
(From OE-Core rev: 18a0f1dfd9d36e53a3adba74f30e756769a74a0b)
Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Change to only depend on virtual/*/depmod.
Change all calls to only use depmod.
Do not install depmod as depmod-2.6
Bump PR in module-init-tools-cross.
(From OE-Core rev: 351e352c2e44a3d8103594ca7e1d8404979a220c)
Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch means the warning/error handling can be controlled from local.conf
and/or from the distro level and no longer uses numbers but strings instead.
The system becomes extensible so that other classes can extend the path QA
checks at least.
It also removes all th duplicate error message code, we should have *one*
good error message.
Much work remains including making INSANE_SKIP take the classes of QA test
to skip but its a start.
(From OE-Core rev: 0fbe849b56d6457b6547a1202c4938d35316d8b8)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This removes a couple of megabytes of QA warnings!
(From OE-Core rev: 69c2f6f7a9133cc8d64560fefa42e5852322f716)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This class is to be used by recipes that need to set up specific
user/group accounts and set custom file/directory permissions.
(From OE-Core rev: a82885db00956734922291d8a17eb135461204fa)
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add a new function that is responsible for fixing directory and file
permissions, owners and groups during the packaging process. This will fix
various issues where two packages may create the same directory and end up
with different permissions, owner and/or group.
The issue being resolved is that if two packages conflict in their ownership
of a directory, the first installed into the rootfs sets the permissions.
This leads to a least potentially non-deterministic filesystems, at worst
security defects.
The user can specify their own settings via the configuration files
specified in FILESYSTEM_PERMS_TABLES. If this is not defined, it will
fall back to loading files/fs-perms.txt from BBPATH. The format of this
file is documented within the file.
By default all of the system directories, specified in bitbake.conf, will
be fixed to be 0755, root, root.
The fs-perms.txt contains a few default entries to correct documentation,
locale, headers and debug sources. It was discovered these are often
incorrect due to being directly copied from the build user environment.
The entries needed to match the base-files package have also been added.
Also tweak a couple of warnings to provide more diagnostic information.
(From OE-Core rev: 8c720efa053f81dc8d2bb604cdbdb25de9a6efab)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Set 'CCACHE_DIR' in 'bitbake.conf' and create the dirs for every
package before task 'do_configure' started.
[RP: Merge dirs variables into one]
(From OE-Core rev: fe03f78fb0bf7d54b9472832e43764e882f918a1)
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bitbake now allows the umask to be specified per task. The
following tasks will have a umask of 022 set by default:
do_configure
do_compile
do_install
do_package
do_populate_sysroot
do_rootfs
do_configure and do_compile need a umask of 022 set because -many- recipes
directly copy generated files out of recipe's build directory. Instead of
fixing each existing and future recipe, it was shown to be much easier to
just set the umask.
(From OE-Core rev: 0cfa7ebcf661aa0645c6d4d858b04946ebacb7e4)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Avoid fractions like 80.72 and round them to whole numbers.
(From OE-Core rev: 70b80215a08b2f1a3a813ac9a3948e39a1b26dd4)
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
By passing the data object to the less frequently run test harnesses
(check_sanity_tmpdir_change(), check_sanity_sstate_dir_change() and
check_sanity_version_change()) we can run tests against BitBake data here
too.
(From OE-Core rev: 7df8376c28d991dd07c0915d3ccade4cf51c2fee)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixes [YOCTO 1136]
linux-yocto adds some configure steps that are necessary to prepare the source
tree after the do_patch task. This causes a "-c menuconfig" to fail in a clean
build tree. Typical use of menuconfig should be to modify the config provided
by the recipe being built. It therefor makes sense for the menuconfig task to
come after the configure task. This also happens to fix the issue seen with the
linux-yocto kernel recipe.
(From OE-Core rev: 829dd1d7ca99ec6228d2705cdece4727232797d3)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We need to check if we know of the task type, before we attempt
to process it. In order to reproduce the problem build with:
PACKAGE_CLASSES = "package_ipk"
Then change it to:
PACKAGE_CLASSES = "package_rpm"
Build again -- and then try bitbake -c cleansstate <recipe>
(From OE-Core rev: 8870ba9d261d3cacbe5d1219fdd95840c05ecf9e)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libc-{common,package}.bbclass: fix shlib renaming for the C library
Without this you'd end up with eglibc_2.12.ipk instead of libc6_2.12.ipk as before
* eglibc-locale: don't make versions go backwards after split from eglibc
eglibc was way beyond PR = "r1" at the time of the split, so increase PR to make package upgrades work
[RP: Fixup PR merge conflict]
(From OE-Core rev: 477ede7472db0bacd5daacb96e97f849d1be84ee)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After the recent locale changes there were warnings about many unpackaged files.
Fix this by directing libc-package.bbclass to operate directly on the files in
the sysroot and adding packaging for .debug files in this package.
Also sync up the eglibc and glibc versions of this code more closely.
(From OE-Core rev: 1a3a76e4652b95b640c287cb3672ccc146b023ca)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch eliminates the warning "not been run using the bitbake wrapper..."
when we run bitbake-layers.
(From OE-Core rev: 547f4ea9ac4be2e656f846e658df99b0ecff7a29)
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch will check whether the recipe is an extened recipe, if yes, some informaiton couldn't be got, so collect those information(like maintainer information or lastcheckversion) from non bbextended recipe.
(From OE-Core rev: 8e8648b26fd4d66db2d7c484ad56dfb300e2070a)
Signed-off-by: Mei Lei <lei.mei@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently the only way to get anything to build is to set USE_NLS="yes"
for glib-2.0. We might as well do this in the recipe by default for
now and simpllify the code.
The magic handling of USE_NLS_<recipename> is also removed since this
can be done in the form USE_NLS_pn-<recipename> using overrides these
days.
(From OE-Core rev: 2e3727b05ae58aaf1eed88967c13cae085e7a702)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Replace the hard coded libdir for locale generating to meet the multilib
requirement.
(From OE-Core rev: 1609fd2b6582667106a6f065cfa031f68cee7552)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
*libc's do_package will cost a lot of time due to the locale handing,
which may delay the other recipe's do_package task and affect the build
performance.
This commit moves locale handling into a separate recipe *libc-locale.
[RP: Add fixup with recent eglibc commit conflict for FILES_pn-dbg and PACKAGES]
(From OE-Core rev: c6d3242f7642f537b02870bb4eb650f0e2094b85)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The old versions of cvs and iptables may meet compile error under some architecture
- cvs 1.11.23 fails on x86-64 host and iptables 1.4.9 fails on arm host. Update them
to latest version could solve these build error.
Meanwhile, 240s timeout is set for sudoku becasue 120s is not enough to finish
compile.
Signed-off-by Jiajun Xu <jiajun.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
During native recipe processing we want to intercept any calls to chown
and do nothing. This prevents errors and allows the same recipes to be
used for both native and target recipes.
(From OE-Core rev: 7fd8287d3320231db83c36d09f2b841e520fcfe9)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
do_install was putting files directly into the sysroot which means sstate
had no knowledge of them. This meant they didn't get cleaned along with the
other files from the task amongst other issues.
This patch puts them in ${D} where they were supposted to be.
Tested-by: Tom Rini <tom_rini@mentor.com>
(From OE-Core rev: 983197c10104bbbcb6cfd6e923a3bf11152b3001)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There were some odd instances where the PKGV could not be loaded in the old
way. Change to verify that PKGV exists before attempting to retrieve the
value from the key.
(From OE-Core rev: c2ce3573fb2816cd2023a56b364fae4c0f4455ae)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Without this, images will fail now that kernel-abiversion is back.
(From OE-Core rev: 3dbe49b13e7513e449f13515591d02a7d2f560ae)
Signed-off-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This fixes external module recipes that need $KERNEL_VERSION. It got removed by
commit a9d41062e24a6b99661b3a5256f369b557433607
Author: Darren Hart <dvhart@linux.intel.com>
Date: Tue Mar 8 17:09:10 2011 -0800
kernel/bbclass: rework kernel and module classes to allow for building out-of-tree modules
seemingly as an oversight.
(From OE-Core rev: 6978774595f892e6a819ee64c932d475c67a6a0f)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The perf component is built with the kernel, so ensure that it gets the
debug information associated with it.
Also bump the PR in the linux-yocto-* to ensure they get rebuilt.
(From OE-Core rev: 17f76de8ab8b7c9e62c1149017a3fa78866d9300)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We clearly state now if we are:
* Skipping an empty package
* Creating a (full) package
* Creating an empty package
(From OE-Core rev: 3db9d865ef7d65e3712eb7f9a659bb31cb3cb75e)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add support for using SOC_FAMILY in the COMPATIBLE_MACHINES
setting for a recipe.
* This will allow recipes to work for entire families of
devices without having to maintain/update the compatible
devices as new devices are added into a family
Based on 07076390358f211bd96779bec2d6eb5eaa0ad699 by Chase Maupin <chase.maupin@ti.com>
(From OE-Core rev: dc303cbf25cf48aa98ff1979882820dd25f8cd9d)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a verbatim copy of the corresponding class from oe master.
(From OE-Core rev: fa32b087888bab399a5cd1e3f16213575fe396e2)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
OVERDIDES is the key variable that needs to be set prior to data finalisation.
The other variables should be manipulated after finalisation so any
DEPENDS_prepend and _append are accounted for. This patch ensures this is
the case.
The PACKAGES maniupulations are not enabled at this time as they
don't function 100% correctly yet.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is particularly important since the file doens't use BBCLASSEXTEND
and PN is therefore misleading
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This massively cleans up the dependency handling in the two classes
when interacting with BBCLASSEXTEND.
This change has a dependency on the bitbake override handling change
and also the existence of the RecipePreFinalise event.
(From OE-Core rev: f183c7cfe377fa6ed2777605c3590a9dda2060df)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Instruct RPM to use the on-disk permissions, owners, groups,
and directory permissions, instead of defaulting to root:root
Code changes suggested by Mark Hatle.
(From OE-Core rev: a6464f9484f56f596e3215184ad56ac6769ebb0c)
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sometimes it's usefull to remove only sstate cache and keep downloaded sources for rebuild
(From OE-Core rev: e071bc9982fc3ace3a32a990905884929392c4b6)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If not overridden it gets the value which is for target recipes
usually defined in machine tune files
(From OE-Core rev: 7efd372eead4185e8b763c6f7ee1943485f7d84d)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
To support translation, qmake based projects usually call lrelease and
lupdate however OE changes the binary names so this needs some mangle
to work out of box.
(From OE-Core rev: 2a52f806f3789f717219651b97dc64fec3881f7f)
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Acked-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We don't package /etc/rpc and do_install() makes some effort to remove
that file so as to avoid the "installed but not shipped" diagnostic. But,
due to a typo in the command line, the file wasn't actually being removed
and the diagnostic continued to be issued.
(From OE-Core rev: 5b09d5dbac044277b5f1145057d1fc716ec35b9a)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If all the postinsts were successfully run in offline mode, and
package-management hasn't been requested as an IMAGE_FEATURE, the opkg
metadata is now redundant and can safely be deleted.
Also, the update-rc.d and base-passwd packages can be removed since
they will serve no further purpose in this situation.
If some packages are still unconfigured at this point then we need to
keep their metadata around so that either opkg or the awk script can
configure the packages at boot time. In theory it would be possible to
strip out the data for packages that have already been configured, but
right now we just hold on to the whole status file in that situation.
(From OE-Core rev: 87780fc09b066525e47d0f50ee5497db54d304cd)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a backport of 952e5e2b7a5c1deefc939594d40b81a71fb16a54 from oe master.
Without this the script mangling goes very wrong if ${prefix}="". There
isn't really any way to fix this in the completely general case, but
this patch does work with the two cases I tested (freetype and
gpg-error) which were unusable previously.
(From OE-Core rev: 854b15bf631452150d1979dfd8286b306f108688)
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Having a generic word like "all" as an override is dangerous as this is an override
and can cause issues for function names like "sysroot_stage_all". This patch changes
it to "allarch" to help avoid this kind of problem. The field is only used in the
name of directories anyway.
(From OE-Core rev: 5d7d4e1ed9bedf2b6510796d76ea8f94739b9de2)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The existing PACKAGE_ARCH = "all" mechanism of sharing packages is problematic
with sstate since there are a variety of variables which have target specific
values and the sstate package therefore correctly changes signature depending
on the MACHINE setting.
This patch creates a new "allarch" class which sets:
PACKAGE_ARCH = "all"
(as per the existing convention)
INHIBIT_DEFAULT_DEPS = "1"
(since its not target specific and therefore can't depend on the cross
compiler or target libc)
TARGET_ARCH = "all"
TARGET_OS = "linux"
TARGET_CC_ARCH = "none"
(since these variables shouldn't change between the different packages and
target compiler flags shouldn't be getting used)
PACKAGE_EXTRA_ARCHS = ""
(since we shouldn't be depending on any architecture specific package architectures)
Not all PACKAGE_ARCH = "all" recipes can use this class since some run configure
checks on the compiler. This means they have target specific components and therefore
the "all" classification is incorrect.
(From OE-Core rev: 26e5e5feb695864b11e47e24017e254c28f14494)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Value of USE_PR_SERV is either "1" or "0" looking at
settings in bitbake.conf
USE_PR_SERV = "${@[1,0][(bb.data.getVar('PRSERV_HOST',d,1) is None) or (bb.data.getVar('PRSERV_PORT',d,1) is None)]}"
So we compare the strings
(From OE-Core rev: 5f6179324ac3956ad87123005bfcab4e8f30e67b)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This fixes two bugs. When populate_lic was hitting | it was going
into an infinite recursion of the node.
Also, some LICENSE fields may start with "(". We want to avoid
invalid python syntax here, so we strip out the whitespace.
(From OE-Core rev: 160621bd9679201e352cc80b22aa2f6e25827576)
Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a first pass at sane license parsing, using python
abstract syntax trees.
A few notes on this since ast is not generally used. I massage
the LICENSE field to be more pythonesque and then create an ast.
I then dump the ast and using a LicenseVisitor class, recurse
through the tree, looking for licenses. I then copy and link.
It's cleaner, allows for easier addition of logic and while it
takes slightly more CPU, it's also slightly faster in initial
small scale tests.
It doesn't recognize the '+' or '*' modifiers to the licenses yet
nor does it know what to do with bitors (|), since I'm not even
sure what to do with them.
(From OE-Core rev: 2a90a3a41978a5470962b315e007351b8e80820c)
Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Use PKGE/PKGV/PKGR to build various package feed in tasks of pacakge_write_xxx.
(From OE-Core rev: c2872315905fcdf6e4bf11fe96e5ca62af3475f8)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
1. Added package_get_auto_pr to PACKAGEFUNCS to get the auto
incremented value(PRAUTO) from remote PR service.
2. use PKGV/PKGR for pkgdata which will be used by package_write_xxx.
3. Added supporting functions in prserv.bbclass.
(From OE-Core rev: b1f6120c04731d3d66f322ce550b0d223c118dab)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixes [YOCTO 1102]
Path variables are typically : delimited. White space is allowed in paths, so
is not a good choice for separating paths. Currently utils.bbclass performs the
following:
extrapaths = (bb.data.getVar("FILESEXTRAPATHS", d, True) or "").split()
This splits FILESEXTRAPATHS on whitespace. It later splits overrides on : and
reassembles them all together as : delimited.
There is only one user of FILESEXTRAPATHS in oe-core (qt4-tools-native, which
uses : anyway) and none in oe.
Change the split() in utils.bbclass to split on : instead of whitespace. When
splitting on a defined string (":") we must be careful to handle the empty
string case which returns [''] instead of [].
Tested building qt4-tools-native and core-image-minimal for surgarbay from
meta-intel with a couple extra layers with FILESEXTRAPATHS modifications added.
(From OE-Core rev: a6a892f520d22ef8020c98528d38ee08f6cda034)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* this makes fix for [YOCTO #1074] in bitbake 139b8a625818225c358a1b8363518d7ed6913188
much more usefull for people using rm_work
(From OE-Core rev: 36386f3b8cadf283954f5c6db6ac6ee463c395de)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #886]
This address 2 needs after the IMAGE_ROOTFS_SIZE is cleaned up, by
removing the _ext2/3 overrides it allows for a cleaner override
using IMAGE_ROOTFS_SIZE to create a large rootfs, or by setting the
IMAGE_ROOTFS_EXTRA_SPACE, will allow for extra space allocated in Kilobytes
above the base size (determined by du of the rootfs * IMAGE_OVERHEAD_FACTOR,
default of 1.3).
(From OE-Core rev: 367934ada7c081ba3fc95f02dc14c7d6f97bfccb)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This basic cleanup removes the _ext2/3 overrides from places they
no longer belong since they did not allow further overrides. In doing
this the core-image-minimal* recipes can now set a reasonably small
rootfs so that it's a realistic size for minimal.
The new default for minimal is 8M and will be adujsted upward by the
IMAGE_OVERHEAD_FACTOR (default of 1.3).
This also fixes the ROOTFS_SIZE usage in the IMAGE_CMD_<fstype> code
(From OE-Core rev: d3f6e1e6106ab539e73c19037915b2e4a5f2efa9)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This includes some utility functions for dealing with groups of packages
defined in the metadata. Metadata syntax:
PACKAGE_GROUP_<group> = "<list of packages>"
If the packages in the group are optional:
PACKAGE_GROUP_<group>[optional] = "1"
(From OE-Core rev: 4df212e9c2a1dd7c80d180fd13b67e9f2799d3e1)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This can be useful if we need the imports from another config parsed event
handler, and can't rely upon the base one running before that one.
(From OE-Core rev: dc579ce4dcf9a3743ced9eae4fe510a079961faf)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The current mechanism makes it easier for classes to add new oe modules to be
automatically imported, and thereby made available to python snippets (${@}).
(From OE-Core rev: 0c560a2a7954412f714db86b1aaadb7acbe72d1b)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This implementation consists of two components:
- Type creation python modules, whose job it is to construct objects of the
defined type for a given variable in the metadata
- typecheck.bbclass, which iterates over all configuration variables with a
type defined and uses oe.types to check the validity of the values
This gives us a few benefits:
- Automatic sanity checking of all configuration variables with a defined type
- Avoid duplicating the "how do I make use of the value of this variable"
logic between its users. For variables like PATH, this is simply a split(),
for boolean variables, the duplication can result in confusing, or even
mismatched semantics (is this 0/1, empty/nonempty, what?)
- Make it easier to create a configuration UI, as the type information could
be used to provide a better interface than a text edit box (e.g checkbox for
'boolean', dropdown for 'choice')
This functionality is entirely opt-in right now. To enable the configuration
variable type checking, simply INHERIT += "typecheck". Example of a failing
type check:
BAZ = "foo"
BAZ[type] = "boolean"
$ bitbake -p
FATAL: BAZ: Invalid boolean value 'foo'
$
Examples of leveraging oe.types in a python snippet:
PACKAGES[type] = "list"
python () {
import oe.data
for pkg in oe.data.typed_value("PACKAGES", d):
bb.note("package: %s" % pkg)
}
LIBTOOL_HAS_SYSROOT = "yes"
LIBTOOL_HAS_SYSROOT[type] = "boolean"
python () {
import oe.data
assert(oe.data.typed_value("LIBTOOL_HAS_SYSROOT", d) == True)
}
(From OE-Core rev: a04ce490e933fc7534db33f635b025c25329c564)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
- KERNEL_VERSION may contain characters unsuitable for package
names, e.g. underscores. Use legitimize_package_name to replace
those characters.
(From OE-Core rev: 8c6bf9f6775fc5aaa8bc2c77924c95a00f1c1890)
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>