From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12993 invoked by alias); 8 May 2012 13:21:13 -0000 Received: (qmail 12983 invoked by uid 22791); 8 May 2012 13:21:11 -0000 X-SWARE-Spam-Status: No, hits=-4.3 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL X-Spam-Check-By: sourceware.org Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 08 May 2012 13:20:51 +0000 Received: from nat-ies.mentorg.com ([192.94.31.2] helo=EU1-MAIL.mgc.mentorg.com) by relay1.mentorg.com with esmtp id 1SRkLR-0001LE-L0 from joseph_myers@mentor.com ; Tue, 08 May 2012 06:20:49 -0700 Received: from digraph.polyomino.org.uk ([172.16.63.104]) by EU1-MAIL.mgc.mentorg.com with Microsoft SMTPSVC(6.0.3790.1830); Tue, 8 May 2012 14:20:40 +0100 Received: from jsm28 (helo=localhost) by digraph.polyomino.org.uk with local-esmtp (Exim 4.74) (envelope-from ) id 1SRkLC-0001wc-MX; Tue, 08 May 2012 13:20:34 +0000 Date: Tue, 08 May 2012 13:21:00 -0000 From: "Joseph S. Myers" To: Matthias Klose cc: GCC Patches Subject: Re: [patch] support for multiarch systems In-Reply-To: <4FA8711D.3030507@ubuntu.com> Message-ID: References: <4E501045.40102@ubuntu.com> <4FA8711D.3030507@ubuntu.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2012-05/txt/msg00550.txt.bz2 On Tue, 8 May 2012, Matthias Klose wrote: > On 20.08.2011 21:51, Matthias Klose wrote: > > Multiarch [1] is the term being used to refer to the capability of a system to > > install and run applications of multiple different binary targets on the same > > system. > > please find attached an updated for the trunk (2012-05-08). The multiarch > triplets are now defined in the Debian Wiki [1], and progress is made to get the > triplet definitions into Debian Policy [2]. This still seems to suffer in some cases the problem of previous versions that it does not ensure triplets are never used for non-matching ABIs. For example, a compiler for powerpc-linux-gnu can be configured --with-float=soft but this patch will still use powerpc-linux-gnu as the multiarch triplet. For MIPS, I see you allowed for soft-float in setting the triplets - but the specification you point to doesn't mention the soft-float triplets. Likewise you allowed for powerpc-linux-gnuspe being e500v1 or e500v2 but haven't documented the e500v1 triplet. Likewise for big-endian ARM. I again suggest starting with a patch that does just one architecture - but makes sure to cover all the ABIs applicable to that architecture. For example, you could start with a patch for x86 (indeed, just x86 GNU/Linux) - and assign a multiarch triplet for x32 even if you're not building an x32 distribution with multiarch. Then, once the generic support has been reviewed by build system maintainers, and the x86 support by x86 maintainers and people familiar with all the applicable x86 ABIs, send patches for each other architecture (or architecture/OS combination), and the relevant architecture experts can review them to make sure the relevant ABIs are properly distinguished. -- Joseph S. Myers joseph@codesourcery.com