Some packages like grub have already stripped binaries e.g.
ERROR: QA Issue: File '/boot/grub/kernel.img' from grub was already
stripped, this will prevent future debugging!
ERROR: QA run found fatal errors. Please consider fixing them.
We would like to have a possibility to skip it using something like
INSANE_SKIP_${PN} = "already-stripped"
This adds the logic to do so
it acts at PN level and not at package level. so something like
INSANE_SKIP_${PN}-misc = "already-stripped" wont work.
(From OE-Core rev: 765982f4c050d9cd3eb608d630312da482c737c7)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some machines provide several possible configurations and until now
there was no easy way for user to override the default setting.
This class provides a system similar to PACKAGECONFIG but for
U-Boot. The format is:
UBOOT_CONFIG ??= <default>
UBOOT_CONFIG[foo] = "config,images"
There are two possible parameters:
- config: it is used to set UBOOT_MACHINE
- images: it is used to append onto IMAGE_FSTYPES
Below there's an usage example:
,----[ i.MX6Q SABRE AUTO based example ]
| UBOOT_CONFIG ??= "sd"
| UBOOT_CONFIG[sd] = "mx6qsabreauto_config,sdcard"
| UBOOT_CONFIG[eimnor] = "mx6qsabreauto_eimnor_config"
| UBOOT_CONFIG[nand] = "mx6qsabreauto_nand_config,ubifs"
| UBOOT_CONFIG[spinor] = "mx6qsabreauto_spinor_config"
`----
User can, from local.conf or environment, use UBOOT_CONFIG=nand and
override the default setting, as:
,----[ Override example from command line ]
| MACHINE=imx6qsabreauto UBOOT_CONFIG=nand bitbake core-image-base
`----
(From OE-Core rev: 5dba521611d644357cf0a98d2e30dcf41777c6ef)
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
While non-git kernel repos are not the preferred format for a kernel upstream,
they are supported. Depending on the creator of the archive the expanded
source directory name varies. If the recipe for the kernel doesn't properly
set S to the right value, a cryptic git error message is produced. We can
detect the situation and offer some advice on how to fix the issue.
A second check is also added in this commit for archive based kernel repos
which won't have a SRCREV to validate. If we have no SRCREV or SRCREV is
INVALID, we can exit the branch validation step immediately. This saves yet
another cryptic git error message and simplifies a custom tgz based recipe.
(From OE-Core rev: 0ebf67e8b4f7aaf259d7abac4af645070d846ec8)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The devshell anonymous python fragment overwrites variables in the
datastore with their expanded versions. If this runs before the code
in allarch.bbclass which changes TARGET_OS, we can end up with different
directories in the fakeroot environment variables, some expanded with
the original TARGET_OS value.
The devshell code only needs to run before the task itself so we change
to trigger it to run at task execution time only using a flag.
[YOCTO #4795]
(From OE-Core rev: 56baf177cdf074929a090cc66a8b89d346a5d79c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When the code was refactored to address review comments, the wrong version
was sent to the community. Replace the $1 with ${target_rootfs}
Fix identified by: Yue Tao <yue.tao@windriver.com>
(From OE-Core rev: a04f4fe8db425f0ea87a67b5c72d61816b8d53e2)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If there is a package A (TUNE_PKGARCH) which is depended upon by B which
is MACHINE_ARCH and you build B for machine X, then Y, the user isn't
present in the sysroot for machine Y since the useradd code is never
triggered.
The change ensures the code does get triggered and the user is present.
[YOCTO 4739]
(From OE-Core rev: 5871337da49f8cd1eaf53f7cd0aacc026dc7bcdb)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch aims to fix the following two cases for the INITRAMFS generation.
1) Allow an image recipe to specify a paired INITRAMFS recipe such
as core-image-minimal-initramfs. This allows building a base
image which always generates the needed initramfs image in one step
2) Allow building a single binary which contains a kernel and
the initramfs.
A key requirement of the initramfs is to be able to add kernel
modules. The current implementation of the INITRAMFS_IMAGE variable
has a circular dependency when using kernel modules in the initramfs
image.bb file that is caused by kernel.bbclass trying to build the
initramfs before the kernel's do_install rule.
The solution for this problem is to have the kernel's
do_bundle_initramfs_image task depend on the do_rootfs from the
INITRAMFS_IMAGE and not some intermediate point. The image.bbclass
will also sets up dependencies to make the initramfs creation task run
last.
The code to bundle the kernel and initramfs together has been added.
At a high level, all it is doing is invoking a second compilation of
the kernel but changing the value of CONFIG_INITRAMFS_SOURCE to point
to the generated initramfs from the image recipe.
[YOCTO #4072]
(From OE-Core rev: 609d5a9ab9e58bb1c2bcc2145399fbc8b701b85a)
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Acked-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add a new build system class for waf.
(From OE-Core rev: 2b148b9e73f05af33ed1437358fa5322cf364651)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
shlibs dependency calculations on darwin we not functioning correctly, we
need to process the filename without the complete path. If we don't,
"." characters in the path cause problems.
(From OE-Core rev: 07e697d651178a84007123181fca38e4d98ae0e9)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When using the recently fixed out of build directory bitbake invocations, I was
puzzled why bitbake seemed to be pausing. The reason was due to running the sanity
tests each and every time. This was due to current working directory assumptions
within the sanity test code. Fix this to use TOPDIR.
(From OE-Core rev: 1cdc1b37b840bda961258cf2bfb2f75331bdb310)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
These have been deprecated for a long time, convert the remaining
references to the correct modules and prepare for removal of the
compatibility support from bitbake.
(From OE-Core rev: 6a39835af2b2b3c7797fe05479341d71a3f3aaf6)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The former is provided by util-linux and the latter is
now to be removed for meta-filesystems.
This allows to generate cramfs images whithout extra layers.
(From OE-Core rev: 451546a9d2f675ac331f72f4e66317685d931aba)
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It's not necessary to specify the protocol parameter when it's the
default protocol for the fetcher, e.g. the default protocol for
git fetcher it git, "protocol=git" isn't needed.
(From OE-Core rev: a2bab241c64428d5109c3c5ac5de4463fbad70c5)
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
A layer can add tests in lib/oeqa/runtime (provided it extends BBPATH as
normal) and enable them with TEST_SUITES_append = " testname". Test
module names shouldn't collide though.
(From OE-Core rev: e1e347a2d509303e1c566450b0f2b485d3d6629f)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
While I can't reproduce on local builds, sometimes images fail
to boot on AB (which runs many builds at once). Assuming
there isn't something weird going on, let's just give it more time.
(From OE-Core rev: db38e10701cd2392a57e559573b715fd6daf6e2a)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This can be used by packages written in vala.
It is required by the Midori web-browser.
(From OE-Core rev: 807285c751862aaa775db5a13293007bfb3c29df)
Signed-off-by: Mihai Prica <mihai.prica@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
SPDX integrates real-time license scanning, generates
SPDX standard output and license verification
information during the OE-Core build process. The
existing module includes scanning patched packages
and creating package and file level SPDX documents.
(From OE-Core rev: 7a37cc81fb95d56b5ac5e5ca22a1900e45717911)
Signed-off-by: liangcao <liangcao@unomaha.edu>
Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some new tests were added, safe to have them in the defaults
for sato-sdk and sato. Not all of the new tests are here though,
either because they aren't applicable to default images or take too long.
(like build iptables/cvs/sudoky ones, they can be enabled
in local.conf and a special target on AB setups.). Also reorder them a bit.
(From OE-Core rev: caa18a99ec002e4e87e32cae8a2d28bb0e32c5a6)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* The benefits:
- Really support ext4
- Support the sparse file (we lost the sparse file in the image in the
past, the sparse file became into the common file)
- Fix the error reported by fsck: (ext2/ext3)
Inode 1025, i_size is 16384, should be 17408.
- Have a uniform code for ext2/3/4 generation
* Comments from Darren Hart:
Basically, genext2fs doesn't support creating ext4 filesystems. It
creates, as I understand it, an ext2 filesystem, then adds a journal,
and sets some bits. It can't support the newer features like extents. So
what we end up with is a bit of a hack for a filesystem.
The ext tools (e2fsprogs) unfortunately don't provide an integrated
solution for generating prepopulated filesystem images as many other
mkfs* tools do. One thing missing was symlink support in libext2fs. I
added that support and demonstrated a script which uses the e2fsprogs
debugfs tool that can populate the newly formatted filesystem from a
directory and without root privileges.
[YOCTO #3848]
(From OE-Core rev: 40c3e18f43b2f074cec97d21aeb8d21f26dd5048)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is a good chance we might want to support a bitbake operator
"_remove" which works in a similar way to _append and _prepend. As
such, we can't use those keywords in function or variable names.
(From OE-Core rev: 491fde8cd3fd493f9fec2fd434fe1be547f66148)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Updating the kern-tools SRCREV to pick up the following fixes:
60a894e kgit-s2q: add proper commit ID handling for mixed am/apply usage
3b08257 kgit-s2q: delete pruning of path support.
c5868b4 kgit-s2q: Restore implicit exit status to "git apply" section
1bd00b9 kgit-scc: mask warnings from cleanup phase 5
bb75299 kgit-s2q: fix commit warp when running "git am --abort"
ef9571b kgit-scc: cleanup git rebase-apply dir
fdb7d21 kgit-scc: ensure treegen stops if a meta series fails
008987b config: add kconfig cleaning options
69ff569 kgit-s2q: strip blank lines and comments
e7b4540 kgit-init: disable garbage collection on a new tree
417eaed kgit-s2q: delete old LTSI patch dir finding code
21f2200 kgit-scc: better error checking on resume
ad5084c kern-tools: use .meta as meta data container
1deb5d8 kgit-meta: don't push patches without a series file
eb431a1 kgit-s2q: aid patch reject resolution via helper scripts
f859c40 kgit-s2q: only use patch annotations when explicitly asked
333ae18 kgit: speed patch application by batching patches
bf6991d kgit: teach tools about non-default meta dirs
bcfc712 kgit-s2q: usability improvements
cb28803 kgit-s2q: fix patch prefix stripping.
37f40e1 kgit-s2q: warn/exit with error if patch not in series
f4704d2 kgit-s2q: consistent rm usage
e11819c kgit-s2q: standardize on use of git mailinfo
36a5eda kgit: remove guilt dependency
c461a4f spp/scc: export mark commands to meta-series
5311162 updateme: ensure that generated features are only used once
4f7a263 kgit-checkpoint: clear .gitignore for meta branch
21ee6f2 updateme: enforce a matching machine
b08749d kgit-scc: remove -meta files after consruction
These are bug fixes, usability changes as well as the removal of the
guilt dependency. During the uprev of the guilt package, the amount of
circumvention of the typical guilt workflow and checks meant that using
it as a series -> branch manager was no longer appropriate. As a result
a new tools kgit-s2q (series 2 queue) was created based on git-quiltimport,
git am, and the LTSI tree generation scripts.
The result is better series to branch validation, faster application and
a simpler management model. This tool is backwards compatible with any
tree previously constructed with guilt. We are now "guilt free"
(From OE-Core rev: 983bff587b60fdd0244ad00f238df5ed50cc1e1a)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
ant reported on irc that the sstate absolute to relative symlink creation
code wasn't working in klibc. He was correct although the level of breakage is
rather surprising since it only worked for one level of symlink (usr/include) with
everything else being broken.
The reason is probably that nothing really uses absolute paths, we use relative
paths where at all possible already. Nothing in the target sysroot should use
absolute paths for a start. In this regard, the klibc-dev package is broken and
needs fixing. It will currently break when building for one machine, then switching
to another of the same TUNE_PKGARCH and installing from sstate but that is a
separate issue.
This patch fixes the symlink creation code by firstly passing in the correct
value we need (where the symlink will end up) and seccondly, actually using it.
I've also tweaked the debug message to contain appropriate information and got
right of the double "//" value the existing code created in favour of the form
'./..' which looks neater.
(From OE-Core rev: 9b05c65450526522d7358d0c0901b594de546748)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
On darwin, install_name_tool can be used to relocate binaries/libraries. This
adds support for adjusting them with relative paths rather than hardcoded ones.
The Linux code is factored out into a function but is otherwise unchanged.
(From OE-Core rev: ed5ace3437eb0f751172e6b93399639c94b89e59)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Hardcoding -nativesdk as the sdk package architecture is inflexible. We may have
multiple different target OS and we need a way to be able to separate them. Turning
this into a configurable value allows the flexibility we need to build different
SDKMACHINEs with different OS targets.
The commit should have no behaviour change, just makes things more configurable.
(From OE-Core rev: a2110e86b98d646e136de9ec6b8e668079b0d4f4)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This reverts commit f93ddea31f.
We never run nativesdk binaries so it doesn't make sense to use the relocatable
class. The chrpath calls at packaging time will ensure the binaries are relocated
in the final packages. The binaries in the sysroot are never used.
(From OE-Core rev: 9f19d1b90c4fa04439b6267bda0484fd0b350373)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The gettext handling of USE_NLS has become a bit tricky to understand, or
alter from the SDK context. This patch introduces a SDKUSE_NLS which can
be set to configure a given SDK/ADT to use NLS or not. This is independent
of the target system NLS usage.
The code in gettext.bbclass is therefore simplified and the classes
themselves now set USE_NLS to appropriate values. No NLS is used
for native, cross and crosssdk since it is never used there and
would just increase build time.
(From OE-Core rev: fe634d47449899f7424adb77ff5bc7ddf8a07a47)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It can be useful to override or append options to the SDK tarball creation command
so add a variable to allow this.
(From OE-Core rev: ae86a46c1b255e7c2833eb6d48ed46eba440e95a)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
${exec_prefix_nativesdk} doesn't exist so use prefix_nativesdk instead.
This resolves issues for code which attepts to use target_exec_prefix.
(From OE-Core rev: cd1ac8257ed2701cbe3802870183e8e1cd3b0418)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When copying the sources for the debug source package we use cpio -Ll
which means to copy files as hardlinks and to dereference symlinks.
It appears there is a bug in cpio since -Ll will copy symlinks and
not dereference them. We therefore do a second pass over copied symlinks
resolving them into files. Ideally we would copy these as hardlinks as well
however it doesn't seem worth the extra code and effort for what amounts
to a corner case for a minor space improvement.
This means that the -dbg packages no longer contain broken symlinks.
[YOCTO #5020]
(From OE-Core rev: 2ca2c4747f645a0d478c2171fff4c65752188285)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This add support to list required/confliting distro features for a
recipe; this avoids user mistake when building recipes/images which
would not work depending on DISTRO_FEATURES option set.
Adding:
,----[ Use example ]
| inherit distro_features_check
|
| REQUIRED_DISTRO_FEATURES = "x11"
| CONFLICT_DISTRO_FEATURES_mx6 = "wayland"
`----
In the image recipe allow us to make clear to user that this image
needs X11 and /cannot/ be build with Wayland support in i.MX6
platforms, for example.
(From OE-Core rev: a7519be6a23869ebafbf712370dab86ab92f68a5)
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This uses the new --add-exclude arguments in opkg-cl, to list the excluded
packages.
If an excluded package is needed for the install to resolve,
an error will be generated. Recommended packages will not
generate an error.
(From OE-Core rev: 6d7f5581bbfaf174edb77d92846e720e8057481c)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add support for NO_RECOMMENDATIONS and PACKAGE_EXCLUDE. Also add a
warning that ensures users know that BAD_RECOMMENDATIONS support is
not implemented in the debian package/rootfs classes.
(From OE-Core rev: 42b115b6d65c8205acb77b96db481f3e5172266b)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Previous debian APT configuration was using the sysroot directory.
This not only polluted the sysroot, but violates the expectation that
the sysroot is not modified by the rootfs installation.
(From OE-Core rev: 2db14eaa0fcc080bc20fa9da985ffc05c3b21e2a)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add NO_RECOMMENDATIONS support. A way to disable all recommended
packages from being installed. This will help shrink the size of
the resulting filesystem.
Add documentation on NO_RECOMMENDATIONS and BAD_RECOMMENDATIONS.
Note, using NO_RECOMMENDATIONS has side effects such that kernel-modules may
not have been installed. A user will need to manually add to their image
any kernel-modules required to be on the image for functionality.
(From OE-Core rev: 0341bfa886ea851f5a394051545b4e624d8003dd)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Using the new smart exclude mechanism an error will be generated in the
excluded package is required for the image to be generated.
(From OE-Core rev: 238c46c03d0d9c35523c78b94bfebb57904bac5a)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add the foundation for the PACKAGE_EXCLUDE support.
As part of this work, it was noticed that the PACKAGE_INSTALL and
PACKAGE_INSTALL_ATTEMPTONLY were still using he 'normal' version for
dependencies. This should no longer be necessary as of the change in the way
the complementary package groups (dev, dbg, ptest and others) are defined.
By making this change the dependency tree is more correct than before, and
gives the ability for manipulating PACKAGE_INSTALL and
PACKAGE_INSTALL_ATTEMPTONLY, while adjusting the dependencies at the same
time.
Warning messages will be generated if the user is trying to exclude a
package that was previously in the PACKAGE_INSTALL or
PACKAGE_INSTALL_ATTEMPTONLY variables.
(See additional commits for package manager specific support.)
Add documentation on PACKAGE_EXCLUDE and related variables.
(From OE-Core rev: 208d4d5ef7c5ead35dc27b7808f92ed377377aa4)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The preinst scripts are calling bbnote, bbwarn and bbfatal functions,
but these functions are not written to the preinst scripts.
This patch writes these missing functions to the preinst scripts to
avoid the 'not found' errors.
(From OE-Core rev: ed45f00ef76d189611cda2cb922fa7eb8f86d9cc)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We were mangling names here to avoid characters that are invalid for dot
node names, but if you just quote all names that isn't necessary and we
retain the original naming, allowing easy searching of the graph files.
(From OE-Core rev: 99efdad886aa5063a68912846c00a46ba9b15536)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This makes it easier to obtain the difference from the last three
builds particularly where a single build might account for more than one
commit in the buildhistory git repository (e.g. if package and image
changes occurred).
(From OE-Core rev: 9512f3787295d662678c2943da31197c8df39e99)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Record the bitbake command line in the commit message as a further
context indication.
(From OE-Core rev: 34fb802b2170f0fe208e54e7a4d18f663db72f90)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* usually it's more important to know how much space will each
package take on target device then size of compressed package
* example for libewebkit0 with 4 different architectures, interesting
that om_gta02 .ipk is bigger but it's smaller when installed
before:
MACHINE DEFAULTTUNE SIZE (.ipk file)
om_gta04 cortexa8t-neon 15996 KiB libewebkit0
qemux86_64 x86-64 16992 KiB libewebkit0
spitz xscale 16148 KiB libewebkit0
om_gta02 arm920t 16260 KiB libewebkit0
after:
MACHINE DEFAULTTUNE SIZE (installed)
om_gta04 cortexa8t-neon 60544 KiB libewebkit0
qemux86_64 x86-64 63720 KiB libewebkit0
spitz xscale 60588 KiB libewebkit0
om_gta02 arm920t 56268 KiB libewebkit0
(From OE-Core rev: 85e4a77138381a6086d5ebd3a28cb5a94bc26a19)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Since this variable is no longer used, we don't need to set a default
for it.
(From OE-Core rev: a5230835c539781b5b035dc6d0be3cac5a5bd305)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If the rootfs is read-only and the ssh keys are not available at system
start-up, the init script will generate ssh keys into /etc/ssh, thus
causing a 'read-only file system' error.
In order for Yocto based image to work correctly for read-only rootfs,
we use the following logic for openssh.
If the rootfs is read-only and there are pre-generated keys under /etc/ssh,
we use the pre-generated keys. Note the pre-generated keys are mainly for
debugging or development purpose.
If the rootfs is read-only and there are no pre-generated keys under
/etc/ssh, we use /var/run/ssh as the location for ssh keys. That is, at
system boot-up, the generated ssh keys will put into /var/run/ssh.
[YOCTO #4887]
(From OE-Core rev: 2ed44745024f04aa4e00ddba3009153c6b47c8e9)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Now that the makedevs supports using user/group names in the devcie
table files, and it uses passwd and group files under the rootfs which
is provided by the base-passwd package, we should let package installation
finish first, so that makedevs can get a correct mapping from user/group
names to uid/gid.
The check for existence of ${IMAGE_ROOTFS}/dev is removed. This is because
do_rootfs doesn't have 'nostamp' flag any more, so the do_rootfs task will
not be rerun for every build. Checking for the existence of ${IMAGE_ROOTFS}/dev
is not necessary any more. Besides, as base-files package also installs the
/dev directory, this checking does not serve as a good criteria.
[YOCTO #1159]
(From OE-Core rev: d073ca77ba886c7912abd3ec0640881c00aea3bb)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
base.bbclass had code which handled the PNBLACKLIST in case of
multilib use. This is better to be done in the blacklist.bbclass so it
has all logic in a single place.
(From OE-Core rev: 04f0fefeccc1e7e3af8a1f741350492ae3f171fc)
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixes [YOCTO #4991]
The kernel image is installed as part of the kernel-image package, but
the symlink creation/removal via alternatives is being done in
pkg_post(inst|rm)_kernel-base.
Move the postinst alternatives logic into the kernel-image functions.
(From OE-Core rev: 35f538b117e3387354d2dab1f22c3de28ab1322b)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[YOCTO #4993]
Move the runtime_mapping_rename into a prefunc for the do_rootfs function.
Otherwise doing it in the python section could occur BEFORE the multilib
classes renaming.
If the package 'b' is a kernel module, then lib32-b and b should both
point to the same package. The runtime_mapping code will do this
automatically.
Before if you ran: bitbake lib32-<image>
It may do:
start PACKAGE_INSTALL (a b c)
remap (a b c)
MULTILIB naming (lib32-a lib32-b lib32-c)
What we want is:
start PACKAGE_INSTALL (a b c)
MULTILIB naming (lib32-a lib32-b lib32-c)
remap (lib32-a b lib32-c)
(From OE-Core rev: 836662c9a9c175521dbcd29cdfc0a7c144d8770f)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The full name for the log is confusing when there are multiple files.
Also move the ssh log path stuff where it's needed.
(From OE-Core rev: 1dbef61a0776ec6c9ac9209442bb4c346e706d7d)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Multiple do_fetch[prefunc] can happen at the same time and
if not os.path.exists(pkghistdir):
os.makedirs(pkghistdir)
isn't safe
* Use bb.utils.mkdirhier which doesn't raise error when directory exists
(From OE-Core rev: 9aac194d7db79129dcbed29cfb89c57dccf33729)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* this way it's easier for distro to select if such issue should be
error, warning or ignored and also it gets recorded in qa.log
(From OE-Core rev: 44624853de8c88abdcae2ccd0902b390ff546d4c)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fix gconv build failure on ARM big-endian architecture:
ERROR: locale_arch_options not found for target_arch=armeb
ERROR: Function failed: unknown arch:armeb for locale_arch_options
(From OE-Core rev: a714cdf431635c4a344d3a135a71061e5629eed8)
Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If there's been a lot of changes the commit to buildhistory can take a
significant amount of time, so print a note so there's some indication of
progress.
(From OE-Core rev: ccd911ba8887f5c9a72d5178617c2a3ee73264ff)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some users have been found to have an unnamed third-party piece of
software installed which sets chmod, chown and mknod as suid root as
part of its installation process. This interferes with the operation of
pseudo and can result in files really being owned by root within the
build output, and therefore breaks the build, apart from being a
security issue. Check for this and bail out if it is found.
Reported-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
(From OE-Core rev: 08d61529f3c7a48ec82e1f8c9c28c7b2e5238934)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The PRSPV variable is used for the packages that have different
representation for a same upstream and local version (e.g 2.0 vs 20).
In this case, the system is using PRSPV instead of PV when comparing
the local and upstream versions.
The packages that are using this modification are the following:
* zip
* unzip
* docbook-sgml-dtd-3.1-native
* docbook-sgml-dtd-4.1-native
(From OE-Core rev: 1d709d61da99f0e8a897f40a9d2a14bfaa1ee77e)
Signed-off-by: Emilia Ciobanu <emilia.maria.silvia.ciobanu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If systemd is supported DISTRO_FEATURE and sysvinit is not and also if
systemd_unitdir contains anything then no need to keep init.d scripts
for sysvinit compatibility.
(From OE-Core rev: 823c90ad344ca2205f3055e2dcae08c6616f29b7)
Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Use weaker assignment for CCACHE_DIR to allow users to override it
if desired.
(From OE-Core rev: 61e864e2d020c820cf90807b48babee3b24f9446)
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add support for the BAD_RECOMMENDATIONS variable that can be used to
prevent specific packages from being installed via an RRECOMMENDS
relationship when using the RPM backend. (Previously this
functionality was only available when using ipk packaging.)
In the process this moves the defaulting of BAD_RECOMMENDATIONS (as
empty) to bitbake.conf since it is no longer specific to the ipk
backend, as well as unifying some of the code that creates the
configuration for smart for use on the host and target.
Fixes [YOCTO #3916].
(From OE-Core rev: 4e85129a7d47baf3e32b815cbc277bff84e085a0)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Use runtime remapping on BAD_RECOMMENDATIONS just as we do with
variables such as IMAGE_INSTALL, so that we're specifying the name prior
to any renaming e.g. that done by debian.bbclass. Note that this is a
change in behaviour for renamed packages, however this is the correct
thing to be doing; a search of existing layers suggests this shouldn't
cause widespread incompatibilities.
(From OE-Core rev: aea9d379ea217c78b64a81853ec3744188158008)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* for example in gcc-runtime DEPENDS_GETTEXT from gettext.bbclass isn't
used because gcc-runtime recipes also set INHIBIT_DEFAULT_DEPS,
explicitly disable NLS when DEPENDS_GETTEXT is empty
* this is causing undeterministic build
if you compare i586-oe-linux/libstdc++-v3/config.log in WORKDIR when building
gcc-runtime before and after building gettext-native you'll see that msgfmt
isn't found in one of them and gcc-runtime-locale-{de,fr} packages
aren't created, there is only one file in them:
gcc-runtime-locale-de/usr/share/locale/de/LC_MESSAGES/libstdc++.mo
(From OE-Core rev: 8f0b07fc53c94426efa3557424328b52a61e7305)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If someone is using a Poky release but not the Poky distribution they'll get a
bblayers.conf generated from meta-yocto's template with a LCONF_VERSION that
doesn't necessarily match LAYER_CONF_VERSION (default in sanity.conf), as Poky
overrides LAYER_CONF_VERSION to cater for the meta-yocto split. The resulting
error message will tell them to compare bblayers.conf with bblayers.conf.sample,
but they're identical.
By explicitly refering to the required and actual versions this situation is
hopefully clearer.
(From OE-Core rev: da58843fd07dec43700a4c54ac469d1fda71aa50)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The error case was gcc-dbg packing files from libgcc-dbg reported in [1]
[1] http://lists.openembedded.org/pipermail/openembedded-core/2013-July/080728.html
(From OE-Core rev: fd2c0af422d67da870a5a11720d06a871e660215)
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Makefile.PLs can exit with success without generating a Makefile,
e.g. in cases of missing configure time dependencies. This is
considered a best practice by cpantesters.org. See:
* http://wiki.cpantesters.org/wiki/CPANAuthorNotes
* http://www.nntp.perl.org/group/perl.qa/2008/08/msg11236.html
(From OE-Core rev: 0a2dffefc6fbca37ce9604117cebc2f7d4abc1c6)
Signed-off-by: Olof Johansson <olof.johansson@axis.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If systemd is not supported DISTRO_FEATURE than there is no need to
package related service files.
(From OE-Core rev: ac5d20f4adac69ea1702694fb50849c9e465b443)
Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The echo command is a dash shell built-in and does not support the
-n and -e options so use awk instead.
This fixes the partition table being corrupted when writing the MBR
disk signature into the image.
[YOCTO #4859]
(From OE-Core rev: 1928f46e8e9f281e3e64f916048cc9314e125150)
Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This class is dedicated to image level user/group configuration.
It inherits useradd_base.bbclass.
Users need to inherit this class in their layers or local.conf to
make the setting of EXTRA_USERS_PARAMS effective.
For detailed configuration format of EXTRA_USERS_PARAMS, please
refer to local.conf.sample.extended.
[YOCTO #4074]
(From OE-Core rev: 4b6deb521183b728d9a1c651d4805fe635e6cb50)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add a new base class, useradd_base.bbclass, which is mainly a
collection of basic functions for user/group settings.
The useradd_base.bbclass is intended to be inherited by useradd.bbclass
and the extrausers.bbclass to avoid code cuplication.
[YOCTO #4074]
(From OE-Core rev: 2a57bb7e9a7e154578aa7cb9aeebdf398a54ec00)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Old way find -perm +mode is no longer supported in newer
versions of find (Fedora 19). Man page says:
-perm +mode
This is no longer supported (and has been deprecated since
2005). Use -perm /mode instead.
[YOCTO #4853]
(From OE-Core rev: 21b079e01873e2fb4d8674541e8c5818ba73554e)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This path check isn't handled in the normal way where a QA check
function is called for every file (there's some minor setup that we want
to avoid doing for every file) so we need to check INSANE_SKIP
explicitly.
In the process, change the code structure a little bit so that we can
report the package that contains the errant file.
Fixes [YOCTO #4822].
(From OE-Core rev: 3bdbec1bdecc52828cbbf8108786ff076c981845)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There was a slight mistake in the recent change to the lib_re regex -
it still needs to begin with a /.
(From OE-Core rev: 194e47e6d8d9b9ee98e0203f0ebb574084277c46)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
BB_RUNFMT can include task and taskfunc, as well as func and pid. Add the
two missing items toe the runfmt processing.
Also BB_RUNFMT can include arbitrary directory structure.
(From OE-Core rev: 95f6e9a3d8fa24acc3bab392719e2d92be25d806)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The gcc sanity check should be checking for the atomic function directly
instead of using the gcc macro. Older versions of gcc do not have the macro
defined, but do support the atomic operations. (glib-2.0 checks for both
the macro and the function, as long as one is available it will successfully
compile.)
Update the check to try both -mcpu=native and -mcpu=BUILD_ARCH. Tell the user
which version worked properly.
[YOCTO #4845]
(From OE-Core rev: c126729b29822d3602c9c4fd9016cc79b6057fc5)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Adds some comments to testimage.bbclass and the files it calls,
just to give an ideea of what it does.
(From OE-Core rev: 8bbb7116cf02466dfc59a17dc7bb51287aeea55b)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Make a copy of the rootfs and test that.
We can now drop the snapshot option.
(From OE-Core rev: ba58f1fe8fb7a0e3ff9320dfc108235d484da6a1)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add tests for free space and syslog.
Changed in v2:
- limit df's output to /
- syslog: fix restart in case of systemd
(From OE-Core rev: 1b39d57e7b5c9b69d565cf4d188ebc2f14e66ae6)
Signed-off-by: Alexandru Palalau <alexandru.palalau@intel.com>
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
On a loaded host (such as an AB setup where multiple builds run)
the 200 seconds timeout might not be enough to reach the login prompt.
Also make it configurable so we can set it from local.conf/auto.conf
(From OE-Core rev: e828571683333e6f18ed56a84e114b5e54975bc7)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
For git packages the Package Reporting System should always report the
latest HEAD.
For svn packages the new version reporting has the following format:
version+svn[r|-]revision
(From OE-Core rev: 43c28375f97161e618fa54349c65be2058c33c53)
Signed-off-by: Emilia Ciobanu <emilia.maria.silvia.ciobanu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If the spec file already exist, and has not been stored into pseudo's files.db,
it maybe cause rpmbuild src.rpm fail, so remove it before doing rpmbuild src.rpm.
(From OE-Core rev: 760af902a98b350a2f1f3203fa0096965924a83d)
Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This introduces a DISK_SIGNATURE variable that allows controlling the
32-bit MBR disk signature. By default it is set to an automatically
generated disk signature but it may by overridden in the image recipe
by setting DISK_SIGNATURE to a 8 digit hex string.
This DISK_SIGNATURE variable can also be used in the image recipe to
specify the root by UUID using:
SYSLINUX_ROOT = "root=PARTUUID=${DISK_SIGNATURE}-02"
Specifying the root by UUID allows the kernel to locate the root
filesystem even if the device name changes (e.g. /dev/hda2, /dev/hdb2 or
/dev/sdb2 instead of /dev/sda2) due to differences in hardware
configuration.
(From OE-Core rev: 4382a419b4c90312d22aa55ff535b45bcf704716)
Signed-off-by: Jonathan Liu <net147@gmail.com>
Acked-by: Darren hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The recipe's DESCRIPTION is wrapped automatically by textwrap, make it
support newline ("\n") to let the user can wrap it manually, e.g.:
DESCRIPTION = "Foo1\nFoo2"
In the past, it would be:
Foo1\nFoo2
Now:
Foo1
Foo2
[YOCTO #4348]
(From OE-Core rev: 568e303ef4447a9ddb7fb6370166d012a4375dab)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The recipe's DESCRIPTION is wrapped automatically by textwrap, make it
support newline ("\n") to let the user can wrap it manually, e.g.:
DESCRIPTION = "Foo1\nFoo2"
In the past, it would be:
Foo1\nFoo2
Now:
Foo1
Foo2
[YOCTO #4348]
(From OE-Core rev: dff04de2de8bb159fd6912e29794eadd75d5d92a)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The recipe's DESCRIPTION is wrapped automatically by textwrap, make it
support newline ("\n") to let the user can wrap it manually, e.g.:
DESCRIPTION = "Foo1\nFoo2"
In the past, it would be:
Foo1\nFoo2
Now:
Foo1
Foo2
[YOCTO #4348]
(From OE-Core rev: 503b6370080fcbcd99305eac846c6dfbdd07c5df)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Previously these directories were the same location, but with
seperatebuilddir.inc they are not and putting the file into ${B} means it goes
to the wrong place for autoreconf.
(From OE-Core rev: 6f06c6b220c05b6aca9d2d21f528d4e1b5e417d0)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Only grep for 'OECORE_NATIVE_SYSROOT=' otherwise things like
toolchain_create_sdk_env_script_append() {
echo 'export MY_DIR_FOO=$OECORE_NATIVE_SYSROOT/my/dir/foo' >> $script
}
trigger the following error while executing the install script:
find: `$OECORE_NATIVE_SYSROOT/my/dir/foo': No such file or directory
(From OE-Core rev: d084c31720f9c13a71c5981f4eda21e18ba2350f)
Signed-off-by: Bernhard Guillon <Bernhard.Guillon@hale.at>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Only the printf bash builtin knows about %q format option for escaping
spaces. The coreutils version doesn't. Unfortunately, neither dash nor
sh have a printf builtin. So, escape the spaces using sed.
[YOCTO #4811]
(From OE-Core rev: 6ac06a65ce52d4c123da53f115c84cb0a98bc18f)
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It shouldn't be desired that systemd enable services when using
class native. Blanking out the SYSTEMD_PACKAGES when native seems
like the most straightforward way to fix this problem.
(From OE-Core rev: e0ce07010d2e818dc43ffdff6f3cdd94f18d7af5)
Signed-off-by: Randy Witt <rewitt@declaratino.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Replacement class for imagetest-qemu.bbclass. It launches a qemu instance and
runs test modules defined in TEST_SUITES.
(From OE-Core rev: e0e32b978e5af128d7ff4ee2686777b49f919e27)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
BB_NO_NETWORK disables any fetching, however if we're using an external
sstate cache, we may want to be able to fetch those objects even if we are
not fetching the upstream sources. Denote this situation by setting
SSTATE_MIRROR_ALLOW_NETWORK in local.conf. When it is found, for sstate
cache fetches, mask off BB_NO_NETWORK for the local function.
(From OE-Core rev: ed585cad2e1fdc323c05fa82055a071bcf98d1bc)
Signed-off-by: Joe MacDonald <joe.macdonald@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
/usr/share/info/dir should be generated at install time in a postinst.
Added QA warning to check at build time for this file. The warning
is disabled by default.
[YOCTO #3969]
(From OE-Core rev: be93fa1d8fd601d95147980938217142c7d98c62)
Signed-off-by: Mihai Prica <mihai.prica@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ensure these do not pick up e.g. /lib/systemd/system/uuidd.socket, but
ensure we pickup e.g. /usr/lib/libnss3.so.1d (example from Debian). This
also fixes the broken exec_re regex (lib*.).
(From OE-Core rev: 391a361190d7da19ad3381121649a41a28516cb5)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When external commands such as debugedit fail, it can be useful to see
their output, so use oe.utils.getstatusoutput() instead of
subprocess.call() to capture this and print it on failure.
(From OE-Core rev: 34179cc78b730ecb8ff3f4feb4beee2d17498ce3)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The class is inheriting qmake2.bbclass which exports OE_QMAKE_QT_CONFIG
pointing to the qt4 qconfig.pri when it should be pointing to the
qt4-embedded qconfig.pri.
(From OE-Core rev: ed78661e147780ceb1bc1e952b68740984d85971)
Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some terminals may not pass the environment into the child process. This
is true when using "tmux split-window." If tmux is already running, it
will start the command with the tmux session environment, ignoring the
environment where the command was issued.
This could possibly be worked around when launching tmux by injecting
variables into the user's session environment or adding the variables to
the "update-environment" tmux setting. However, both methods would
permanently alter the user's session, which is undesirable.
By using a wrapper script, we have full control over the final
environment. Replace the env dictionary with an empty data smart that
will contain the exported variables and a wrapper function that execs
the original command.
(From OE-Core rev: 3bb96671e987ce8110ce98b9f6d9efc093f8d20e)
Signed-off-by: Tyler Hall <tylerwhall@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This check was actually removed a very long time ago in
6656381714, before we even changed the QA
checks to use names instead of numbers - the name was probably added
ERROR_QA mistakenly because it hadn't also been removed from the comment
listing the QA checks or the function that determined which ones were
errors.
(From OE-Core rev: ff65497cd9a96d5ab49b16ba1f7e30a216ff4a42)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Qt/qt-embedded build fails on mips64 with 64 bits userspace. Set
COMPATIBLE_HOST in qt4e.bbclass and qt4x11.bbclass to disable build
qt/qt-embedded and packages which inherit these two classes on mips64
with 64 bits userspace.
(From OE-Core rev: 17890ebd637da0b3bf78804002d8b4f0ace078d2)
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
PN/PE/PV/PR should never change between do_package and the following do_package_write_*
tasks. If any do change you would see build failure due to the wrong WORKDIR being
used for example.
This patch ensures that if something is going wrong we see the error earlier and
with some better warning about what the real problem is.
[YOCTO #4102 partial]
This is a rewritten version of a patch from Martin Jansa <martin.jansa@gmail.com>
(From OE-Core rev: f5252fea11e13dbcec1c277cf1bf0d7e61b60690)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is the possibility that if we don't iterate through the multiprocessing
pool objects we might not catch return codes and this could lead to hung/zombie
processes either temproarily or on a wider scale. Adding this certainly doesn't
hurt anything and is better practise so we might as well do it.
Its not 100% clear if this fixes some issues or not.
(From OE-Core rev: 89c8493d4d85044cd72af2756569d15e87cd5947)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
See GNU Savannah bug 30612 -- make 3.82 is known to be broken.
A number of vendors are providing a modified version, so checking
for just the version string is not enough. We also need to check
if the patch for the issue has been applied. We use a modified
version of the reproduced to check for the issue.
(From OE-Core rev: dede532a980b0fabf0beae4519b89ec74a1c2474)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If a Makefile.in.in has existed under ${S}/po/ and is read-only, cp will fail.
(From OE-Core rev: 6e1b17f19411ed897c53ae0ef41a2d2972a9c113)
Signed-off-by: Roy.Li <rongqing.li@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
useradd.bbclass supports adding new users and new groups. But it does not
support adding existing users to existing groups.
There is a need of adding users to some groups (e.g. audio). The class was
extended to call groupmems utility with arguments passed via GROUPMEMS_PARAM.
(From OE-Core rev: 6b3bd34bf8c5e511bccfbb64bdd1236e1e7576e3)
Signed-off-by: Mikhail Durnev <mikhail_durnev@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Generating filesystems with this flag allows more efficient directory
traversals because getdents() returns the filetype in 'd_type' which
allows to avoid an extra lstat() call.
Creating ext4 filesystems with 'mkfs.ext4' sets this flag by default
too.
(From OE-Core rev: 75e077025397f3bde84e60a9da2c0564ade09b39)
Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We need to expand the COREBASE variable, no idea how these tests were
previously working at all...
(From OE-Core rev: 099063f353a7a18720c92d87400726a49eed432f)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The @ character is not escaped properly in too many places within the system
to easily support it so add the character to the list of blacklisted characters.
Also tweak the other messages and ensure that all appropriate error messages
are disabled in one go.
[YOCTO #4772]
(From OE-Core rev: 008cb3c501c8313a0a1a0ebce2b0aa61239b548d)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Spaces are not handled properly in some parts of oe-core and it's safer
to abort toolchain installation if path contains spaces. Even though
we fix space handling in the toolchain installation script, there are
various other parts in the toolchain (perl scripts, sysroot path passed to
toolchain binaries, shebang lines) that would need special handling. So,
for now, just bail out if path contains spaces.
The checking for spaces in the path is done after expanding relative
paths to absolute and tilde conversion.
[YOCTO #4488]
(From OE-Core rev: 8c35ba2d3048ce69f74f72cb2676e4bc162cfb63)
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
I started trying to make some changes in sanity.bbclass and couldn't stand
the current code. This patch splits out the one big function into a number
of smaller units and adds a status class which handles queuing of messages
and issues like network errors and whether a reparse is required. It also
cleans up some syntax and obsolete code.
The other fundamental change is the tests are split into ones which run
once and those which run at every build. This was always the way the
class was intended to work but that got lost somewhere along the way.
This patch fixes that.
Its still far from perfect but it is hopefully an improvement
and sets the scene for other improvements to be built on top of this.
(From OE-Core rev: 4e6de6d5f0454024eec2ec775a938c5dab70610c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We once needed to do this, things seem to work fine without this now,
thankfully.
(From OE-Core rev: ac090ace11d654dafd642fd93c94091a164476fa)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The build banner displayed at the start of builds can be misleading since
the data store has not been finalised. As easy way to illustrate this is
to use something like:
DEFAULTTUNE = "i586"
DEFAULTTUNE_<machineoverride> = "core2"
and the banner will display the i586 tune yet the core2 tune will be
used. We can avoid this if we finalise a copy of the data before
displaying it.
[YOCTO #4225]
(From OE-Core rev: bdce39f22a0e8c8e1cf237322657220e4201077d)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
See the bitbake commit adding the recideptask flag for details of the
problem but in summary, we weren't seeing the [depends] of tasks like
do_rootfs being taking into account for fetchall. This was leading
to not all sources being fetched and this is the OE-Core part of the
fix for this problem.
BB_DEFAULT_TASK is the default task used since this is the one that
most commands would end up targeting and is how users expect the command
to behave.
[YOCTO #4597]
(From OE-Core rev: abf468963a087244887384122fd5202909e7f118)
(From OE-Core rev: e385cc4ac06ac1e8d257563a700d19895105eade)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
"xargs -n1 basename" will execute basename even if there are no lines
piped into it, causing a "basename: missing operand" error if no
packages are installed, which will happen for the target portion of
buildtools-tarball.
(xargs' -r option could have been used here, but it is a GNU extension
and I thought it best to avoid that for the sake of future
interoperability).
(From OE-Core rev: 03d86123e9e804e62de38effd307f070d7863080)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The fakeroot flag wasn't correctly set leading to files within the
output tarballs having uid/gid values from the build host instead of the
desired target permissions.
(From OE-Core rev: a31c7ec56568e5dafc2f45ba5675367ddceb0e3e)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently the full path is specified to exec however this may incorporate a
build path which in the nativesdk case, is not transformed to a target system
path. This leads to failures due to incorrect paths.
This patch ensures the full build path is not encoded into the wrapper script.
(From OE-Core rev: 4569d7403638e4c1f637e3a6adb8dea620dc8543)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This class can now be inherited globally using INHERIT += rather than
needing to inherit it in the recipe itself. Additionally, instead of
setting S (and optionally B), set EXTERNALSRC (and optionally
EXTERNALSRC_BUILD) to point to the external source and build locations
respectively.
(From OE-Core rev: b1da10579a28f9a5260a0678f6f15ce4b5a2706c)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The copyleft filter is only excluding packages that contain a
closed source license. This is because oe.license.is_included()
returns a boolean value that indicates if the license is excluded,
and a string that contains the matched included licenses. If the
string is empty it indicates that no licenses were matched.
Reject packages that do not contain a copyleft license.
[YOCTO 4630]
(From OE-Core rev: 3d0f9ee3d2fcce331d35467d5965ff44b825427f)
Signed-off-by: Kevin Strasser <kevin.strasser@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Now that bitbake supports masking events for event handlers, lets use
this so event handlers are only called for events they care about. This
lets us simplify the code indentation a bit at least as well as mildly
improving the event handling performance.
(From OE-Core rev: bff73743280f9eafebe4591f7368ead91a4eb74d)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We're finding bugs in python 2.6 and starting to require unittest
functionality in python 2.7.x. Its time to bump the minimum version
requirement. Anyone without python 2.7.x can use the buildtools-tarball
out to install a standalone python/git/tar setup which will work
with the system.
(From OE-Core rev: 8b90f1becd40a7f857d2fbe30eaffe218a976419)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Migrate tests for correct git and tar versions from the wrapper script
to the sanity class.
This sets the scene to allow us to remove the bitbake wrapper script.
(From OE-Core rev: 7b370e23594da5dcb53cd5507ec289c3ef2d9fb5)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Remove MAKEFLAGS= from EXTRA_OEMAKE to allow parallel make.
(From OE-Core rev: 1aeecaeee9bb1eee779973fce7f15cc7fad269a0)
Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is necessary when Qt applications want to know variables such as
QT_MAJOR_VERSION, QT_VERSION, QT_MINOR_VERSION, GCC version, etc.
(From OE-Core rev: dcaa40e65d986587fa7c44f4285bbd0883478cc3)
Signed-off-by: Felipe F. Tonello <eu@felipetonello.com>
Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
A non-zero status from the march test for gcc means that the "march" flag
is needed. Correct the logic to return True in this case.
(From OE-Core rev: 217fd857df78c66eae853f935e9cdafcbeb3bc31)
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Without this, due to bitbake defaulting to ${B}, it's possible to get ${S}
inadvertantly created before do_unpack, breaking the unpack of git sources,
which expect the destination to not exist.
(From OE-Core rev: 694a15382fe9f3749ffdc0168a6dc2da8a29ae2d)
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This avoids unnecessary duplication of setup. The only visible change in
behavior will be the case if siginfo exists and the archive does not, in which
case it'll redownload both, but this doesn't seem unresasonable to me,
particularly since the archive is downloaded first, making this case
particularly unlikely.
(From OE-Core rev: aa4991c307d4bbdd06c3cbf8448240b74c5e01c4)
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The default FILESPATH isn't really of use, as we don't expect to find sstate
archives buried in layer recipe directories, and the default MIRRORS is
intended for use for fetching SRC_URI, not sstate.
(From OE-Core rev: 46402b2f5b69004751f6663d435bedae0ad9dab1)
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When we don't have a generic license file for the license in question, we can
warn, but we should still include it in the manifest, otherwise the manifest
doesn't reflect reality. Failing to include a license listed in the recipe in
the manifest can't be allowed.
(From OE-Core rev: e87232828b761d56f1ce6a27e4009d350d68209c)
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently, if a package QA type from package.bbclass is not listed in
ERROR_QA, it gets shown, regardless of whether it's in WARN_QA. This differs
from the behavior of the rest of the QA handling (which doesn't call
package_qa_handle_error at all if it's in neither _QA variable), and is
nonintuitive. Change this to use bb.note() if it's listed neither in ERROR_QA
nor WARN_QA, so it ends up in the task logs, but doesn't clutter up the user's
output.
(From OE-Core rev: 8f5675e6d3eb8473f367de72d2d3d8a702011a47)
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently the scriptlet_wrapper is designed to handle only pre/post
install scriptlets. This patch will slightly change the wrapper script
to handle also pre/post remove scriptlets when we want to remove
packages from the final image.
(From OE-Core rev: aea47c77d69407b2e62f151cabba35293d179f0c)
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Since run-postinsts was made generic, use it for RPM too.
(From OE-Core rev: 1ba44302f522a42535c9ad7d2fcccc06ba4c20b3)
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch creates a new function, rootfs_remove_unneeded(), that will
be called after rootfs_*_do_rootfs is called and which will handle
delayed postinstalls in a generic fashion, for all backends in the same
way.
(From OE-Core rev: d3d810faf8e93ce2d3faaa70da6deeb25b1cec26)
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch adds the following helper functions:
* delayed_postinsts - outputs the list of delayed postinstalls;
* save_postinsts - this will save the delayed postinstalls for ipk/deb
in /etc/(ipk|deb)_postinsts;
* rootfs_remove_packages - removes packages from an image;
Additionaly, this patch will remove a piece of code in
rootfs_ipk_do_rootfs which will be moved to image.bbclass and used for
all backends;
[YOCTO #4484]
(From OE-Core rev: 928df79cd3964f775c4c6e4283ef84b8882f9328)
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This adds support for lconvert and xmlpatterns tools and tweaks the
sed expressions to handle more complex assignments in .pro files like:
LRELEASE = $$targetPath($$[QT_INSTALL_BINS]/lrelease)
(From OE-Core rev: 542fefa61f0ac1dcdacac2630fd44950ac11cdd9)
Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
These will be used by qmake_base.bbclass.
(From OE-Core rev: 405d1325ebbd31676d88a3e157f55d40d04cc3f4)
Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Data from SDKs produced from different images or different
meta-toolchain style recipes should go into separate directories,
since SDK_NAME doesn't include anything to differentiate these by
default (only pieces for the distro name and architectures).
Note you should delete or move existing data under the buildhistory/sdk/
directory manually after this change.
Fixes [YOCTO #4622].
(From OE-Core rev: 74658b66530184b0287152397341fbe411e90c71)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Use new variable GNOMEBN, defaulting to value of BPN, instead of
BPN directly when determining URL for source archive.
(From OE-Core rev: fe297a70c7d6b36a6595534589c71d32209d6a53)
Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The do_package_setscene task needs to depend on fakeroot in order to correctly
install its files.
We can whitelist the dependency in the sstate handling code for some
performance improvements since we only need this if we're installing the
package from sstate.
Also use an append operator in base.bbclass for clarity.
(From OE-Core rev: 0810ea2a72bdea67a3d8002c4e12fb20f45cf1d5)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Back in 2010, I added these in commit: http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=36f1ae42fe13dae174b7fb5eb85dc49d7d7b516b
however the package_write tasks sstate only consists of package files and no
fakeroot privileges are needed to write these out, only originally create them.
We can therefore drop these for some small performance gains and a less
convoluted depenency chain.
(From OE-Core rev: 3c760ce4dc15d85be07aafbfea896e7276e0c2c4)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The modules-${MACHINE}.tgz should link to ${MODULE_TARBALL_BASE_NAME}.
But now it links to an invalid file ${MODULE_TARBALL_BASE_NAME}.bin.
Remove the extra .bin suffix.
[YOCTO #4595]
(From OE-Core rev: ef9fad8fff1c413bc0eab15625f051d4e2d0a201)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* the IMAGE_TYPES variable is used exclusively by hob
* IMAGE_CMD_ubifs is already present in the class
* ubifs images can be flashed on existing ubi volumes with 'ubiupdatevol'
(From OE-Core rev: 0dc5a90b2d95ad21025769b0300390a4ff0052ac)
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The PACKAGEFUNCS_append = "do_package_qa_multilib" lacks a "space",
which would cause unexpected errors.
[YOCTO #3190]
[YOCTO #4396]
(From OE-Core rev: acd5fc716bc3095d568bd1474b79f3a0fd616eea)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Refactor packaging sanity tests from package.bbclass to insane.bbclass
so that the message can respect WARN_QA (print the warning message and
go on the task) and ERROR_QA (print the error message and fail the
task).
- For the bb.warn(), give it a message name and add it to WARN_QA, then
use package_qa_handle_error() to handle it.
- For the bb.error(), give it a message name and add it to ERROR_QA,
then use package_qa_handle_error() to handle it.
- All the bb.warn() and bb.error() have been replaced in
package.bbclass.
- A few bb.warn() and bb.error() in insane.bbclass have been kept since
they can not be replaced or doesn't have to, for example the
bb.error() in package_qa_check_license(), it will print the error
message and then invoke bb.fatal() to fail the task, I think that we
don't have to replace it with package_qa_handle_error().
- Put all the WARN_QA and ERROR_QA in one line, so that they can be
redefined by the user easily.
[YOCTO #3190]
[YOCTO #4396]
(From OE-Core rev: 2f117ee615b703db07d3274ac592e2bd653743dd)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
RP's comment:
"What we're trying to do is move everything to use a standard mechanism
for reporting issues of this type (do_package). With insane.bbclass, you
can elect whether a given type of error is a warning or error and fails
the task."
* The package.bbclass had used package_qa_handle_error() which is from
insane.bbclass, and we will use it for handling other warnings and
errors, so let package.bbclass inherit insane.bbclass, this change will
make the insane as a requirement (always included).
* Change the "PACKAGEFUNCS ?=" to "+=", otherwise there would be an
error like:
Exception: variable SUMMARY references itself!
This is because we let package.bbclass inherit insane.bbclass, and
PACKAGEFUNCS has been set in insane.bbclass, so the "PACKAGEFUNCS ?="
will set nothing, then the "emit_pkgdata" doesn't run which will
cause this error.
* Add a QA_SANE variable in insane.bbclass, once the error type
is ERROR_QA, it will fail the task and stop the build.
[YOCTO #3190]
[YOCTO #4396]
(From OE-Core rev: 852dead71387c66ec0cba7c71e3814a74e409560)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>