Ross Burton [Thu, 26 Sep 2013 16:43:05 +0000 (17:43 +0100)]
eglinfo: drop machine-specific configuration from oe-core
eglinfo.inc has some board-specific EGLINFO_DEVICE settings but is missing the
dependencies. Maintaining them for all supported devices in oe-core isn't
scalable and this is trivially supported though a bbappend in each BSP layer.
This was also causing problems compiling eglinfo on meta-yocto-bsp's beagleboard
machine as the EGLINFO_DEVICE setting for beagleboard was telling it to use the
closed GPU drivers, which are not supported in meta-yocto-bsp.
[ YOCTO #5224 ]
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Thu, 26 Sep 2013 16:06:36 +0000 (17:06 +0100)]
matchbox-panel: silence some pointless warnings
The battery applet emits a warning if the hardware doesn't have a battery (it
shouldn't) and the parser emits a warning if two separators are used in a row
(which happens if the hardware has a keyboard). Silence these with a patch from
upstream.
[ YOCTO #4061 ]
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jason Wessel [Tue, 17 Sep 2013 13:32:17 +0000 (13:32 +0000)]
boot-directdisk.bbclass: Fix media generation problems with vmdk
The various populate methods need to accept a path as an argument vs
using hard expanded variables. In the case of the boot-directdisk
class it uses a different path for HDDDIR but it gets eclipsed by the
the class definition at the point in time ${HDDDIR} gets expanded.
The logical fix is to pass the arguments to the functions as opposed
to using globally expanded variables from the class definitions.
This patch changes 3 things:
1) syslinux_hddimg_populate takes an argument for the destination
2) syslinux_iso_populate takes an argument for the destination
3) populate is changed to boot_direct_populate because there
was a conflict with it overriding the populate in bootimg.bbclass
[YOCTO #3994]
Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jason Wessel [Tue, 17 Sep 2013 13:32:13 +0000 (13:32 +0000)]
syslinux.bbclass, syslinux: Update to syslinux 6.01
A newer version of syslinux is required for an EFI enabled isohybrid.
This is used for the the capability to generate 3 types of ISO images,
all of which can be booted off a USB device or HDD if copied with dd.
1) PC BIOS only ISO
2) EFI only ISO
3) EFI + PC BIOS ISO
The syslinux.bbclass required a minor tweak because a few .c32
libraries require dynamic loading from the created media as of
syslinux 5 and up. This was a good time to also fix the
duplication of the AUTO_SYSLINUXMENU block.
[YOCTO #4100]
Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jason Wessel [Tue, 17 Sep 2013 13:32:16 +0000 (13:32 +0000)]
syslinux.bbclass: Fix hard coding of console=tty*
The SYSLINUX_SERIAL variable was hard coded and occasionally needs to
be different for the kernel argument vs the syslinux argument.
In the auto-generated boot mode console=tty0 was hard coded, and this
is not needed at all, and causes problems in some cases if a end user
wanted to change the console=... via the kernel boot argument APPEND
mechanism. The default can be forced with SYSLINUX_DEFAULT_CONSOLE
for systems that need a special specification to enable the frame
buffer instead of a serial port.
[YOCTO #3944]
Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jason Wessel [Tue, 17 Sep 2013 13:32:15 +0000 (13:32 +0000)]
grub-efi.bbclass: Add serial and graphics menu options
The syslinux.bbclass already has support for automatically generated
serial and graphics menu choices. This patch adds the same concept to
the grub-efi menu. That makes it possible to generate a single image
which can boot on a PCBIOS or EFI firmware with consistent looking
boot options.
[YOCTO #4100]
Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jason Wessel [Tue, 17 Sep 2013 13:32:14 +0000 (13:32 +0000)]
bootimage.bbclass, grub-efi.bbclass: Improve EFI & PCBIOS+EFI ISO support
Using the latest mkisofs it is possible to generate 3 different types
of ISO images, which can be used in various scenarios.
1) PCBIOS Only ISO
- This option remains unchanged by this commit
- Uses syslinux menus
- Can be directly copied with dd to a USB device
- Can be burned to optical media
2) EFI Only ISO
- Uses grub 2 menus
- Can be burned to optical media
- If you want to use this image on a USB device
extra steps must be taken in order to format the USB
device with fat32, and copy an EFI loader which will
in turn load the iso image
3) PCBIOS / EFI ISO
- This is a hybrid image ISO that will work for case 1 or 2
as above with the same restrictions and boot menu types
depending on what type of firmware is installed on
the hardware or depending on if EFI or "Legacy Boot" is
enabled on some UEFI firmwares.
The syslinux.bbclass is now always required because that is where the
isohybrid dependencies come from as well as the configuration data for
the isohybrid. The isohybrid is the secret sauce which allows the ISO
to work as optical media or as a disk image on USB or a HDD/SSD.
[YOCTO #4100]
Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jason Wessel [Tue, 17 Sep 2013 13:32:12 +0000 (13:32 +0000)]
grub-efi-native: Add support for EFI ISO images
The iso9660 file system support needs to be added to grub in order to
be able to correctly find the grub.cfg. The grub commands to locate
the grub.cfg also needs to be encoded into grub's default
configuration.
This change allows the resulting grub binary to work both in the hard
drive / USB boot case or the optical media boot case.
[YOCTO #4100]
Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Reviewed-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 26 Sep 2013 16:20:18 +0000 (16:20 +0000)]
testimage: Exclude BB_ORIGENV variable
The BB_ORIGENV variable isn't picklable and causes failures when generating the task
signature for the autorun image mode. We don't want to depend on its contents anyway
so lets exclude it.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Thu, 26 Sep 2013 16:00:33 +0000 (17:00 +0100)]
classes/package_rpm: fix bitbake package-index for RPM
The function that "bitbake package-index" relies upon when using the RPM
package backend (package_update_index_rpm()) uses MULTILIB_PREFIX_LIST
to get the list of package architectures to be indexed, but that
variable is only set when populate_sdk_rpm or rootfs_rpm are inherited,
which is not the case for the package-index recipe. Until we're able to
refactor this properly, for minimal impact just use the value of
ALL_MULTILIB_PACKAGE_ARCHS if MULTILIB_PREFIX_LIST does not give us any
architectures (the equivalent function in the ipk backend uses the
former variable).
Having "bitbake package-index" working is important because it's the
only practical way of indexing RPM packages for use as a feed; host
versions of createrepo won't work properly because they won't support
indexing recommends relationships.
Stopgap fix for [YOCTO #5278].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Thu, 26 Sep 2013 10:41:36 +0000 (11:41 +0100)]
pseudo: warn twice if the 32-bit toolchain appears broken
Putting a warning at the top of do_compile is useful but not everyone reads the
file from beginning to end, so use a trap to put the message at the bottom too.
[ YOCTO #4919 ]
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 25 Sep 2013 12:36:00 +0000 (12:36 +0000)]
gcc/libtool/perl: Fix various path to sed-native problems
If sed-native is built before these programs, hardcoded paths to sed-native
can end up in scripts and other parts of the system which may cause issues
if they are later used from sstate and sed-native is not installed.
To avoid this, this patch changes the global site configuration to
specify that plain "sed" is fine to be used. We need to spell this
out for gcc since it doesn't see the site files since we don't autoreconf
it. We can remove the values from libtool. We tell perl to use "/bin/sed"
since it requires a path and the system sed should be just fine for it.
[YOCTO #4971]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 25 Sep 2013 20:59:11 +0000 (21:59 +0100)]
runqemu: Use correct kvm CPU options for qemux86* with kvm
The existing -cpu host option caused kernel panics when people attempted to use
the kvm option. After research and discussion, the best options appear to
be the kvm32/kvm64 cpu types so lets use these instead. These resolve
the kernel issues for me.
[YOCTO #3908]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Eric Bénard [Wed, 25 Sep 2013 16:52:13 +0000 (18:52 +0200)]
busybox: update mdev.conf
busybox 1.21.1 's mdev has changed the way the device's name is
reported so now we get input/event0 instead of event0.
I think this commit is responsible of this new behaviour :
http://git.busybox.net/busybox/commit/util-linux/mdev.c?id=c3cf1e30a3022453311a7e9fe11d94c7a381640e
Update mdev.conf according to this behaviour so that sound
and input devices are correctly populated (and now
/etc/mdev/find-touchscreen.sh is executed).
Tested on an arm board.
Signed-off-by: Eric Bénard <eric@eukrea.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Wed, 25 Sep 2013 19:30:12 +0000 (15:30 -0400)]
linux-yocto/3.10: common-pc* config updates
Bumping the 3.10 meta branch SRCREV to import the following config changes
for tghe sugarbay and common-pc wifi fragments.
dad2b7e common-pc-64: add kernel CONFIG options for sugarbay platform 37c617d common-pc-wifi.cfg: add support for broadcom wifi drivers
[YOCTO #5117]
[YOCTO #5238]
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
adt-installer: add warning if MACHINE is not set in adt-installer.conf
Since the MACHINE can now be specified in adt-installer.conf, in order to
install the proper toolchain and environment script for the given
machine, add a sanity checking at the beginning to make sure MACHINE is
set for the wanted architecture.
Also:
* uncomment the x86 target variables, in adt-installer.conf, in order
to have qemux86 MACHINE set, by default, and also the sysroot
installed (since it doesn't make much sense to install the toolchain
without a target sysroot);
* remove 'sudo' when creating relocate_sdk_tmp.py because the file is
created in adt-installer directory;
adt-installer: check if sudo is needed when installing target sysroot
Currently, if SDK is installed in a directory that needs sudo
preivileges, the target sysroot is also installed with sudo, even though
the location is in users's home directory.
This patch reuses the ownership checking code and uses it to check if
sudo is needed for target sysroot too.
Richard Purdie [Wed, 25 Sep 2013 12:36:46 +0000 (12:36 +0000)]
package.bbclass: Clear umask when using os.mkdir
We switched to using os.mkdir with the file creation mode specified as the
second parameter. Python masks this with umask behind the scenes which isn't
what we want, we really want the permissions we specify.
To avoid this we zero the umask beforehand and restore afterwards. Other
solutions are possible but would not perform as well which is why
we're using os.mkdir in the first place.
Martin Jansa deserves the credit for debugging where the problem was.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Stefan Stanacar [Wed, 25 Sep 2013 12:30:49 +0000 (12:30 +0000)]
lib/oeqa/runtime: ping: wait for 5 echo replies
Instead of considering that ping test passed after 1 reply,
wait for at least 5 consecutive replies in 60 seconds (which should
be enough time for connman to reconfigure the interface in systemd
images and help with the fake ssh/tests fails.)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add useradd, groupadd et.c. since all target packages
which inherits useradd will have a postinstall hook
dependecy against the yocto specific groupadd.
Signed-off-by: David Nyström <david.nystrom@enea.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
David Nyström [Wed, 25 Sep 2013 11:52:22 +0000 (11:52 +0000)]
shadow: Add nativesdk to BBCLASSEXTEND
This is a second in a series of patches to enable
offline rootfs creation from a package repository.
Some postinstall cmds are Yocto specific and needed to create a
rootfs with pre and post install hooks successfully run,
using only the toolchain tarball + a package repo.
End goal is to create a sandbox where users of a Yocto
based distribution can customize a rootfs from a package feed
with their package manager of choice.
With this patch, I can successfully create packagegroup-core-boot
with only the toolchain tarball(OPKG). More fixes for a few postinstall
hooks outside of packagegroup-core-boot will come next.
Signed-off-by: David Nyström <david.nystrom@enea.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Strings in Python 3, by default, are assumed to contain unicode
characters. In previous versions of python (<3), unicode strings are
explicitly declared with u"abc". If not, than they're automatically
converted to bytes. This doesn't happen anymore in Python 3.
Since we're dealing with binary files, opened in byte mode, make sure
that we explicitly convert all strings to bytes to make both python 2
and 3 happy.
Other changes:
* add a safety check to make sure relocation did not change the file
size;
* a couple of cosmetic changes (wrap long lines so that we don't have
to scroll to reach the end of them);
distutils: Replacing path to native path only to be done to non-native python packages
distutils: Replacing path to native path only to be done to non-native python packages
distutils: Replacing path to native python by path to python in the
image to support python packages with console-script setup resulted in
a "bad interpreter" error message because coreutils-native is not
a specified dependency of a number of native python packages.
We modify the change to apply specifically to non-native packages.
Roy Li [Tue, 24 Sep 2013 13:20:08 +0000 (13:20 +0000)]
bind: port a patch to fix a build failure
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>
The po.m4 file is deleted by the more recent autotools.bbclass
autotools_do_configure code which handles gettext. There is therefore
no point in patching the file anymore.
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The po.m4 file is deleted by the more recent autotools.bbclass
autotools_do_configure code which handles gettext. There is therefore
no point in patching the file anymore.
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Roy Li [Tue, 24 Sep 2013 01:16:23 +0000 (09:16 +0800)]
ptest-runner: compatibile with busybox
Do not use pushd, busybox does not support it if system only has busybox;
Replace find command with ls to avoid some busybox's find unsupported options;
Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Muhammad Shakeel [Tue, 24 Sep 2013 08:42:00 +0000 (13:42 +0500)]
systemd: fix ptest support
Currently do_install_ptest_base is failing because it cannot find
'test' directory in build dir, ${B}. 'test' directory is present in source
dir, ${S}. Same is true for build-aux/test-driver and test/sys.tar.xz.
Also this fixes:
QA Issue: systemd: Files/directories were installed but not shipped
/usr/lib/udev
/usr/lib/udev/rules.d
Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Tue, 24 Sep 2013 11:10:14 +0000 (12:10 +0100)]
grub: don't patch generated configure to fix do_patch re-execution
If do_patch re-executes, patching the configure script will fail because
it will have been regenerated during do_configure. We're patching
configure.ac so we don't need to patch configure anyway.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It causes shadow to be used in core-image-minimal and increase the
size by 1.5M. We will add the shutdown user to group via base-passwd
which we depend upon instead.
[YOCTO #5230]
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Darren Hart [Mon, 23 Sep 2013 20:54:10 +0000 (20:54 +0000)]
init-install-efi.sh: Remove unnecessary udev rules file to avoid errors
Fixes [YOCTO #5233]
Modeled after Chen Qi's fix to [YOCTO #3924] from oe-core commit: 6b6db7b4fb7aa17b8e29076decc830149b9d35bc
init-install.sh: remove unnecessary udev rules file to avoid error messages
/etc/udev/scripts/mount.sh is removed by init-install-efi.sh, but the
udev rules file which specifies the invocation of this script is not
removed, thus causing the error message during a live install:
/etc/udev/scripts/mount.sh: No such file or directory
The /etc/udev/rules/automount.rules no longer works once the mount.sh
script is removed. Remove it to avoid the error message.
Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: mihaix.lindner@linux.intel.com Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
package_deb, apt.conf: fix apt failure in do_rootfs()
The changes in this commit, dc5f6c3898555b59f16bf809ae4c5418656e6ac9,
moved apt config directory from native SYSROOT to WORKDIR.
Unfortunately, Dir::Etc in apt.conf was not changed accordingly and
sources.list file could not be found during do_rootfs().
David Nyström [Mon, 23 Sep 2013 16:33:59 +0000 (16:33 +0000)]
makedevs: add nativesdk to BBCLASSEXTEND
This is a first in a series of patches to add items
to the nativesdk toolchain tarball.
Many of which are Yocto specific and needed to create a
rootfs with pre and post install hooks successfully run,
using only the toolchain tarball.
End goal is to create a sandbox where _users_ can customize a rootfs from a
package feed with their package manager of choice.
Signed-off-by: David Nyström <david.nystrom@enea.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
boost: set up PACKAGECONFIG for boost-python library
Until now, the comment in the boost.inc file suggested to enable
the boost-python library by uncommenting some lines in that file.
Using the new PACKAGECONFIG feature, boost-python can now be added
optionally without need to modify the file or copying those lines
into a bbappend file.
Furthermore, we obtain the python version by inheriting python-dir
instead of fixing the python version in this file.
This commit is motivated by the need in the meta-ros layer, as
discussed in the issue #145 of the meta-ros issue tracker [1].
Bruce Ashfield [Mon, 23 Sep 2013 03:55:44 +0000 (03:55 +0000)]
kern-tools: fix multi patch application without headers
Updating the kern-tools SRCREV to import the following change:
kgit-s2q: always update ORIG_HEAD after applying changes
In situations where git am fails to apply patches, and git apply is used,
we must update ORIG_HEAD as well as HEAD. This is required, since if the
next patch in the queue also fails git am application, it will reset to
ORIG_HEAD before using git apply. If we haven't updated ORIG_HEAD, we'll
end up warping back to the top of the branch each time.
This problem can only be seen in very specific situations, in particular if
a generated BSP branches from qemuppc, and has a series of non git "am able"
patches. We fail, since all of the qemuppc patches are not applied due to
the branch head constantly being reset.
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>
[snip]
Traceback (most recent call last):
File "/path/to/tools/glib-gtypes-generator.py", line 304, in <module>
GTypesGenerator(dom, argv[1], argv[2])()
File "/path/to/tools/glib-gtypes-generator.py", line 295, in __call__
file_set_contents(self.output + '.h', ''.join(self.header))
File "/path/to/tools/libtpcodegen.py", line 42, in file_set_contents
os.rename(filename + '.tmp', filename)
OSError: [Errno 2] No such file or directory
[snip]
This is a race issue, the _gen/gtypes.h and _gen/gtypes-body.h may
write(remove/rename) _gen/gtypes.tmp at the same time, then there would
be the error.
There was a similar bug in telepathy-glib which was already fixed, we use the
similar patch to fix it here.
[YOCTO #5184]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Roy Li [Sun, 22 Sep 2013 08:25:55 +0000 (08:25 +0000)]
sstate.bbclass: ignore the tar failure.
sstate_package creates hardlink from sysroot to SSTATE_BUILDDIR, and
sstate_create_package stores SSTATE_BUILDDIR into a archive file by
tar, these two task can be run simultaneously for different packages,
and make a hardlink for a file will lead to the change of the links
number of file, and if tar is reading this file, it will fail with exit
code 1, and report "file changed as we read it":
DEBUG: Executing shell function sstate_create_package
tar: x86_64-linux/usr/share/aclocal/xorg-macros.m4: file changed as we read it
4b3e353a5[sstate.bbclass: fix parallel building issue] tries to use the
tar parameter --ignore-failed-read to fix, but it does not work, and
tar parameter --warning=no-file-changed can close the warning, but can
not change the exit code. so close shell immediate exit, only fail
if tar returns not 1 and 0.
Exit codes of tar:
http://www.gnu.org/software/tar/manual/html_section/Synopsis.html
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>
Paul Eggleton [Fri, 20 Sep 2013 14:43:45 +0000 (14:43 +0000)]
glib-2.0: fix broken python script header on machines using buildtools
With buildtools (which contains Python) installed on a build machine,
glib-2.0's gtester-report script was ending up with the full path to
the installed python binary in the shebang, which when rpm packaging
was used led to this being added as a per-file dependency by rpmdeps for
the libglib-2.0-utils package in which it ends up. This of course broke
do_rootfs when the package was included in the rootfs and had been
restored from sstate from another machine, as happened on the Yocto
Project autobuilder.
We were already trying to sed this script apparently only for the
shebang (since it appears that there are no other paths in the script)
so let's just sed the shebang properly; it also seems sensible to do
this for native as well instead of explicitly trying to exclude that
case.
Fixes [YOCTO #5205].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Fri, 20 Sep 2013 14:49:22 +0000 (14:49 +0000)]
avahi: bump INC_PR to avoid do_configure failure in existing workdir
When we split S and B for avahi in OE-Core commit 6112a07f4e9865f7ae0e5a953669c1adf789f9f0, files left over in the workdir
from a previous build seem to break re-execution of do_configure. Bump
PR to give a fresh workdir and avoid this problem.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The --enable-dependency-tracking option was added to workaround build
issues in libatomic. This fixes that build problem properly and removes
the flag since the dependency tracking code appears to be full of races
which are much deeper and harder to fix.
As per the automake manual, dependency tracking is only useful and worth
the build performance cost if you are doing more than one compile of the same
source code which in most cases we are not so this is a good thing anyway.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sat, 21 Sep 2013 09:59:58 +0000 (10:59 +0100)]
gzipnative: Ensure dependencies apply to do_unpack and do_populate_lic
| DEBUG: Executing python function sstate_task_postfunc| DEBUG: Staging files from /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/license-destdir to /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/deploy/licenses| NOTE: Using umask 002 (not 22) for sstate packaging| DEBUG: Preparing tree /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/license-destdir for packaging at /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/sstate-build-populate-lic/license-destdir| NOTE: Removing hardcoded paths from sstate package: 'find /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/sstate-build
-populate-lic/ \( -name "*.la" -o -name "*-config" -o -name "*_config" \) -type f | xargs grep -l -e '/srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/sysroots/qemux86-64' | tee /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/sstate-build-populate-lic/fixmepath | xargs --no-run-if-empty sed -i -e 's:/srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/sysroots/qemux86-64:FIXMESTAGINGDIRHOST:g''
| DEBUG: Executing shell function sstate_create_package
| gzip: /lib64/libz.so.1: version `ZLIB_1.2.5.1' not found (required by gzip)
| tar: Child returned status 1
| tar: Error is not recoverable: exiting now
| WARNING: /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/temp/run.sstate_create_package.20384:1 exit 2 from
| tar --ignore-failed-read -czf $TFILE license-destdir
| DEBUG: Python function sstate_task_postfunc finished
| ERROR: Function failed: sstate_create_package (log file is located at /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-x32/build/build/tmp/work/qemux86_64-poky-linux-gnux32/core-image-minimal/1.0-r0/temp/log.do_populate_lic.20384)
NOTE: recipe core-image-minimal-1.0-r0: task do_populate_lic: Failed
Imagine:
pigz-native is used from sstate.
zlib-native is getting rebuilt.
pigz-native has some special handling to ensure its not used until the
system is ready. This is through a class and installing into a subdir of
PATH which only gets added in when we believe its available. We use
pigz-native in the image generation code and its in DEPENDS.
DEPENDS are guaranteed available for do_configure. do_populate_lic can
run before do_configure so the DEPENDS isn't met and I think this is our
corner case.I suspect ways of fixing this are to either:
a) force do_populate_lic after do_configure everywhere
b) statically link pigz-native
c) add in an explicit dependency to gzipnative.bbclass forcing
do_populate_lic after do_configure. If do_unpack handled a tar file in
an image, it would also be at risk of course.
Looking at each, a) is overkill and our dependency tree is nasty enough
already. b) sounds nice but is also risky since what happens if the gzip
binary is half copied when we run it. Our hardlink copying should deal
with that but I'm still nervous. This leaves us with c) so we could do:
Richard Purdie [Fri, 20 Sep 2013 16:12:50 +0000 (16:12 +0000)]
btrfs-tools: Fix parallel make issue
btrfs-tools was failing occasionally due to version.h being missing. This
fixes the problems, thanks to several people on #yocto for helping out
why my lack of make knowledge of old fashioned suffix rules :)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otavio Salvador [Thu, 19 Sep 2013 20:48:38 +0000 (17:48 -0300)]
u-boot, u-boot-fw-utils, u-boot-fw-utils-cross: Use uboot-config class
The U-Boot configuration has been consolidates into a single class to
avoid code duplication. This is now done by uboot-config class, so we
now use it.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Randy MacLeod [Thu, 19 Sep 2013 23:47:05 +0000 (19:47 -0400)]
pseudo: force NO32LIB to true for nativesdk
The exported SDK only needs simulated root privileges for specific
tasks, such as the user-mode NFS server or rootfs extraction, and
oe-core does not support multilib builds in the generated SDK, so
it is neither necessary nor possible to build a 32-bit libpseudo.so
for a 64-bit SDK.
[YOCTO #5135]
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The following commit, 6ccd4d6, increased the RAM size for qemu machines
to 256MB due to some smart sanity tests failing on autobuilder because
more memory was needed.
Unfortunately this leads to various, potentially dangerous, issues like
the one observed during sudoku-savant project compilation:
collect: relinking
collect2: error: '_ZNK6sudoku5ClearINS_6SquareEEclERS1_' was assigned to
'board.rpo', but was not defined during recompilation, or vice versa
board.o:(.rodata+0x8): undefined reference to
`sudoku::Clear<sudoku::Square>::operator()(sudoku::Square&) const'
board.o:(.rodata+0x20): undefined reference to
`sudoku::Clear<sudoku::Sequence>::operator()(sudoku::Sequence&) const'
board.o:(.rodata+0x34): undefined reference to `typeinfo for
sudoku::Action<sudoku::Sequence>'
...AND THE LIST CONTINUES...
collect2: error: ld returned 1 exit status
make: *** [sudoku-savant] Error 1
After some tests, I found that the maximum amount of memory needed for
sudoku to compile properly is 146MB(!?!).
My attempts to create a simpler test case (using templates), in order to
replicate and isolate the issue failed. All the tests compiled just
fine.
So, my guess is that this problem is certainly memory related but the
cause might be hidden in any of the following: qemu versatile hw model,
in the kernel or, highly unlikely but not impossible, the toolchain
itself. The reason I don't really think the cause is in the toolchain is
the fact that the compilation completes just fine for 128MB on qemuarm but
also on other qemu machines (with 256MB of memory).
Since this issue might need lots of time to have a proper fix, I'll revert back
to using 128MB for qemuarm for the time being.
[YOCTO #5133]
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Thu, 19 Sep 2013 10:10:34 +0000 (11:10 +0100)]
classes/testimage-auto: add class to allow automatically running image tests
Setting TEST_IMAGE = "1" alone will now automatically run tests on the
image immediately after the image is built instead of having to add
INHERIT += "testimage" and run bitbake -c testimage <image> manually
(but that will still work). This restores functionality that was
present in the older imagetest-qemu class with IMAGETEST.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
libunistring: remove the test to convert euc-jp in configure
Remove the test "Test against HP-UX 11.11 bug:
No converter from EUC-JP to UTF-8 is provided"
since we don't support HP-UX and if the euc-jp is not
installed on the host, libunistring will be built without
iconv support and will cause guild-native configure fail.
Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Stefan Stanacar [Thu, 19 Sep 2013 12:49:35 +0000 (13:49 +0100)]
lib/oeqa/runtime: cleanup and improve output readability for some tests
- move everything in the same test. setUp/tearDown aren't quite
the right thing here, everything it's part of the same test. (and
it get's confusing when ssh fails)
ldd:
- change test name and add output to error message
vnc:
- remove unnecessary check as there is no point in doing
both ps and netstat. Also improve error output a bit.
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Wed, 18 Sep 2013 23:58:32 +0000 (01:58 +0200)]
gcc-4.8: temporary disable thumb
* temporary work around for build issue on armv4t:
| cp/decl.o: In function `bad_specifiers':
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7171:(.text.unlikely+0x24): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7173:(.text.unlikely+0x32): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7176:(.text.unlikely+0x3e): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7180:(.text.unlikely+0x4c): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7182:(.text.unlikely+0x5a): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7185:(.text.unlikely+0x66): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7189:(.text.unlikely+0x74): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7191:(.text.unlikely+0x82): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7194:(.text.unlikely+0x8e): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7198:(.text.unlikely+0x9c): relocation truncated to fit: R_ARM_THM_CALL against symbol `error(char const*, ...)' defined in .glue_7 section in linker stubs
| gcc-4.8.0-r0/gcc-4.8.0/gcc/cp/decl.c:7200:(.text.unlikely+0xaa): additional relocation overflows omitted from the output
| collect2: error: ld returned 1 exit status
| make[2]: *** [cc1plus] Error 1
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Wed, 18 Sep 2013 03:27:42 +0000 (03:27 +0000)]
linux-yocto/3.10: mips configuration changes
Updating the 3.10 SRCREV to import the following MIPS configuration changes
4f689aa meta: remove ftrace/ftrace-disable feature 3058d81 mips: have the mips BSPs disable function tracing instead of ftrace 935f43f meta: add ftrace/ftrace-function-tracer-disable feature 0d72a03 mti-malta64: Default to support o32 and n32 userspace binaries
The first three changes improve the ftrace disabling fragments, to allow tracepoints
and ftrace to be enabled, while only disabling dynamic ftrace. This allows tools
that required tracepoints (like lttng) to be built against MIPS.
The mti-malta64 change adds n32 and o32 support to the default configuration to
support a broader range of userspace binaries.
[YOCTO #5215]
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Wed, 18 Sep 2013 03:16:03 +0000 (03:16 +0000)]
linux-yocto/3.8: add haswell-wc board config and branch
Bumping the meta branch SRCREV to import the following board support:
meta: add haswell-wc bsp for Intel Haswell Platform (Walnut Canyon CRB) scc and config files
Signed-off-by Ong Boon Leong <boon.leong.ong@intel.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Wed, 18 Sep 2013 16:48:46 +0000 (17:48 +0100)]
qemurunner: disable grabs in automated testing
Use the new QEMU_DONT_GRAB environment variable to disable grabs,
finally/hopefully solving the random hangs that the autobuilder has been hitting
for a while.
[ YOCTO #5131 ]
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Wed, 18 Sep 2013 16:48:45 +0000 (17:48 +0100)]
qemu: add option to disable X grabs
When the mouse pointer enters the qemu window it takes a pointer grab. This
doesn't sound too dangerous at first but it turns out that SDL will infinitely
busy-loop if it can't get the grab (e.g. if the screen is locked) and the
average autobuilder setup's X server will have locked the screen a few minutes
after boot.
The result is that on many autobuilders apparently random qemu instances (the
top-most one under the pointer) will hang during boot.
To resolve this add an option (via an environment variable) to never attempt a
grab. The default behaviour remains to grab so that everyone else doesn't see
any change.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otavio Salvador [Wed, 18 Sep 2013 03:34:18 +0000 (00:34 -0300)]
u-boot-fw-utils: Skip package if UBOOT_MACHINE is unset
The UBOOT_MACHINE variable needs to be set so the firmware utils can
know about some configuration settings which are board dependent. This
patch ensures the package is skipped in case UBOOT_MACHINE is unset
thus avoid its build in 'bitbake world' builds for incompatible
machines.
Fixes [YOCTO: #5223]
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otavio Salvador [Tue, 17 Sep 2013 04:18:20 +0000 (01:18 -0300)]
perf: Ensure we use CFLAGS and LDFLAGS settings from kernel build system
The kernel build system does the right thing here and we should stop
overriding it. This code has been added based on a change from
'meta-metro' layer, revision 9d698004137c1a888d40d6a4808d94afa22387e7,
without any information about what problem it fixes so I am reverting
it.
Using the CFLAGS and LDFLAGS makes it impossible for kernel build
system to append to it, thus making the build fail in various ways as:
| CC /.../perf/1.0-r8/perf-1.0/perf.o
| In file included from builtin.h:4:0,
| from perf.c:9:
| util/util.h:74:24: fatal error: lk/debugfs.h: No such file or directory
| #include <lk/debugfs.h>
| ^
| compilation terminated.
The unset is done in do_compile and do_install otherwise it /rebuild/
perf as it detects the compiler options has change.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Tue, 17 Sep 2013 13:57:46 +0000 (14:57 +0100)]
cmake-native: fix dependencies
When building cmake for native, we don't use the system libraries and
thus cmake builds its own internal version of libarchive; this requires
zlib, bzip2, and e2fsprogs. We can add to DEPENDS for the two former
libraries and patch out the latter.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Wed, 11 Sep 2013 11:33:48 +0000 (11:33 +0000)]
mesa: add virtual/mesa provider
As there are two alternative mesa recipes (mesa and mesa-gl), there needs to be
a virtual provider that recipes that explicitly need Mesa (such as xserver-xorg)
can depend on.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>