Using the example power3 CFLAGS in 2005.0 make.conf (CFLAGS="-O2 -pipe -mcpu=power3 -mtarget=power3"), I get ebuild breakage. Reproducible: Always Steps to Reproduce: 1. Set CFLAGS to CFLAGS="-O2 -pipe -mcpu=power3 -mtarget=power3" in make.conf 2. emerge app-misc/screen Actual Results: Specifically, I get the following when I emerge app-misc/screen: >>> Source unpacked. ./configure --prefix=/usr --host=powerpc64-unknown-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --enable-pam --with-socket-dir=/var/run/screen --with-sys-screenrc=/etc/screenrc --enable-rxvt_osc configure: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used. this is screen version 4.0.2 checking for powerpc64-unknown-linux-gnu-gcc... powerpc64-unknown-linux-gnu-gcc checking for C compiler default output file name... configure: error: C compiler cannot create executables See `config.log' for more details. !!! Please attach the config.log to your bug report: !!! /var/tmp/portage/screen-4.0.2-r1/work/screen-4.0.2/config.log !!! ERROR: app-misc/screen-4.0.2-r1 failed. !!! Function econf, Line 485, Exitcode 0 !!! econf failed !!! If you need support, post the topmost build error, NOT this status message. Expected Results: compilation w/o errors. However, when I remove the "-mtarget" definition in CLAGS, everything works perfectly. I looked at the gcc 3.4.4 documentation (http://gcc.gnu.org/onlinedocs/gcc-3.4.4/gcc/RS_002f6000-and-PowerPC-Options.html#RS_002f6000-and-PowerPC-Options), and I can see no mention of the "-mtarget" option. I also looked at older versions of the gcc handbook (3.3.5, 3.1.1, and 2.95.3), and could not find -mtarget defined there either. emerge info: Portage 2.0.51.19 (default-linux/ppc64/2005.0, gcc-3.4.4, glibc-2.3.4.20041102-r1, 2.6.11-gentoo-r8 ppc64) ================================================================= System uname: 2.6.11-gentoo-r8 ppc64 POWER3 (630) Gentoo Base System version 1.6.12 Python: dev-lang/python-2.3.5 [2.3.5 (#1, Jul 5 2005, 03:38:28)] dev-lang/python: 2.3.5 sys-apps/sandbox: [Not Present] sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.9.5, 1.5, 1.8.5-r3, 1.7.9-r1, 1.6.3, 1.4_p6 sys-devel/binutils: 2.15.90.0.3-r5 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="ppc64" AUTOCLEAN="yes" CFLAGS="-O2 -pipe -mcpu=power3" CHOST="powerpc64-unknown-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -pipe -mcpu=power3" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="ppc64 berkdb bitmap-fonts emboss fortran gif gpm jpeg ncurses pam perl png python readline ssl tcpd truetype truetype-fonts type1-fonts unicode zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
not a bug in gcc, looks like example ppc/ppc64 make.conf is broken
-mtarget looks to have been removed from gcc. Interesting! Prior actually there was a bug in gcc. (Least it has been for every version of gcc as going as far back as gcc 3.2.2 and I'm fairly sure it's still broken.) -mtarget unfortunately had turned on some internal flags to gcc where it starts to think it's building a 32 bit ppc binary. Sorry gotta reject this as it's not going to get fixed. Docs need toget fixed!
so you'll have to use -mcpu=power3 -mtune=power3 ... stick a fork in it