Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 341409

Summary: dev-vcs/darcs-2.4.4-r1 fails to compile
Product: Gentoo Linux Reporter: Pascal Bourguignon <pjb>
Component: [OLD] DevelopmentAssignee: Gentoo's Haskell Language team <haskell>
Status: RESOLVED INVALID    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: bug report documents.

Description Pascal Bourguignon 2010-10-17 04:37:23 UTC
emerge --update world fails on updating darcs-2.4.4-r1.
See attached tarball.
Comment 1 Pascal Bourguignon 2010-10-17 04:38:17 UTC
Created attachment 250973 [details]
bug report documents.



 * Messages for package dev-vcs/darcs-2.4.4-r1:

 * ERROR: dev-vcs/darcs-2.4.4-r1 failed:
 *   setup configure failed
 * 
 * Call stack:
 *     ebuild.sh, line   54:  Called src_configure
 *   environment, line 3165:  Called cabal_src_configure '--flags=curl' '--flags=-http' '--flags=curl-pipelining' '--flags=color' '--flags=terminfo' '--flags=mmap' '--flags=threaded' '--flags=-test'
 *   environment, line  640:  Called haskell-cabal_src_configure '--flags=curl' '--flags=-http' '--flags=curl-pipelining' '--flags=color' '--flags=terminfo' '--flags=mmap' '--flags=threaded' '--flags=-test'
 *   environment, line 2478:  Called cabal-configure '--ghc-option=-optl-Wl,-O1' '--ghc-option=-optl-Wl,--as-needed' '--flags=curl' '--flags=-http' '--flags=curl-pipelining' '--flags=color' '--flags=terminfo' '--flags=mmap' '--flags=threaded' '--flags=-test'
 *   environment, line  527:  Called die
 * The specific snippet of code:
 *       ./setup configure --ghc --prefix=/usr --with-compiler="$(ghc-getghc)" --with-hc-pkg="$(ghc-getghcpkg)" --prefix=/usr --libdir=/usr/$(get_libdir) --libsubdir=${P}/ghc-$(ghc-version) --datadir=/usr/share/ --datasubdir=${P}/ghc-$(ghc-version) ${cabalconf} ${CABAL_CONFIGURE_FLAGS} "$@" || die "setup configure failed"
 * 
 * If you need support, post the output of 'emerge --info =dev-vcs/darcs-2.4.4-r1',
 * the complete build log and the output of 'emerge -pqv =dev-vcs/darcs-2.4.4-r1'.
 * The complete build log is located at '/var/tmp/portage/dev-vcs/darcs-2.4.4-r1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-vcs/darcs-2.4.4-r1/temp/environment'.
 * S: '/var/tmp/portage/dev-vcs/darcs-2.4.4-r1/work/darcs-2.4.4'

 * Regenerating GNU info directory index...
 * Processed 240 info files.

 * IMPORTANT: 4 news items need reading for repository 'gentoo'.
 * Use eselect news to read news items.
Comment 2 Pascal Bourguignon 2010-10-17 04:43:20 UTC
It seens that it is missing a dependency: parsec.
When I emerge parsec, emerge --update world can emerge darcs-2.4.4-r1.
Comment 3 Sergei Trofimovich (RETIRED) gentoo-dev 2010-10-18 04:02:33 UTC
darcs has parsec dep:

    dev-haskell/parsec:0

Did you run haskell-updater after ghc upgrade? ('ghc-pkg check' will help to find broken packages)
Comment 4 Pascal Bourguignon 2010-10-18 06:03:11 UTC
I did not(In reply to comment #3)
> darcs has parsec dep:
> 
>     dev-haskell/parsec:0
> 
> Did you run haskell-updater after ghc upgrade? ('ghc-pkg check' will help to
> find broken packages)


I did not.  I didn't have the occasion to.  I merely typed emerge --sync && emerge portage && emerge --update world, and everything was (and should be) automatic.
Comment 5 Lennart Kolmodin (RETIRED) gentoo-dev 2010-10-18 19:09:08 UTC
I understand your frustration. Unfortunately there is no way to make portage understand how the true dependencies of the packages work, we can merely express something very simple with the features that portage and ebuilds provides. You will notice that it's not the case that everything is automatic.

Due to this, updates and re-emerging packages can break other packages. You will find that this is true not only for haskell packages but also for *all* packages written in C, python, ruby, etc etc.

So, just like the other languages we provide a tool to help the users with this. In our case it's haskell-updater.
There is a big warning written when you upgrade your ghc version, just like when you upgrade your python version.
If you upgrade both your ghc and darcs version at the same time, you will not have the chance to run haskell-updater in between. I'm afraid there is nothing we can do about this. In those cases the build will fail.
Updating more often could be a way to get fewer of these failures, if that's an option to you.

I'm closing this bug as invalid, but thanks for reporting.