Re: [pkg-boost-devel] Bug#473973: libboost-python-dev: rdeps fails?to built - python packaging seems weird

2008-04-02 Thread Steve M. Robbins
For the debian-python readers just joining in: the recent modification
of Boost to support multiple Python runtimes has some unintended
consequences; see bug #473973.  Below are some questions for your
consideration.


On Wed, Apr 02, 2008 at 06:11:34PM +0200, Sune Vuorela wrote:

> If I ask specifically for -lboost_python-py24 or -lboost_python-py25 
> or -lboost_python-mt-py24 or -lboost_python-py25, kdeedu seems to build 
> properly. If I just ask for one of the defaults (-lboost_python 
> or -lboost_python-mt it doesn't build)

You might want to consider doing so; this allows you to be
clear as to which version of python you support.  Or, indeed,
build support for both 2.4 and 2.5.


> > Please let me know what sequence of package installs (and what version
> > of libboost-python-dev) led to the situation of no symlinks.
> 
> The sequence of installation described here leaves it without those symlinks:
> 
> http://people.debian.org/~lucas/logs/2008/04/01/kdeedu_4%3A3.5.9-1_sid32.buildlog

OK, so this is using libboost-python-dev 1.34.1-10, which has the bug
previously mentioned: if you don't have python installed prior to
installing libboost-python-dev, you don't get the symlinks.

The sequence shown in the build log indicates that no python-dev
package is installed at all.  This is due to another change made to
support multiple python runtimes.  The libboost-python-dev package
used to depend on python-dev.  Now that it supports two runtimes, it
doesn't make sense to depend on both.  Arguably it could depend on the
default, but what I did instead is weaken the dependencies to suggest.
This breaks your build because the suggestions are not installed.

So here are some questions, and I'd like to throw then out to the
wisdom of debian-python, too.

1.  When does the rtupdate script get run?  I assumed it will be run
upon first install of python so as to configure all the python-using
packages previously installed.  But that does not seem to be the case.
Should it be?  If not, how should I handle the situation where
libboost-python-dev is installed/configured prior to python being
installed?

2.  Prior to supporting multiple runtimes, libboost-python-dev used to
depend on python2.4-dev.  Now it simply suggests python2.4-dev and
python2.5-dev since users of this package may need any of the
currently-supported Python development packages.  It means that some
(perhaps all) packages that build-depend on libboost-python-dev now
have to add python2.4-dev to their own build-deps.  Is that tenable?

3.  Alternatively, shall I add back python2.4-dev as a dependency for
libboost-python-dev?  This "penalizes" in some sense those who just
want Python 2.5, but not egregiously so.  It also assumes we can sort
out issue #1, I think, unless we can assume something about the
install ordering of the two packages.

4.  For a package that build-depends on libboost-python-dev, what is
the recommended strategy: to hack the build config and use the -py24
and -py25 library variants, or to rely on the symlinks and having the
correct Python installed?  Naively, I'd expect the latter strategy
for those who simply need to support the default Python version,
and the former for those who support all Python runtimes.


> kdeedu build doesn't fail by itself if it isn't found as it is only optional, 
> but we test afterwards if it is actually build.

Testing afterwards is a wise move!

Cheers,
-Steve


signature.asc
Description: Digital signature


Re: [pkg-boost-devel] Bug#473973: libboost-python-dev: rdeps fails?to built - python packaging seems weird

2008-04-02 Thread Sune Vuorela
[My knowledge of python is nearly zero - and I don't plan to subscribe 
to -python] 

On Wednesday 02 April 2008, Steve M. Robbins wrote:

> You might want to consider doing so; this allows you to be
> clear as to which version of python you support.  Or, indeed,
> build support for both 2.4 and 2.5.

I just need python 2.2 or 2.3 or 2.4 or 2.5 or .. (maybe even 2.0 or 2.1 
suffices)

It would require quite big changes to support multiple versions - and I don't 
see much gain for it.

> OK, so this is using libboost-python-dev 1.34.1-10, which has the bug
> previously mentioned: if you don't have python installed prior to
> installing libboost-python-dev, you don't get the symlinks.
>
> The sequence shown in the build log indicates that no python-dev
> package is installed at all.  This is due to another change made to
> support multiple python runtimes.  The libboost-python-dev package
> used to depend on python-dev.  Now that it supports two runtimes, it
> doesn't make sense to depend on both.  Arguably it could depend on the
> default, but what I did instead is weaken the dependencies to suggest.
> This breaks your build because the suggestions are not installed.

I think you *must* depend on at least one python -dev thingie. Do you need to 
manually change stuff to support a new python version ?
But can't python-dev | python2.4-dev | python2.5-dev be appropriate ?


> 4.  For a package that build-depends on libboost-python-dev, what is
> the recommended strategy: to hack the build config and use the -py24
> and -py25 library variants, or to rely on the symlinks and having the
> correct Python installed?  Naively, I'd expect the latter strategy
> for those who simply need to support the default Python version,
> and the former for those who support all Python runtimes.

I would also expect the naively strategy to work.


On a side note not related to this at all, I am a bit curious. How is it 
expected to be handled when support for python-2.4 will be dropped? Just hope 
that it matches a boost soname change?


/Sune


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]