This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [4.8, PATCH 3/26] Backport Power8 and LE support: Configury bits 1
- From: Richard Biener <rguenther at suse dot de>
- To: Bill Schmidt <wschmidt at linux dot vnet dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org, dje dot gcc at gmail dot com, jakub at redhat dot com
- Date: Mon, 24 Mar 2014 11:13:11 +0100 (CET)
- Subject: Re: [4.8, PATCH 3/26] Backport Power8 and LE support: Configury bits 1
- Authentication-results: sourceware.org; auth=none
- References: <1395257119 dot 17148 dot 5 dot camel at gnopaine>
On Wed, 19 Mar 2014, Bill Schmidt wrote:
> Hi,
>
> This patch (diff-le-config) backports updates to more recent
> config.guess and config.sub versions to support the new powerpc64le
> target.
This is fine.
Thanks,
Richard.
> Thanks,
> Bill
>
>
> 2014-03-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
>
> Backport from mainline r203071:
>
> 2013-10-01 Joern Rennecke <joern.rennecke@embecosm.com>
>
> Import from savannah.gnu.org:
> * config.guess: Update to 2013-06-10 version.
> * config.sub: Update to 2013-10-01 version.
>
>
> Index: gcc-4_8-branch/config.guess
> ===================================================================
> --- gcc-4_8-branch.orig/config.guess 2013-12-28 17:41:32.765630566 +0100
> +++ gcc-4_8-branch/config.guess 2013-12-28 17:50:37.995329461 +0100
> @@ -1,10 +1,8 @@
> #! /bin/sh
> # Attempt to guess a canonical system name.
> -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
> -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
> -# 2011, 2012, 2013 Free Software Foundation, Inc.
> +# Copyright 1992-2013 Free Software Foundation, Inc.
>
> -timestamp='2012-12-30'
> +timestamp='2013-06-10'
>
> # This file is free software; you can redistribute it and/or modify it
> # under the terms of the GNU General Public License as published by
> @@ -52,9 +50,7 @@ version="\
> GNU config.guess ($timestamp)
>
> Originally written by Per Bothner.
> -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
> -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
> -2012, 2013 Free Software Foundation, Inc.
> +Copyright 1992-2013 Free Software Foundation, Inc.
>
> This is free software; see the source for copying conditions. There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
> @@ -136,6 +132,27 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` |
> UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
> UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
>
> +case "${UNAME_SYSTEM}" in
> +Linux|GNU|GNU/*)
> + # If the system lacks a compiler, then just pick glibc.
> + # We could probably try harder.
> + LIBC=gnu
> +
> + eval $set_cc_for_build
> + cat <<-EOF > $dummy.c
> + #include <features.h>
> + #if defined(__UCLIBC__)
> + LIBC=uclibc
> + #elif defined(__dietlibc__)
> + LIBC=dietlibc
> + #else
> + LIBC=gnu
> + #endif
> + EOF
> + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
> + ;;
> +esac
> +
> # Note: order is significant - the case branches are not exclusive.
>
> case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
> @@ -857,21 +874,21 @@ EOF
> exit ;;
> *:GNU:*:*)
> # the GNU system
> - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
> + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
> exit ;;
> *:GNU/*:*:*)
> # other systems with GNU libc and userland
> - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
> + echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
> exit ;;
> i*86:Minix:*:*)
> echo ${UNAME_MACHINE}-pc-minix
> exit ;;
> aarch64:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> aarch64_be:Linux:*:*)
> UNAME_MACHINE=aarch64_be
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> alpha:Linux:*:*)
> case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
> @@ -884,59 +901,54 @@ EOF
> EV68*) UNAME_MACHINE=alphaev68 ;;
> esac
> objdump --private-headers /bin/sh | grep -q ld.so.1
> - if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
> - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
> + if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> + exit ;;
> + arc:Linux:*:* | arceb:Linux:*:*)
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> arm*:Linux:*:*)
> eval $set_cc_for_build
> if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
> | grep -q __ARM_EABI__
> then
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> else
> if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
> | grep -q __ARM_PCS_VFP
> then
> - echo ${UNAME_MACHINE}-unknown-linux-gnueabi
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
> else
> - echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
> fi
> fi
> exit ;;
> avr32*:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> cris:Linux:*:*)
> - echo ${UNAME_MACHINE}-axis-linux-gnu
> + echo ${UNAME_MACHINE}-axis-linux-${LIBC}
> exit ;;
> crisv32:Linux:*:*)
> - echo ${UNAME_MACHINE}-axis-linux-gnu
> + echo ${UNAME_MACHINE}-axis-linux-${LIBC}
> exit ;;
> frv:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> hexagon:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> i*86:Linux:*:*)
> - LIBC=gnu
> - eval $set_cc_for_build
> - sed 's/^ //' << EOF >$dummy.c
> - #ifdef __dietlibc__
> - LIBC=dietlibc
> - #endif
> -EOF
> - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
> - echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
> + echo ${UNAME_MACHINE}-pc-linux-${LIBC}
> exit ;;
> ia64:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> m32r*:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> m68*:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> mips:Linux:*:* | mips64:Linux:*:*)
> eval $set_cc_for_build
> @@ -955,54 +967,63 @@ EOF
> #endif
> EOF
> eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
> - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
> + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
> ;;
> + or1k:Linux:*:*)
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> + exit ;;
> or32:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> padre:Linux:*:*)
> - echo sparc-unknown-linux-gnu
> + echo sparc-unknown-linux-${LIBC}
> exit ;;
> parisc64:Linux:*:* | hppa64:Linux:*:*)
> - echo hppa64-unknown-linux-gnu
> + echo hppa64-unknown-linux-${LIBC}
> exit ;;
> parisc:Linux:*:* | hppa:Linux:*:*)
> # Look for CPU level
> case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
> - PA7*) echo hppa1.1-unknown-linux-gnu ;;
> - PA8*) echo hppa2.0-unknown-linux-gnu ;;
> - *) echo hppa-unknown-linux-gnu ;;
> + PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
> + PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
> + *) echo hppa-unknown-linux-${LIBC} ;;
> esac
> exit ;;
> ppc64:Linux:*:*)
> - echo powerpc64-unknown-linux-gnu
> + echo powerpc64-unknown-linux-${LIBC}
> exit ;;
> ppc:Linux:*:*)
> - echo powerpc-unknown-linux-gnu
> + echo powerpc-unknown-linux-${LIBC}
> + exit ;;
> + ppc64le:Linux:*:*)
> + echo powerpc64le-unknown-linux-${LIBC}
> + exit ;;
> + ppcle:Linux:*:*)
> + echo powerpcle-unknown-linux-${LIBC}
> exit ;;
> s390:Linux:*:* | s390x:Linux:*:*)
> - echo ${UNAME_MACHINE}-ibm-linux
> + echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
> exit ;;
> sh64*:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> sh*:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> sparc:Linux:*:* | sparc64:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> tile*:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> vax:Linux:*:*)
> - echo ${UNAME_MACHINE}-dec-linux-gnu
> + echo ${UNAME_MACHINE}-dec-linux-${LIBC}
> exit ;;
> x86_64:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> xtensa*:Linux:*:*)
> - echo ${UNAME_MACHINE}-unknown-linux-gnu
> + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
> exit ;;
> i*86:DYNIX/ptx:4*:*)
> # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
> @@ -1235,19 +1256,21 @@ EOF
> exit ;;
> *:Darwin:*:*)
> UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
> - case $UNAME_PROCESSOR in
> - i386)
> - eval $set_cc_for_build
> - if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
> - if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
> - (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
> - grep IS_64BIT_ARCH >/dev/null
> - then
> - UNAME_PROCESSOR="x86_64"
> - fi
> - fi ;;
> - unknown) UNAME_PROCESSOR=powerpc ;;
> - esac
> + eval $set_cc_for_build
> + if test "$UNAME_PROCESSOR" = unknown ; then
> + UNAME_PROCESSOR=powerpc
> + fi
> + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
> + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
> + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
> + grep IS_64BIT_ARCH >/dev/null
> + then
> + case $UNAME_PROCESSOR in
> + i386) UNAME_PROCESSOR=x86_64 ;;
> + powerpc) UNAME_PROCESSOR=powerpc64 ;;
> + esac
> + fi
> + fi
> echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
> exit ;;
> *:procnto*:*:* | *:QNX:[0123456789]*:*)
> Index: gcc-4_8-branch/config.sub
> ===================================================================
> --- gcc-4_8-branch.orig/config.sub 2013-12-28 17:41:32.765630566 +0100
> +++ gcc-4_8-branch/config.sub 2013-12-28 17:50:38.000329486 +0100
> @@ -1,10 +1,8 @@
> #! /bin/sh
> # Configuration validation subroutine script.
> -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
> -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
> -# 2011, 2012, 2013 Free Software Foundation, Inc.
> +# Copyright 1992-2013 Free Software Foundation, Inc.
>
> -timestamp='2013-01-11'
> +timestamp='2013-10-01'
>
> # This file is free software; you can redistribute it and/or modify it
> # under the terms of the GNU General Public License as published by
> @@ -70,9 +68,7 @@ Report bugs and patches to <config-patch
> version="\
> GNU config.sub ($timestamp)
>
> -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
> -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
> -2012, 2013 Free Software Foundation, Inc.
> +Copyright 1992-2013 Free Software Foundation, Inc.
>
> This is free software; see the source for copying conditions. There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
> @@ -256,12 +252,12 @@ case $basic_machine in
> | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
> | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
> | am33_2.0 \
> - | arc \
> + | arc | arceb \
> | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
> | avr | avr32 \
> | be32 | be64 \
> | bfin \
> - | c4x | clipper \
> + | c4x | c8051 | clipper \
> | d10v | d30v | dlx | dsp16xx \
> | epiphany \
> | fido | fr30 | frv \
> @@ -269,6 +265,7 @@ case $basic_machine in
> | hexagon \
> | i370 | i860 | i960 | ia64 \
> | ip2k | iq2000 \
> + | k1om \
> | le32 | le64 \
> | lm32 \
> | m32c | m32r | m32rle | m68000 | m68k | m88k \
> @@ -297,10 +294,10 @@ case $basic_machine in
> | mt \
> | msp430 \
> | nds32 | nds32le | nds32be \
> - | nios | nios2 \
> + | nios | nios2 | nios2eb | nios2el \
> | ns16k | ns32k \
> | open8 \
> - | or32 \
> + | or1k | or32 \
> | pdp10 | pdp11 | pj | pjl \
> | powerpc | powerpc64 | powerpc64le | powerpcle \
> | pyramid \
> @@ -328,7 +325,7 @@ case $basic_machine in
> c6x)
> basic_machine=tic6x-unknown
> ;;
> - m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
> + m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
> basic_machine=$basic_machine-unknown
> os=-none
> ;;
> @@ -370,13 +367,13 @@ case $basic_machine in
> | aarch64-* | aarch64_be-* \
> | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
> | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
> - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
> + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
> | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
> | avr-* | avr32-* \
> | be32-* | be64-* \
> | bfin-* | bs2000-* \
> | c[123]* | c30-* | [cjt]90-* | c4x-* \
> - | clipper-* | craynv-* | cydra-* \
> + | c8051-* | clipper-* | craynv-* | cydra-* \
> | d10v-* | d30v-* | dlx-* \
> | elxsi-* \
> | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
> @@ -385,6 +382,7 @@ case $basic_machine in
> | hexagon-* \
> | i*86-* | i860-* | i960-* | ia64-* \
> | ip2k-* | iq2000-* \
> + | k1om-* \
> | le32-* | le64-* \
> | lm32-* \
> | m32c-* | m32r-* | m32rle-* \
> @@ -414,7 +412,7 @@ case $basic_machine in
> | mt-* \
> | msp430-* \
> | nds32-* | nds32le-* | nds32be-* \
> - | nios-* | nios2-* \
> + | nios-* | nios2-* | nios2eb-* | nios2el-* \
> | none-* | np1-* | ns16k-* | ns32k-* \
> | open8-* \
> | orion-* \
> @@ -798,7 +796,7 @@ case $basic_machine in
> os=-mingw64
> ;;
> mingw32)
> - basic_machine=i386-pc
> + basic_machine=i686-pc
> os=-mingw32
> ;;
> mingw32ce)
> @@ -834,7 +832,7 @@ case $basic_machine in
> basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
> ;;
> msys)
> - basic_machine=i386-pc
> + basic_machine=i686-pc
> os=-msys
> ;;
> mvs)
> @@ -1550,6 +1548,9 @@ case $basic_machine in
> c4x-* | tic4x-*)
> os=-coff
> ;;
> + c8051-*)
> + os=-elf
> + ;;
> hexagon-*)
> os=-elf
> ;;
> @@ -1593,6 +1594,9 @@ case $basic_machine in
> mips*-*)
> os=-elf
> ;;
> + or1k-*)
> + os=-elf
> + ;;
> or32-*)
> os=-coff
> ;;
>
>
>
>
--
Richard Biener <rguenther@suse.de>
SUSE / SUSE Labs
SUSE LINUX Products GmbH - Nuernberg - AG Nuernberg - HRB 16746
GF: Jeff Hawn, Jennifer Guild, Felix Imend"orffer