From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MvFm0-0005jx-VC for qemu-devel@nongnu.org; Tue, 06 Oct 2009 15:32:37 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MvFlt-0005ci-OE for qemu-devel@nongnu.org; Tue, 06 Oct 2009 15:32:34 -0400 Received: from [199.232.76.173] (port=58869 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MvFlt-0005cK-Iq for qemu-devel@nongnu.org; Tue, 06 Oct 2009 15:32:29 -0400 Received: from mtaout02-winn.ispmail.ntl.com ([81.103.221.48]:31992) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MvFle-0000Vi-LK for qemu-devel@nongnu.org; Tue, 06 Oct 2009 15:32:29 -0400 Received: from aamtaout04-winn.ispmail.ntl.com ([81.103.221.35]) by mtaout02-winn.ispmail.ntl.com (InterMail vM.7.08.04.00 201-2186-134-20080326) with ESMTP id <20091006193213.HGIL27507.mtaout02-winn.ispmail.ntl.com@aamtaout04-winn.ispmail.ntl.com> for ; Tue, 6 Oct 2009 20:32:13 +0100 Received: from miranda.arrow ([213.107.24.213]) by aamtaout04-winn.ispmail.ntl.com (InterMail vG.2.02.00.01 201-2161-120-102-20060912) with ESMTP id <20091006193213.WJWA22934.aamtaout04-winn.ispmail.ntl.com@miranda.arrow> for ; Tue, 6 Oct 2009 20:32:13 +0100 Received: from sdb by miranda.arrow with local (Exim 4.63) (envelope-from ) id 1MvFms-00084s-3N for qemu-devel@nongnu.org; Tue, 06 Oct 2009 20:33:30 +0100 Date: Tue, 6 Oct 2009 20:33:29 +0100 From: Stuart Brady Subject: Re: [Qemu-devel] OpenBSD build fixes Message-ID: <20091006193329.GA30948@miranda.arrow> References: <20091005201628.GP25308@overdrive.home.tratt.net> <20091005205750.GA29185@miranda.arrow> <20091005212335.GQ25308@overdrive.home.tratt.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20091005212335.GQ25308@overdrive.home.tratt.net> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org On Mon, Oct 05, 2009 at 10:23:35PM +0100, Laurence Tratt wrote: > In an ideal world, I would love qemu to work out of the box on OpenBSD. Both > the things I'm referring to relate to things that appear simply to be > missing from OpenBSD - for example ONLY_IF_RO prevents x86_64.ld from > compiling, and has to be removed. While I'd be happy to see those removed > from the tree, I assume they have semantic meaning for other platforms, and > that's something we have to live without. As this implies, this stuff is a > little outside my normal experience, but given that no-one else more > qualified has ported a recent version of qemu to OpenBSD [/amd64 in > particular], I guess it'll have to do! I *think* it should be safe to drop the lines using ONLY_IF_RO, provided that you also make the ONLY_IF_RW lines be unconditional. The proper fix might be to pass the script through a preprocessor (perhaps the C preprocessor, with a set of #ifdefs) on affected hosts. Note that ia64, m68k and s390 also mark .eh_frame and .gcc_except_table with KEEP { ... }, but place them in the data segment (i.e. without using ONLY_IF_RO and ONLY_IF_RW). I expect that you're only really concerned with x86_64 for the time being, but note that hppa, mips, ppc and ppc64 also use ONLY_IF_RO and ONLY_IF_RW. I'd certainly argue that it's best to post any OpenBSD-specific patches to the list with [RFC] in the subject line, so that anyone who might know a better fix for a specific issue can offer their suggestions. It's sometimes the case that a fix is also relevant to one of the other Un*xes or Windows, so I think it's well worth keeping the list informed of any issues that you find. Also, I feel that it's worth having the current code in Git compile and run under OpenBSD -- I can't see any reason to treat OpenBSD as a second class citizen, nor any other significant OS. Cheers, -- Stuart Brady