Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 395761 - =dev-libs/mpc-0.9-r1 broken on SPARC64
Summary: =dev-libs/mpc-0.9-r1 broken on SPARC64
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Prefix Support (show other bugs)
Hardware: Sparc64 Solaris
: Normal normal (vote)
Assignee: Gentoo Prefix
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-12-23 03:33 UTC by Richard Yao (RETIRED)
Modified: 2012-02-19 19:48 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
Build log demonstrating failure (build.log,21.00 KB, text/plain)
2011-12-23 03:33 UTC, Richard Yao (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Richard Yao (RETIRED) gentoo-dev 2011-12-23 03:33:22 UTC
Created attachment 296713 [details]
Build log demonstrating failure

=dev-libs/mpc-0.9-r1 appears to be broken on Solaris 10. =dev-libs/mpc-0.9 works without a problem.

The changes between the ebuilds appear to be insignificant:

$ diff -uN $(equery which =dev-libs/mpc-0.9) $(equery which =dev-libs/mpc-0.9-r1)
--- /home/stufs1/ryao/portage/dev-libs/mpc/mpc-0.9.ebuild       2011-04-15 05:33:39.000000000 -0400
+++ /home/stufs1/ryao/portage/dev-libs/mpc/mpc-0.9-r1.ebuild    2011-12-01 12:02:57.000000000 -0500
@@ -1,9 +1,9 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/mpc/mpc-0.9.ebuild,v 1.2 2011/04/15 09:27:58 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/mpc/mpc-0.9-r1.ebuild,v 1.2 2011/12/01 16:44:02 darkside Exp $
 
 # Unconditional dependency of gcc.  Keep this set to 0.
-EAPI=0
+EAPI="0"
 
 inherit eutils libtool
 
@@ -14,22 +14,28 @@
 
 LICENSE="LGPL-2.1"
 SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="static-libs"
 
 DEPEND=">=dev-libs/gmp-4.3.2
-               >=dev-libs/mpfr-2.4.2
-               elibc_SunOS? ( >=sys-devel/gcc-4.5 )"
+       >=dev-libs/mpfr-2.4.2
+       elibc_SunOS? ( >=sys-devel/gcc-4.5 )"
 RDEPEND="${DEPEND}"
 
 src_unpack() {
        unpack ${A}
-       cd "${S}" || die
+       cd "${S}"
        epatch "${WORKDIR}"/${P}-configure.patch
        elibtoolize # for FreeMiNT, bug #347317
 }
 
+src_compile() {
+       econf $(use_enable static-libs static) || die
+       emake || die
+}
+
 src_install() {
        emake DESTDIR="${D}" install || die
-       dodoc "${S}"/{ChangeLog,NEWS,README,TODO}
+       use static-libs || rm "${ED:-${D}}"/usr/lib*/libmpc.la
+       dodoc ChangeLog NEWS README TODO
 }

I plan to switch to GCC 4.5.3 from GCC 4.2.4 and rebuild @world, but I am not sure what to make of the dependency on GCC 4.5.x when the previous ebuild built using GCC 4.2.4 without a problem and there is nothing I can spot in the MPC library that should require GCC 4.5.x.

I assume that the new src_compile() function is the cause of the failure, but I won't be certain about it for at least a few days. I plan to recompile @world with GCC 4.5.3 and work on some other things first.

$ emerge --info =dev-libs/mpc-0.9
Portage 2.2.01.19981-prefix (prefix/sunos/solaris/5.10/sparc64, gcc-4.5.3, unavailable, 5.10 sun4u)
=================================================================
                        System Settings
=================================================================
System uname: Solaris-2.10-sun4u-sparc-64bit-ELF
Timestamp of tree: Thu, 22 Dec 2011 20:11:09 +0000
distcc 3.1 sparcv9-sun-solaris2.10 [disabled]
ccache version 3.1.4 [disabled]
app-shells/bash:      4.2_p10
dev-lang/python:      2.7.2-r3
dev-util/ccache:      3.1.4
dev-util/pkgconfig:   0.26
sys-devel/autoconf:   2.68
sys-devel/automake:   1.11.1
sys-devel/binutils:   2.20.1-r1
sys-devel/gcc:        4.2.4-r01.4, 4.5.3-r1
sys-devel/gcc-config: 1.5-r2
sys-devel/libtool:    2.4-r4
sys-devel/make:       3.82
Repositories: gentoo_prefix
Installed sets: 
ACCEPT_KEYWORDS="~sparc64-solaris"
ACCEPT_LICENSE="* -@EULA"
CBUILD="sparcv9-sun-solaris2.10"
CFLAGS="-mcpu=ultrasparc3 -mtune=ultrasparc3 -O2 -pipe"
CHOST="sparcv9-sun-solaris2.10"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/portage /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-mcpu=ultrasparc3 -mtune=ultrasparc3 -O2 -pipe"
DISTDIR="/home/stufs1/ryao/Gentoo-Solaris/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs collision-protect distlocks ebuild-locks fixlafiles force-prefix news nostrip parallel-fetch preserve-libs protect-owned sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LDFLAGS=""
MAKEOPTS="-j2"
PKGDIR="/home/stufs1/ryao/Gentoo-Solaris/usr/portage/packages"
PORTAGE_CONFIGROOT="/home/stufs1/ryao/Gentoo-Solaris/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/tmp/ryao"
PORTDIR="/home/stufs1/ryao/Gentoo-Solaris/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.prefix.freens.org/gentoo-portage-prefix"
USE="cracklib cxx modules ncurses nls prefix readline sparc64-solaris ssl unicode zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="SunOS" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse" KERNEL="SunOS" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

dev-libs/mpc-0.9 was built with the following:
USE="(prefix)"
Comment 1 Fabian Groffen gentoo-dev 2011-12-23 08:09:53 UTC
As far as I know, you can only build mpc-0.9 with gcc-4.5, that's why in the bootstrap we force mpc-0.8, since we're on gcc-4.2 at that point (because gcc-4.5 has too many deps to get compiling at that stage).

So, you must be on an old Prefix, I think, because recent bootstraps would have this solved already.  When I upgraded my months old sparc64-solaris install like a month ago, I hit this problem too.  Solution is to just build gcc-4.5 first (it's happy with mpc-0.8) and then you can build mpc-0.9.

Perhaps we should just add "kernel_SunOS ( >=sys-devel/gcc-4.5 )" deps, but still that doesn't guarantee that gcc-4.5 is actually active (and hence used).