Am Donnerstag, den 19.01.2012, 11:50 -0500 schrieb Ian Stakenvicius: > On 19/01/12 03:27 AM, "Paweł Hajdan, Jr." wrote: > > On 1/19/12 9:05 AM, Johannes Huber wrote: > >> Summary of the comments: 1) Ebuilds should always pick the latest > >> boost version. 2) Boost should be compared to gcc, python, ruby > >> etc > >> > >> [1] https://bugs.gentoo.org/show_bug.cgi?id=335108 > > > > Right, Tiziano Müller's (dev-zero) comments are pretty clear that > > ebuilds should use latest boost. > > > > I'm fine with last-riting eselect-boost, and I'm also fine with > > eselect-boost applying to ebuilds too, like eselect-python. > > > > What I mostly care about is consistency and principle of least > > surprise. > > > > I thought there was a push to eventually de-slot boost? (in which > case this issue just disappears) No.
>
> Anyways, if we ARE going to keep boost slotted, we should probably
> have a mechanism within ebuilds to select the boost version that will
> be used -- simiar to/same as python and ruby (or perhaps closer to
> autotools? unsure which paradigm best fits). Yes, I know how much of
> a potential mess this could be and how much of a PITA it's going to be
> to do.* I'm not sure if using eselect-boost for this would be a good
> idea, though; isn't eselect mainly just for the system? IE, when a
> user is using boost for their own stuffs?
Yes, exactly. As I wrote in the bug: the eselect-boost module was for
the transition from unslotted to slotted boost as well as for people
doing development on Gentoo using boost.
If you want compare the boost-case to something, it's probably best
compared to sys-libs/db.
Two years ago (maybe there is a better solution by now) I used something
like this to extract the boost-include directory in an ebuild:
BOOST_PKG="$(best_version ">=dev-libs/boost-1.35.0-r5")"
BOOST_VER="$(get_version_component_range 1-2 "${BOOST_PKG/*boost-/}")"
BOOST_INC="/usr/include/boost-$(replace_all_version_separators _
"${BOOST_VER}")"
Maybe someone can come up with a wrapper to have something like this:
WORKING_BOOST_SLOTS="1.37 1.38 1.42 1.45"
[...]
DEPEND="$(slot_deps dev-libs/boost ${WORKING_BOOST_SLOTS})"
[...]
BOOST_SLOT="$(best_slot dev-libs/boost ${WORKING_BOOST_SLOTS})"
BOOST_INC="$(best_slot_boost_include ${WORKING_BOOST_SLOTS})"
which could be used for other slotted libs, like sys-libs/db.
(basically a generalization of the db-use.eclass)
Cheers,
Tiziano
smime.p7s
Description: S/MIME cryptographic signature
