From owner-svn-doc-all@FreeBSD.ORG Sun Jul 13 17:46:30 2014
Return-Path:
Delivered-To: svn-doc-all@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org
[IPv6:2001:1900:2254:206a::19:1])
(using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))
(No client certificate requested)
by hub.freebsd.org (Postfix) with ESMTPS id 630DF8C4;
Sun, 13 Jul 2014 17:46:30 +0000 (UTC)
Received: from svn.freebsd.org (svn.freebsd.org
[IPv6:2001:1900:2254:2068::e6a:0])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(Client did not present a certificate)
by mx1.freebsd.org (Postfix) with ESMTPS id 448202A34;
Sun, 13 Jul 2014 17:46:30 +0000 (UTC)
Received: from svn.freebsd.org ([127.0.1.70])
by svn.freebsd.org (8.14.8/8.14.8) with ESMTP id s6DHkUsk098541;
Sun, 13 Jul 2014 17:46:30 GMT (envelope-from gjb@svn.freebsd.org)
Received: (from gjb@localhost)
by svn.freebsd.org (8.14.8/8.14.8/Submit) id s6DHkUhN098540;
Sun, 13 Jul 2014 17:46:30 GMT (envelope-from gjb@svn.freebsd.org)
Message-Id: <201407131746.s6DHkUhN098540@svn.freebsd.org>
From: Glen Barber
Date: Sun, 13 Jul 2014 17:46:30 +0000 (UTC)
To: doc-committers@freebsd.org, svn-doc-all@freebsd.org,
svn-doc-head@freebsd.org
Subject: svn commit: r45267 - head/en_US.ISO8859-1/htdocs/news/status
X-SVN-Group: doc-head
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-doc-all@freebsd.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: "SVN commit messages for the entire doc trees \(except for "
user" , " projects" , and " translations"
\)"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 13 Jul 2014 17:46:30 -0000
Author: gjb
Date: Sun Jul 13 17:46:29 2014
New Revision: 45267
URL: http://svnweb.freebsd.org/changeset/doc/45267
Log:
Add QEMU report.
Submitted by: sbruno
Sponsored by: The FreeBSD Foundation
Modified:
head/en_US.ISO8859-1/htdocs/news/status/report-2014-04-2014-06.xml
Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2014-04-2014-06.xml
==============================================================================
--- head/en_US.ISO8859-1/htdocs/news/status/report-2014-04-2014-06.xml Sun Jul 13 17:36:52 2014 (r45266)
+++ head/en_US.ISO8859-1/htdocs/news/status/report-2014-04-2014-06.xml Sun Jul 13 17:46:29 2014 (r45267)
@@ -43,7 +43,7 @@
?>
Thanks to all the reporters for the excellent work! This
- report contains 4 entries and we hope you enjoy reading it.
+ report contains 5 entries and we hope you enjoy reading it.
The deadline for submissions covering between July and
September 2014 is October 7th, 2014.
@@ -330,4 +330,113 @@
charsets/key-codes in the vt(4).
+
+
+ QEMU bsd-user enabled ports building
+
+
+
+
+ Stacey
+ Son
+
+ sson@freebsd.org
+
+
+
+ Juergen
+ Lock
+
+ nox@freebsd.org
+
+
+
+ Sean
+ Bruno
+
+ sbruno@freebsd.org
+
+
+
+
+ Overview of technology
+ Status of ports building
+ Master respository for collaboration
+
+
+
+ The ports-mgmt/poudriere-devel port is aware of how to build
+ ports via an emulator. Configuration of the miscellaneous
+ binary image activator is required prior to a poudriere-devel
+ run.
+
+ ARMV6, MIPS32 and MIPS64 packages can be produced via full
+ emulation. There are several packages that block a full run of
+ builds. They can be viewed on the Status of ports building
+ link.
+
+ On current or latest stable/10:
+
+ Clone the github
+ repository of qemu, and switch to
+ the bsd-user branch. Then run:
+
+ ./configure --static \
+ --target-list="arm-bsd-user i386-bsd-user \
+ mips-bsd-user mips64-bsd-user mips64el-bsd-user \
+ mipsel-bsd-user ppc-bsd-user ppc64-bsd-user sparc-bsd-user \
+ sparc64-bsd-user x86_64-bsd-user"
+
+ gmake; gmake install
+
+ Then setup the binmiscctl tools to do some evil hackery to
+ redirect execution of armv6 binaries to qemu:
+
+ binmiscctl add armv6 --interpreter \
+ "/usr/local/bin/qemu-arm" --magic \
+ "\x7f\x45\x4c\x46\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02 \
+ \x00\x28\x00" --mask "\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff \
+ \xff\xff\xff\xff\xfe\xff\xff\xff" --size 20 --set-enabled
+
+ Install poudriere-devel from ports. It knows how to setup
+ things.
+
+ Build poudriere jail to do all the magic:
+
+ poudriere jail -c -j 11armv632 -m svn -a armv6 \
+ -v head
+
+ You can now run poudriere against that jail to build all the
+ ports:
+
+ poudriere bulk -j 11armv632 -a
+
+ Nullfs mount your ports tree into the jail:
+
+ mkdir /usr/local/poudriere/jails/11armv632/usr/ports
+ mount -t nullfs /usr/ports /usr/local/poudriere/jails/11armv632/usr/ports
+ To chroot into the jail:
+
+ mount -t devfs devfs /usr/local/poudriere/jails/11armv632/dev
+ chroot /usr/local/poudriere/jails/11armv632/
+
+
+
+
+ PPC on AMD64 emulation. WIP as there appears to be some serious issues running the bsd-user binary on big endian hardware. Justin Hibbits working on this.
+
+
+ SPARC64 on AMD64 emulation is non-functional and instantly segfaults. Looking for someone to poke at the bits here.
+
+
+ External Tool Chain, XDEV support. Partial support for using an AMD64 tool chain that can output other architecture (use AMD64 toolchain to build MIPS64 packages). Currently tracking a linking issue with ports-mgmt/pkg. Thanks to Warner Losh, Baptiste Daroussin, Dimitry Andric for poking at bits in here to make the XDEV target useful.
+
+
+ Signal Handling, MIPS/ARMV6 target still displays a failure that manifests itself when building devel/p5-Sys-SigAction
+
+
+ Massive documentation update needed. These modifications actually allow you to chroot into a MIPS or ARMv6 environment and use native tool chains and libraries to prototype your software for a target platform.
+
+
+