From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:42442) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iU697-00069T-H7 for guix-patches@gnu.org; Mon, 11 Nov 2019 04:38:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iU694-0008MQ-IK for guix-patches@gnu.org; Mon, 11 Nov 2019 04:38:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:44316) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iU694-0008MK-CE for guix-patches@gnu.org; Mon, 11 Nov 2019 04:38:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iU694-0007Mu-75 for guix-patches@gnu.org; Mon, 11 Nov 2019 04:38:02 -0500 Subject: [bug#38128] [PATCH] gnu: Add boost-with-python3 Resent-Message-ID: Date: Mon, 11 Nov 2019 11:36:37 +0200 From: Efraim Flashner Message-ID: <20191111093637.GH3954@E5400> References: <2894916c81c703293e028556070cd964@autistici.org> <87d0dzl7tx.fsf@devup.no> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="wHh0aNzodMFDTGdO" Content-Disposition: inline In-Reply-To: <87d0dzl7tx.fsf@devup.no> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 38128@debbugs.gnu.org, mbakke@fastmail.com, goodoldpaul@autistici.org --wHh0aNzodMFDTGdO Content-Type: multipart/mixed; boundary="WR+jf/RUebEcofwt" Content-Disposition: inline --WR+jf/RUebEcofwt Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable I'm going to re-open this one, sorry. Can we replace the '--with-python-version=3D3.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 :) --=20 Efraim Flashner =D7=90=D7=A4=D7=A8=D7=99=D7=9D = =D7=A4=D7=9C=D7=A9=D7=A0=D7=A8 GPG key =3D A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted --WR+jf/RUebEcofwt Content-Type: text/plain; charset=utf-8 Content-Disposition: attachment; filename="epour.scm" Content-Transfer-Encoding: quoted-printable ;;; Copyright =C2=A9 2016, 2017, 2018, 2019 Efraim Flashner ;;; ;;; This file is an addendum to GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (wip epour) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix packages) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (gnu packages bittorrent) #:use-module (gnu packages boost) #:use-module (gnu packages enlightenment) #:use-module (gnu packages freedesktop) #:use-module (gnu packages glib) ; intltool #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (srfi srfi-1)) (define-public epour (package (name "epour") (version "0.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.enlightenment.org/rel/apps/ep= our" "/epour-" version ".tar.xz")) (sha256 (base32 "0g9f9p01hsq6dcf4cs1pwq95g6fpkyjgwqlvdjk1km1i5gj5ygqw")))) (build-system python-build-system) (arguments `(#:tests? #f ; no test target #:phases (modify-phases %standard-phases (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (invoke "python" "setup.py" "install" (string-append "--pref= ix=3D" out)) #t)))))) (native-inputs `(("intltool" ,intltool))) (propagated-inputs `(("libtorrent-rasterbar-local" ,libtorrent-rasterbar-local) ("python-dbus" ,python-dbus) ("python-distutils-extra" ,python-distutils-extra) ("python-efl" ,python-efl) ;("python-parse" ,python-parse) ("python-pyxdg" ,python-pyxdg) ;("python-urllib3" ,python-urllib3) )) (home-page "https://www.enlightenment.org") (synopsis "EFL Bittorrent client") (description "Epour is a BitTorrent client based on the @dfn{Enlightenm= ent Foundation Libraries} (EFL) and rb-libtorrent.") (license license:gpl3+))) (define libtorrent-rasterbar-local (package (inherit libtorrent-rasterbar) (inputs `(("boost" ,boost-with-python3) ,@(alist-delete "boost" (package-inputs libtorrent-rasterbar)))) (native-inputs `(("python" ,python-3) ,@(alist-delete "python" (package-native-inputs libtorrent-rasterbar)))))) (define boost-local (package (inherit boost) (arguments `(#:imported-modules (,@%gnu-build-system-modules (guix build python-build-system)) ,@(substitute-keyword-arguments (package-arguments boost) ((#:phases phases) `(modify-phases ,phases (replace 'provide-libboost_python (lambda* (#:key outputs inputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (py-version ((@@ (guix build python-build-system) get-python-version) (assoc-ref inp= uts "python"))) (py-suffix (string-join (string-split py-version #\= =2E) ""))) ;; Boost can build support for both Python 2 and Python = 3 since ;; version 1.67.0, and suffixes each library with the Py= thon ;; version. Many consumers only check for libboost_pyth= on ;; however, so we provide it here as suggested in ;; . (with-directory-excursion (string-append out "/lib") (symlink (string-append "libboost_python" py-suffix ".= so") "libboost_python.so")) #t)))))))) (native-inputs `(("python" ,python-wrapper) ,@(alist-delete "python" (package-native-inputs boost)))))) --WR+jf/RUebEcofwt-- --wHh0aNzodMFDTGdO Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl3JK6UACgkQQarn3Mo9 g1H47A/8CZIrhtp8x+Aqkc3fBWIVVKGusFNar+hdzIpOais+h1rHTWTxdTh+hDXK gAbXPv4cWf7sTTQ+loCudpQRcPqGhpLizYe1grA86IMMt1GkaTspq9ZinZLzoGE+ peD4HCSGsmeI3zxVOqFSbXzHrx00ohPNFRpX6ks2VJy3gwM1kGwl/85+aFUFhfh/ zQejED4RQRdMso0Jst9btAYcjkN9O3nJkrxstyCeF7kjuu39o9QPamhMGRM+F69k cM5fTLHO7dwj4ymp40TMO9vjK/sg78TeVRzUe18S3YfK5wpXJHgrPhW4jNr9CCHp xm7KjKFDCzN7IrIDacxD4Zik1osa3I+sF9yUTS0dmDvzwEb1tL8yUzQPKuGFf9on qKwq7DNskJVREpwQLYQsIndPdijqWcU1tSv7+8urJtaATfaDcCEW3/MBzXLmhY8z wg0IjeK1SUHXX6IPo1m/JIoGmkXtxZZPoZa5MF4aT2r6AgpSu0RtmHYWX+UrWJ20 t78JJYcSfnBUt7k+DzseEVaKJiVBJqKwkHoINlbXxqX3nzYWsZnISS+tkf7A2wiA UdvzdbkNrJadpDwNoeLKwk+6X5TNxpSaXk8nQ50FSh5I57yxxCpCVjMt1SdphnFO 2P3hVgOSC/ePasJXuxmdgGW0KO5aMMrhre+OBybs5BDa+B6H3vs= =UjA6 -----END PGP SIGNATURE----- --wHh0aNzodMFDTGdO--