unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Simon South <simon@simonsouth.net>
To: 60695@debbugs.gnu.org
Subject: [bug#60695] [PATCH v2 9/9] gnu: nextpnr-ice40: Update to 0.5.
Date: Fri, 27 Jan 2023 15:34:34 -0500	[thread overview]
Message-ID: <f6d9d83768d52b96bfde8c837c8e822caef60b8d.1674850363.git.simon@simonsouth.net> (raw)
In-Reply-To: <cover.1674850363.git.simon@simonsouth.net>

* gnu/packages/fpga.scm (nextpnr-ice40): Update to 0.5.
[arguments]<#:configure-flags>: Add "-DBUILD_GUI", "-DUSE_IPO"; update
"-DCURRENT_GIT_VERSION"; rename "-DICEBOX_ROOT" to
"-DICESTORM_INSTALL_PREFIX".
---
 gnu/packages/fpga.scm | 87 ++++++++++++++++++++++---------------------
 1 file changed, 45 insertions(+), 42 deletions(-)

diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm
index 912b6cfb77..54a8d9550e 100644
--- a/gnu/packages/fpga.scm
+++ b/gnu/packages/fpga.scm
@@ -247,45 +247,48 @@ (define-public icestorm
     (license license:isc))))
 
 (define-public nextpnr-ice40
-  (let [(commit "fbe486df459909065d6852a7495a212dfd2accef")
-        (revision "1")]
+  (let* ((version "0.5")
+         (tag (string-append "nextpnr-" version)))
     (package
       (name "nextpnr-ice40")
-      (version (git-version "0.0.0" revision commit))
+      (version version)
       (source
-        (origin
-          (method git-fetch)
-          (uri (git-reference
-                 (url "https://github.com/YosysHQ/nextpnr")
-                 (commit commit)
-                 (recursive? #t)))
-          (file-name (git-file-name name version))
-          (sha256
-           (base32
-            "1llkrh8rk1a1xxzx54apbg49ny2jqzzl2rmbkb8188idipq568ws"))
-          (modules '((guix build utils)))
-          (snippet
-           #~(begin
-               ;; Remove bundled source code for which Guix has packages.
-               ;; Note the bundled copies of json11 and python-console contain
-               ;; modifications, while QtPropertyBrowser appears to be
-               ;; abandoned and without an official source.
-               (with-directory-excursion "3rdparty"
-                 (for-each delete-file-recursively
-                           '("googletest" "imgui" "pybind11" "qtimgui"
-                             "sanitizers-cmake")))
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/YosysHQ/nextpnr")
+               (commit tag)
+               (recursive? #t)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "119iqxxzbxq2qy8x20awf9gr0nf3y1yjmk36adsg89ly3rb9gwzk"))
+         (modules '((guix build utils)))
+         (snippet
+          #~(begin
+              ;; Remove bundled source code for which Guix has packages.
+              ;; Note the bundled copies of json11 and python-console contain
+              ;; modifications, while QtPropertyBrowser appears to be
+              ;; abandoned and without an official source.
+              ;; fpga-interchange-schema is used only by the
+              ;; "fpga_interchange" architecture target, which this package
+              ;; doesn't build.
+              (with-directory-excursion "3rdparty"
+                (for-each delete-file-recursively
+                          '("googletest" "imgui" "pybind11" "qtimgui"
+                            "sanitizers-cmake")))
 
-               ;; Remove references to unbundled code and link against
-               ;; external libraries instead.
-               (substitute* "CMakeLists.txt"
-                 (("^\\s+add_subdirectory\\(3rdparty/googletest.*") "")
-                 (("^(\\s+target_link_libraries.*)( gtest_main\\))"
-                   _ prefix suffix)
-                  (string-append prefix " gtest" suffix)))
-               (substitute* "gui/CMakeLists.txt"
-                 (("^\\s+../3rdparty/(qt)?imgui.*") "")
-                 (("^(target_link_libraries.*)\\)" _ prefix)
-                  (string-append prefix " imgui qt_imgui_widgets)")))))))
+              ;; Remove references to unbundled code and link against external
+              ;; libraries instead.
+              (substitute* "CMakeLists.txt"
+                (("^\\s+add_subdirectory\\(3rdparty/googletest.*") "")
+                (("^(\\s+target_link_libraries.*)( gtest_main\\))"
+                  _ prefix suffix)
+                 (string-append prefix " gtest" suffix)))
+              (substitute* "gui/CMakeLists.txt"
+                (("^\\s+../3rdparty/(qt)?imgui.*") "")
+                (("^(target_link_libraries.*)\\)" _ prefix)
+                 (string-append prefix " imgui qt_imgui_widgets)")))))))
       (native-inputs
        (list googletest sanitizers-cmake))
       (inputs
@@ -303,12 +306,12 @@ (define-public nextpnr-ice40
        (list
         #:configure-flags
         #~(list "-DARCH=ice40"
+                "-DBUILD_GUI=ON"
                 "-DBUILD_TESTS=ON"
-                (string-append "-DCURRENT_GIT_VERSION="
-                               #$(string-take commit 8))
-                (string-append "-DICEBOX_ROOT="
-                               #$(this-package-input "icestorm")
-                               "/share/icebox"))
+                (string-append "-DCURRENT_GIT_VERSION=" #$tag)
+                (string-append "-DICESTORM_INSTALL_PREFIX="
+                               #$(this-package-input "icestorm"))
+                "-DUSE_IPO=OFF")
         #:phases
         #~(modify-phases %standard-phases
             (add-after 'unpack 'patch-source
@@ -334,8 +337,8 @@ (define-public nextpnr-ice40
                                                           "include/qtimgui")
                                   suffix))))))))
       (synopsis "Place-and-Route tool for FPGAs")
-      (description "Nextpnr aims to be a vendor neutral, timing driven,
-FOSS 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:expat))))
 
-- 
2.38.1





  parent reply	other threads:[~2023-01-27 20:35 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-09 19:22 [bug#60695] [PATCH 0/9] gnu: nextpnr-ice40: Update to 0.5 Simon South
2023-01-09 19:25 ` [bug#60695] [PATCH 1/9] gnu: Add implot Simon South
2023-01-09 19:25 ` [bug#60695] [PATCH 2/9] gnu: Add qtimgui Simon South
2023-01-09 19:25 ` [bug#60695] [PATCH 3/9] gnu: Add sanitizers-cmake Simon South
2023-01-09 19:25 ` [bug#60695] [PATCH 4/9] gnu: nextpnr-ice40: Use HTTPS for source URL Simon South
2023-01-09 19:25 ` [bug#60695] [PATCH 5/9] gnu: nextpnr-ice40: Use gexps Simon South
2023-01-09 19:26 ` [bug#60695] [PATCH 6/9] gnu: nextpnr-ice40: Enable tests Simon South
2023-01-09 19:26 ` [bug#60695] [PATCH 7/9] gnu: nextpnr-ice40: Fix generated version string Simon South
2023-01-09 19:26 ` [bug#60695] [PATCH 8/9] gnu: nextpnr-ice40: Remove bundled software Simon South
2023-01-09 19:26 ` [bug#60695] [PATCH 9/9] gnu: nextpnr-ice40: Update to 0.5 Simon South
2023-01-27 20:34 ` [bug#60695] [PATCH v2 0/9] " Simon South
2023-01-27 20:34   ` [bug#60695] [PATCH v2 1/9] gnu: Add implot Simon South
2023-01-27 20:34   ` [bug#60695] [PATCH v2 2/9] gnu: Add qtimgui Simon South
2023-01-27 20:34   ` [bug#60695] [PATCH v2 3/9] gnu: Add sanitizers-cmake Simon South
2023-01-27 20:34   ` [bug#60695] [PATCH v2 4/9] gnu: nextpnr-ice40: Use HTTPS for source URL Simon South
2023-01-27 20:34   ` [bug#60695] [PATCH v2 5/9] gnu: nextpnr-ice40: Use gexps Simon South
2023-01-27 20:34   ` [bug#60695] [PATCH v2 6/9] gnu: nextpnr-ice40: Enable tests Simon South
2023-01-27 20:34   ` [bug#60695] [PATCH v2 7/9] gnu: nextpnr-ice40: Fix generated version string Simon South
2023-01-27 20:34   ` [bug#60695] [PATCH v2 8/9] gnu: nextpnr-ice40: Remove bundled software Simon South
2023-01-27 20:34   ` Simon South [this message]
2024-12-22 11:49 ` bug#60695: Merged nextpnr-ice40 patchset to guix master Danny Milosavljevic

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f6d9d83768d52b96bfde8c837c8e822caef60b8d.1674850363.git.simon@simonsouth.net \
    --to=simon@simonsouth.net \
    --cc=60695@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).