| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-toosl SRCREV to pick up the following fix:
previous versions of the kern-tools supported the ability to import a bare
patch, with no From: Subject: or other identifying fields that are typically
in a full commit.
The same type of commit with kgit-s2q will prompt for a author ID, just
as git-quilt-import does. In build system environment that leads to an
infinite loop and the commit is never pushed.
To fix this issue, we add an interactive flag (-i), that when passed the
prompt based behaviour is used. When it isn't passed (the default), the following
name and email will be used for the git author:
GIT_AUTHOR_NAME="invalid_git config"
GIT_AUTHOR_EMAIL="<unknown@unknown>"
And a bare/incomplete header patch will be applied.
[YOCTO #5100]
(From OE-Core rev: cb0d8f8b9c59b351d11eef9c4951c4ce5601acb8)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previous changes to the kern-tools improved functionality to ensure that
as a series is considered, it is checked against the tree to confirm that
all patches are really applied.
There was a bug in the subject based detection, such that the first matching
patch was take, and not the last. This change ensures that we start from
the end of a series, not the start.
(From OE-Core rev: 6357657ec5b5687defaf1acdd94c1cf89aa06541)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-tools SRCREV to pick up the following fix:
When a feature is passed to the kernel configuration scripts, and that
feature is a directory name, it is a shortcut for:
$DIR/$DIR.scc
This expansion is not commonly used, and should be avoided. But for the
purposes of backwards compatibility, updateme can expand the feature into
a .scc file before passing it to the next set of configuration scripts.
(From OE-Core rev: bec0a48c34695827d70cbbde7795b5a56fc13d56)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The separately packaged merge_config.sh in the kern-tools package was
missing upstream fixes, and in particular a change that ensures it is
dash compatible.
By grabbing that upstream commit and rebasing the existing patches on
top of the new baseline, we are up to date and working on systems
where /bin/sh is dash.
[YOCTO #4473]
(From OE-Core rev: 681bcd2783e100dd2882273f28f16ef118161e89)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-tools SRCREV with the following fix:
Updateme is responsible for updating an existing meta-series with new patches,
configs and tree manipulations. To do this, it first checks for an existing
board description and generates one if required. It then searches for features
and fragments to be applied for the tree.
There were two problems:
- A top level board description is detected via the presence of "define"
directives that indicate the board name, the arch and kernel type. The
test for define would match on patches or fragments with 'define' in their
name, and would incorrectly use that file as the top level board description.
This is fixed by ensuring that only defines at the start of a line, or preceded
by whitepace match.
- When searching for features that were indicated as 'addon' or 'optional', the
search would find, and apply, any feature with the passed name as substring
versus an exact match.
This is fixed by ensuring that the matched feature name is /<feature name>
versus <feature name>
(From OE-Core rev: 57ae1e412a35d827f84bf9b1f48747bf703f84b7)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the SCRCREV to pick up the following fix
updateme: use absolute path for generated BSP descriptions
When a custom BSP is used, a top level BSP is generated by the tools and fed
to the build system just as a user defined BSP would be located and
passed. The location of the generated file is placed in the top_tgt file,
which is used by subsequent stages. A relative path was being placed into
top_tgt, which binds the build to a particular directory structure and
working directory.
The location of parts of the build have changed, and this relative path is
no longer accurate. Changing it to an absolute path solve the build issues
related to custom BSPs.
(From OE-Core rev: 2d7b2478a3d48a5686afde790c378ee2f69b8e59)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A regression was introduced when implementing the ability to restrict
configuration values via include directives. Only patch and config files that
were local to a feature directory could be found. While this doesn't impact
most users of the tools, it is an issue that needs to be fixed.
Additionally, the regex that detected flags passed to includes was not
specific enough, and unfortunately named feature files would match. This
resulted in features like standard-nocfg.scc inhibiting all configuration
items, even base configs.
This change also bumps the linux-yocto 3.4 and 3.8 PR values to ensure
that kernels will be rebuilt once this change is active.
(From OE-Core rev: ddce9f375c626ef2c86f48612b3d7a24e3111b0b)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Variables defined in .scc files have two purposes:
- Documentation in the meta-series
- Variables that can be tested in sub sections and other features
The second part of this functionality was broken when fixing configuration
for tiny/small systems. As a result, arch tests were failing and configs were
dropped. This restores the existing functionality.
(From OE-Core rev: 4170e458e0f700319f4e1023c0c6c2d803449566)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
One of the features introduced early on in the 1.4 release cycle was the
ability to include a kernel feature, but only get its patches and not configs
(and vice versa).
As it turns out, this only was exercised recently and once a single include
with dropped configs was started, ALL configuration values following the
commit were dropped.
To fix the problem, the processing of kernel features has been split into
two. Where the features are preprocessed and the assembled/complete file is
used to generate the meta-series (which is later applied to the tree). The
logic of the tools is the same, but the two phases of processing allows
configuration values to be excluded properly and simply, while keeping the
logic for modifying the tree in a separate step.
All changes are invisible to the user, and are done within the existing
scripts and build system bindings. Output series and manipulations to
the tree are the same as they were before this change.
Updating the kern-tools SRCREV to pickup the kern-tools changes for this.
(From OE-Core rev: 961ab0ac53de317c22409d90244a313998959714)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumping the kern-tools SRCREV to pickup the following fixes and documentation
updates:
d484e3f kgit-meta: remove hardcoded meta directory name
affad20 yocto-kernel-tools: Typoes, "fragement", "depreciated"
142ed49 kgit-init: update tools list
(From OE-Core rev: 65113af811afcf53d3056d372861cd4d1a6bff07)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-tools SRCREV to import the following fixes:
commit 7f91d198d32fc90260e52724ef4aac0b997c1e8b
kconf_check: fix new Kconfig detection
One of the functions of the kernel configuration audit is to notify
the user if Kconfig* files have been removed from the kernel, and
also to notify of new Kconfig files.
New Kconfig files should be classified as hardware or non-hardware to
allow BSP audits to notify if boards are setting values that they
shouldn't, hence why notifying about new "buckets" is important.
commit c4f26a3296e0e1c3dbdd5ec8e2947d5443a9ffc2
updateme/scc: allow config fragment exclusion
It is common to need the features (patches, git operations) of a
branch, but not want the kernel configuration fragments of a given
branch. To allow this, we provide a new include flag "nocfg".
When this flag is used, all of the configuration fragments included
by the targetted feature will not be applied to the current build,
with one exception, a base/critical fragment can force it's config
values, since without them, the system would not be functional.
Example:
include ktypes/standard/standard.scc nocfg
commit c7ec19d55aca6c4b17073c5362fce5be61a89d82
scc: wrap git merge
To allow for parameter validation and sanity checking, wrap "git merge"
as a dedicated "merge" command instead of using the raw git fallback.
This also makes it consistent with existing top level commands such
as 'tag', 'branch', 'patch', etc.
There are no changes to arguments, and existing 'git merge' commands
continue to work with this change.
[YOCTO #3419]
[YOCTO #3421]
(From OE-Core rev: faf042b2c87874153a6b689479ab86e49804af8c)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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}"
(From OE-Core rev: 02ad603a104b70ab74548c8018e738bfbb3c59db)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a configuration fragment was missing, the previous error output
was not clear about the error:
| [INFO] doing kernel configme
| [INFO] Configuring target/machine combo: "standard/atom-pc"
| [INFO] collecting configs in ./meta/meta-series
| ERROR: could not sanitize configuration fragments
| errors are logged in ... linux/meta/cfg/standard/atom-pc/config.log
but we know the name of the missing fragment and can improve the error
message to be this:
| [ERROR] kernel configuration fragment fragment 'virto.cfg' cannot be found
| ERROR. A meta series could not be created for branch yocto/standard/common-pc/atom-pc
| ERROR. Could not locate meta series for atom-pc
| ERROR. Could not apply patches for atom-pc.
| Patch failures can be resolved in the devshell (bitbake -c devshell linux-yocto)
[YOCTO #3473]
(From OE-Core rev: 8e5dc511ffce4f4b512457dbc5d3dd510f6e4a95)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
| |
This reverts commit 46cc0d0a2f1486bf541c1a1b11075de3da396cc2 since
the revision in question isn't in the repository.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a configuration fragment was missing, the previous error output
was not clear about the error:
| [INFO] doing kernel configme
| [INFO] Configuring target/machine combo: "standard/atom-pc"
| [INFO] collecting configs in ./meta/meta-series
| ERROR: could not sanitize configuration fragments
| errors are logged in ... linux/meta/cfg/standard/atom-pc/config.log
but we know the name of the missing fragment and can improve the error
message to be this:
| [ERROR] kernel configuration fragment fragment 'virto.cfg' cannot be found
| ERROR. A meta series could not be created for branch yocto/standard/common-pc/atom-pc
| ERROR. Could not locate meta series for atom-pc
| ERROR. Could not apply patches for atom-pc.
| Patch failures can be resolved in the devshell (bitbake -c devshell linux-yocto)
[YOCTO #3473]
(From OE-Core rev: 46cc0d0a2f1486bf541c1a1b11075de3da396cc2)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the SRCREV to import the following changes.
[updateme: find the board description with the highest score]
This removes the requirement that a custom linux-yocto .scc file have
define KTYPE <foo>, where <foo> is typically "standard". The tools can
now match on a .scc file that only matches the board, but will still
chose one that matches the board and kernel type, if available.
[updateme: allow for tabs or spaces in defines]
define KMACHINE<tab>$MACHINE was missed by the regex.
[scc/kgit-meta: detect and avoid duplicating patching]
To allow feature description to be included multiple times, they were
previously split into -enable and 'patch' descriptions. With this change
the patches will be detected as already included, and skipped
automatically. Removing the need to do this split. It also cleans up
the ability to warn about multiple includes.
[kconf_check: add "verify" configuration fragment type]
This adds the ability for a BSP to have a kernel configuration
fragment that lists options that must be present. If they are not
present it is a hard error. "required" is a similar fragment, but
it adds them to the build, and audits them at the end, but does
not abort the build if they are present. This is a minor distinction,
but one that is useful when creating flexible, shared kernel config
structures.
[kconf_check: improve kernel audit report formatting]
[kconf_check: perform validity checks on non-hardware options]
[kconf_check: cleanups and verbose flag]
The existing output was verbose and not always useful to the reader.
This change makes the output more compact, audits non-hardware options
and gives information
[invalid (54)]: meta/cfg/preempt-rt/common-pc/invalid.cfg
This BSP sets config options that are not offered anywhere within this kernel
(From OE-Core rev: 2d328dc0f7dd763c45444394b681d2726b4f6c83)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumping the kern-tools SRCREV to pickup the following change:
[
kconf_check: fix find warning
When searching for all available Kconfig files, kconf_check was using
$meta_dir instead of $META_DIR. This resulted in a truncated path and
the following warning:
find: warning: -path $oe-path/linux/ will not match anything because it ends with /.
Using the proper variable removes the warning and make sure that we
do actually search all relevant directories.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
]
[YOCTO #3226]
(From OE-Core rev: 5999ccebc7b071737f82709467e2a2ec152240f6)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It was reported that the kernel configuration checks for custom yocto
kernels had the following output:
NOTE: validating kernel configuration
grep: /meta-series: No such file or directory
grep: /meta-series: No such file or directory
WARNING: Can't find any BSP hardware or required configuration fragments.
WARNING: Looked at //cfg///hdw_frags.txt and //cfg///required_frags.txt in directory: //cfg//
NOTE: Tasks Summary: Attempted 375 tasks of which 367 didn't need to be rerun and all succeeded.
which is not inspire confidence in the output of the process.
Completely inhibiting the check is one option to remove the messages,
but that removes the ability see output, which can help move users to
a better or more fully configured linux-yocto based kernel.
To fix this, we have to ensure that the path to the meta-series is
always valid, and that the tools can deal with not all files existing
in the audit directory.
Since custom yocto kernels do not set KMETA (they don't have a meta branch),
we ensure that a default of 'meta' is passed to the audit ('meta' is always
valid), and that kconf_check itself can deal with an incomplete set of
input audit files.
The net result is output like this (using a defconfig with invalid options
for the kernel being built):
NOTE: validating kernel configuration
This BSP sets 19 invalid/obsolete kernel options.
These config options are not offered anywhere within this kernel.
The full list can be found in your kernel src dir at:
meta/cfg/standard/qemux86/invalid.cfg
There were 1 instances of config fragment errors.
The full list can be found in your kernel src dir at:
meta/cfg/standard/qemux86/fragment_errors.txt
The full list can be found in your kernel src dir at:
meta/cfg/standard/qemux86/missing_required.cfg
(From OE-Core rev: 4d1b7dae063ee4c35c426306d0e22f11ce112c72)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Importing the following tools SRCREV:
kgit-meta: exclude explicit branches from name calculations
kernel branches are constructed during patching of the tree by
constructing a '/' based hierarchy of names as each branch
directive is encountered.
But if a "branch $name $branchpoint" is used, the entire branch
name is supplied so no additions to the hierarchy should
happen. As such, that type of branch command should not be part
of branch name calculation and preparation.
(From OE-Core rev: a3884938233c8a2d6861b1d4e6be5b9824d3b131)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When patches fail to apply, the status of all pending patches should
be exported to the logs and to the user. Currently, a missing export
of GUILT_BASE makes it look more like an internal error, than a 'normal'
patch failure:
| [ERROR] unable to complete push
| pending patches are:
| Patches directory doesn't exist, try guilt-init
With this variable exported, we have this:
| [INFO] validating against known patches (qemux86-standard-meta)
| error: patch failed: Makefile:2
| error: Makefile: patch does not apply
| To force apply this patch, use 'guilt push -f'
| [ERROR] unable to complete push
| pending patches are:
| links/files/0002-makefile-patch.patch
(From OE-Core rev: b2b2512cbc4196fa0f814be3677517dab30e5b52)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
commit 7a79f7412 [linux-yocto: make KBRANCH the exception and not the rule]
ensures that a request branch is always built. The implementation of this
guarantee is a branch switch before the build starts. But that switch may
be before all patches are applied. If the proper routines are not called,
no patches can be applied to the tree.
Updating the SRCREV to pickup this fix:
updateme: use branch command when forcing branch switches
When forcing a branch switch to the desired branch we should be
using the proper 'branch' command. Since without this call, the
proper variables will not be set, and patches can't be applied
to the tree.
(From OE-Core rev: bede3086cb9ab0f79fb7775528b646817b2b9af0)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To support custom repositories that set a SRCREV and that only have
a single master branch, do_validate_branches needs a special case
for 'master'. We can't delete and recreate the branch, since you
cannot delete the current branch, instead we must reset the branch
to the proper SRCREV.
(From OE-Core rev: de5bb5879fa3282c46dc1ede36af34eaab8f647f)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-tools SRCREV to pickup a collection of bug fixes
and cleanups:
75e71c3 kgit-config-cleaner: add -k <keep option>
02be3b5 buildall: switch back to scc driven processing
c7101db kern-tools: support flexible branching
e2d06bd kern-tools: Remove superfluous references to "defconfig" from the "createme" script.
e693754 kgit-checkpoint: fix verify_branch variable name typo
ee67a7b kgit-config-cleaner: fix redefintion processing
(From OE-Core rev: 70885a105bc16411ff57e3023b33656685cc2bab)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The kern-tools scripts can support a meta branch and directory of a name that
isn't "meta", but they need the name passed through the environment variable
KMETA. ensuring that KMETA is exported in the shell environment sets the stage
to support flexible meta branch name.
(From OE-Core rev: 9b90c8ace04c88ac6105f0bf686f9abc70fe8074)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The kernel branch is no longer required by the yocto-kern-tools
to locate BSP feature descriptions (it is the MACHINE:KTYPE
descriptor), so we no longer require that the BSP branch be
explicitly set.
If a kernel branch is explicitly set, it is now used to trigger
a checks to ensure that the branch really is being built.
Otherwise the branch that the machine description creates will
be built (just as it always was).
This further simplies the use and configuration of a linux-yocto
based kernel recipe.
(From OE-Core rev: 3cac3ce65abae9dc253641a2004440a2b38fd44d)
Signed-off-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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-tools SRCREV to pickup the following functionality:
- buildall: provides the ability to build all kernel branches
without a build system, only a cross compiler and configme
are required.
- robustness/cleanups: obselete/unused code removal and general robustness
fixes from Paul Gortmaker and Bruce Ashfield
The following kern-tools commits are part of this series:
b8dfd3d buildall: add whitelist/blacklist support
0ef039c configme: catch errors found during fragment sanitization
5b6498c buildall: remove all instances of it using/reading scc files
2e57550 buildall: support semi seamless restarts
4b5dd4d kconf_check: simplify cmdline args, dont store data per branch
58fbb6e configme: relieve it of all knowledge of scc files
a03e291 configme: strip out alternative meta series logic.
96d2bcf kgit-init: check for valid branchpoint
5598db6 buildall: allow a max cap on the number of builds done
b46abec buildall: add support for randomizing build order
68a04e9 buildall: dont copy failed build logs into main build dir
5575d85 buildall: script to independently build all board kernels
86d6200 configme: delete unused variable
8d4e29d configme: delete unused KPROFILE setting
7e15436 configme: ensure we have a valid machine type set
152b9cb scc: remove depreciated/unused commands
bb4e96a scc: allow includes within conditional statements
7da7951 configme: derive path to tools from $0
152dc45 configme: test for BUILD_DIR != ""
129f7b0 kgit-scc: add warnings about bad input args.
e977662 kgit-scc: add text for no arg and invalid arg case.
[YOCTO #843]
(From OE-Core rev: be3cff86d55db6255e036d68e943e527802b4f4c)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-tools SRCREV to pick up the following fix:
Out of tree feature descriptions (.scc files) take two forms: normal
features and BSP descriptions.
A normal feature is detected and added to the end of the current machine
being processed. During tree processing, it's configuration and patches
will be applied.
A BSP description on the other hand must be matched based on three
critera (which are in the .scc file via "define <foo>"):
- machine
- kernel type
- architecture
Since features that define machines are only explicitly added, they
are removed from the list of features that should be automatically
added.
The criteria for removing them from the auto-add list is the
definitions found in the .scc file. The existing check was simply
for KMACHINE anywhere in the file. This meant that a conditional
or even a comment containing that phrase would exclude a file.
Properly anchoring the KMACHINE test to "^define.*KMACHINE" fixes the
problem of overly agreesive exclusions.
(From OE-Core rev: 75a973328d50ef3c007edb7a471ea77fb97911ea)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-tools SRCREV to pick up fixes that remove unused
code, transition code (tree format changes) and to remove assumptions
about branch and directory naming.
There are no user visible changes with this update, but the plumbing
changes will be used in future updates for more generalized support.
The commit details are below:
Author: Bruce Ashfield <bruce.ashfield@windriver.com>
Date: Fri May 11 12:13:12 2012 -0400
kgit-publish: remove --remote option
The ability to publish and automatically push a repository was
never used, and is error prone. The complexit isn't needed in
the script, so removing it is the best option.
An explicit push after tree publication is suggested, or a
wrapper script (specific to a particular infrastructure) around
this script.
(From OE-Core rev: 5b1a096211ebeb8dac4f1a39d96ae2f9a3d00634)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Author: Bruce Ashfield <bruce.ashfield@windriver.com>
Date: Fri May 11 12:04:09 2012 -0400
kern-tools: remove unused code, scripts and transition code
The period of supporting old trees with a different meta
branch name and directory structure are gone. So the cleanup
and removal of the old structure can be completed.
The meta branch and directory are now controlled via command line,
or via the KMETA environment variable. No testing and conditional
processing of the tree are required.
Additionally, the generate_cfg script is no longer used, or is the
branch conditing code in createme. So they can be safely removed
from the tools and repository.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Author: Bruce Ashfield <bruce.ashfield@windriver.com>
Date: Thu May 10 12:18:19 2012 -0400
kern-tools: remove meta tag and directory assumptions
During repository sanity checks (createme) and during the
checkpoint process, there were several assumptions about the tree
that either relied on a tag, or a particular directory name.
With this set of changes, simply passing the meta branch name is
enough to sanitize and restore the checkpoint. If no meta branch
name is passed, the default of 'meta' is used for both the branch
and meta data directory name.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The LICENSE field for kern-tools was generic and leads to QA warnings
from the license classs:
"No generic license file exists for: GPL in any provider"
Updating to a specific GPL version that matches the source fixes the
warning.
(From OE-Core rev: 72101b324062642474d67ee90356489993a973d0)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The linux-yocto repository and scripts can support a mode of
meta data management that merges a base meta branch to every
BSP branch. In this case, the scripts don't have to restore
a checkpoint for the meta data to be globally accessible.
The decision to restore or not is made based on whether or
not the meta branch is part of all branches or not.
The linux-yocto recipes have a sanity check to determine if
the requested SRCREV for meta data matches the head of the
meta branch (via do_validate_branches). If the wrong commit
is at the head, the meta branch is moved aside and the branch
reset to the right commit. This creates two meta branches that
contain the base meta data.
The test for integrated meta data mistakes this for a globally
merged set of meta data and doesn't restore the checkpoint, which
leads to build failures.
The immediate fix is to allow two branches to have the meta
data. The long term fix is to make the detection only consider
if the build branch contains the meta data.
(From OE-Core rev: bd794b92d12ceda2728520701e980b7a3cabd23d)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the SRCREV to pick up two minor fixes:
1/2:
kgit-init: correct spelling of createme
kgit-init copies the kern-tools scripts and intends to copy createme.
The typo is in the usage() of updateme as well.
(From OE-Core rev: 043871d7e5d2d19c2ff43e54d2ff180c09e8903e)
Signed-off-by: Michel Thebeau <michel.thebeau@windriver.com>
2/2:
kconf_check: fix bad quoting around missing_required.cfg
missing_required.cfg won't have it's path truncated (if applicable), since
the quoting it wrong.
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In order to support repositories of various types (with or without
meta data, branched, pristine, custom, etc) information about the
type of processing that is required was passed to the processing
phases via variables.
The combination of variables involved in coordinating the processing
creates a learning curve and overly complicates recipe extensions.
With minor tweaks to the kern-tools, adding flexibility and keying
off the existence of the meta branch it is possible to remove all
of the variables that were added to support different repository
types.
(From OE-Core rev: 06e5f45c8f38925cd5902a3a3f436f5e9451dd16)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In fixing an existing patch migration bug, the list of valid extensions
got out of sync from the core patch class. As a result, valid patches
were not being applied to the tree.
Updating the tools to migrate .diff files fixes the issue.
Also in this fix is the removal of .patch in the find_sccs() routine, since
it will never be returned by patch.bbclass when all non-patches are
requested, it is simply confusing.
(From OE-Core rev: 0ade3f26f40b67d7296725b1e956c46be9a86089)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
During testing/extension of the linux-yocto-tiny kernel it was found that
defconfigs were not always properly applied. This was due to two issues:
- not being able to fully control the order of objects applied to the
git tree on the SRC_URI
- defconfigs triggering --allnoconfig before being applied
To fix this, the recipe space code that previously detected and generated
automatic features moves back to the kernel tools (where it was before) and
is updated to also process .cfg and defconfigs. Moving this back to the
tools allow other recipes to automatically benefit from the additional
support.
The second issue is addressed by allowing configme to take --alldefconfig
when a recipe wishes to pass a defconfig and override the default
behaviour.
Fixes [YOCTO: 2250]
(From OE-Core rev: 08c368b9980716e459d846dd7183940a5bf8bea4)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
| |
* We have various variables which are either not quoted at all or are half
quoted. This patch fixes the bad exmaples so everything is consistent.
(From OE-Core rev: 960ee8076e860353a05eb2eb7f825a455c54698d)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
To adapt to different branch names in a repository, removing explicit
references to 'yocto' in automatically created BSPs ensures that they
are consistent with the merged variants. Existing BSPs and auto BSPs
are not impacted by this change.
(From OE-Core rev: 74613d02aa844cac3be0626cc64139643fe17a4f)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-tools SRCREV to import the following changes:
a7a9930 kgit-meta/scc: allow multi-line defines
e3442c6 kern-tools: add required and optional kernel configuration processing
b56b67b configme: extract redefinition and mismatch information
6118eaf kern-tools: remove branchname assumptions
These are required to support the kernel configuration policy changes
implemented in the yocto 3.2 kernel repository.
(From OE-Core rev: 5a3759f4b23361dd2c1968ce51e5c3695a661972)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The commit:
kern-tools: update SRCREV to pickup git operation fixes
Brought in the ability to trap failed git operations on the working tree,
but what it missed were some branching changes that allow arbitrary
branch points and the ability to create a branch multiple times (if a feature
is included multiple times). The graphics driver branches used by some
BSPs need this part of the change to properly handle graphics driver
branches.
Updating the SRCREV to pickup the associated kern-tools changes for this
support.
(From OE-Core rev: 229036a961bae61847a05546a92dfc93a88c6f67)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the kern-tools SRCREV to pickup the following commit:
[
kgit-meta: add error checking and autoconfiguration to git commands
When git commands are embedded into feature descriptions, they can
fail for a variety of reasons. The current meta series processing does
not trap errors, and will continue to process potentially failing
commands. All git commands are now checked for their return code, and
in case of error, the error code is passed up via early exit.
A second common git issue is on a new machine that has not been
configured with a username/email for commits. This is now detected
by checking for a global user.name. If one is not found, a local
user name of "Auto Configured" and email of "auto.configured" is
created to allow git operations to succeed.
]
Fixes [YOCTO #1838]
(From OE-Core rev: 015cb39ccf490de07bfd007fafc6d75c6c152add)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously the install of the kern-tools was manual and fully controlled by
whatever build system was integrating/using the utilities. To make this more
generic a Makefile is now provided to take care of installing and removing to
DESTDIR.
Updating the kern-tools recipe to take advantage of this new facility.
(From OE-Core rev: 8af13cc0038111cbb13d9718256d491d326ed5e8)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
As a transition step to moving kern_tools into the kernel tree
itself this change adopts merge_config.sh as a common base for
merging configuration fragments. So we add merge_config.sh and
pre_config to the list of kern_tools.
(From OE-Core rev: 78efb73e0bca09c09574ce23622859db412a26c8)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There were some config fragment warnings that were being hidden
by virtue of being output while generating the full config versus
the ones that were generated during the configuration audit task.
This change does the following:
- Updates the kern-tools SRCREV to include changes that move
all kernel configuration warnings to the audit script
- Updates the meta SRCREV for linux-yocto to get updated
kernel configuration fragments that are warning-free. These
are duplicated configs, and other changes that have a net
result of no runtime changes.
(From OE-Core rev: 8e67d4dd1e1bc64a84791abc613e237e29dd2aaa)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After constructing a kernel configuration file it then needs
to be located in the tree so it can be audited against the
final .config. The previous string that was used for the search
pattern contains the kernel version. If the recipe space kernel
version and internal tree version are out of sync, this will
cause the constructed config to not be found. By removing the
version from the search string, we can still find out config and
gracefully adapt to minor version skew.
(From OE-Core rev: f072ddc43828ebe8df4dd7433726775dd547580b)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updating the SRCREV to pickup a series of changes to the
kern-tools that allow more flexible creation of trees from
scratch. This functionality is not used by the normal
kernel build process and has no impact on existing builds.
(From OE-Core rev: faaa03c2a166e37a11edd52011799e6a8cff144d)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When building an external tree or bootstrapping a BSP the
external branch may not have been checked out. The tools now ensure
that the tree is ready for configuration, so we no longer need to
force the checkout of the external branch.
This change is coupled with some kern tools tweaks as follows:
40d9bab updateme: allow the location of board descriptions based on defines
59859ca createme: use branch name when creating meta data
91b4275 configme: determine meta branch based on directories, not branch naming
f5a915c kgit-meta: make branch creation and renaming more robust
(From OE-Core rev: 02c82bf5255b09bb27a0a4509861a3d2bd84b09f)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes [YOCTO #1261]
Updating the SRCREV to pickup some branch creation fixes that
were causing an invalid branch name to be used on a repository
that couldn't support it (i.e. standard/base on a 2.6.34).
With this the 2.6.34 and 3.0 -rt branches will build.
(From OE-Core rev: e1df34c9d4614adc04528b73a8860e973c5db54d)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a BSP or layer specifies an AUTOREV for SRCREV, the logic
that matches expected vs real branch heads doesn't apply. We
always want the latest.
To solve the issues with invalid git revs causing validation
failures, we detect the AUTOINC value and do a early return,
skipping validation.
(From OE-Core rev: b4f1845f7cf42059984112e3f41a323b4c9d6dfd)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes bug: [YOCTO #955]
Updating the SRCREV to pickup the kern-tools change:
[
updateme: error if features are not found
Rather than silently dropping addon features, we emit a warning
and then exit with a failure code. The caller can then abort a
build and not simply miss features.
Passing --no-strict to the script disables this new functionality
if for some reason a feature description is missing on purpose.
]
(From OE-Core rev: d7f3e91c15328440ffbf501c502098133fd34d3a)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|