Richard Purdie [Fri, 8 Nov 2013 15:18:00 +0000 (15:18 +0000)]
kernel: Use hardlinks for do_populate_sysroot for speed
The kernel tree is large and doesn't need to be copied. Override
the default sysroot handling function to use a hardlink copying
function in python.
This commit also drops the copying of the /lib directory which
just contains the kernel modules. We never use those in the sysroot
so there is little point in carrying those around.
For linux-yocto this takes the do_populate_sysroot time 24s -> 14s.
Ross Burton [Fri, 8 Nov 2013 16:06:38 +0000 (16:06 +0000)]
glib-2.0: move more logic to the .inc
The .bb was getting larger with configuration being arbitarily split between .bb
and .inc. To help adding a glib_git recipe, strip the .bb down to SRC_URI.
Also don't remove $libdir/gio as it should be owned by glib.
Richard Purdie [Fri, 8 Nov 2013 22:13:38 +0000 (22:13 +0000)]
lib/oe/path: Fixup handling of .* files in top level paths for copyhardlinktree()
Files named .* in the top level of directories handled by this function
were getting lost after the directory copying command was fixed. Rather
than complicate the function further, use cpio instead.
With the directory copy was added to avoid race issues, it wasn't noticed that
tar was recursing the directories and copying files too. This is completely
crazy when we hardlink those files in the next command.
Resolve the issue by telling tar not to recurse. This gives a significant
performance boost to various parts of the system (do_package for linux-yocto
256s -> 178s for example).
Richard Purdie [Fri, 8 Nov 2013 15:17:07 +0000 (15:17 +0000)]
kernel: Use hardlinks during do_install for speed
Whilst the comment says we can't do this, its incorrect, install operates
on WORKDIR and its hard for different parts of WORKDIR to be on different
filesystems. Hardlinking instead of copying is therefore a nice performance
gain.
Also, completely skip the Documentation directory (adding a dummy Makefile
to keep make happy) and tweak the other cp commands to link since if we
don't we'd get "this is the same file" type errors from cp for some kernel
versions.
For do_install on linux-yocto, this takes it from 227s -> 84s.
Cristiana Voicu [Thu, 31 Oct 2013 08:17:08 +0000 (08:17 +0000)]
liburcu: upgrade to 0.8.0
Fix case where ${B} != ${S}; add patch to allow out
of tree doc exemples build to work
Add patch to remove CC=gcc when CC is defined, in order to
use the cross compiler.
Lu Chong [Thu, 7 Nov 2013 12:40:18 +0000 (12:40 +0000)]
avahi: fix avahi status command error prompt
service --status-all command will display wrong status for avahi-daemon.
This commit fix this error prompt and make service display right status
for avahi-daemon.
Ross Burton [Thu, 7 Nov 2013 11:55:35 +0000 (11:55 +0000)]
weston-init: start weston on a new VT
Weston 1.3 needs to run on a VT, which is typically handled by weston-launch.
Currently weston-init doesn't use weston-launch as that depends on the
(non-default) pam DISTRO_FEATURE, so depend on kbd and use openvt directly.
This also fixes problems caused by the init script blocking until Weston exits,
which meant that later init scripts were not actually running.
Ross Burton [Thu, 7 Nov 2013 11:55:34 +0000 (11:55 +0000)]
weston: upgrade to 1.3.0
Remove backported patches that are now integrated.
No need to patch build to install examples with --enable-demo-clients, update
FILES now that all examples are being installed.
Remove cairo-gl option as our cairo doesn't support GL (yet), remove
--disable-android-compositor as it was dropped upstream, and add PACKAGECONFIG
for the VAAPI-based recorder as otherwise it's a floating dependency (libva is
in meta-intel).
Based on work by Ewan Le Bideau-Canevet <Ewan.LEBIDEAU-CANEVET@eurogiciel.fr>.
Khem Raj [Thu, 7 Nov 2013 03:52:25 +0000 (03:52 +0000)]
cross-canadian: Let cross-canadian packages build for uclibc
Fixes errors like
Parsing recipes...ERROR: Building cross-candian powerpc for an unknown
TARGET_SYS (powerpc-angstrom-linux-uclibc), please update
cross-canadian.bbclass
ERROR: Building cross-candian powerpc for an unknown TARGET_SYS
(powerpc-angstrom-linux-uclibc), please update cross-canadian.bbclass
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chen Qi [Sat, 2 Nov 2013 05:21:59 +0000 (13:21 +0800)]
bootlogd: create log file if not present
Previously, our system had no boot log even if the bootlogd daemon was
started correctly. The root cause is that the log file doesn't exist
when starting the bootlogd.
Add '-c' option to bootlogd so that it will create the boot log if
it doesn't exist.
Stefan Stanacar [Sun, 3 Nov 2013 12:27:16 +0000 (14:27 +0200)]
lib/oeqa/utils: sshcontrol: make timeout depend on output
Instead of running the commands with a fixed timeout,
we should kill the command if there is no output
for timeout seconds.
Also changed some strings/comments.
packagegroups are allarch and shouldn't change depending on the target
or machine selected. In general they should have good stable namespaces
for their dependencies. As such we can exclude them from rebuilding when
dependency checksums change.
Lu Chong [Tue, 5 Nov 2013 10:39:26 +0000 (18:39 +0800)]
ppp: Fix compilation errors in Makefile
This patch fixes below issues:
1. Make can't exit while compilation error occurs in subdir for plugins building.
2. If build ppp with newer kernel (3.10.10), it will pick 'if_pppox.h' from sysroot-dir and
'if_pppol2tp.h' from its own source dir, this cause below build errors:
bitbake_build/tmp/sysroots/intel-x86-64/usr/include/linux/if_pppox.h:84:26:
error: field 'pppol2tp' has incomplete type
struct pppol2tpin6_addr pppol2tp;
^
bitbake_build/tmp/sysroots/intel-x86-64/usr/include/linux/if_pppox.h:99:28:
error: field 'pppol2tp' has incomplete type
struct pppol2tpv3in6_addr pppol2tp;
^
The 'sysroot-dir/if_pppox.h' enabled ipv6 support but the 'source-dir/if_pppol2tp.h' lost
related structure definitions, we should use both header files from sysroots to fix this
build failure.
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>
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>
Lu Chong [Tue, 5 Nov 2013 11:49:30 +0000 (19:49 +0800)]
makedevs: several fixes
This patch fixes below issues:
1. In makedevs.c file, it lost related functions definition about "-q" and
"--squash" options. So we should remove help information of these options
from makedevs.c to fix this issue.
2. Previously, It returned nothing when makedevs command be executed with
none or invalid option. We hope to print help information and return non-zero
value.
3. If use '-d' option to pick non-existent dir, error messages should be returned.
Alex J Lennon [Wed, 6 Nov 2013 18:15:39 +0000 (18:15 +0000)]
sqlite3: Add support for column metadata API
I found that Mono.Data.SQlite has a dependency on the column meta-data API, thus enabling this API enables use of Hibernate / Mono with SQLite and no doubt enables other ORMs / utility libraries.
The API is present in the used SQLite3 sqlite-autoconf-3080002 source-base. Thus we are enabling pre-existing SQLite support rather than introducing new code.
I am not aware of any issues that enabling this SQLite functionality introduces, other than a slightly increased library size of circa 1.5KB , i.e. coretexa9_vfp_neon i.MX6
- with column meta-data API 610360 libsqlite3.so.0.8.6
- without column meta-data API 608880 libsqlite3.so.0.8.6
Signed-off-by: Alex J Lennon <ajlennon@dynamicdevices.co.uk> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Peter Seebach [Thu, 10 Oct 2013 19:01:40 +0000 (14:01 -0500)]
binutils: Drop binutils-symlinks
The -symlinks package doesn't really add any value if we're
using update-alternatives. Drop it, leaving a spare RPROVIDES
in case anyone thought they needed it.
Peter Seebach [Wed, 9 Oct 2013 00:03:57 +0000 (19:03 -0500)]
binutils: Use alternatives for the binutils-symlinks package.
The ar and strings utilities are provided as alternatives, but
the rest of binutils is being done with binutils-symlinks. This
has the side effect that if you want "as", and you install
binutils-symlinks to get it, you don't get "ar" from it, because
it's not in the symlinks package.
Solution: Use the same mechanisms for everything, putting
everything in ALTERNATIVES, so installing binutils on a target
produces the expected behavior of having the various utilities in place.
(We do this only for class-target, though.)
Issues: The "embedspu" and "ld.gold" binaries may or may not exist,
but the determination of whether to list them as alternatives is
being made before the point at which we can easily check for them,
so that can produce warnings.
Richard Purdie [Wed, 6 Nov 2013 10:55:55 +0000 (10:55 +0000)]
toolchain-scripts/meta-environment: Further cleanup code duplication
There was still duplicated code in toolchain-scripts, this further cleans
up the functions to remove it. The now unused includedir parameter is also
dropped.
The final scripts do end up reordered slightly and the sysroot is parametrised
for the IDE scripts which is an improvement but should have no functional
difference.
Richard Purdie [Tue, 5 Nov 2013 22:08:56 +0000 (22:08 +0000)]
package_deb/package_ipk: Cleanup control file handling/races
If you Ctrl+C ppackage_write_{deb/ipk} control files can get left lying around
and make it into another packaging format. This ensures we cleanup all known
control files before starting packaging. We can simplify some of the globbing
as a result.
Richard Purdie [Tue, 5 Nov 2013 22:08:04 +0000 (22:08 +0000)]
package_rpm: Remove need for locking
Currently if multiple package tasks are running against a recipe, package_rpm
is restricted to the slowest speed of them due to the locking. This patch
explicitly ignores the opkg/debian artefacts and hence allows a speedup.
It also removes an issue were a Ctrl+C interrupting a deb.ipk packaging task
would end up with CONTROL/DEBIAN files in the spec file resulting in a build
failure.
Richard Purdie [Tue, 5 Nov 2013 22:09:51 +0000 (22:09 +0000)]
toolchain-scripts/meta-environment: Merge toolchain_create_sdk_env_script and the for_installer variant
Having two scripts which do basically the same thing is a nightmare. This merges
them together. It also makes the sysroot location a variable in its own right
which may be more useful for end users wanting to change sysroot.
Paul Eggleton [Tue, 5 Nov 2013 10:15:20 +0000 (10:15 +0000)]
zisofs-tools-native: fix meta fields
* Drop redundant DESCRIPTION (same as SUMMARY)
* Set SUMMARY to slightly more descriptive value borrowed from Fedora
* Fix HOMEPAGE URL (repeated http://)
Bruce Ashfield [Tue, 5 Nov 2013 18:47:50 +0000 (13:47 -0500)]
linux-yocto/3.10: fix qemuarm boot and spurious mips build warning
This update fixes two issues:
a) qemuarm boot failure
v3.10.13 picked up a patch for arm versatile interrupt mappings that fixes
the emulator boot out of the box. But it interacts badly with our previous
fix for the issue. Reverting the existing patch and going with the mainline
solution fixes the boot.
b) qemumips build warning and failure
Depending on the build host and compiler, the build of menuconfig throws
an potentially uninitialized variable warning. That warning causes an
error on archs with -Werror. We can do a trivial change to avoid the
warning all together (initilize it to null), and keep everyone happy.
Chris Patterson [Sat, 2 Nov 2013 19:52:13 +0000 (15:52 -0400)]
qemu: upgrade to 1.6.1
This update also drops the following patches which appear to have
been resolved upstream:
- ftd_header.patch
- target-i386-Fix-aflag-logic-for-CODE64-and-the-0x67-.patch
- target-ppc_fix_bit_extraction.patch
Qemu no longer uses the i386.ld and x86_64.ld linker scripts
and the .interp section should now have a 0x1000 size with the
proper path. Therefore, for nativesdk-qemu, the following
patch should no longer be required and is also dropped:
- relocatable_sdk.patch
Lu Chong [Sat, 2 Nov 2013 08:30:28 +0000 (16:30 +0800)]
ppp: Add two structures in if_pppol2tp.h
Some further structure definitions are needed in include/linux/if_pppol2tp.h for
IPv6 support, else we would get the error as below:
In file included from plugin.c:53:0:
bitbake_build/tmp/sysroots/intel-x86-64/usr/include/linux/if_pppox.h:84:26:
error: field 'pppol2tp' has incomplete type
struct pppol2tpin6_addr pppol2tp;
^
bitbake_build/tmp/sysroots/intel-x86-64/usr/include/linux/if_pppox.h:99:28:
error: field 'pppol2tp' has incomplete type
struct pppol2tpv3in6_addr pppol2tp;
^
make[2]: *** [plugin.o] Error 1
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>
Stefan Stanacar [Fri, 1 Nov 2013 10:37:56 +0000 (12:37 +0200)]
lib/oeqa: add oeTest superclass
Add oeTest superclass, make oeRuntimeTest inherit that and
make the necesarry adjustments. Tests in lib/oeqa/runtime don't
change, they still inherit oeRuntimeTest.
We should do this because oetest.py in the future can be a base module
for more stuff than oeRuntimeTest.
Xufeng Zhang [Fri, 1 Nov 2013 04:25:17 +0000 (12:25 +0800)]
kernel.bbclass: Delay rm_work to run after do_bundle_initramfs
Since kernel will build twice when we are trying to bundle kernel
and initramfs together after commit 609d5a9ab("kernel.bbclass,
image.bbclass: Implement kernel INITRAMFS dependency and bundling"),
thus, the second building for kernel would fail if rm_work is done
previously.
To fix this problem, we need to make do_bundle_initramfs task run
before do_rm_work task.
package.bbclass: Fix split_and_strip_files when file has single quote (')
Fix false error report when a file that has a single quote by escaping
the single quote. Some packages might install files with quotes, such
as music files and other types, that will cause the problem.
Signed-off-by: Felipe F. Tonello <eu@felipetonello.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake: toaster: enable required classes in the toaster startup script
In order to use toaster, now you have to set INHERIT+="toaster buildhistory"
To keep it simple, I've done some changes in order to automate it. When toaster
is started, this line is added to a new file called toaster.conf.
This file is passed to the bitbake server with the --postread parameter.
Based on a patch by Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake: cooker: do not recreate recipecache in buildfile mode
When building a single file, the cooker will recreate
the recipecache from scratch.
I suspect this is a remnant of past code, since:
* the current recipecache works fine
* the new recipecache will not have all the fields as
requested by HOB_EXTRA_CACHES setting
This patch disables recreating the recipecache, leading
to shorter times when building single build files
(-b option) and better compatibility with Toaster.
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake: cooker: add data to the dependency tree dump
Toaster needes to record extra data that needs to
be moved at the time of the dependency tree dump.
This data includes:
* layer priorities for recording in the layer section
* the inherit list for each PN which allows to determine
the type of the PN (regular package, image, etc).
This patch adds this data to the dependency tree dump.
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake: toaster: fixes for null values from events
Some of the data values may come of as None through the event system,
and the UI would encounter a problem saving the Configuration.
It would be trying to save these values as NULL in the
database, which is not allowed.
This patch adds more verification for data coming through
the event system.
Other minor updates:
* update for the event model from toaster.bbclass
* minor code flow fix in the event system
Adding a new bbclass that will collect and send relevant
data from the task context to the Toaster UI.
This bbclass consists of postfuncs that get executed
right after the main task func, and in the same context.
This allows data gathering in a synchronous manner during
the build, guaranteeing data integrity. This approach also
preserves the task signatures.
The data is moved to the UI through the event system.
There is no performance impact if the class is disabled.
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 29 Oct 2013 15:26:54 +0000 (15:26 +0000)]
image_types: Improve dependency handling between types (and use for sum.jffs2)
We're seeing a pattern of one image type needing to depend on another
type. A good example is jffs2 and sum.jffs2. This patch makes sum.jffs2
depend on jffs2 which will then allow a EXTRA_IMGAGECMD to be set for
sum.jffs2 individually without changing the jffs2 command. This allows the
-pad option to be configured differently.
Cristiana Voicu [Fri, 1 Nov 2013 09:18:45 +0000 (11:18 +0200)]
bitbake: hob: populate error_msg when hob receives a CommandFailed event
When Hob receives a bb.command.CommandFailed event, it doesn't show any error,
because the error_msg is empty. If so, it is hard to detect the issue, because
Hob continues to run till it blocks because of an information gap.
bitbake: fetch2/svn.py: use log instead of info to retrieve revision
We have faced a corner case situation where the 'last changed
revision' returned from svn info is wrong. It happens when the last
revision is a directory move. e.g. if we assume that the svn
repository at revA has root/x/y/z/foo/bar and it is moved to
root/a/b/c/foo/bar in revB, then svn info 'last change revision' will
return revA. As such when using AUTOREV, we are going to attempt to
retrieve root/a/b/c/foo/bar (as per SRC_URI) but at revA when it did
not exist.
So this patch changes how we retrieve the latest revision and uses
'svn log --limit 1' which gives correct result in all tested cases.
Maxin B. John [Thu, 31 Oct 2013 15:01:25 +0000 (08:01 -0700)]
adt-manual: Added note for static builds using -c populate_sdk
Documentation fix for [YOCTO #5347]
SDK created useing the "-c populate_sdk" will not support static
binary build without proper staticdev library packages.
I have added a note to inform the user about this limitation.
Scott Rifenbark [Wed, 30 Oct 2013 18:42:59 +0000 (11:42 -0700)]
dev-manual: Updates to Toaster section
Partial fix for [YOCTO #4414]
I put in the API stuff as well as made sure the other comments
for the dora-toaster branch and temporariness of the GUI were
mentioned. Probably more tweaks before this section settles
out.
Scott Rifenbark [Wed, 30 Oct 2013 17:35:01 +0000 (10:35 -0700)]
dev-manual: Edits to the toaster section
Partial fix for [YOCTO #4414]
Got some feedback on the section and added a step that the user
needs to checkout the dora-toaster branch after clonine poky.
Also, that the Django version is specific and not the listed
version +. Finally, a bit of wording to note that the GUI is
temporary for this release.
Scott Rifenbark [Wed, 30 Oct 2013 15:09:53 +0000 (08:09 -0700)]
ref-manual: updated the list of where to get YP release
Partial fix for [YOCTO #5368]
The list that summarized where to get YP release did not include
the source repositories. It basically just listed tarball
areas. Now that cloning the Git repo of poky is the preferred
method for obtaining YP, I made sure that this area was the
first spot listed and called out as the preferred method.
Scott Rifenbark [Tue, 29 Oct 2013 18:27:38 +0000 (11:27 -0700)]
dev-manual, mega-manual: Updated kernel flow (text and figs)
Partial fix for [YOCTO #5368]
Updated the figure to not have the tarball method in there
for setting up poky repo locally. Also, added specific references
to the environment setup scripts.
Scott Rifenbark [Tue, 29 Oct 2013 17:51:01 +0000 (10:51 -0700)]
dev-manual, mega-manual: Updated BSP Development figure
Partial fix to [YOCTO #5368]
I updated the workflow so that it does not have the tarball
extraction option to set up local copies of poky and meta-intel.
The figure is housed in dev-manual and mega-manual.
Scott Rifenbark [Tue, 29 Oct 2013 16:45:24 +0000 (09:45 -0700)]
dev-manual: Edits to the "Source Directory" term
Fixes [YOCTO #5368]
Partial fix to the tarball removal issue. I rewrote parts of
this term's definition to slightly de-emphasize tarball expansion
as a method to set up the Source Directory on the local machine.
Scott Rifenbark [Tue, 29 Oct 2013 15:53:14 +0000 (08:53 -0700)]
dev-manual: Edits to "Yocto Project Source Repositories" section
Fixes [YOCTO #5368]
This is a partial fix to the removing tarball setup method issue.
I have modified the "Yocto Project source Repositories" section to
de-emphasize the tarball installation method for poky and meta-intel.
We cannot remove these obviously because the download page of the
website gives the use access to tarballs. Also, the Index of
Releases basically does the same thing. So, we can't ignore the
fact that they are there. So, I added a note basically saying we
recommend the Git method for creation of poky and meta-intel on the
development system.
Scott Rifenbark [Tue, 29 Oct 2013 15:14:12 +0000 (08:14 -0700)]
dev-manual: Removed tarball method for installing meta-intel
Fixes [YOCTO #5368]
Partial fix for this issue, which is removal of the tarball install
methods for poky and now evidently meta-intel. This commit removed
the tarball install step for meta-intel in the "Supported Board
Support Packages (BSPs):" bullet item in the getting setup section.
Scott Rifenbark [Tue, 29 Oct 2013 14:37:31 +0000 (07:37 -0700)]
dev-manual: Removed tarball method for poky in setup section
Fixes [YOCTO #5368]
Partial fix for the bug. This part removed the tarball install
method from the getting setup section of the second chapter. I
did some rewriting to smooth it out.
Scott Rifenbark [Fri, 25 Oct 2013 16:43:43 +0000 (09:43 -0700)]
adt-manual: Edits to "Extracting the Root Filesystem" section
This section was a bit confusing. I added some lists to make
it clearer when this step is necessary. I also added some more
detail on where to find the setup script.