Commit Graph

112 Commits

Author SHA1 Message Date
Scott Garman
070096ec70 runqemu-nfs: boot QEMU using nfsroot and local unfs export
This script automates the booting of QEMU using an nfsroot exported
by our userspace NFS tools. The rootfs should be created using
poky-extract-sdk.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2010-08-20 16:20:11 +01:00
Scott Garman
313bda1d87 poky-export-rootfs: script for exporting userspace nfsroots
This script automates the exporting of a root filesystem (created
with the poky-extract-sdk utility) using pseudo and the native
userspace NFS server. That filesystem can then be booted using
nfsroot with either QEMU or the target hardware using one of our
kernels.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2010-08-20 16:20:11 +01:00
Scott Garman
c23da3d37e poky-extract-sdk: script for extracting sdk images using pseudo
This script automates the creation of a rootfs area using pseudo so
it can be used by a QEMU nfsroot boot.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2010-08-20 16:20:11 +01:00
Scott Garman
f35a8d4079 poky-find-native-sysroot: helper script for locating the native sysroot path
Various poky scripts make use of binaries from the native sysroot.
This helper script can be used to reduce code duplication, and sets
up some environment variables you can use to identify and obtain
the correct filesystem path to the native sysroot.

It works for both in-tree Poky setups as well as toolchain
installations.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2010-08-20 16:20:10 +01:00
Jeff Dike
e4bc3e36e4 tunctl: Added an tunctl which supports TUNSETGROUP
TUNSETGROUP is needed in order to preconfigure a set of tap devices
that can be used by non-root users.  The requirement is that the qemu
users be members of whatever group the tap devices are assigned to.

Include tunctl in the qemu-helper package, and add a -native version.

Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2010-08-20 16:20:09 +01:00
Joshua Lock
971907567c Enable build dir outside of the poky directory
You need to first set up the build directory by sourcing the poky build script,
after that builds can be run in that directory so long as bitbake is in $PATH
removing the need to source the init script for each build.

i.e:
$ . poky-init-build-env ~/my-build
$ bitbake some-image
<<later, in a different shell>>
$ cd ~/my-build
$ export PATH=/path/to/bitbake/bin:$PATH
$ bitbake an-image

This patch also removes use of OEROOT in recipes, etc.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-07-21 15:39:53 +01:00
Bruce Ashfield
88dd324d41 qemu-native/powerpc: add qemu 0.12.4 powerpc support
In order to force 0.12.4 to allow a powerpc system boot, we need
a patch to qemu, and a new powerpc (not ppc) ROM.

This configuration supports non-graphical booting only, since the
ROM does not have support to pass a graphics device via the
device tree yet.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2010-07-15 11:19:01 +01:00
Kevin Tian
9207cd4015 qemu: fix VMware VGA depth calculation error
VMware SVGA presents to the guest with the depth of the host surface it renders
to, and rejects to work if the two sides are mismatched. One problem is that
current VMware VGA may calculate a wrong host depth, and then memcpy from virtual
framebuffer to host surface may trigger segmentation fault. For example, when
launching Qemu in a VNC connection, VMware SVGA thinks depth as '32', however the
actual depth of VNC is '16'. The fault also happens when the host depth is not
32 bit.

Qemu <4b5db3749c5fdba93e1ac0e8748c9a9a1064319f> tempts to fix a similar issue, by
changing from hard-coded 24bit depth to instead query the surface allocator
(e.g. sdl). However it doesn't really work, because the point where query
is invoked is earlier than the point where sdl is initialized. At query time,
qemu uses a default surface allocator which, again, provides another hard-coded
depth value - 32bit. So it happens to make VMware SVGA working on some hosts,
but still fails in others.

To solve this issue, this commit introduces a postcall interface to display
surface, which is walked after surface allocators are actually initialized.
At that point it's then safe to query host depth and present to the guest.

Signed-off-by Kevin Tian <kevin.tian@intel.com>
2010-06-29 12:34:38 +01:00
Richard Purdie
824895f14e qemu: Enable ppc system emulation and fix ppc build
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-24 08:19:58 +01:00
Joshua Lock
c9e77c18aa qemu: fix sloppy merge
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-23 18:01:23 +01:00
Jeff Dike
8ce85086f6 qemu: Work around the crash seen on Ubuntu.
Due to different stack contents in sdl_display_init on Ubuntu vs other distros,
an uninitialized structure is causing a crash.  Zeroing the structure makes the
behavior uniform across distros, avoiding the Ubuntu crash, but doesn't fix the
underlying bugs, notably:
the return value of SDL_GetWMInfo needs to be checked, as it's currently
failing silently
the underlying reason for the failure of SDL_GetWMInfo needs to be found -
there is a GetWMINfo method in the internal SDL structure which is NULL, and
the reason for this needs to be found.

Signed-off-by: Jeff Dike <jdike@linux.intel.com>
2010-06-23 17:32:12 +01:00
Joshua Lock
c87bf0cfc6 qemu: Fix linking of the native package on Fedora 13
Fedora 13 switched the default behaviour of the linker to no longer
indirectly link to required libraries (i.e. dependencies of a library
already linked to). Therefore we need to explicitly pass the depended on
libraries into the linker for building to work on Fedora 13.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-15 12:33:11 +01:00
Richard Purdie
12a9dea241 qemu-nativesdk: Make sure the compiler prefix is set fixing cross sdk builds
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-10 12:05:38 +01:00
Richard Purdie
8273262ae6 qemu-helper-nativesdk: Fix after file:// url handling changes
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-10 10:55:43 +01:00
Jeff Dike
bf59d217a8 qemu: Update to 0.12.4
Renamed the recipe to 0.12.4.

Moved the patches directory to qemu-0.12.4 - when it was named
qemu-0.12, bitbake silently ignored the patches, and only failed when
it came time to apply them.

Added a FILESDIR to the git recipe and changed its PV to 0.12.4 so it
can use the same patches as the normal recipe for now.

Removed the series file - it wasn't needed.

Signed-off-by: Jeff Dike <jdike@linux.intel.com>
2010-06-07 16:10:19 +01:00
Joshua Lock
2700a620d0 qemu: add some extra ldflags to make it link succesfully
qemu-native was failing to link on my 64bit Fedora 13 machine with this error:

| /usr/bin/ld: libqemu.a(helper_opengl.o): undefined reference to symbol 'dlsym@@GLIBC_2.2.5'
| /usr/bin/ld: note: 'dlsym@@GLIBC_2.2.5' is defined in DSO /lib64/libdl.so.2 so try adding it to the linker command line
| /lib64/libdl.so.2: could not read symbols: Invalid operation

So I did as the linker told me and added -ldl to the linker flags

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-28 15:32:42 +01:00
Joshua Lock
32a85c1570 qemu: reduce duplication, use an inc file and share common patches
There's no need to carry around two copies of the same patches for qemu-git and
qemu-0.12 so drop the qemu-git directory and update the git recipe to use the
qemu-0.12 directory for patches.

Move common code from the two recipes to an inc file.

Signed-off-by: Joshua Lock <josh@linux.intel.com>

fweh
2010-05-28 15:31:54 +01:00
Jeff Dike
3d6e7e7d0c qemu: Update the static recipe to 0.12.0
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
2010-05-27 15:22:50 -04:00
Jeff Dike
4de4707213 qemu: updated the glflags patch, which is needed by qemusdk.
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
2010-05-27 13:16:59 -04:00
Jeff Dike
a49e605a52 qemu: Updated to 0.12.0
Updated the metadata in the recipe, changed the git revision in
poky-default-revisions.inc, and pulled the qemu patches forward.
2010-05-26 14:14:48 +01:00
Joshua Lock
36652f51ab qemu_git: Ensure we have the required dependencies for a native build
qemu-native requires a libGL and the SDL development headers to build with our
GL "emulation". This patch adds a check before configure for the native package
to ensure that the sdl.pc file and GL so files exist and bombs out otherwise.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-15 17:49:49 +01:00
Joshua Lock
b0bda60d77 qemu: build mips system support in qemu
Add mips to the target-list configuration option and add a dummygl for mips.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-01-15 15:11:56 +00:00
Richard Purdie
50d9ca76b4 qemu: Add small fix to gl patch
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-14 16:37:56 +00:00
Richard Purdie
1b8493ad41 qemu: Update to 0.10.6 and add fix wacom emulation issues
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-25 14:37:20 +00:00
Richard Purdie
b8def21047 qemu: Convert to BBCLASSEXTEND (git version only, drop 0.9.1 native/nativesdk versions)
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-13 12:15:25 +00:00
Richard Purdie
3831d44240 qemu-nativesdk: Use HOST_CC to build parse_gl_h
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-18 01:01:35 +01:00
Richard Purdie
43a6e6657f qemu-nativesdk: Add patch to fix linkage
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-17 22:25:25 +01:00
Richard Purdie
4f8e5edf7c qemu-nativesdk: Add qemugl-nativesdk to DEPENDS
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-17 22:25:25 +01:00
Richard Purdie
3e33f7fcf6 qemu-nativesdk: Use a specific gcc as otherwise configure tests break
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-17 22:25:24 +01:00
Richard Purdie
0d7207ca39 sdk.bbclass: Rename to nativesdk.bbclass
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-17 22:25:22 +01:00
Richard Purdie
1acaab0f4b qemu: Fix a GL passthrough bug
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-06-16 22:32:06 +01:00
Richard Purdie
be24aaa96c qemu: Drop a ton of old now mostly inappropriate patches and update the qemugl passthrough patch
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-06-09 22:16:58 +01:00
Richard Purdie
7556381792 qemu: Fix for machines without zlib headers/library installed
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-05-24 11:14:32 +01:00
Richard Purdie
4e3afe5968 qemu: Switch to git and version 0.10.5
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-05-23 23:25:07 +01:00
Richard Purdie
edc9a00b47 qemu-sdk/qemu-native: No longer need to depend on gcc 3.x
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-05-21 17:01:53 +01:00
Richard Purdie
637183ec62 qemu: Update 6374 -> 6477 to fix absolute position device issues 2009-02-05 14:11:04 +00:00
Richard Purdie
db3dd3ad17 qemu: Upgrade to svn revision 6374 for working passthrough 2009-01-21 14:14:06 +00:00
Richard Purdie
0e22433130 qemu: Add x86_64-softmmu target 2009-01-21 11:34:08 +00:00
Richard Purdie
0d5a2607ab qemu-sdl: Remove i386-linux-user target for now 2009-01-20 11:45:24 +00:00
Richard Purdie
f6ea2f84fb qemu: Add host gl support for qemu x86 2009-01-19 23:46:37 +00:00
Richard Purdie
55be33fd92 qemu: Upgrade to latest svn removing a ton of merged patches (yay) 2009-01-05 15:56:31 +00:00
Ross Burton
5698e0be46 Fix qemu build on 2.6.27
Linux 2.6.27 removed linux/dirent.h, which qemu was included. Change this to
include dirent.h.
2008-11-11 11:11:56 +00:00
Richard Purdie
f8385030bb qemu-sdk: Pass the disable-vnc-tls option since we don't have gnutls-sdk
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5531 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-10-17 09:52:04 +00:00
Robert Bradford
2f52c8c2a4 qemu-sdk: Build i386 QEMU for inclusion in the sdk.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5264 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-09-24 18:55:15 +00:00
Richard Purdie
e15455541c qemu: Fix SRC_URI
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4565 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-05-29 11:48:43 +00:00
Richard Purdie
04e667e2e1 qemu: Fix arm exception handling missing symbol
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4350 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-04-26 10:46:55 +00:00
Richard Purdie
389dc8cb28 qemu: List and refresh the revert_arm_tcg patch
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4347 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-04-25 16:52:26 +00:00
Richard Purdie
0e3508c058 qemu: Add revert_arm_tcg patch, drop gcc3 check patch
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4343 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-04-25 15:35:33 +00:00
Richard Purdie
869b97b652 qemu: Really use gcc 3.x
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4340 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-04-25 13:14:52 +00:00
Richard Purdie
07a498028d qemu: Reenable gcc3
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4339 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-04-25 13:08:12 +00:00