From patchwork Wed Nov 21 03:21:00 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthias Klose X-Patchwork-Id: 200545 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id F24D62C0091 for ; Wed, 21 Nov 2012 14:21:20 +1100 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1354072881; h=Comment: DomainKey-Signature:Received:Received:Received:Received: Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject: References:In-Reply-To:Content-Type:Mailing-List:Precedence: List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender: Delivered-To; bh=eu93Y2nu1G9JS0HG60hr0xMbLJk=; b=bTgl+WpIFmbarNv toOPycU4Z1geblPv+DAJWvpDfLD0Cw49afotXUQgfcuQDqqjCEZITjniisDyx8fs hmgFiImzuGF6LiVKXwZqATGfLPKOkEK1aUl7/xfo1jwAzwlqkB+aBScr+fknSWjW u280ss6/zRGdJFAtd0SUDo1uQ2VE= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=gcc.gnu.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject:References:In-Reply-To:Content-Type:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=nJISrRV+SaELef+HPQE+mV/OaC6wxpRUFP5kH3A8P9OicmfdDPhxQ/7/svhQl/ 352DmNApevB5Qrupqnj3nVFpf5Qp0m/qwgfAoURA2IK7d7QNj4YUoi8nIV8xPcM0 ql2P6qP9amCmImXKJzZcMVCK4TmBkweEjxyPZqDrdfHRA=; Received: (qmail 379 invoked by alias); 21 Nov 2012 03:21:12 -0000 Received: (qmail 32730 invoked by uid 22791); 21 Nov 2012 03:21:10 -0000 X-SWARE-Spam-Status: No, hits=-2.9 required=5.0 tests=AWL, BAYES_00, KHOP_RCVD_UNTRUST, KHOP_THREADED, RCVD_IN_DNSWL_LOW, TW_CX X-Spam-Check-By: sourceware.org Received: from youngberry.canonical.com (HELO youngberry.canonical.com) (91.189.89.112) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 21 Nov 2012 03:21:05 +0000 Received: from dslb-088-073-076-122.pools.arcor-ip.net ([88.73.76.122] helo=[192.168.42.216]) by youngberry.canonical.com with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1Tb0s4-000568-6d; Wed, 21 Nov 2012 03:21:04 +0000 Message-ID: <50AC489C.4090109@ubuntu.com> Date: Wed, 21 Nov 2012 04:21:00 +0100 From: Matthias Klose User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20121028 Thunderbird/16.0.2 MIME-Version: 1.0 To: David Edelsohn CC: GCC Patches Subject: Re: [patch] [powerpc] add multiarch definitions for powerpc-linux-gnu References: In-Reply-To: Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Am 21.11.2012 03:40, schrieb David Edelsohn: > The following patch adds the multiarch definitions for -linux-gnu. Tested using > a Debian/Ubuntu package build. Ok for the trunk? > > Matthias > > 2012-11-14 Matthias Klose > > * config/rs6000/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES. > * config/rs6000/t-linux: New file; define MULTIARCH_DIRNAME for hard > float configurations. > * config/rs6000/t-fprules (SOFT_FLOAT_CPUS): New macro. > (MULTILIB_MATCHES_FLOAT): Define in terms of SOFT_FLOAT_CPUS. > * config/rs6000/t-spe: Define MULTIARCH_DIRNAME for linux targets. > * config.gcc (tmake_file): > Include rs6000/t-linux for 32bit non-biarch configurations. > * configure.ac (with_cpu): Substitute variable. > * configure: Regenerate. > * Makefile.in (with_cpu): New macro. > > And add e300c2 to the list of soft-float configurations > > Okay. thanks, committed. Matthias 2012-11-20 Matthias Klose * configure.ac: Substitute `with_cpu'. * configure: Regenerate. * Makefile.in: Define `with_cpu'. * config/rs6000/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES. * config/rs6000/t-linux: New file; define MULTIARCH_DIRNAME. * config/rs6000/t-fprules (SOFT_FLOAT_CPUS): New macro. Add e300c2 to the list. (MULTILIB_MATCHES_FLOAT): Define in terms of SOFT_FLOAT_CPUS. * config/rs6000/t-spe: Define MULTIARCH_DIRNAME. * config.gcc (tmake_file): Include rs6000/t-linux for 32bit non-biarch configurations. Index: config.gcc =================================================================== --- config.gcc (revision 193685) +++ config.gcc (working copy) @@ -2059,6 +2059,7 @@ ;; *) tm_file="${tm_file} rs6000/linux.h glibc-stdint.h" + tmake_file="$tmake_file rs6000/t-linux" ;; esac case ${target} in Index: configure.ac =================================================================== --- configure.ac (revision 193685) +++ configure.ac (working copy) @@ -636,6 +636,7 @@ AC_MSG_RESULT($enable_multiarch$ma_msg_suffix) # needed for setting the multiarch name for soft-float/hard-float ABIs +AC_SUBST(with_cpu) AC_SUBST(with_float) # Enable __cxa_atexit for C++. Index: Makefile.in =================================================================== --- Makefile.in (revision 193685) +++ Makefile.in (working copy) @@ -532,6 +532,7 @@ # Multiarch support enable_multiarch = @enable_multiarch@ +with_cpu = @with_cpu@ with_float = @with_float@ ifeq ($(enable_multiarch),yes) if_multiarch = $(1) Index: config/rs6000/t-linux =================================================================== --- config/rs6000/t-linux (revision 0) +++ config/rs6000/t-linux (revision 0) @@ -0,0 +1,5 @@ +# do not define the multiarch name if configured for a soft-float cpu +# or soft-float. +ifeq (,$(filter $(with_cpu),$(SOFT_FLOAT_CPUS))$(findstring soft,$(with_float)) +MULTIARCH_DIRNAME = powerpc-linux-gnu +endif Index: config/rs6000/t-linux64 =================================================================== --- config/rs6000/t-linux64 (revision 193685) +++ config/rs6000/t-linux64 (working copy) @@ -29,4 +29,5 @@ MULTILIB_OPTIONS = m64/m32 MULTILIB_DIRNAMES = 64 32 MULTILIB_EXTRA_OPTS = fPIC -MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) +MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:powerpc64-linux-gnu) +MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu) Index: config/rs6000/t-fprules =================================================================== --- config/rs6000/t-fprules (revision 193685) +++ config/rs6000/t-fprules (working copy) @@ -16,17 +16,8 @@ # along with GCC; see the file COPYING3. If not see # . -MULTILIB_MATCHES_FLOAT = msoft-float=mcpu?401 \ - msoft-float=mcpu?403 \ - msoft-float=mcpu?405 \ - msoft-float=mcpu?440 \ - msoft-float=mcpu?464 \ - msoft-float=mcpu?476 \ - msoft-float=mcpu?ec603e \ - msoft-float=mcpu?801 \ - msoft-float=mcpu?821 \ - msoft-float=mcpu?823 \ - msoft-float=mcpu?860 +SOFT_FLOAT_CPUS = e300c2 401 403 405 440 464 476 ec603e 801 821 823 860 +MULTILIB_MATCHES_FLOAT = $(foreach cpu, $(SOFT_FLOAT_CPUS), msoft-float=mcpu?$(cpu)) # Build the libraries for both hard and soft floating point by default Index: config/rs6000/t-spe =================================================================== --- config/rs6000/t-spe (revision 193685) +++ config/rs6000/t-spe (working copy) @@ -71,3 +71,7 @@ mabi=altivec/mlittle \ maltivec/mlittle \ maltivec/mabi=altivec/mlittle + +ifneq (,$(findstring linux, $(target))) +MULTIARCH_DIRNAME = powerpc-linux-gnuspe$(if $(findstring rs6000/e500-double.h, $(tm_file)),,v1) +endif