From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id WJT4OPNutl63NwAA0tVLHw (envelope-from ) for ; Sat, 09 May 2020 08:50:59 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id eGqPOABvtl5vXgAA1q6Kng (envelope-from ) for ; Sat, 09 May 2020 08:51:12 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 44F45940448 for ; Sat, 9 May 2020 08:51:10 +0000 (UTC) Received: from localhost ([::1]:41618 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jXLCQ-0004tq-PU for larch@yhetil.org; Sat, 09 May 2020 04:51:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50020) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jXLCJ-0004rs-G5 for guix-patches@gnu.org; Sat, 09 May 2020 04:51:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:35224) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jXLCJ-0000Ip-6q for guix-patches@gnu.org; Sat, 09 May 2020 04:51:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jXLCI-0002Cf-3F for guix-patches@gnu.org; Sat, 09 May 2020 04:51:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#41135] [Patch v3 4/4] gnu: cl-cffi-gtk-gobject: Fix build with new Resent-From: Pierre Neidhardt Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 09 May 2020 08:51:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 41135 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 41135@debbugs.gnu.org Received: via spool by 41135-submit@debbugs.gnu.org id=B41135.15890142438432 (code B ref 41135); Sat, 09 May 2020 08:51:02 +0000 Received: (at 41135) by debbugs.gnu.org; 9 May 2020 08:50:43 +0000 Received: from localhost ([127.0.0.1]:46770 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jXLBy-0002Bv-6I for submit@debbugs.gnu.org; Sat, 09 May 2020 04:50:43 -0400 Received: from relay5-d.mail.gandi.net ([217.70.183.197]:57369) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jXLBv-0002BZ-CC for 41135@debbugs.gnu.org; Sat, 09 May 2020 04:50:40 -0400 X-Originating-IP: 78.199.129.170 Received: from mimimi (moi44-1-78-199-129-170.fbx.proxad.net [78.199.129.170]) (Authenticated sender: mail@ambrevar.xyz) by relay5-d.mail.gandi.net (Postfix) with ESMTPSA id D465A1C0003 for <41135@debbugs.gnu.org>; Sat, 9 May 2020 08:50:30 +0000 (UTC) From: Pierre Neidhardt References: <20200508064827.1270-1-mail@ambrevar.xyz> <20200508174302.21921-1-mail@ambrevar.xyz> Date: Sat, 09 May 2020 10:50:29 +0200 In-Reply-To: <20200508174302.21921-1-mail@ambrevar.xyz> (Pierre Neidhardt's message of "Fri, 8 May 2020 19:42:59 +0200") Message-ID: <87eertsd9m.fsf_-_@ambrevar.xyz> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" X-Spam-Score: -0.2 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -1.2 (-) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: scn0 X-Spam-Score: -0.61 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Scan-Result: default: False [-0.61 / 13.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; GENERIC_REPUTATION(0.00)[-0.54034986990104]; HAS_XOIP(0.00)[]; DWL_DNSWL_BLOCKED(0.00)[209.51.188.17:from]; R_SPF_ALLOW(-0.20)[+ip4:209.51.188.0/24:c]; R_MISSING_CHARSET(2.50)[]; TO_DN_NONE(0.00)[]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.09), country: US(-0.00), ip: 209.51.188.17(-0.54)]; MX_GOOD(-0.50)[cached: eggs.gnu.org]; MAILLIST(-0.20)[mailman]; SIGNED_PGP(-2.00)[]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_IN_DNSWL_FAIL(0.00)[209.51.188.17:server fail]; RCVD_TLS_LAST(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:22989, ipnet:209.51.188.0/24, country:US]; MIME_TRACE(0.00)[0:+,1:+,2:~]; TAGGED_FROM(0.00)[larch=yhetil.org]; ARC_NA(0.00)[]; FROM_NEQ_ENVFROM(0.00)[mail@ambrevar.xyz,guix-patches-bounces@gnu.org]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; PREVIOUSLY_DELIVERED(0.00)[41135@debbugs.gnu.org]; DMARC_NA(0.00)[ambrevar.xyz]; HAS_LIST_UNSUB(-0.01)[]; RCPT_COUNT_ONE(0.00)[1]; RECEIVED_SPAMHAUS_PBL(0.00)[78.199.129.170:received]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.51.188.17:from]; RCVD_COUNT_SEVEN(0.00)[8]; FORGED_SENDER_MAILLIST(0.00)[] X-TUID: oRSwoAS+77v/ --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable * gnu/packages/lisp-xyz.scm (sbcl-cl-cffi-gtk-boot0)[inputs]: Add all input= s. [arguments]: Patch whole source. (sbcl-cl-cffi-gtk-glib)[inputs]: Remove glib. (sbcl-cl-cffi-gtk-glib)[arguments]: Reuse boot0 source. (sbcl-cl-cffi-gtk-gobject)[inputs]: Remove glib. (sbcl-cl-cffi-gtk-gobject)[arguments]: Reuse boot0 source. (sbcl-cl-cffi-gtk-gio)[inputs]: Remove glib. (sbcl-cl-cffi-gtk-gio)[arguments]: Reuse boot0 source. (sbcl-cl-cffi-gtk-cairo)[inputs]: Remove cairo. (sbcl-cl-cffi-gtk-cairo)[arguments]: Reuse boot0 source. (sbcl-cl-cffi-gtk-pango)[inputs]: Remove pango. (sbcl-cl-cffi-gtk-pango)[arguments]: Reuse boot0 source. (sbcl-cl-cffi-gtk-gdk-pixbuf)[inputs]: Remove gdk-pixbuf. (sbcl-cl-cffi-gtk-gdk-pixbuf)[arguments]: Reuse boot0 source. (sbcl-cl-cffi-gtk-gdk-gdk)[inputs]: Remove gtk+. (sbcl-cl-cffi-gtk-gdk-gdk)[arguments]: Reuse boot0 source. (sbcl-cl-cffi-gtk)[arguments]: Reuse boot0 source. =2D-- gnu/packages/lisp-xyz.scm | 341 ++++++++++++++++++-------------------- 1 file changed, 165 insertions(+), 176 deletions(-) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index f8685f8ce1..a5e5548fbf 100644 =2D-- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -2876,7 +2876,41 @@ Lisp implementations.") (inputs `(("iterate" ,sbcl-iterate) ("cffi" ,sbcl-cffi) =2D ("trivial-features" ,sbcl-trivial-features))) + ("trivial-features" ,sbcl-trivial-features) + ("glib" ,glib) + ("cairo" ,cairo) + ("pango" ,pango) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gtk" ,gtk+))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "glib/glib.init.lisp" + (("libglib|libgthread" all) + (string-append (assoc-ref inputs "glib") "/lib/" all))) + (substitute* "gobject/gobject.init.lisp" + (("libgobject" all) + (string-append (assoc-ref inputs "glib") "/lib/" all))) + (substitute* "gio/gio.init.lisp" + (("libgio" all) + (string-append (assoc-ref inputs "glib") "/lib/" all))) + (substitute* "cairo/cairo.init.lisp" + (("libcairo" all) + (string-append (assoc-ref inputs "cairo") "/lib/" all))) + (substitute* "pango/pango.init.lisp" + (("libpango" all) + (string-append (assoc-ref inputs "pango") "/lib/" all))) + (substitute* "gdk-pixbuf/gdk-pixbuf.init.lisp" + (("libgdk_pixbuf" all) + (string-append (assoc-ref inputs "gdk-pixbuf") "/lib/" a= ll))) + (substitute* "gdk/gdk.init.lisp" + (("libgdk" all) + (string-append (assoc-ref inputs "gtk") "/lib/" all))) + (substitute* "gdk/gdk.package.lisp" + (("libgtk" all) + (string-append (assoc-ref inputs "gtk") "/lib/" all)))))= ))) (home-page "https://github.com/Ferada/cl-cffi-gtk/") (synopsis "Common Lisp binding for GTK+3") (description @@ -2889,192 +2923,155 @@ is a library for creating graphical user interfac= es.") (inherit sbcl-cl-cffi-gtk-boot0) (name "sbcl-cl-cffi-gtk-glib") (inputs =2D `(("glib" ,glib) =2D ("bordeaux-threads" ,sbcl-bordeaux-threads) + `(("bordeaux-threads" ,sbcl-bordeaux-threads) ,@(package-inputs sbcl-cl-cffi-gtk-boot0))) (arguments =2D `(#:asd-file "glib/cl-cffi-gtk-glib.asd" =2D #:phases =2D (modify-phases %standard-phases =2D (add-after 'unpack 'fix-paths =2D (lambda* (#:key inputs #:allow-other-keys) =2D (substitute* "glib/glib.init.lisp" =2D (("libglib|libgthread" all) =2D (string-append (assoc-ref inputs "glib") "/lib/" all))))= )))))) + (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boo= t0) + ((#:asd-file _ "") "glib/cl-cffi-gtk-glib.asd"))))) =20 (define-public sbcl-cl-cffi-gtk-gobject (package (inherit sbcl-cl-cffi-gtk-boot0) (name "sbcl-cl-cffi-gtk-gobject") (inputs =2D `(("glib" ,glib) =2D ("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) + `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) ("trivial-garbage" ,sbcl-trivial-garbage) ("bordeaux-threads" ,sbcl-bordeaux-threads) ("closer-mop" ,sbcl-closer-mop) ,@(package-inputs sbcl-cl-cffi-gtk-boot0))) (arguments =2D `(#:asd-file "gobject/cl-cffi-gtk-gobject.asd" =2D #:phases =2D (modify-phases %standard-phases =2D (add-after 'unpack 'fix-paths =2D (lambda* (#:key inputs #:allow-other-keys) =2D (substitute* "gobject/gobject.init.lisp" =2D (("libgobject" all) (string-append =2D (assoc-ref inputs "glib") "/lib/" al= l))))) =2D (add-after 'install 'link-source =2D ;; Since source is particularly heavy (16MiB+), let's reuse it =2D ;; across the different components of cl-ffi-gtk. =2D (lambda* (#:key inputs outputs #:allow-other-keys) =2D (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") =2D "/share/common-lisp/sbcl-= source/" =2D "cl-cffi-gtk-glib")) =2D (out-source (string-append (assoc-ref outputs "out") =2D "/share/common-lisp/sbcl-s= ource/" =2D "cl-cffi-gtk-gobject"))) =2D (delete-file-recursively out-source) =2D (symlink glib-source out-source) =2D #t)))))))) + (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boo= t0) + ((#:asd-file _ "") "gobject/cl-cffi-gtk-gobject.asd") + ((#:phases phases) + `(modify-phases ,phases + (add-after 'install 'link-source + ;; Since source is particularly heavy (16MiB+), let's reuse it + ;; across the different components of cl-ffi-gtk. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") + "/share/common-lisp/sbcl-= source/" + "cl-cffi-gtk-glib")) + (out-source (string-append (assoc-ref outputs "out") + "/share/common-lisp/sbcl-s= ource/" + "cl-cffi-gtk-gobject"))) + (delete-file-recursively out-source) + (symlink glib-source out-source) + #t))))))))) =20 (define-public sbcl-cl-cffi-gtk-gio (package (inherit sbcl-cl-cffi-gtk-boot0) (name "sbcl-cl-cffi-gtk-gio") (inputs =2D `(("glib" ,glib) =2D ("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) + `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) ("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject) ,@(package-inputs sbcl-cl-cffi-gtk-boot0))) (arguments =2D `(#:asd-file "gio/cl-cffi-gtk-gio.asd" =2D #:phases =2D (modify-phases %standard-phases =2D (add-after 'unpack 'fix-paths =2D (lambda* (#:key inputs #:allow-other-keys) =2D (substitute* "gio/gio.init.lisp" =2D (("libgio" all) =2D (string-append =2D (assoc-ref inputs "glib") "/lib/" all))))) =2D (add-after 'install 'link-source =2D ;; Since source is particularly heavy (16MiB+), let's reuse it =2D ;; across the different components of cl-ffi-gtk. =2D (lambda* (#:key inputs outputs #:allow-other-keys) =2D (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") =2D "/share/common-lisp/sbcl-= source/" =2D "cl-cffi-gtk-glib")) =2D (out-source (string-append (assoc-ref outputs "out") =2D "/share/common-lisp/sbcl-s= ource/" =2D "cl-cffi-gtk-gio"))) =2D (delete-file-recursively out-source) =2D (symlink glib-source out-source) =2D #t)))))))) + (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boo= t0) + ((#:asd-file _ "") "gio/cl-cffi-gtk-gio.asd") + ((#:phases phases) + `(modify-phases ,phases + (add-after 'install 'link-source + ;; Since source is particularly heavy (16MiB+), let's reuse it + ;; across the different components of cl-ffi-gtk. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") + "/share/common-lisp/sbcl-= source/" + "cl-cffi-gtk-glib")) + (out-source (string-append (assoc-ref outputs "out") + "/share/common-lisp/sbcl-s= ource/" + "cl-cffi-gtk-gio"))) + (delete-file-recursively out-source) + (symlink glib-source out-source) + #t))))))))) =20 (define-public sbcl-cl-cffi-gtk-cairo (package (inherit sbcl-cl-cffi-gtk-boot0) (name "sbcl-cl-cffi-gtk-cairo") (inputs =2D `(("cairo" ,cairo) =2D ("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) + `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) ,@(package-inputs sbcl-cl-cffi-gtk-boot0))) (arguments =2D `(#:asd-file "cairo/cl-cffi-gtk-cairo.asd" =2D #:phases =2D (modify-phases %standard-phases =2D (add-after 'unpack 'fix-paths =2D (lambda* (#:key inputs #:allow-other-keys) =2D (substitute* "cairo/cairo.init.lisp" =2D (("libcairo" all) =2D (string-append =2D (assoc-ref inputs "cairo") "/lib/" all))))) =2D (add-after 'install 'link-source =2D ;; Since source is particularly heavy (16MiB+), let's reuse it =2D ;; across the different components of cl-ffi-gtk. =2D (lambda* (#:key inputs outputs #:allow-other-keys) =2D (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") =2D "/share/common-lisp/sbcl-= source/" =2D "cl-cffi-gtk-glib")) =2D (out-source (string-append (assoc-ref outputs "out") =2D "/share/common-lisp/sbcl-s= ource/" =2D "cl-cffi-gtk-cairo"))) =2D (delete-file-recursively out-source) =2D (symlink glib-source out-source) =2D #t)))))))) + (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boo= t0) + ((#:asd-file _ "") "cairo/cl-cffi-gtk-cairo.asd") + ((#:phases phases) + `(modify-phases ,phases + (add-after 'install 'link-source + ;; Since source is particularly heavy (16MiB+), let's reuse it + ;; across the different components of cl-ffi-gtk. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") + "/share/common-lisp/sbcl-= source/" + "cl-cffi-gtk-glib")) + (out-source (string-append (assoc-ref outputs "out") + "/share/common-lisp/sbcl-s= ource/" + "cl-cffi-gtk-cairo"))) + (delete-file-recursively out-source) + (symlink glib-source out-source) + #t))))))))) =20 (define-public sbcl-cl-cffi-gtk-pango (package (inherit sbcl-cl-cffi-gtk-boot0) (name "sbcl-cl-cffi-gtk-pango") (inputs =2D `(("pango" ,pango) =2D ("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) + `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) ("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject) ("cl-cffi-gtk-cairo" ,sbcl-cl-cffi-gtk-cairo) ,@(package-inputs sbcl-cl-cffi-gtk-boot0))) (arguments =2D `(#:asd-file "pango/cl-cffi-gtk-pango.asd" =2D #:phases =2D (modify-phases %standard-phases =2D (add-after 'unpack 'fix-paths =2D (lambda* (#:key inputs #:allow-other-keys) =2D (substitute* "pango/pango.init.lisp" =2D (("libpango" all) =2D (string-append =2D (assoc-ref inputs "pango") "/lib/" all))))) =2D (add-after 'install 'link-source =2D ;; Since source is particularly heavy (16MiB+), let's reuse it =2D ;; across the different components of cl-ffi-gtk. =2D (lambda* (#:key inputs outputs #:allow-other-keys) =2D (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") =2D "/share/common-lisp/sbcl-= source/" =2D "cl-cffi-gtk-glib")) =2D (out-source (string-append (assoc-ref outputs "out") =2D "/share/common-lisp/sbcl-s= ource/" =2D "cl-cffi-gtk-pango"))) =2D (delete-file-recursively out-source) =2D (symlink glib-source out-source) =2D #t)))))))) + (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boo= t0) + ((#:asd-file _ "") "pango/cl-cffi-gtk-pango.asd") + ((#:phases phases) + `(modify-phases ,phases + (add-after 'install 'link-source + ;; Since source is particularly heavy (16MiB+), let's reuse it + ;; across the different components of cl-ffi-gtk. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") + "/share/common-lisp/sbcl-= source/" + "cl-cffi-gtk-glib")) + (out-source (string-append (assoc-ref outputs "out") + "/share/common-lisp/sbcl-s= ource/" + "cl-cffi-gtk-pango"))) + (delete-file-recursively out-source) + (symlink glib-source out-source) + #t))))))))) =20 (define-public sbcl-cl-cffi-gtk-gdk-pixbuf (package (inherit sbcl-cl-cffi-gtk-boot0) (name "sbcl-cl-cffi-gtk-gdk-pixbuf") (inputs =2D `(("gdk-pixbuf" ,gdk-pixbuf) =2D ("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject) + `(("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject) ("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) ,@(package-inputs sbcl-cl-cffi-gtk-boot0))) (arguments =2D `(#:asd-file "gdk-pixbuf/cl-cffi-gtk-gdk-pixbuf.asd" =2D #:phases =2D (modify-phases %standard-phases =2D (add-after 'unpack 'fix-paths =2D (lambda* (#:key inputs #:allow-other-keys) =2D (substitute* "gdk-pixbuf/gdk-pixbuf.init.lisp" =2D (("libgdk_pixbuf" all) =2D (string-append =2D (assoc-ref inputs "gdk-pixbuf") "/lib/" all))))) =2D (add-after 'install 'link-source =2D ;; Since source is particularly heavy (16MiB+), let's reuse it =2D ;; across the different components of cl-ffi-gtk. =2D (lambda* (#:key inputs outputs #:allow-other-keys) =2D (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") =2D "/share/common-lisp/sbcl-= source/" =2D "cl-cffi-gtk-glib")) =2D (out-source (string-append (assoc-ref outputs "out") =2D "/share/common-lisp/sbcl-s= ource/" =2D "cl-cffi-gtk-gdk-pixbuf"))) =2D (delete-file-recursively out-source) =2D (symlink glib-source out-source) =2D #t)))))))) + (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boo= t0) + ((#:asd-file _ "") "gdk-pixbuf/cl-cffi-gtk-gdk-pixbuf.asd") + ((#:phases phases) + `(modify-phases ,phases + (add-after 'install 'link-source + ;; Since source is particularly heavy (16MiB+), let's reuse it + ;; across the different components of cl-ffi-gtk. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") + "/share/common-lisp/sbcl-= source/" + "cl-cffi-gtk-glib")) + (out-source (string-append (assoc-ref outputs "out") + "/share/common-lisp/sbcl-s= ource/" + "cl-cffi-gtk-gdk-pixbuf"))) + (delete-file-recursively out-source) + (symlink glib-source out-source) + #t))))))))) =20 (define-public sbcl-cl-cffi-gtk-gdk (package (inherit sbcl-cl-cffi-gtk-boot0) (name "sbcl-cl-cffi-gtk-gdk") (inputs =2D `(("gtk" ,gtk+) =2D ("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) + `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib) ("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject) ("cl-cffi-gtk-gio" ,sbcl-cl-cffi-gtk-gio) ("cl-cffi-gtk-gdk-pixbuf" ,sbcl-cl-cffi-gtk-gdk-pixbuf) @@ -3082,32 +3079,23 @@ is a library for creating graphical user interfaces= .") ("cl-cffi-gtk-pango" ,sbcl-cl-cffi-gtk-pango) ,@(package-inputs sbcl-cl-cffi-gtk-boot0))) (arguments =2D `(#:asd-file "gdk/cl-cffi-gtk-gdk.asd" =2D #:phases =2D (modify-phases %standard-phases =2D (add-after 'unpack 'fix-paths =2D (lambda* (#:key inputs #:allow-other-keys) =2D (substitute* "gdk/gdk.init.lisp" =2D (("libgdk" all) =2D (string-append =2D (assoc-ref inputs "gtk") "/lib/" all))) =2D (substitute* "gdk/gdk.package.lisp" =2D (("libgtk" all) =2D (string-append =2D (assoc-ref inputs "gtk") "/lib/" all))))) =2D (add-after 'install 'link-source =2D ;; Since source is particularly heavy (16MiB+), let's reuse it =2D ;; across the different components of cl-ffi-gtk. =2D (lambda* (#:key inputs outputs #:allow-other-keys) =2D (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") =2D "/share/common-lisp/sbcl-= source/" =2D "cl-cffi-gtk-glib")) =2D (out-source (string-append (assoc-ref outputs "out") =2D "/share/common-lisp/sbcl-s= ource/" =2D "cl-cffi-gtk-gdk"))) =2D (delete-file-recursively out-source) =2D (symlink glib-source out-source) =2D #t)))))))) + (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boo= t0) + ((#:asd-file _ "") "gdk/cl-cffi-gtk-gdk.asd") + ((#:phases phases) + `(modify-phases ,phases + (add-after 'install 'link-source + ;; Since source is particularly heavy (16MiB+), let's reuse it + ;; across the different components of cl-ffi-gtk. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") + "/share/common-lisp/sbcl-= source/" + "cl-cffi-gtk-glib")) + (out-source (string-append (assoc-ref outputs "out") + "/share/common-lisp/sbcl-s= ource/" + "cl-cffi-gtk-gdk"))) + (delete-file-recursively out-source) + (symlink glib-source out-source) + #t))))))))) =20 (define-public sbcl-cl-cffi-gtk (package @@ -3122,26 +3110,27 @@ is a library for creating graphical user interfaces= .") (native-inputs `(("fiveam" ,sbcl-fiveam))) (arguments =2D `(#:asd-file "gtk/cl-cffi-gtk.asd" =2D #:test-asd-file "test/cl-cffi-gtk-test.asd" + (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boo= t0) + ((#:asd-file _ "") "gtk/cl-cffi-gtk.asd") + ((#:test-asd-file _ "") "test/cl-cffi-gtk-test.asd") ;; TODO: Tests fail with memory fault. ;; See https://github.com/Ferada/cl-cffi-gtk/issues/24. =2D #:tests? #f =2D #:phases =2D (modify-phases %standard-phases =2D (add-after 'install 'link-source =2D ;; Since source is particularly heavy (16MiB+), let's reuse it =2D ;; across the different components of cl-ffi-gtk. =2D (lambda* (#:key inputs outputs #:allow-other-keys) =2D (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") =2D "/share/common-lisp/sbcl-= source/" =2D "cl-cffi-gtk-glib")) =2D (out-source (string-append (assoc-ref outputs "out") =2D "/share/common-lisp/sbcl-s= ource/" =2D "cl-cffi-gtk"))) =2D (delete-file-recursively out-source) =2D (symlink glib-source out-source) =2D #t)))))))) + ((#:tests? _ #f) #f) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'install 'link-source + ;; Since source is particularly heavy (16MiB+), let's reuse it + ;; across the different components of cl-ffi-gtk. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((glib-source (string-append (assoc-ref inputs "cl-cff= i-gtk-glib") + "/share/common-lisp/sbcl-= source/" + "cl-cffi-gtk-glib")) + (out-source (string-append (assoc-ref outputs "out") + "/share/common-lisp/sbcl-s= ource/" + "cl-cffi-gtk"))) + (delete-file-recursively out-source) + (symlink glib-source out-source) + #t))))))))) =20 (define-public cl-cffi-gtk (sbcl-package->cl-source-package sbcl-cl-cffi-gtk)) =2D-=20 2.25.1 --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEUPM+LlsMPZAEJKvom9z0l6S7zH8FAl62btUACgkQm9z0l6S7 zH9YhQgAi8RFu/PRQ4hemyvvklIO4ZkhYMZlKTfO0DaG+WSajqqyKfRjHj3FSFZI bJan1FVicVPLxXhSnrOOVsMrzA2MBJtYeukigsrhiUOBGoPNAqn+rxNj+SBgGOWZ gqWMVSyswUd52zSs1NSEncEY+Ih73AiN+oSGTQcywC3+Z9kcmoegHaM22SNmTWoG yFse4qS9XqhjGGnU1Ghjw264cnFobGZWZbOE+S46sZ24h3GSmwOApH6FdG2pKu1l rD8cF+2n+95QnLZdcecBxaX67I++Rbh9Rbpn6NzS9Qxdw69iQf+G60/LaHkaWJYs dnJmuowZqAWC1CX0P1v43pBRcEzXBg== =+rZ8 -----END PGP SIGNATURE----- --=-=-=--