From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Allan Webber Subject: guile2.2-gdbm-ffi issue Date: Fri, 10 Feb 2017 19:29:01 -0600 Message-ID: <87fujly0pu.fsf@dustycloud.org> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:57961) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ccMUs-0003dc-L6 for guix-devel@gnu.org; Fri, 10 Feb 2017 20:29:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ccMUp-0002fd-Ex for guix-devel@gnu.org; Fri, 10 Feb 2017 20:29:06 -0500 Received: from dustycloud.org ([50.116.34.160]:43332) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1ccMUp-0002fT-8W for guix-devel@gnu.org; Fri, 10 Feb 2017 20:29:03 -0500 Received: from oolong (localhost [127.0.0.1]) by dustycloud.org (Postfix) with ESMTPS id 6E84926605 for ; Fri, 10 Feb 2017 20:29:02 -0500 (EST) List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain (Originally accidentally sent this to guile-devel@gnu.org ... sorry!) Hiya, I pushed guile2.2-gdbm because it was just a couple of lines and it seemed to work and didn't affect anything. I made a mistake though that I didn't realize until I ran "guix environment --ad-hoc guile-next guile2.2-gdbm-ffi --pure". The trivial-build-system in guile-gdbm-ffi dumps the built module into (string-append out "/share/guile/site/2.0") ... oops! Before I ran --pure, the 2.0 directory was on my load path, and thus I didn't bump into the error. (Maybe I should have asked for review anyway...) I'm trying to think of how to fix this. I have a very kludgy solution attached. I don't feel great about it but I don't know how to signal to the builder whether it's using guile 2.2 or 2.0 otherwise. Thoughts? --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-guile-gdbm-ffi-Write-to-correct-guile-output-directo.patch Content-Transfer-Encoding: quoted-printable From=20711a23036417807d444729eaa778c9cadffa8646 Mon Sep 17 00:00:00 2001 From: Christopher Allan Webber Date: Fri, 10 Feb 2017 19:24:57 -0600 Subject: [PATCH 3/3] guile-gdbm-ffi: Write to correct guile output director= y. * gnu/packages/guile.scm (make-guile-gdbm-ffi): New variable. (guile-gdbm-ffi, guile2.2-gdbm-ffi): Use make-guile-gdbm-ffi. =2D-- gnu/packages/guile.scm | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 3e8ab007b..3e62949f2 100644 =2D-- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -825,9 +825,11 @@ inspired by the SCSH regular expression system.") ;; There are two guile-gdbm packages, one using the FFI and one with ;; direct C bindings, hence the verbose name. =20 =2D(define-public guile-gdbm-ffi +(define (make-guile-gdbm-ffi guile-2.2?) (package =2D (name "guile-gdbm-ffi") + (name (if guile-2.2? + "guile2.2-gdbm-ffi" + "guile-gdbm-ffi")) (version "20120209.fa1d5b6") (source (origin (method git-fetch) @@ -848,7 +850,9 @@ inspired by the SCSH regular expression system.") (system base compile)) =20 (let* ((out (assoc-ref %outputs "out")) =2D (module-dir (string-append out "/share/guile/site/2.0")) + (module-dir (string-append out "/share/guile/site/" + ,(if guile-2.2? + "2.2" "2.0"))) (source (assoc-ref %build-inputs "source")) (doc (string-append out "/share/doc")) (guild (string-append (assoc-ref %build-inputs "guile") @@ -877,7 +881,8 @@ inspired by the SCSH regular expression system.") (compile-file gdbm.scm-dest #:output-file gdbm.go-dest))))) (inputs =2D `(("guile" ,guile-2.0))) + `(("guile" ,(if guile-2.2? + guile-next guile-2.0)))) (propagated-inputs `(("gdbm" ,gdbm))) (home-page "https://github.com/ijp/guile-gdbm") @@ -887,8 +892,11 @@ inspired by the SCSH regular expression system.") Guile's foreign function interface.") (license gpl3+))) =20 +(define-public guile-gdbm-ffi + (make-guile-gdbm-ffi #f)) + (define-public guile2.2-gdbm-ffi =2D (package-for-guile-2.2 guile-gdbm-ffi)) + (make-guile-gdbm-ffi #t)) =20 (define-public guile-sqlite3 (let ((commit "607721fe1174a299e45d457acacf94eefb964071")) =2D-=20 2.11.0 --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEUQqGKOKndniPjHCcS8Alkl/49NMFAlieaN0ACgkQS8Alkl/4 9NPeBxAA4CTTvP5c0H15j6/nP9D9zqdWY+i7V4opDsktgY7pgkG40uPTQgL3hJqb yEAsaSn75Ep0hyA4RqpLJ4pEySvgWkKhGJMWPhF2yUxYifRDKVl6CMseB/ZmKo/V hT+6GqQqGRc7ABh7QrWUSpsvsvfMoWzQ4xDqGuxdO6q32+b21uSGH7iINJ4a64iT aWfthSf3iVb7eMW1U6EEN+EmqADRe4/06FQgMaCzOJeqyNL+5j4sooUIMQr0+OZQ IOcNZo02V41C0aiEPvT8UvviWWUK0i6A6Pmu6ejGjUrK44zl055W14a48Pbst5vX 7r9bO4wy75O6mG1hfkT5Wg100c+AF0muToR8TQMxPE1Goriqyr8wA0M3h7Ss/tvb MVPrOangO6tw80dp8WxpYaXoykCVMF3XfIZzFlfsHVrIk07CRuGqnR3AHzEgs81I T3BwrpiEuFI/TWVpWDvAb7bQiUH4+2AQJpbVfOK1Yl/YvH/92KZ6A7TxBljST0rs vjl1c1XQajE+B1umHjjSSTXQAjtENljXtpXDgQTBGtBrD3ciLpkPbvSoM84p3F1O 2n9zRjtvd6OHsC1LUUhgp1orm1SEny0XuNatNXCi/cZfmMEMXu8uM27g/NUJSZ/9 9QKfrJAIk2G/9odwktxMlDaeRD4cPQqQS+mURw+PzHmAk326qSA= =0FCc -----END PGP SIGNATURE----- --==-=-=--