From patchwork Wed Oct 31 06:07:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Vong X-Patchwork-Id: 61 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id A4C3A1676B; Wed, 31 Oct 2018 06:08:13 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_HI,T_DKIM_INVALID,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) by mira.cbaines.net (Postfix) with ESMTPS id 00F2616761 for ; Wed, 31 Oct 2018 06:08:13 +0000 (GMT) Received: from localhost ([::1]:57491 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gHjfo-0003iQ-An for patchwork@mira.cbaines.net; Wed, 31 Oct 2018 02:08:12 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57077) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gHjfi-0003iL-WD for guix-patches@gnu.org; Wed, 31 Oct 2018 02:08:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gHjfe-0000l1-R0 for guix-patches@gnu.org; Wed, 31 Oct 2018 02:08:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:51913) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gHjfe-0000kX-7B for guix-patches@gnu.org; Wed, 31 Oct 2018 02:08:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gHjfe-0006dx-0m for guix-patches@gnu.org; Wed, 31 Oct 2018 02:08:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#33215] [PATCH 03/11] gnu: clojure: Refactor to ensure there's a single list of libraries. References: <87muquhcw3.fsf@gmail.com> In-Reply-To: <87muquhcw3.fsf@gmail.com> Resent-From: Alex Vong Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 31 Oct 2018 06:08:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 33215 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 33215@debbugs.gnu.org Received: via spool by 33215-submit@debbugs.gnu.org id=B33215.154096605725507 (code B ref 33215); Wed, 31 Oct 2018 06:08:01 +0000 Received: (at 33215) by debbugs.gnu.org; 31 Oct 2018 06:07:37 +0000 Received: from localhost ([127.0.0.1]:56171 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gHjfF-0006dK-1A for submit@debbugs.gnu.org; Wed, 31 Oct 2018 02:07:37 -0400 Received: from mail-pg1-f182.google.com ([209.85.215.182]:43368) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gHjfA-0006d2-Jz for 33215@debbugs.gnu.org; Wed, 31 Oct 2018 02:07:33 -0400 Received: by mail-pg1-f182.google.com with SMTP id n10-v6so6837867pgv.10 for <33215@debbugs.gnu.org>; Tue, 30 Oct 2018 23:07:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:user-agent:mime-version; bh=EkQPLgPCEEdAN9dH+3GcRSjcFpj8X1+296BhdKgmugM=; b=DNTzLHQ1FUjv4bDnv7V8sHoZrVEZ6rrW60c7dnLWnBXDRK/utv/B0sI9f7jk5lcR2o ef9nWZCXCWnIg7SU/R1trIA/+Y2fl2bS2AM9pcErq6h85wLDY8kvDhrwwN1DErAptQZO ZOS95chUnnspfnzvObuGFdPQHxH495MWmcFrGSzoQyRbB/E+GFVY3LWp6+ORRfTGF0ln hL252Og8kvIawODIpsJJDmSJtAhhQJ8GhiSExOPtQFJjbe/p0QcjxEIoEPzyRShmnN6s +wfGEPqqxoRt6f91Jt6OHHZVQga4MDGb96jEvdSoPyeKJldSfQXxUvuKXFlYHqQ0zVtF xO3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:user-agent :mime-version; bh=EkQPLgPCEEdAN9dH+3GcRSjcFpj8X1+296BhdKgmugM=; b=oTuRYrmva2n9BqcTEmDP0qKLYF2OVPVG9/ymLIS7kfDegPGpq3IScftlugfKVklavS 2cS1bGkSBiryynEByrT56WqFQI1ORI5/B6Phz7XounJjvbQrmAWiCWK5xSzh66cjZ/yP j0a/Kf0w1fQ6hTJ/w0vU7iEF+d2t9ei4REZcndREUvT6tu3Xdj76nHwfUtGk/l8xLSr5 /S1Po6U49h4uhDJPNoN5aW/RubRUQsvlFe4ZEuscXeB+dDZ2W5kifHOGGSIsR0aEU19+ 1kvs1AhTrQs8sKJ4N1rmxZ0LTWA/xOyFelBCuBCdg3AmZTTnRVl4CbAmBR+HZiOAMFuV cH6g== X-Gm-Message-State: AGRZ1gIesmz7l+tqfS1PxdTsCelt+nR+pcNTAtAMdAlVOPc7ErECBRns Qv2xrryQICIZ9QCVPrwM8GwHvNfx X-Google-Smtp-Source: AJdET5eWdk6NUs9rttoProLzxSSAuuVsojHZzttLwrKqRSFU45ixW9Y5w/aK3dcbqQg33wTmfCpcRA== X-Received: by 2002:a63:2ad4:: with SMTP id q203-v6mr1795129pgq.356.1540966047046; Tue, 30 Oct 2018 23:07:27 -0700 (PDT) Received: from debian (42-3-197-089.static.netvigator.com. [42.3.197.89]) by smtp.gmail.com with ESMTPSA id b77-v6sm11475199pfm.3.2018.10.30.23.07.25 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 30 Oct 2018 23:07:26 -0700 (PDT) From: Alex Vong Date: Wed, 31 Oct 2018 14:07:22 +0800 Message-ID: <87a7muhco5.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: alexvong1995@gmail.com Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches From cd355d8cec3c747f58748d5cf750af7d6efd5d5a Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sun, 14 Oct 2018 00:08:29 +0800 Subject: [PATCH 03/11] gnu: clojure: Refactor to ensure there's a single list of libraries. This avoids having to update multiple lists. * gnu/packages/lisp.scm (clojure)[native-inputs]: Use new local variable. [arguments]: Adjust build phases accordingly. --- gnu/packages/lisp.scm | 101 ++++++++++++++++++++---------------------- 1 file changed, 49 insertions(+), 52 deletions(-) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index df0c0a87e..c42878fd3 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -562,12 +562,40 @@ interface.") license:clarified-artistic)))) ;TRIVIAL-LDAP package (define-public clojure - (let ((submodule (lambda (prefix version hash) - (origin - (method url-fetch) - (uri (string-append "https://github.com/clojure/" - prefix version ".tar.gz")) - (sha256 (base32 hash)))))) + (let* ((lib (lambda (prefix version hash) + (origin (method url-fetch) + (uri (string-append "https://github.com/clojure/" + prefix version ".tar.gz")) + (sha256 (base32 hash))))) + ;; The libraries below are needed to run the tests. + (libraries + `(("core-specs-alpha-src" + ,(lib "core.specs.alpha/archive/core.specs.alpha-" + "0.1.24" + "0v2a0svf1ar2y42ajxwsjr7zmm5j7pp2zwrd2jh3k7xzd1p9x1fv")) + ("data-generators-src" + ,(lib "data.generators/archive/data.generators-" + "0.1.2" + "0kki093jp4ckwxzfnw8ylflrfqs8b1i1wi9iapmwcsy328dmgzp1")) + ("spec-alpha-src" + ,(lib "spec.alpha/archive/spec.alpha-" + "0.1.143" + "00alf0347licdn773w2jarpllyrbl52qz4d8mw61anjksacxylzz")) + ("test-check-src" + ,(lib "test.check/archive/test.check-" + "0.9.0" + "0p0mnyhr442bzkz0s4k5ra3i6l5lc7kp6ajaqkkyh4c2k5yck1md")) + ("test-generative-src" + ,(lib "test.generative/archive/test.generative-" + "0.5.2" + "1pjafy1i7yblc7ixmcpfq1lfbyf3jaljvkgrajn70sws9xs7a9f8")) + ("tools-namespace-src" + ,(lib "tools.namespace/archive/tools.namespace-" + "0.2.11" + "10baak8v0hnwz2hr33bavshm7y49mmn9zsyyms1dwjz45p5ymhy0")))) + (library-names (match libraries + (((library-name _) ...) + library-name)))) (package (name "clojure") (version "1.9.0") @@ -590,27 +618,21 @@ interface.") #:test-target "test" #:phases (modify-phases %standard-phases - (add-after 'unpack 'unpack-submodule-sources + (add-after 'unpack 'unpack-library-sources (lambda* (#:key inputs #:allow-other-keys) - (for-each - (lambda (name) - (mkdir-p name) - (with-directory-excursion name - (invoke "tar" - "--extract" - "--verbose" - "--file" (assoc-ref inputs name) - "--strip-components=1")) - (copy-recursively (string-append name "/src/main/clojure/") - "src/clj/")) - '("core-specs-alpha-src" - "data-generators-src" - "spec-alpha-src" - "test-check-src" - "test-generative-src" - "tools-namespace-src")) + (define (extract-library name) + (mkdir-p name) + (with-directory-excursion name + (invoke "tar" + "--extract" + "--verbose" + "--file" (assoc-ref inputs name) + "--strip-components=1")) + (copy-recursively (string-append name "/src/main/clojure/") + "src/clj/")) + (for-each extract-library ',library-names) #t)) - (add-after 'unpack 'fix-manifest-classpath + (add-after 'unpack-library-sources 'fix-manifest-classpath (lambda _ (substitute* "build.xml" (("") "")) @@ -643,32 +665,7 @@ interface.") <>) (scandir "./"))) #t)))))) - ;; The native-inputs below are needed to run the tests. - (native-inputs - `(("core-specs-alpha-src" - ,(submodule "core.specs.alpha/archive/core.specs.alpha-" - "0.1.24" - "0v2a0svf1ar2y42ajxwsjr7zmm5j7pp2zwrd2jh3k7xzd1p9x1fv")) - ("data-generators-src" - ,(submodule "data.generators/archive/data.generators-" - "0.1.2" - "0kki093jp4ckwxzfnw8ylflrfqs8b1i1wi9iapmwcsy328dmgzp1")) - ("spec-alpha-src" - ,(submodule "spec.alpha/archive/spec.alpha-" - "0.1.143" - "00alf0347licdn773w2jarpllyrbl52qz4d8mw61anjksacxylzz")) - ("test-check-src" - ,(submodule "test.check/archive/test.check-" - "0.9.0" - "0p0mnyhr442bzkz0s4k5ra3i6l5lc7kp6ajaqkkyh4c2k5yck1md")) - ("test-generative-src" - ,(submodule "test.generative/archive/test.generative-" - "0.5.2" - "1pjafy1i7yblc7ixmcpfq1lfbyf3jaljvkgrajn70sws9xs7a9f8")) - ("tools-namespace-src" - ,(submodule "tools.namespace/archive/tools.namespace-" - "0.2.11" - "10baak8v0hnwz2hr33bavshm7y49mmn9zsyyms1dwjz45p5ymhy0")))) + (native-inputs libraries) (home-page "https://clojure.org/") (synopsis "Lisp dialect running on the JVM") (description "Clojure is a dynamic, general-purpose programming language, @@ -689,7 +686,7 @@ designs.") ;; ASM bytecode manipulation library is licensed under BSD-3 ;; Guava Murmur3 hash implementation is licensed under APL2.0 ;; src/clj/repl.clj is licensed under CPL1.0 - ;; + ;; See readme.html or readme.txt for details. (license (list license:epl1.0 license:bsd-3 -- 2.19.1