[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#38228] Fwd: [PATCH] gnu: boost: Build with python3
From: |
Marius Bakke |
Subject: |
[bug#38228] Fwd: [PATCH] gnu: boost: Build with python3 |
Date: |
Wed, 20 Nov 2019 01:01:36 +0100 |
User-agent: |
Notmuch/0.29.1 (https://notmuchmail.org) Emacs/26.3 (x86_64-pc-linux-gnu) |
address@hidden writes:
> Hello I'm opening another thread ( old one was
> http://issues.guix.gnu.org/issue/38128 ) to build boost in core-updates
> with python3. The new patch also parameterizes python versions across
> the package definition.
>
> WDYT?
>
> Bye,
>
> Giacomo
>
> -------- Original Message --------
> Subject: Re: bug#38128: [PATCH] gnu: Add boost-with-python3
> Date: 2019-11-12 00:06
> From: address@hidden
> To: Efraim Flashner <address@hidden>
> Cc: address@hidden, address@hidden
>
> On 2019-11-11 09:36, Efraim Flashner wrote:
>> I'm going to re-open this one, sorry.
>>
>> Can we replace the '--with-python-version=3.7' and
>> 'libboost_python37.so'
>> with parameterized python variables so we don't have to bump it when we
>> get a new python version?
>>
>> Also, I've attached a package that I've never actually built that uses
>> boost built with python3 if you want something to test it out with :)
>
> I'm not sure how to send a patch for core-updates, I never did it so I
> attached it here. Please tell me if I should open another patch.
Excellent. Here is fine. :-)
Note that 'boost-with-python3' has already been merged to core-updates.
What we need now is 1) a patch that makes these adjustments to
'boost-with-python3', and 2) a follow-up patch that removes
boost-with-python3 and adjusts the original 'boost' package instead.
The latter will be applied to core-updates after the first patch gets
merged, but you can make (and test :-)) both patches on a local checkout
of the 'master' branch.
> The patch builds boost with python3 and parameterizes the python
> version, as Efraim suggested. I built it successfully on core updates.
> When I tried building Epour on core-updates and saw that Guix was
> starting to build Bash 5.0 I renounced (:D) and I built it on master
> with boost-with-python3 .
In general, working on the 'core-updates' branch requires a fairly
powerful computer (and lots of time), sorry about that!
> Libtorrent-rasterbar seems to build fine on master but some tests fail
> to pass and they all seem to be network related but then again this is
> torrent we are talking about. I didn't investigate further but I attach
> the log.
Strange. I suppose these tests are not run when using Boost + Python 2?
In any case we don't have to worry about that just yet ;-)
> I also tried boost-with-python3 with Malmo (
> https://github.com/microsoft/malmo ) and it seemed to compile fine just
> but that package has other problems such as trying to start gradle so I
> nerver managed to actually run it.
Cool. Packaging 'gradle' should be a rewarding experience that makes
many people very happy, if you would like a challenge. ;-)
> From 91a25fb143ad0e2e20e8ddadea0c0610849adf92 Mon Sep 17 00:00:00 2001
> From: Giacomo Leidi <address@hidden>
> Date: Tue, 12 Nov 2019 00:24:49 +0100
> Subject: [PATCH] gnu: boost: Build with python3.
>
> * gnu/packages/boost.scm (boost):
> [arguments]: Parameterize python version.
> [native-inputs]: Use python3.
[...]
> (arguments
> - `(#:tests? #f
> + `(#:modules ((guix build gnu-build-system)
> + (guix build utils)
> + (srfi srfi-1))
If you add (guix build python-build-system) in there ...
> (replace 'configure
> (lambda* (#:key inputs outputs #:allow-other-keys)
> (let ((icu (assoc-ref inputs "icu4c"))
> + (python (assoc-ref inputs "python"))
> + (python-version
> + (take (string-split ,(package-version python) #\.) 2))
... then you can use (python-version (python-version python)) here and
below.
> + (substitute* "tools/build/src/tools/python.jam"
> + (("include/python\\$\\(version\\)")
> + "include/python$(version)m"))
I wonder why we have to add the 'm'? Will that work with Python 2?
Otherwise LGTM.
For 'core-updates', it would be really great to add a 'python2' output
to Boost in case there are packages that do not work with
libboost_python3.so, but I'm not sure how to achieve that. Future
problems! :-)
signature.asc
Description: PGP signature