From patchwork Mon Jan 29 15:01:07 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Gary Wong X-Patchwork-Id: 59553 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 1AD3F27BBE2; Mon, 29 Jan 2024 15:02:17 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.8 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,URIBL_BLOCKED, URIBL_SBL_A autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 7CF8927BBE9 for ; Mon, 29 Jan 2024 15:02:14 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rUT96-0008GW-8k; Mon, 29 Jan 2024 10:02:02 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rUT92-0008G5-5X for guix-patches@gnu.org; Mon, 29 Jan 2024 10:01:56 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rUT91-0003fD-B3 for guix-patches@gnu.org; Mon, 29 Jan 2024 10:01:55 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rUT99-00018i-7d for guix-patches@gnu.org; Mon, 29 Jan 2024 10:02:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68791] [PATCH 1/3] gnu: yosys: Update to 0.37. References: <20240129042736.GA13188@flux.utah.edu> Resent-From: Gary Wong Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 29 Jan 2024 15:02:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68791 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68791@debbugs.gnu.org Received: via spool by 68791-submit@debbugs.gnu.org id=B68791.17065404864304 (code B ref 68791); Mon, 29 Jan 2024 15:02:03 +0000 Received: (at 68791) by debbugs.gnu.org; 29 Jan 2024 15:01:26 +0000 Received: from localhost ([127.0.0.1]:33213 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rUT8X-00017L-Br for submit@debbugs.gnu.org; Mon, 29 Jan 2024 10:01:26 -0500 Received: from bas.flux.utah.edu ([155.98.60.2]:14726) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rUT8U-000173-FS for 68791@debbugs.gnu.org; Mon, 29 Jan 2024 10:01:24 -0500 Received: from bas.flux.utah.edu (localhost [127.0.0.1]) by bas.flux.utah.edu (8.15.2/8.15.2) with ESMTP id 40TF17rf083813 for <68791@debbugs.gnu.org>; Mon, 29 Jan 2024 08:01:07 -0700 (MST) (envelope-from gtw@bas.flux.utah.edu) Received: (from gtw@localhost) by bas.flux.utah.edu (8.15.2/8.15.2/Submit) id 40TF17RM083812 for 68791@debbugs.gnu.org; Mon, 29 Jan 2024 08:01:07 -0700 (MST) (envelope-from gtw) Date: Mon, 29 Jan 2024 08:01:07 -0700 From: Gary Wong Message-ID: <20240129150107.GA83516@flux.utah.edu> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20240129042736.GA13188@flux.utah.edu> User-Agent: Mutt/1.12.1 (2019-06-15) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/fpga.scm (yosys): Update to 0.37, and disable fragile iverilog invocation in arch/run-test.sh. Change-Id: Ie9ed39ac47fb0a3dde1acd5f699724dc709a00a0 --- gnu/packages/fpga.scm | 162 +++++++++++++++++++++++------------------- 1 file changed, 88 insertions(+), 74 deletions(-) diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm index 13ac1a0b..99841fb6 100644 --- a/gnu/packages/fpga.scm +++ b/gnu/packages/fpga.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2021 Andrew Miloradovsky ;;; Copyright © 2022 Christian Gelinek ;;; Copyright © 2022 jgart +;;; Copyright © 2024 Gary Wong ;;; ;;; This file is part of GNU Guix. ;;; @@ -137,84 +138,97 @@ (define-public iverilog (define-public yosys (package (name "yosys") - (version "0.26") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/YosysHQ/yosys") - (commit (string-append "yosys-" version)))) - (sha256 - (base32 - "0s79ljgbcfkm7l9km7dcvlz4mnx38nbyxppscvh5il5lw07n45gx")) - (file-name (git-file-name name version)))) + (version "0.37") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/YosysHQ/yosys") + (commit (string-append "yosys-" version)))) + (sha256 + (base32 "13f8d02n7fibf77nwfqqlbzfwrpc5qcjx059v04cb76vk9k4bkqp")) + (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments (list #:test-target "test" - #:make-flags #~(list "CC=gcc" - "CXX=g++" - (string-append "PREFIX=" #$output)) - #:phases - #~(modify-phases %standard-phases - (add-before 'configure 'fix-paths - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "./backends/smt2/smtio.py" - (("\\['z3") - (string-append "['" (search-input-file inputs "/bin/z3")))) - (substitute* "./kernel/fstdata.cc" - (("vcd2fst") - (search-input-file inputs "/bin/vcd2fst"))) - (substitute* '("./passes/cmds/show.cc" - "./passes/cmds/viz.cc") - (("exec xdot") - (string-append "exec " (search-input-file inputs - "/bin/xdot"))) - (("dot -") - (string-append (search-input-file inputs "/bin/dot") " -")) - (("fuser") - (search-input-file inputs "/bin/fuser"))))) - (replace 'configure - (lambda* (#:key make-flags #:allow-other-keys) - (apply invoke "make" "config-gcc" make-flags))) - (add-after 'configure 'use-external-abc - (lambda* (#:key inputs #:allow-other-keys) - (substitute* '("./Makefile") - (("ABCEXTERNAL \\?=") - (string-append "ABCEXTERNAL = " - (search-input-file inputs "/bin/abc")))))) - (add-after 'install 'add-symbolic-link - (lambda* (#:key inputs #:allow-other-keys) - ;; Previously this package provided a copy of the "abc" - ;; executable in its output, named "yosys-abc". Create a - ;; symbolic link so any external uses of that name continue to - ;; work. - (symlink (search-input-file inputs "/bin/abc") - (string-append #$output "/bin/yosys-abc")))) - (add-after 'install 'wrap - (lambda* (#:key inputs #:allow-other-keys) - (wrap-program (string-append #$output "/bin/yosys-witness") - `("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH"))))))))) - (native-inputs - (list bison - flex - gawk ; for the tests and "make" progress pretty-printing - iverilog ; for the tests - pkg-config - python - tcl)) ; tclsh for the tests - (inputs - (list abc - graphviz - gtkwave - libffi - psmisc - readline - tcl - xdot - z3 - zlib - python - python-click)) + #:make-flags #~(list "CC=gcc" "CXX=g++" + (string-append "PREFIX=" + #$output)) + #:phases #~(modify-phases %standard-phases + (add-before 'configure 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "./backends/smt2/smtio.py" + (("\\['z3") + (string-append "['" + (search-input-file inputs "/bin/z3")))) + (substitute* "./kernel/fstdata.cc" + (("vcd2fst") + (search-input-file inputs "/bin/vcd2fst"))) + (substitute* '("./passes/cmds/show.cc" + "./passes/cmds/viz.cc") + (("exec xdot") + (string-append "exec " + (search-input-file inputs "/bin/xdot"))) + (("dot -") + (string-append (search-input-file inputs "/bin/dot") + " -")) + (("fuser") + (search-input-file inputs "/bin/fuser"))))) + (add-before 'configure 'fix-tests + (lambda* (#:key inputs #:allow-other-keys) + ;; The arch/run-test.sh script performs a syntax check + ;; on the included simulation models, by running + ;; iverilog over the model source. Unfortunately this + ;; test is prone to false positives, because it is + ;; highly sensitive to the version of iverilog in use. + ;; Disable iverilog invocation for this test. + (substitute* '("./tests/arch/run-test.sh") + (("iverilog") + "# iverilog")))) + (replace 'configure + (lambda* (#:key make-flags #:allow-other-keys) + (apply invoke "make" "config-gcc" make-flags))) + (add-after 'configure 'use-external-abc + (lambda* (#:key inputs #:allow-other-keys) + (substitute* '("./Makefile") + (("ABCEXTERNAL \\?=") + (string-append "ABCEXTERNAL = " + (search-input-file inputs "/bin/abc")))))) + (add-after 'install 'add-symbolic-link + (lambda* (#:key inputs #:allow-other-keys) + ;; Previously this package provided a copy of the "abc" + ;; executable in its output, named "yosys-abc". Create + ;; a symbolic link so any external uses of that name + ;; continue to work. + (symlink (search-input-file inputs "/bin/abc") + (string-append #$output "/bin/yosys-abc")))) + (add-after 'install 'wrap + (lambda* (#:key inputs #:allow-other-keys) + (wrap-program (string-append #$output + "/bin/yosys-witness") + `("GUIX_PYTHONPATH" ":" prefix + (,(getenv "GUIX_PYTHONPATH"))))))))) + (native-inputs (list bison + flex + gawk ;for the tests and "make" progress pretty-printing + iverilog ;for the tests + pkg-config + python + tcl)) ;tclsh for the tests + (inputs (list abc + bash-minimal + graphviz + gtkwave + libffi + psmisc + readline + tcl + xdot + z3 + zlib + python + python-click)) (home-page "https://yosyshq.net/yosys/") (synopsis "FPGA Verilog RTL synthesizer") (description "Yosys synthesizes Verilog-2005.") From patchwork Mon Jan 29 15:03:00 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gary Wong X-Patchwork-Id: 59554 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 65EE827BBE9; Mon, 29 Jan 2024 15:04:05 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.8 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,URIBL_BLOCKED, URIBL_SBL_A autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 8BE6F27BBE2 for ; Mon, 29 Jan 2024 15:04:03 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rUTAy-0000xs-7J; Mon, 29 Jan 2024 10:03:56 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rUTAw-0000xg-8S for guix-patches@gnu.org; Mon, 29 Jan 2024 10:03:54 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rUTAv-0003rG-WF for guix-patches@gnu.org; Mon, 29 Jan 2024 10:03:54 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rUTB4-0001C4-8h for guix-patches@gnu.org; Mon, 29 Jan 2024 10:04:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68791] [PATCH 2/3] gnu: Add trellis. References: <20240129042736.GA13188@flux.utah.edu> Resent-From: Gary Wong Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 29 Jan 2024 15:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68791 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68791@debbugs.gnu.org Received: via spool by 68791-submit@debbugs.gnu.org id=B68791.17065405964536 (code B ref 68791); Mon, 29 Jan 2024 15:04:02 +0000 Received: (at 68791) by debbugs.gnu.org; 29 Jan 2024 15:03:16 +0000 Received: from localhost ([127.0.0.1]:33222 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rUTAJ-0001B5-Lt for submit@debbugs.gnu.org; Mon, 29 Jan 2024 10:03:16 -0500 Received: from bas.flux.utah.edu ([155.98.60.2]:14796) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rUTAH-0001Aq-VQ for 68791@debbugs.gnu.org; Mon, 29 Jan 2024 10:03:14 -0500 Received: from bas.flux.utah.edu (localhost [127.0.0.1]) by bas.flux.utah.edu (8.15.2/8.15.2) with ESMTP id 40TF30SJ084014 for <68791@debbugs.gnu.org>; Mon, 29 Jan 2024 08:03:00 -0700 (MST) (envelope-from gtw@bas.flux.utah.edu) Received: (from gtw@localhost) by bas.flux.utah.edu (8.15.2/8.15.2/Submit) id 40TF30eA084010 for 68791@debbugs.gnu.org; Mon, 29 Jan 2024 08:03:00 -0700 (MST) (envelope-from gtw) Date: Mon, 29 Jan 2024 08:03:00 -0700 From: Gary Wong Message-ID: <20240129150300.GA83843@flux.utah.edu> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20240129042736.GA13188@flux.utah.edu> User-Agent: Mutt/1.12.1 (2019-06-15) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/fpga.scm (trellis): New variable. Change-Id: I90a7c7c0994508a16193c5ae2b8659c1d32a3c33 --- gnu/packages/fpga.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm index 99841fb6..b42a3503 100644 --- a/gnu/packages/fpga.scm +++ b/gnu/packages/fpga.scm @@ -619,3 +619,36 @@ (define-public openfpgaloader to an FPGA.") (home-page "https://f4pga.org/") (license license:asl2.0))) + +(define-public trellis + (package + (name "trellis") + (version "1.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/YosysHQ/prjtrellis") + (commit version) + (recursive? #t))) ;for the database submodule + (file-name (git-file-name name version)) + (sha256 + (base32 "0c3asdfrjmnc6q3vawn3nfghgg43iajwy2zb8kck9d3wrypbhlmc")))) + (inputs (list boost python)) + (build-system cmake-build-system) + (arguments + (list + #:out-of-source? #f ;README: "unsupported when coupled with nextpnr" + #:tests? #f ;contains no test target + #:phases #~(modify-phases %standard-phases + (add-before 'configure 'chdir-libtrellis + (lambda* (#:key #:allow-other-keys) + (chdir "libtrellis")))))) + (synopsis "Lattice ECP5 bitstream processing") + (description + "Project Trellis enables a fully open-source flow for ECP5 +FPGAs using Yosys for Verilog synthesis and nextpnr for place and +route. Project Trellis itself provides the device database and tools +for bitstream creation.") + (license (list license:isc license:expat)) + (home-page "https://github.com/YosysHQ/prjtrellis"))) From patchwork Mon Jan 29 15:03:56 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gary Wong X-Patchwork-Id: 59555 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 D3DCB27BBE2; Mon, 29 Jan 2024 15:05:00 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 5F46B27BBE9 for ; Mon, 29 Jan 2024 15:05:00 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rUTBv-0001Un-EQ; Mon, 29 Jan 2024 10:04:55 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rUTBt-0001UW-MB for guix-patches@gnu.org; Mon, 29 Jan 2024 10:04:53 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rUTBt-0003xa-Dp for guix-patches@gnu.org; Mon, 29 Jan 2024 10:04:53 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rUTC1-0001EK-NP for guix-patches@gnu.org; Mon, 29 Jan 2024 10:05:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68791] [PATCH 3/3] gnu: Add nextpnr-ecp5. References: <20240129042736.GA13188@flux.utah.edu> Resent-From: Gary Wong Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 29 Jan 2024 15:05:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68791 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68791@debbugs.gnu.org Received: via spool by 68791-submit@debbugs.gnu.org id=B68791.17065406524631 (code B ref 68791); Mon, 29 Jan 2024 15:05:01 +0000 Received: (at 68791) by debbugs.gnu.org; 29 Jan 2024 15:04:12 +0000 Received: from localhost ([127.0.0.1]:33226 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rUTBE-0001Cd-5S for submit@debbugs.gnu.org; Mon, 29 Jan 2024 10:04:12 -0500 Received: from bas.flux.utah.edu ([155.98.60.2]:14869) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rUTBC-0001CN-0K for 68791@debbugs.gnu.org; Mon, 29 Jan 2024 10:04:10 -0500 Received: from bas.flux.utah.edu (localhost [127.0.0.1]) by bas.flux.utah.edu (8.15.2/8.15.2) with ESMTP id 40TF3uAg084149 for <68791@debbugs.gnu.org>; Mon, 29 Jan 2024 08:03:56 -0700 (MST) (envelope-from gtw@bas.flux.utah.edu) Received: (from gtw@localhost) by bas.flux.utah.edu (8.15.2/8.15.2/Submit) id 40TF3ukX084148 for 68791@debbugs.gnu.org; Mon, 29 Jan 2024 08:03:56 -0700 (MST) (envelope-from gtw) Date: Mon, 29 Jan 2024 08:03:56 -0700 From: Gary Wong Message-ID: <20240129150356.GA84024@flux.utah.edu> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20240129042736.GA13188@flux.utah.edu> User-Agent: Mutt/1.12.1 (2019-06-15) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/fpga.scm (nextpnr-ecp5): New variable. Change-Id: Iec50903140fc9f0458423adbbe333e189e601922 --- gnu/packages/fpga.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm index b42a3503..3dcd981e 100644 --- a/gnu/packages/fpga.scm +++ b/gnu/packages/fpga.scm @@ -652,3 +652,29 @@ (define-public trellis for bitstream creation.") (license (list license:isc license:expat)) (home-page "https://github.com/YosysHQ/prjtrellis"))) + +(define-public nextpnr-ecp5 + (package + (name "nextpnr-ecp5") + (version "0.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/YosysHQ/nextpnr") + (commit (string-append "nextpnr-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "146nc05ypsyjnxdpayc4g6d16f5igry46nydrb13niix51q11030")))) + (inputs (list boost eigen python trellis)) + (build-system cmake-build-system) + (arguments + `(#:configure-flags `("-DARCH=ecp5" ,(string-append + "-DTRELLIS_INSTALL_PREFIX=" + (assoc-ref %build-inputs "trellis"))) + #:tests? #f)) ;contains no test target + (synopsis "Portable FPGA place and route tool") + (description "Nextpnr aims to be a vendor neutral, timing driven, +FOSS FPGA place and route tool.") + (home-page "https://github.com/YosysHQ/nextpnr") + (license license:isc)))