diff options
author | Simon South <simon@simonsouth.net> | 2023-01-27 15:34:34 -0500 |
---|---|---|
committer | Danny Milosavljevic <dannym@friendly-machines.com> | 2024-12-22 12:48:00 +0100 |
commit | 8c1348e4f2adb1c6cf1ebf05b624322a138c6df5 (patch) | |
tree | 943c2cc0c312c4399a9179fe5d0191f95b4a4988 | |
parent | 58ca09f5544e0f3b8b9fd9ddeff1d2cca3436402 (diff) | |
download | guix-8c1348e4f2adb1c6cf1ebf05b624322a138c6df5.tar.gz guix-8c1348e4f2adb1c6cf1ebf05b624322a138c6df5.zip |
gnu: nextpnr-ice40: Update to 0.5.
* 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".
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
-rw-r--r-- | gnu/packages/fpga.scm | 87 |
1 files changed, 45 insertions, 42 deletions
diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm index 8647d7feff..8773c69271 100644 --- a/gnu/packages/fpga.scm +++ b/gnu/packages/fpga.scm @@ -285,45 +285,48 @@ Includes the actual FTDI connector.") (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 @@ -341,12 +344,12 @@ Includes the actual FTDI connector.") (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 @@ -372,8 +375,8 @@ Includes the actual FTDI connector.") "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)))) |