Subject: [PATCH v2 0/9] gnu: nextpnr-ice40: Update to 0.5.

From: Simon South <[email-masked]>
Date: Fri, 27 Jan 2023 15:34:25 -0500

Following a comment[0] from ( on another issue, here's a v2 of this patch
series that refers to package inputs appropriately using "this-package-input"
and "this-package-native-input" instead of by variable name.

This affects primarily patches 5 and 8, in references to icestorm and
sanitizers-cmake; aside from differences in formatting resulting from these
changes, the remaining patches are the same as before.

I've re-tested this on AArch64 and everything appears fine.  The original
cover letter follows below.

[0] https://lists.gnu.org/archive/html/guix-patches/2023-01/msg01230.html

--
Simon South
[email-masked]

Continuing on from issue 60429[0], here's a patch series that aims to improve
the package for nextpnr-ice40, a place-and-route tool for Lattice iCE40 FPGAs,
by

- Adding separate packages for implot, qtimgui and sanitizers-cmake, which are
  currently bundled with nextpnr;

- Updating its source-repository URL to use HTTPS instead of the git protocol
  (no longer supported by GitHub[1]);

- Updating it to the modern style using gexps;

- Enabling the test suite;

- Fixing the version string shown by "nextpnr-ice40 --version", which should
  match the output of "git describe --tags --always" at build time but is
  currently empty;

- Removing the bundled software and patching the source to use Guix packages
  instead; and

- Updating nextpnr-ice40 itself to version 0.5.

I've tested this on x86-64 (command line and GUI) and AArch64 (command line
only) and everything seems fine.  Note that as with Yosys, the nextpnr Web
page helpfully includes a short example of using the tool[2] for testing its
basic functionality.  (The "blinky" folder is in the nextpnr source tree.)

[0] https://issues.guix.gnu.org/60429

[1] https://github.blog/2021-09-01-improving-git-protocol-security-github/

[2] https://github.com/YosysHQ/nextpnr#getting-started

--
Simon South
[email-masked]

Simon South (9):
  gnu: Add implot.
  gnu: Add qtimgui.
  gnu: Add sanitizers-cmake.
  gnu: nextpnr-ice40: Use HTTPS for source URL.
  gnu: nextpnr-ice40: Use gexps.
  gnu: nextpnr-ice40: Enable tests.
  gnu: nextpnr-ice40: Fix generated version string.
  gnu: nextpnr-ice40: Remove bundled software.
  gnu: nextpnr-ice40: Update to 0.5.

 gnu/packages/cmake.scm    |  45 +++++++++++++++++
 gnu/packages/fpga.scm     | 101 +++++++++++++++++++++++++++++++-------
 gnu/packages/qt.scm       |  63 ++++++++++++++++++++++++
 gnu/packages/toolkits.scm |  50 +++++++++++++++++++
 4 files changed, 240 insertions(+), 19 deletions(-)

base-commit: 8e1cca32b938cef0812ce042c6c2e8bccb326ec7
prerequisite-patch-id: 63e61bd0fe7b4cd3b7f4b15c594172579674e67b
prerequisite-patch-id: 14469ab44ea45c68c034574747dcf39f1b0d4c8c
prerequisite-patch-id: 22efe5c3a9047003160bc343e7b1e12d813b5fcf
prerequisite-patch-id: dfbdd64c8cb4841ee2d6d6e0498f9336de21888b
prerequisite-patch-id: 033f40ecd2d1ff437359b411482b9fe57b64baf3
-- 
2.38.1