Gentoo Archives: gentoo-dev

From: "Tiziano Müller" <dev-zero@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] latest boost vs. eselected boost
Date: Fri, 20 Jan 2012 06:22:55
Message-Id: 1327040528.837564.10.camel@storm
In Reply to: Re: [gentoo-dev] latest boost vs. eselected boost by Ian Stakenvicius
1 Am Donnerstag, den 19.01.2012, 11:50 -0500 schrieb Ian Stakenvicius:
2 > On 19/01/12 03:27 AM, "Paweł Hajdan, Jr." wrote:
3 > > On 1/19/12 9:05 AM, Johannes Huber wrote:
4 > >> Summary of the comments: 1) Ebuilds should always pick the latest
5 > >> boost version. 2) Boost should be compared to gcc, python, ruby
6 > >> etc
7 > >>
8 > >> [1] https://bugs.gentoo.org/show_bug.cgi?id=335108
9 > >
10 > > Right, Tiziano Müller's (dev-zero) comments are pretty clear that
11 > > ebuilds should use latest boost.
12 > >
13 > > I'm fine with last-riting eselect-boost, and I'm also fine with
14 > > eselect-boost applying to ebuilds too, like eselect-python.
15 > >
16 > > What I mostly care about is consistency and principle of least
17 > > surprise.
18 > >
19 >
20 > I thought there was a push to eventually de-slot boost? (in which
21 > case this issue just disappears)
22 No.
23
24 >
25 > Anyways, if we ARE going to keep boost slotted, we should probably
26 > have a mechanism within ebuilds to select the boost version that will
27 > be used -- simiar to/same as python and ruby (or perhaps closer to
28 > autotools? unsure which paradigm best fits). Yes, I know how much of
29 > a potential mess this could be and how much of a PITA it's going to be
30 > to do.* I'm not sure if using eselect-boost for this would be a good
31 > idea, though; isn't eselect mainly just for the system? IE, when a
32 > user is using boost for their own stuffs?
33 Yes, exactly. As I wrote in the bug: the eselect-boost module was for
34 the transition from unslotted to slotted boost as well as for people
35 doing development on Gentoo using boost.
36
37 If you want compare the boost-case to something, it's probably best
38 compared to sys-libs/db.
39
40 Two years ago (maybe there is a better solution by now) I used something
41 like this to extract the boost-include directory in an ebuild:
42
43 BOOST_PKG="$(best_version ">=dev-libs/boost-1.35.0-r5")"
44 BOOST_VER="$(get_version_component_range 1-2 "${BOOST_PKG/*boost-/}")"
45 BOOST_INC="/usr/include/boost-$(replace_all_version_separators _ "${BOOST_VER}")"
46
47 Maybe someone can come up with a wrapper to have something like this:
48
49 WORKING_BOOST_SLOTS="1.37 1.38 1.42 1.45"
50 [...]
51 DEPEND="$(slot_deps dev-libs/boost ${WORKING_BOOST_SLOTS})"
52 [...]
53 BOOST_SLOT="$(best_slot dev-libs/boost ${WORKING_BOOST_SLOTS})"
54 BOOST_INC="$(best_slot_boost_include ${WORKING_BOOST_SLOTS})"
55
56 which could be used for other slotted libs, like sys-libs/db.
57
58 (basically a generalization of the db-use.eclass)
59
60 Cheers,
61 Tiziano

Attachments

File name MIME type
smime.p7s application/x-pkcs7-signature