strace/qemu_multiarch_testing
Dmitry V. Levin 3e69bdf41a Use bootstrap script consistently
Now that ./xlat/gen.sh has to be run before autoreconf,
replace all autoreconf calls with ./bootstrap call.

* bootstrap: Forward arguments to autoreconf.
* build_static_example.sh: Replace autoreconf call with bootstrap call.
* make-dist: Likewise.
* qemu_multiarch_testing/README: Likewise.
2014-05-30 21:31:08 +00:00
..
hdc.dir Update qemu build script: now tries to upload result back to host 2012-03-19 12:20:32 +01:00
make-hdc-img.sh Slight tweak to qemu_multiarch_testing scripts 2012-03-21 11:32:55 +01:00
parallel-build-hdc-img.sh Slight tweak to qemu_multiarch_testing scripts 2012-03-21 11:32:55 +01:00
README Use bootstrap script consistently 2014-05-30 21:31:08 +00:00

How to test strace build using Aboriginal Linux's system images.

* Put a autoconf'ed strace source tree into hdc.dir/strace dir.
For example, this should work:
git clone git://strace.git.sourceforge.net/gitroot/strace/strace &&
cd strace && ./bootstrap

* Run ./make-hdc-img.sh: it will generate ext2 image file,
hdc.img, from hdc.dir/* data. This requires root for loop mount.

* Download and unpack, or build from source and unpack
one or more system-image-ARCH directories into this directory
(the one which contains this README).

* Run: ./parallel-build-hdc-img.sh system-image-DIR1 system-image-DIR2...
(background it if you don't want to see "Waiting to finish" thing).
This runs a strace build in several qemu virtual machines in parallel.

* Observe system-image-*.log file(s) with growing log of strace build.

There is no automated detection of errors for now: you need to examine
logs yourself.

For me, the following system images worked:
system-image-armv4l
system-image-armv4tl
system-image-armv5l
system-image-armv6l
system-image-i686 (had to s/qemu-system-i386/qemu/ in run-emulator.sh)
system-image-mipsel
system-image-mips
system-image-x86_64
system-image-sparc   - needed small edit in native-build.sh:
    # Getting this early:
    #       Unhandled Exception 0x00000007
    #       PC = 0xffd07cec NPC = 0xffd07cf0
    #       Stopping execution
    # and it looks like it's triggered just by too long kernel cmdline,
    # not by specific options.
    #export KERNEL_EXTRA="FTP_SERVER=$FTP_SERVER FTP_PORT=$FTP_PORT NATIVE_BUILD=$NATIVE_BUILD $KERNEL_EXTRA"
    # This works:
    export KERNEL_EXTRA="NATIVE_BUILD=$NATIVE_BUILD $KERNEL_EXTRA"

And these did not:
system-image-armv4eb - VFS: Cannot open root device "sda" or unknown-block(0,0)
system-image-m68k    - run-emulator.sh has no call of qemu-system-* (not supported yet??)
system-image-mips64  -
	need to run ./native-build.sh ../hdc.img by hand;
	copying in /mnt/init fails (segv?)
system-image-powerpc - QEMU stuck very early
system-image-sh4     - hdc does not mount (no support for 2 disks)