Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 295474 - net-libs/rb_libtorrent should always use the latest version of dev-libs/boost
Summary: net-libs/rb_libtorrent should always use the latest version of dev-libs/boost
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo net-p2p team
URL:
Whiteboard:
Keywords:
: 300881 (view as bug list)
Depends on:
Blocks: 295009
  Show dependency tree
 
Reported: 2009-12-02 18:42 UTC by Sebastian Luther (few)
Modified: 2010-01-15 23:35 UTC (History)
4 users (show)

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


Attachments
fix boost detection (rb_libtorrent_boost_selection.patch,1.04 KB, patch)
2009-12-02 18:43 UTC, Sebastian Luther (few)
Details | Diff
Configure script fail log (config.log,40.50 KB, text/plain)
2010-01-14 17:17 UTC, MageSlayer
Details
New ebuild (rb_libtorrent-0.14.8-r2.ebuild,2.44 KB, text/plain)
2010-01-15 20:55 UTC, MageSlayer
Details
Configure script patch to detect Boost properly (rb_libtorrent-0.14.8-boost-detect-fix.patch,524 bytes, patch)
2010-01-15 20:55 UTC, MageSlayer
Details | Diff
Patches Makefile.am & such for supplying boost dir (rb_libtorrent-0.14.8-makefile-fix.patch,1.56 KB, patch)
2010-01-15 20:56 UTC, MageSlayer
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sebastian Luther (few) 2009-12-02 18:42:49 UTC
Currently the build system uses what ever /usr/include/boost points too. This is bad, because the user could select any installed boost version to be linked there (including those that don't satisfy the package's dependency on boost). Attached is a patch that makes the ebuild detect the latest boost version.

This is also going to help with bug 295009 (together with the patch from bug 295006).
Comment 1 Sebastian Luther (few) 2009-12-02 18:43:11 UTC
Created attachment 211805 [details, diff]
fix boost detection
Comment 2 Ben de Groot (RETIRED) gentoo-dev 2009-12-02 19:29:15 UTC
Isn't the whole point of eselect boost that the user can choose which version should be used? Why would we want to circumvent/override that for rb_libtorrent?
Comment 3 Sebastian Luther (few) 2009-12-02 19:35:15 UTC
(In reply to comment #2)
> Isn't the whole point of eselect boost that the user can choose which version
> should be used? Why would we want to circumvent/override that for
> rb_libtorrent?
> 

No that's meant for people doing development with boost. It should be overridden for all packages. Some packages do this themselves with a configure script that searches for the latest version.
Comment 4 Tiziano Müller (RETIRED) gentoo-dev 2009-12-03 07:15:33 UTC
Sebastian is completely right. Especially with EAPI-3's slot-operator-deps it is important that packages use the best-matching (almost always the highest) version of a dependency if the said dep is slotted.
More important for a package maintainer:
- it makes bugs more reproducible since you can determine which boost-version was installed (and therefore used) at merge-time rather than what the user might have selected
- there are many packages with broken boost-detection resulting in the package using the headers from 1.39.0 and the libs from 1.35.0 generating really weird link- or runtime-errors.

The eselect-module is (and was always thought as) a temporary solution to not break packages even though boost got slotted and as a service for people using boost for their own development.
Comment 5 Ben de Groot (RETIRED) gentoo-dev 2010-01-14 11:52:05 UTC
*** Bug 300881 has been marked as a duplicate of this bug. ***
Comment 6 Ben de Groot (RETIRED) gentoo-dev 2010-01-14 12:27:34 UTC
Patch applied in net-libs/rb_libtorrent-0.14.8-r1. Thanks!
Comment 7 MageSlayer 2010-01-14 17:16:36 UTC
I can't confirm your fix. Symptoms are the same as in 300881.
See config.log. It still can't find any of installed boost libraries.
Does it require only ...-r1 to work correctly or some other dependency is required?
Comment 8 MageSlayer 2010-01-14 17:17:19 UTC
Created attachment 216520 [details]
Configure script fail log
Comment 9 Sebastian Luther (few) 2010-01-14 17:25:15 UTC
configure:15487: i686-pc-linux-gnu-g++ -c -O2 -march=i686 -pipe  -I/usr/include/boost-1_41/include -I/usr/include/boost-1_41/include conftest.cpp >&5

Why is there an /include appended to the boost include and directory path?
Comment 10 Sebastian Luther (few) 2010-01-14 17:26:36 UTC
(In reply to comment #9)
> configure:15487: i686-pc-linux-gnu-g++ -c -O2 -march=i686 -pipe 
> -I/usr/include/boost-1_41/include -I/usr/include/boost-1_41/include
> conftest.cpp >&5
> 
> Why is there an /include appended to the boost include and directory path?
> 
correction:
Why is there an /include appended to the boost include path?
Comment 11 MageSlayer 2010-01-14 17:36:20 UTC
That's the whole question.
Why /include is there. I think it's autoconf problem.
Comment 12 Ben de Groot (RETIRED) gentoo-dev 2010-01-14 22:55:47 UTC
It's added in m4/ax_boost_base-fixed.m4. It seems to assume --with-boost=/usr instead of the whole path we pass it. Feel free to come up with a patch. Otherwise I'll look at it tomorrow.
Comment 13 MageSlayer 2010-01-15 20:54:37 UTC
I attach patches and a new ebuild. Seems like net-libs/rb_libtorrent now builds fine. I could not build Miro though. But that seems to be another story.
Please and comment.
Comment 14 MageSlayer 2010-01-15 20:55:10 UTC
Created attachment 216644 [details]
New ebuild
Comment 15 MageSlayer 2010-01-15 20:55:54 UTC
Created attachment 216646 [details, diff]
Configure script patch to detect Boost properly
Comment 16 MageSlayer 2010-01-15 20:56:55 UTC
Created attachment 216648 [details, diff]
Patches Makefile.am & such for supplying boost dir
Comment 17 Ben de Groot (RETIRED) gentoo-dev 2010-01-15 23:35:20 UTC
Thanks! I rolled your patches into one, and revbumped the ebuild to 0.14.8-r2.