Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 321785 - dev-util/catalyst is erroneously using python-3.1 when building stages
Summary: dev-util/catalyst is erroneously using python-3.1 when building stages
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on: 329149
Blocks: 330765
  Show dependency tree
 
Reported: 2010-05-28 08:03 UTC by Graham Murray
Modified: 2010-10-16 23:58 UTC (History)
9 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Graham Murray 2010-05-28 08:03:53 UTC
Since the stabilisation of python-3.1.2-r3, catalyst is using python-3.1 rather than python-2.6 leading to a failure while building stage3 (stages 1&2) build OK.

# eselect python show
python2.6

# emerge --info
Portage 2.1.8.3 (hardened/linux/amd64/10.0/no-multilib, gcc-4.3.4, glibc-2.10.1-r1, 2.6.31-gentoo-r10 x86_64)
=================================================================
System uname: Linux-2.6.31-gentoo-r10-x86_64-Intel-R-_Xeon-R-_CPU_X3430_@_2.40GHz-with-gentoo-1.12.13
Timestamp of tree: Thu, 27 May 2010 06:30:01 +0000
app-shells/bash:     4.0_p37
dev-lang/python:     2.6.5-r2, 3.1.2-r3
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.63-r1
sys-devel/automake:  1.10.3, 1.11.1
sys-devel/binutils:  2.18-r3
sys-devel/gcc:       4.3.4
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=native -mtune=native -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/eselect/postgresql /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=native -mtune=native -ggdb"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms splitdebug strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_GB.UTF-8"
LC_ALL="en_GB.UTF-8"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
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="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://gmdev.webwayone.co.uk/gentoo-portage"
USE="acl amd64 berkdb bzip2 cli cracklib crypt cups cxx dri gdbm gpm hardened iconv ipv6 justify mmx modules mudflap ncurses nls nptl nptlonly openmp pam pcre perl pic postgres pppd python readline reflection session spl sse sse2 ssl ssse3 sysfs tcpd threads unicode urandom xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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 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" APACHE2_MPMS="worker" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga neomagic nv r128 radeon savage sis tdfx trident vesa via vmware voodoo" 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, FFLAGS, INSTALL_MASK, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Michael Weber (RETIRED) gentoo-dev 2010-06-07 23:00:26 UTC
Hello Graham,

can you please add the version if catalyst that shows this behavior?

Thanks, Michael
Comment 2 Graham Murray 2010-06-10 07:21:19 UTC
Sorry, it is dev-util/catalyst-2.0.6.907
Comment 3 Raúl Porcel (RETIRED) gentoo-dev 2010-07-20 18:07:51 UTC
chmod 644 /var/tmp/portage/sys-libs/cracklib-2.8.15/image//usr/lib/python3.1/site-packages/_cracklibmodule.a
i686-pc-linux-gnu-ranlib /var/tmp/portage/sys-libs/cracklib-2.8.15/image//usr/lib/python3.1/site-packages/_cracklibmodule.a
libtool: install: warning: remember to run `libtool --finish /usr/lib/python3.1/site-packages'
test -z "/usr/lib/python3.1/site-packages" || /bin/mkdir -p "/var/tmp/portage/sys-libs/cracklib-2.8.15/image//usr/lib/python3.1/site-packages"
 /usr/bin/install -c -m 644 'cracklib.py' '/var/tmp/portage/sys-libs/cracklib-2.8.15/image//usr/lib/python3.1/site-packages/cracklib.py'
  File "<string>", line 6
    print 'Byte-compiling python modules...'
                                           ^
SyntaxError: invalid syntax
make[2]: *** [install-pythonPYTHON] Error 1
make[2]: Leaving directory `/var/tmp/portage/sys-libs/cracklib-2.8.15/work/cracklib-2.8.15/python'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/var/tmp/portage/sys-libs/cracklib-2.8.15/work/cracklib-2.8.15/python'
make: *** [install-recursive] Error 1
 * ERROR: sys-libs/cracklib-2.8.15 failed:
 *   make install failed
 * 
 * Call stack:
 *     ebuild.sh, line  54:  Called src_install
 *   environment, line 2687:  Called die
 * The specific snippet of code:
 *       emake DESTDIR="${D}" install || die "make install failed";


@python: this is breaking autobuilds on stage3.
Comment 4 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-08-02 15:45:16 UTC
I see Raúl forgot to add a note that the stages are now building fine on arches that stabled cracklib-2.8.16.
Also, this is not a catalyst bug as it uses packages marked stable in the tree.
Comment 5 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2010-08-02 17:31:25 UTC
The output of 'ROOT=/tmp/root USE="-*" emerge -ptv @system' suggests that sys-apps/portage-2.1.8.3[-python3] pulls =dev-lang/python-3* into dependency graph.
Comment 6 Sebastian Luther (few) 2010-08-02 17:45:29 UTC
(In reply to comment #5)
> The output of 'ROOT=/tmp/root USE="-*" emerge -ptv @system' suggests that
> sys-apps/portage-2.1.8.3[-python3] pulls =dev-lang/python-3* into dependency
> graph.
> 

Can't reproduce. This pulls in python-2.6 for me.
Comment 7 Sebastian Luther (few) 2010-08-02 18:21:04 UTC
(In reply to comment #6)
> (In reply to comment #5)
> > The output of 'ROOT=/tmp/root USE="-*" emerge -ptv @system' suggests that
> > sys-apps/portage-2.1.8.3[-python3] pulls =dev-lang/python-3* into dependency
> > graph.
> > 
> 
> Can't reproduce. This pulls in python-2.6 for me.
> 

After trying in a chroot created from the latest stage3, I can reproduce it.

The reason that it happens lies in the way portage handels deps of the form 
|| ( =A-1 =A-2 ). It will always prefer the atom which allows the highest version.
Comment 8 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2010-08-02 19:39:45 UTC
I suggest the following workaround in sys-apps/portage ebuilds:

python_dep="python3? ( =dev-lang/python-3* )
 !python3? (
   build? ( || ( dev-lang/python:2.7 dev-lang/python:2.6 ) )
   !build? ( || ( dev-lang/python:2.7 dev-lang/python:2.6 >=dev-lang/python-3 ) )
 )"
Comment 9 Zac Medico gentoo-dev 2010-08-03 04:30:22 UTC
(In reply to comment #8)
That's in cvs now.
Comment 10 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-10-16 17:55:26 UTC
Portage was updated not to depend on python-3 with USE="build" so this no longer affects the stages.
This isn't "really fixed" nor can it be fixed from catalyst side, so we (release team) will have to look at it if the problem arises again.

@portage:

can we close this bug?
Comment 11 Zac Medico gentoo-dev 2010-10-16 23:58:35 UTC
I think the fix from comment #8 is fine. We can adjust the dependencies again in the future, if and when we want python3 to be the default interpreter.