Testings on multiple architectures

Yun-Chih Chen b03902074 at ntu.edu.tw
Fri Aug 12 15:51:31 UTC 2016


Here is a list of architectures, either listed in "debian/control" or
"linux/*", against which I've tested strace:

* alpha: Tested on Debian Lenny, kernel:2.6, with old gcc+glibc,
failed to boot custom-compiled linux-kernel+busybox
* amd64: OBS native support
* arm64: OBS native support
* armeb: OBS native support
* armel: OBS native support
* armhf: OBS native support
* hppa: No available QEMU emulator
* i386: OBS native support
* ia64: No available QEMU emulator
* m68k: Buildroot only has uclibc, which cannot compile tests having `fork`.
* microblaze: Cross compile
* microblazeel: Cross compile
* mips: Cross compile
* mipsel: Cross compile
* mips64: Cross compile
* mips64el: Cross compile
* or1k: Debian port dead
* powerpc: OBS native support
* powerpcspe: OBS native support
* ppc64: OBS native support
* ppc64el: OBS native support
* s390: No available QEMU emulator
* s390x: OBS native support
* sh4: Cross compile
* sparc: Cross-compiled by buildroot, got tremendous amounts of failed tests.
* sparc64: Tested on Debian Wheezy, with failed tests; same as sparc,
if cross-compiled with buildroot
* x32: Native build
* xtensa: Cross compile

Those labeled with "OBS native support" are natively supported in OBS
and has been well-tested, as can be seen here[1].
Those labeled with "Cross compile" are not supported by OBS.
Therefore, I use buildroot to build a custom rootfs and boot/test them
on qemu, as can be seen in my OBS repository[2] in the form of
"strace-[ARCH]", each architecture per package.
You can clone the project and use the scripts attached below to update
version, trigger rebuild.  These packages are all linked to
"git://github.com/strace/strace.git", which means that it will fetch
the source from the head commit whenever a rebuild is triggered.  You
can modify the url in each package's _service file to point to your
local clone.  Whenever you push a new commit, you can run the
rebuild.sh script to rebuild all packages so as to test your commit.
I do not utilize Github's Webhook because it is not as flexible and it
adds a dummy commit to the OBS repository whenever a rebuild is
triggered.
Please see the comment in the scripts for usage and examples.

[1] https://build.opensuse.org/package/show/home:yunchih/strace
[2] https://build.opensuse.org/project/show/home:yunchih
-------------- next part --------------
A non-text attachment was scrubbed...
Name: update-version.sh
Type: application/x-sh
Size: 2518 bytes
Desc: not available
URL: <http://lists.strace.io/pipermail/strace-devel/attachments/20160812/ca2ea583/attachment.sh>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rebuild.sh
Type: application/x-sh
Size: 2213 bytes
Desc: not available
URL: <http://lists.strace.io/pipermail/strace-devel/attachments/20160812/ca2ea583/attachment-0001.sh>


More information about the Strace-devel mailing list