Darren Hart [Tue, 19 Mar 2013 22:15:05 +0000 (15:15 -0700)]
mkefidisk: Remove startup.nsh
Most firmware implementations use the EFI specified
EFI/BOOT/bootia32.efi (and similar) boot paths. Only broken firmware
uses different paths for removable media. In those cases, the user can
add their own startup.nsh.
For the compliant case, selecting "Shell" from the EFI boot menu should
go to the shell.
Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Darren Hart [Tue, 19 Mar 2013 22:15:04 +0000 (15:15 -0700)]
mkefidisk: Always use rootwait and document kernel parameters used
Without a reliable way of knowing if the target device with be an
asyncronous block device on the target (MMC or USB), err on the side of
caution of always specifcy "rootwait", ensuring the kernel will wait for
the device to appear and not abort if it hasn't appeared in time for
mount.
Document the remaining kernel parameters added by this script on the
same line as rootwait.
Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Darren Hart [Tue, 19 Mar 2013 22:15:03 +0000 (15:15 -0700)]
mkefidisk: Boot with ro kernel parameter instead of rw
There is no need to boot with "rw". Booting with "ro" will allow for
fsck to be run during boot, and a proper /etc/fstab will still ensure
the rootfs is "rw" by the time the user can interact with the system.
Change the "rw" to "ro" in the kernel parameters specified in the
generated grub.cfg file.
Fixes [YOCTO 4036] mkefidisk.sh hardcodes 'rw' as root mount option
Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Darren Hart [Tue, 19 Mar 2013 22:15:02 +0000 (15:15 -0700)]
mkefidisk: Always specify a root= kernel parameter
The current script only replaces an existing root= kernel parameter
which can result images created without a root= paremeter, even though
the script expects a target rootfs parameter.
Rather than replacing the root= parameter, delete the root= parameter if
it exists, then append an appropriate root= parameter.
Fixes [YOCTO 4035] mkefidisk.sh forgets to add root= parameter
Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Thu, 21 Mar 2013 09:24:25 +0000 (09:24 +0000)]
consolekit: don't inherit gnome
By inheriting gnome this package was build-depending on
gtk-update-icon-cache-native, gconf, gconf-native, shared-mime-info and
hicolor-icon-theme for no reason. Change this to inherit autotools pkgconfig to
reduce the build-dependencies.
Also, add a missing dbus-glib build-dependency that was previously pulled in
through something in the gnome class.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
package_{ipk, deb, rpm}: drop the TARGET_OS conditional
The tclibc file for uclibc already empties IMAGE_LINGUAS, so there's no point
to this conditional as far as I can tell, and it can cause issues for certain
values of TARGET_OS.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This was removed from package_rpm and package_ipk years ago, and shouldn't be
needed, installing the packages from package_linguas should be sufficient.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Coreutils does not depend on ACL but also does not disable it. Effect is
that from time to time I have a copy in sstate-cache which got built
with ACL and then I have problem while building images or sdk:
| Collected errors:
| * satisfy_dependencies_for: Cannot satisfy the following dependencies for packagegroup-core-standalone-hhvm-sdk-target:
| * libacl1 (>= 2.2.51) *
| * opkg_install_cmd: Cannot install package packagegroup-core-standalone-hhvm-sdk-target.
Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Thu, 21 Mar 2013 15:43:40 +0000 (15:43 +0000)]
perl: avoid splitting out .debug directories as packages
The recursive parameter is set to True, the regex for the first call to
do_split_packages matches any path under ${libdir}/perl/${PV}/auto/, and
the .debug directories contain .so files, so each one was getting picked
up as a package. Change the regex to disallow dots in the path beneath
auto/ and thus avoid the .debug directories.
Fixes [YOCTO #4048].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jukka Rissanen [Fri, 22 Mar 2013 08:11:41 +0000 (10:11 +0200)]
connman-conf: Move the setup script into /usr/lib/connman
The /etc/connman is not suitable for the setup script.
There are other connman related scripts in /usr/lib/connman
so moving the wired setup script there.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 5 Mar 2013 16:48:11 +0000 (16:48 +0000)]
distro: Add separatebuilddir.inc
Going forward its going to be useful to separate build data from source data
in those autotooled projects which support it. Unfortunately there is a lot
of breakage so for now, this starts the creation of an opt in list which
we can iterate over enable more recipes over time.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 21 Mar 2013 14:29:57 +0000 (14:29 +0000)]
scripts/qemu-testlib: Add more debugging information
This extra information should allow better forensics if the sanity tests
fail as they're currently doing occasionaly on the autobuilder for unknown
reasons.
The patch also tightens up certain checks to remove pointless noise and
error output from the logs.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 20 Mar 2013 22:58:30 +0000 (22:58 +0000)]
scripts/runqemu-internal: Fix lock races
There are two problems here. Firstly the grep command is unanchored so
pid 345 will match against 12345 and so on.
The second issue is that there are several context switched between attempting
the lock and then writing the pid to it.
Between the two issues, there were issues appearing on the autobuilder due
to these conflicts. This patch replaces the mechanism with flock on fd 8
which should be a safer mechanism to use.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Alexandru DAMIAN [Tue, 12 Mar 2013 09:56:02 +0000 (09:56 +0000)]
grep: Always use locale.h
The changes in the grep 2.5 configuration always leave out
HAVE_LOCALE_H - it has been removed from other files, but
not from everywhere.
This leads to a crash in certain configurations where the
size of int is not the size of pointer; this happens because
setlocale() is used while being undeclared.
[YOCTO #3959]
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 20 Mar 2013 11:48:53 +0000 (11:48 +0000)]
runqemu: Improve error handling/exit codes
runqemu-internal is sourced so should be returning with an error code in
case of errors. runqemu needs to deal with this.
This patch fixes up the various error paths so we're consistent and get
a sane exit status for runqemu which helps a lot in its use in the qemu
runtime testing on the autobuilder.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 20 Mar 2013 10:58:24 +0000 (10:58 +0000)]
qemuimage-testlib: Add extra debugging and sanity check
Check for a zero IP address since its clearly incorrect if that value
is found. Also add debugging for cases where we can't find the qemu
process. A process listing is handy to help understand what the problem
might be.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 20 Mar 2013 09:27:39 +0000 (09:27 +0000)]
qemuimage-testlib: Add delay to work around races in qemu startup
Qemu changes pid when starting up. On a loaded machine, this can result
in the incorrect pid being returned. Since qemu will take a few seconds to
boot anyway, we might as well delay a short while and allow things to settle
which should fix various race issues being seen on the autobuilder.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 19 Mar 2013 20:54:33 +0000 (20:54 +0000)]
scripts/qemutestlib: Add better process debugging and fix process group issue
In single testing with a shutdown scenario the processes are cleaned up correctly
but the manual cleanup fall back used for a minimal image do not work properly.
This patch fixes the kill commands to revert to non-process groups, fixing
the hung process issues that were occuring.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Maxin B. John [Tue, 19 Mar 2013 12:37:04 +0000 (13:37 +0100)]
harfbuzz: update the license information
harfbuzz is using the 'Modern Variants' of MIT License:
https://fedoraproject.org/wiki/Licensing:MIT?rd=Licensing/MIT#Modern_Variants
We can update the LICENSE as 'MIT & ICU'.
Fixes this warning:
WARNING: harfbuzz: No generic license file exists for: Old-MIT in any provider
WARNING: harfbuzz: No generic license file exists for: UCDN in any provider
WARNING: harfbuzz: No generic license file exists for: HarfBuzz-old in any provider
Signed-off-by: Maxin B. John <maxin.john@enea.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 19 Mar 2013 13:22:59 +0000 (13:22 +0000)]
perf: Fix parsing error
Due to the use of ${@...} the code will try and expand this when
performing the initial parsing. If the sysroot doesn't exist with
an existing kernel, this will fail at parsing time.
Sinec we're already in python, just remove the ${@....} wrapping
and then we execute at do_package time which is what we want.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tom Zanussi [Tue, 19 Mar 2013 04:58:07 +0000 (23:58 -0500)]
perf: make PKGV match kernel version
Have perf grab and use the kernel version it's built from for PKGV,
rather than the default perf recipe version, so the final packages get
the kernel version instead of the default 1.0, which represents a
backwards value from the previous recipe.
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 19 Mar 2013 11:44:27 +0000 (11:44 +0000)]
qemu-testlib: Add python helper and simplify shell
The current code has a race since it greps for *any* qemu process
running, even if it isn't the one we started. This leads to some sanity
tests potentially failing on machines where multiple sets of sanity tests
are running.
To resovle this and some other ugly code issues, add a python script
to accurately walk the process tree and find the qemu process. We can
then replace all the shell functions attempting this which happen to
work in many cases but not all.
Also clean up some of the error handling so its more legible.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jason Wessel [Mon, 4 Mar 2013 23:48:41 +0000 (23:48 +0000)]
syslinux.bbclass: Add a default serial console option and real boot menu support
The previous syslinux menu code did not support using both a serial
and vga console, but this has worked for years in syslinux so there is
no reason not to take advantage of it. The previous menu looked like:
-------------------------------------------------------
Linux Boot Menu
The following targets are available on this image:
This commit makes it look something more like a traditional grub menu
on both the serial console and vga console as well as providing the
option to continue on using either the serial or vga console with the
correct kernel arguments.
You can see the screen shots attached to the bugzilla.
Khem Raj [Sun, 17 Mar 2013 22:56:24 +0000 (22:56 +0000)]
iptables: Turn ipv6 and libnfnetlink support into PACKAGECONFIG
Detection of libnfnetlink is automatic in configure which means
that when you have meta-networking in your cosmos, it would create
a race condition where if libnfnetlink is already staged then it
will be enabled otherwise disabled. The issue happens quite often
with sstate and high parallelism. Since the dependency libnfnetlink
is not part of OE-Core, this patch turns it into a PACKAGECONFIG
which is diabled by default and iptables is patched to provide
the knob.
If you want to enable libnfnetlink support then it can be done
in a bbappend where you are sure that you are also including
meta-networking in your distro.
While at it also turned ipv6 support into packageconfig
Olivier Guiter [Mon, 18 Mar 2013 15:34:57 +0000 (15:34 +0000)]
neard: upgrade to 0.10
neard ver 0.10:
Added initial WiFi handover support.
Added Service Name Lookup support to nfctool.
Added NDEF building unit tests.
Added State support to Bluetooth handover agent.
Added neard and neard.conf man pages.
Added a copy of the NFC kernel header.
Fixed handover validation tests failures.
Fixed Tag and Device PropertyChanged signal.
Richard Purdie [Thu, 14 Mar 2013 17:26:20 +0000 (17:26 +0000)]
package: Add cachedpath optimisation
Currently, various standard library operations like os.walk(),
os.path.isdir() and os.path.islink() each call stat or lstat which
involves a syscall into the kernel. There is no caching since they could
conceivably have changed on disk. The result is that for something like
the do_package task of the kernel we're spending over two minutes making
868,000 individual stat calls for 23,000 files. This is suboptimal.
This patch adds lib/oe/cachedpath.py which are a set of replacement
functions for these operations which use cached stat data rather than
hitting the kernel each time. It gives a nice performance improvement
halving the build time of the kernel do_package.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chase Maupin [Wed, 13 Mar 2013 12:03:50 +0000 (07:03 -0500)]
kernel bbclass: return to original directory in do_deploy
* During the base kernel_do_deploy function the directory is
changed to DEPLOYDIR in order to do some cleanup and symlinking.
However, the directory is not changed back to the original
starting directory ${S} at the end. For append functions this
means that the starting directory is not ${S} as expected but
instead ${DEPLOYDIR}.
For functions like the do_deploy_append in
recipes-kernel/linux/linux-dtb.inc there is an assumption that
you are still in the source directory and not the DEPLOYDIR.
Without this change the .dtb files are not copied because the
check for the existence of ${DTS_FILE} which is a relative
path from the ${S} directory fails. This means that the .dtb
files are not copied into the deploy directory and subsequently
the deploy/images directory.
In the log.do_deploy file you will see lines like:
Warning: arch/arm/boot/dts/xxxxx.dts is not available!
Colin Walters [Thu, 7 Mar 2013 23:45:22 +0000 (18:45 -0500)]
cracklib: Generate compiled dict using default dictionary
While cracklib compiles, the generated library's FascistCheck() API
will look for the default compiled dictionary, fail to find it, and
invoke exit(1), which then in turn breaks gnome-initial-setup that
uses cracklib via libpwquality. (Quality here obviously referring to
the password, and not the libraries...)
What we do here is basically the same as what happens in the current
Fedora spec file, except the latter uses a far larger dictionary.
To make this work, we need to build cracklib-native because the
dictionary compiler is written in native code.
Signed-off-by: Colin Walters <walters@verbum.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>