Age | Commit message (Collapse) | Author | Files |
|
The existing check for SKIP_FILEDEPS can be overridden per recipe
using SKIP_FILEDEPS_pn-${PN}. However, there's no mechanism for
letting a single package within a recipe use SKIP_FILEDEPS.
This patch adds SKIP_FILEDEPS_<pkg>, by analogy to FILES_<pkg>.
Note that it only works one way; if the recipe has SKIP_FILEDEPS = 1,
the checks for individual packages will never be reached.
Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
To support configurations where active development is not being done within
the oe/bitbake build environment and restricted bandwidth situations, this
commit allows the SRC_URI to point to a kernel tgz instead of a full git
repository.
Outside of the upstream tgz instead of a kernel git repository, the
restrictions, config and patch process is the same as any linux-yocto-custom
recipe.
An example linux-yocto-custom based recipe would have a configuration like
this to build the 3.7 kernel, using an externally supplied config, from the
3.7 tgz:
SRC_URI = "http://kernel.org/pub/linux/kernel/v3.0/linux-3.7.tar.bz2"
PV = "3.7"
S = "${WORKDIR}/linux-3.7"
SRC_URI[md5sum] = "5323f3faadd051e83af605a63be5ea2e"
SRC_URI[sha256sum] = "dc08d87a579fe2918362e6666e503a95a76296419195cb499aa9dd4dbe171a9e"
[YOCTO #2686]
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
To promote the reuse and sharing of configuration fragments this change
allows any kernel-yocto based recipe to have multiple alternate git repositories
which provide kernel feature directory trees listed on the SRC_URI.
These feature directories are in addition to any in-tree kernel meta data branches
that may be available (described via the KMETA variable in linux-yocto recipes).
Features found within these directories can be used from recipes via the
KERNEL_FEATURES variable. Features found within a feature directory are free
to include any other features that are available in any directories. In both
cases the path to a feature description (a .scc file) is relative to the
root of a given feature directory (which is how existing .scc files work)
The search order for features is determined by the order that repositories
appear on the SRC_URI.
Normal SRC_URI rules apply to any repository that is added as a kernel
feature container. A SRCREV must be supplied and it must be unpacked to
a unique directory, which is controlled via the "destsuffic" url parameter.
In addition to these standard requirements, any kernel feature repository
reference should identify itself via the "type=kmeta" url parameter. If
type=kmeta is not supplied, the repository will not be processed for
kernel features.
As an example, the following in a linux-yocto bbappend makes two additional
feature directories available to KERNEL_FEATURES and fragments.
SRC_URI += "git://git.yoctoproject.org/yocto-kernel-cache;protocol=git;branch=master;type=kmeta;name=feat1;destsuffix=kernel-cache/"
SRC_URI += "git://${KSRC_linux_yocto_3_4};protocol=file;branch=meta;name=feat2;type=kmeta;destsuffix=kernel-features-experimental/"
SRCREV_feat1 = "${AUTOREV}"
SRCREV_feat2 = "${AUTOREV}"
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
SRC_URIs that contained git repositories or other constructs that resulted
in an extension of "." or a substring of "scc" or "cfg" were matching the
tests for patches and configs. This was due to a python tuple being used
instead of an array. Switching to an array makes the match exact and the
behaviour we want.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
The details of the kernel configuration audit are typically a
debug action, so should be moved to bb.debug(). But in order
to maintain visibility of the results, a reference to the log
file is provided in the standard message.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The rdepends getVar is returning NoneType and the string constuction fails
this occurs with the hicolor-icon-theme recipe.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
This makes the external module compilation a bit more robust for
cases where external module recipes may be passing extra params
to make via EXTRA_OEMAKE, and more than often one needs to pass
M=$(PWD) when building external modules and if we use EXTRA_OEMAKE
that would mean that it would appear in do_make_scripts as well
and since we are only changing the reference kernel src tree here
it will not run the make scripts in desired directory.
It is also well explained in top makefile in kernel tree around
line# 1335 in 3.4
|else # KBUILD_EXTMOD
|
|###
|# External module support.
|# When building external modules the kernel used as basis is considered
|# read-only, and no consistency checks are made and the make
|# system is not used on the basis kernel. If updates are required
|# in the basis kernel ordinary make commands (without M=...) must
|# be used.
Therefore passing M=... will not do the updates in the basis
kernel as expected with 'make scripts' so we have to bypass EXTRA_OEMAKE
[Yocto #3787]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
This patch will allow recipes that provide kernel modules to package
the module or modules in specific packages. That list is contained in
MODULE_PACKAGES, this defaults to to preserve the current behavior.
The package can also define MODULE_FILES to specify files.
[YOCTO #3803]
(From OE-Core rev: c1ff0467bf03a3342846f0d9dde74e34b740798f)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* as reported by Enrico on #oe
11:06:50 < ensc|w> JaMa: might this be caused by dc78ef91a2bf01efb8028c9afbe69e506e016265
which checks for 'd.getVar('LICENSE_CREATE_PACKAGE', True)' evaluating to 'True' for every
string (including the default 0)
(From OE-Core rev: bc42585ad9ca3a9891459ec3234893dff420b95b)
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>
|
|
- add EXTRACONFFUNCS variable in order to make it possible
to inject tasks after autotools_preconfigure
(From OE-Core rev: eafaeee58ab7a8f0613f54b8411f41ccefdf94c3)
Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We may as well expand the RDEPENDS when reading and writing as this function does.
if we don't do this, we could accidentally duplicate data and it also turns out
to be much less efficient.
(From OE-Core rev: d62a3151e7b252911c172a605b3089de355663c5)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Currently we do a signficant amount of tree traversal in many different places
which in inefficient. We can assume that the files don't change and cache the
file list which gives an efficiency improvement which this patch does using
a global variable.
(From OE-Core rev: 2d7608842d2dab07065e60aab729a5c8fd6b7907)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Improve package_fixsymlinks so we don't handle RDEPENDS for every single package
in PACKAGES.
(From OE-Core rev: 20ff8feb95d54e4db646f8c0cb006ce187e288af)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Move package_rename_hook call into PACKAGEFUNCS and also move package_get_auto_pr
to a more appropriate execution point, grouping package metadata handling
functions together.
(From OE-Core rev: a3f41cfbc8923e54198d10db292a11ef2edda4d7)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The symlink handling code doesn't need to being part of populate_packages
and is logically separate so split it out into a separate function,
package_fixsymlinks.
(From OE-Core rev: fc964ed2b558b08327e2bc8c93ada80ca9d97337)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We only use the PKG variable in emit_pkgdata so we might as well move the
fallback code there, allowing restructuring of other parts of the metadata.
(From OE-Core rev: 0136ae9a5f719f0e7ba6e00bfd366c0e61b3b3f2)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
There is no real point in adjusting overrides and creating a copy of the datastore,
just to access a single variable. We can do this just as easily with a slightly
more complicated getVar call. This improves performance.
(From OE-Core rev: 69f4351809359a0c7c38e8f233f3e3f7680ed2e2)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
There is no need to check FILES in each loop iteration, we can just check it once
at the start when we read the variable.
(From OE-Core rev: 1bcc5cba12cbb1b846b433719d1b0820f5a97105)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The mkdir function iterates over strings with many different operations,
even if ultimately the target already exists. This adds a check to the start
of the function so we don't waste time when the target already exists.
(From OE-Core rev: 06e188e673313f1eb9ae7d85ae64467c8d2a94b3)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Currently the kernel module handling consists of several special cases
and has its own path walking. This refactors the code to handle them in
a more standardised way which is also a bit more efficient.
(From OE-Core rev: ad51b54f0afe8c56033137b7cf9ba398877b2651)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The splitfile and splitfile2 function names are confusing and the comments
are also misleading, hard to understand or plain incorrect. This tries to
improve things.
(From OE-Core rev: 46f3050a1f46f814e2d031e7e71600b2932d631c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Rather than keying on recipes that inherit kernel.bbclass, we should
be checking for providers of virtual/kernel when skipping kernel
recipes in multlib builds.
Not all providers of virtual/kernel inherit kernel.bbclass (notably
linux-dummy), so checking on the provider is a more complete check.
We need to be sure to check for inheritance of module-base as well, this
allows for packages that provides modules to avoid the multilib renaming.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
kernel_do_install() populates $kerneldir with files needed to build
external modules. To accomplish this there are several copy commands
to get source from the kernel source tree and build trees after which
a 'clean' is performed. Since we are copying from the build tree we
get about 1G of .o and .cmd files copied over only to have them
removed when we clean. This adds additional IO overhead as well as
overhead caused by pseudo. By avoiding copying these files in the
first place we get multiple gains:
* avoid initial copy
* avoid file deletes during clean
* reduce pseudo overhead
Additionally we are making use of cpio vs cp which tends to be
significantly faster at performing copies.
With these changes I observe a 15-30% decrease in the time to complete
the do_install() operation on the kernel.
[YOCTO #3517]
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This commit removes an outdated comment that recorded an issue that has been
resolved in the commits 1c75a5df6845090480deff20f469f177501d2182 and
d2d5456cd3b3bd3e52a5dedccca4d46e3a7986d1. Probably, the comment was missed
when changing the behavior in those commits.
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
rerunning task
If we don't do this, stale files can build up, particularly with the PR
server.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
On a trace I was a bit puzzled why getVar was making 180 calls to len(d).
This is an expensive operation that should be very rarely called and
certainly not by getVar. In perl's do_package it was resulting in
~1.5 million function calls from those 180 cases.
Ultimately this typo was why. Lets fix it and save the CPU cyles.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The same log message gets output multiple times in the log which look
confusing and is rather pointless. Move the log message to the correct
level.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The code in module.bbclass was appending the pkg_postinst and
pkg_prerm to all packages that are part of a given recipe, meaning
that the -lic, -dev, -doc, ... packages all got the scriptlet
This change uses only which macthes with the RDEPENDS and FILES
already used in module.bbclass.
The failure was that rootfs creation would fail due to the -lic package
being installed before the kernel and the script would fail.
[YOCTO #3803]
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This change ensures that the ls /etc/rpm-postinsts runs in the target
at first boot time, rather than at the creation time of the script on
the host.
This was causing the following error in the rootfs log:
+ install -d /srv/ssd/sgw/machines/fri2/tmp/work/fri2-poky-linux/core-image-minimal/1.0-r0/rootfs//etc/rcS.d
+ i=
+ ls /etc/rpm-postinsts/
ls: cannot access /etc/rpm-postinsts/: No such file or directory
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
- we need to use PRAUTOINX (it covers all cases)
- it addresses bumped PE issues
[YOCTO #3071]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
As long as we support only one locale package per recipe this leads to unwanted
packages in images. This patch was motivated by samba (meta-oe): only wanting
libsmbclient one gets full samba server into the image. For my standard image
the follwing package were removed by this patch:
-acl_2.2.51-r3_armv7a-vfp-neon.ipk
-alsa-states_0.2.0-r3_armv7a-vfp-neon.ipk
-alsa-utils_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-aconnect_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-alsaconf_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-alsactl_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-alsaloop_1.0.25-r3_armv7a-vfp-neon.ipk
alsa-utils-alsamixer_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-alsaucm_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-amixer_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-aplay_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-aseqdump_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-aseqnet_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-iecset_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-midi_1.0.25-r3_armv7a-vfp-neon.ipk
-alsa-utils-speakertest_1.0.25-r3_armv7a-vfp-neon.ipk
-attr_2.4.46-r4_armv7a-vfp-neon.ipk
-avahi_0.6.31-r7.1_armv7a-vfp-neon.ipk
-gtk-engines_2.20.2-r3_armv7a-vfp-neon.ipk
-pulseaudio_2.1-r15_armv7a-vfp-neon.ipk
-samba_3.6.8-r6_armv7a-vfp-neon.ipk
-vte_0.28.2-r5_armv7a-vfp-neon.ipk
-xz_5.1.2alpha-r0_armv7a-vfp-neon.ipk
Strange effect: For samba buildhistory's depends.dot says:
-samba -> libc6;
-samba -> libgcc1;
-samba -> libreadline6;
-samba -> libtalloc2;
-samba -> libtdb1;
-samba -> libwbclient0;
-samba -> libz1;
-samba -> update_rc_d;
-samba_locale_de -> samba [style=dotted];
samba_locale_de -> virtual_locale_de [style=dotted];
-samba_locale_fr -> samba [style=dotted];
-samba_locale_fr -> samba [style=dotted];
This is conflicts to buildhistory's result on samba package not mentioning
any changes for samba package.
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Let postrm use the same logic as the postinst to run on both build machine
and target
[YOCTO #3633]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
When use postrm on the build machine, it installs the hook in intercept-scripts
directory and exit 0, the hook will be later invoked and it will properly call
gtk-update-icon-cache.
[YOCTO #3633]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
is enabled
[YOCTO #3743]
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
function
* move it from do_populate_lic to find_license_files so we can reuse it
to populate license in package itself
[YOCTO #3743]
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>
|
|
useradd.bbclass adds sstate dependencies on base-passwd, shadow-native and
shadow-sysroot. Due to the way these are injected, they interact badly with
the other dependency validation logic and end up pulling in dependencies we
don't actually need. This patch adds code to optimise those cases out.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Currently, do_rootfs has a dependency on all the do_package output being present
due to its usage of the pkgdata directories. This means that if you run:
bitbake xxxx-image -c rootfs
you end up having to fetch and unpack all the do_package data which is usually
large and inefficient. It also means rm_work has to leave all the do_package
data lying around so rootfs works.
This patch splits the actual creation of the pkgdata directory off into a separate
task, "packagedata" which happens immediately after do_package. We can then remap
the dependencies so this task is depended upon, not do_package. Sstate can then be
programmed not to require do_package at the appropriate times.
Whilst this patch doesn't do so, it opens the possibility of rm_work wiping
out the do_package output from WORKDIR as long as it also removed the do_package
stamp (both normal and setscene variants) and allowing more space savings
with rm_work which has been regularly requested.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
- remove PRSERV_PORT variable
- use 'hostname:port' as PRSERV_HOST format
- remove USE_PR_SERV variable
- one can activate PRS by setting PRSERV_HOST
[YOCTO #3744]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The cmake class uses EXTRA_OECMAKE to adjust the cmake configuration. This
patch adds support for this, if the cmake class is used by the recipe.
Signed-off-by: Philip Balister <philip@balister.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Certain cpan Build.PL based modules were failing to build due to
the host's config information being used instead of the targets.
This patch sets the appropriate variables to ensure the modules
get the correct configuration from the target config_heavy.pl script.
It also ensures the linker is CCLD, not LD since the LDFLAGS contain
-Wl,XXX options and build failures result if LD is used.
libencode-detect-perl is a module which tests this class extensively.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Remove references to libzypp, zypper and sat-solver which have been
removed.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If multiple recipes try and write the same package it resulted in a
rather confusing traceback and unintuitive error. This patch
prints a human readable error instead.
[YOCTO #3645]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This avoids tracebacks from bitbake if the directory doesn't already
exist.
[YOCTO #3640]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Currently hardware codecs are being injected in rather ugly ways and end up
either in no or all images. This adds a dedicated IMAGE_FEATURE for them based
on the MACHINE_HWCODECS variable. We may need to refine this in due course
but this patch at least illustrates the concept.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Backfilling DISTRO_FEATURES and MACHINE_FEATURES with _append statements happens
too late to use those variables with conditional inherits, like this:
inherit ${@base_contains('DISTRO_FEATURES','sysvinit','update-rc.d_real','',d)}
Instead, do the backfilling at ConfigParse time so that it happens earlier in
the parse, which results in that inherit behaving as expected when sysvinit was
backfilled.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
- use migrate_localcount.bbclass to generate AUTOINC entries
which are exported to LOCALCOUNT_DUMPFILE
- import the generated AUTOINC entries
- one can migrate LOCALCOUNT to AUTOINC by executing:
bitbake-prserv-tool migrate_localcount
[YOCTO #3071]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If the /etc/rpm-postinsts/ directory was empty, the following error
would occur at system startup.
ERROR: postinst /etc/rpm-postinsts/* failed
This patch fixes this issue.
[YOCTO #3767]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|