about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSerge Bazanski <sergiusz@q3k.org>2018-08-02 09:18:47 +0100
committerxeji <36407913+xeji@users.noreply.github.com>2018-08-02 10:18:47 +0200
commit742a50dafdb7dd9bd16fd6c400e145e62b8b295a (patch)
tree000f25a03ea7fcd0cedcd977e724572c1edfd7b0
parentaf4448ef4d0f337ff0ff92b4438556e137804feb (diff)
downloadnixlib-742a50dafdb7dd9bd16fd6c400e145e62b8b295a.tar
nixlib-742a50dafdb7dd9bd16fd6c400e145e62b8b295a.tar.gz
nixlib-742a50dafdb7dd9bd16fd6c400e145e62b8b295a.tar.bz2
nixlib-742a50dafdb7dd9bd16fd6c400e145e62b8b295a.tar.lz
nixlib-742a50dafdb7dd9bd16fd6c400e145e62b8b295a.tar.xz
nixlib-742a50dafdb7dd9bd16fd6c400e145e62b8b295a.tar.zst
nixlib-742a50dafdb7dd9bd16fd6c400e145e62b8b295a.zip
trellis: init 2018.08.01 (#44328)
* trellis: init 2018.08.01

* trellis: move boost to buildInputs

* trellis: remove leftover debug clause
-rw-r--r--maintainers/maintainer-list.nix5
-rw-r--r--pkgs/development/tools/trellis/default.nix49
-rw-r--r--pkgs/top-level/all-packages.nix2
3 files changed, 56 insertions, 0 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index f628d3d8d71e..ec601841abb8 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -3197,6 +3197,11 @@
     email = "patrick.callahan@latitudeengineering.com";
     name = "Patrick Callahan";
   };
+  q3k = {
+    email = "q3k@q3k.org";
+    github = "q3k";
+    name = "Serge Bazanski";
+  };
   qknight = {
     email = "js@lastlog.de";
     github = "qknight";
diff --git a/pkgs/development/tools/trellis/default.nix b/pkgs/development/tools/trellis/default.nix
new file mode 100644
index 000000000000..892552559aa7
--- /dev/null
+++ b/pkgs/development/tools/trellis/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchFromGitHub, python3, cmake, boost }:
+
+let
+  trellisdb = fetchFromGitHub {
+    owner = "SymbiFlow";
+    repo  = "prjtrellis-db";
+    rev   = "06b429ddb7fd8ec1e3f2b35de2e94b4853cf2835";
+    sha256 = "07bsgw5x3gq0jcn9j4g7q9xvibvz6j2arjnvgyrxnrg30ri9q173";
+  };
+in
+stdenv.mkDerivation rec {
+  name = "trellis-${version}";
+  version = "2018.08.01";
+
+  buildInputs = [
+    (boost.override { python = python3; enablePython = true; })
+  ];
+
+  nativeBuildInputs = [
+    cmake python3
+  ];
+
+  src = fetchFromGitHub {
+    owner  = "SymbiFlow";
+    repo   = "prjtrellis";
+    rev    = "fff9532fe59bf9e38b44f029ce4a06c607a9ee78";
+    sha256 = "0ycw9fjf6428sf5x8x5szn8fha79610nf7nn8kmibgmz9868yv30";
+  };
+
+  preConfigure = ''
+    source environment.sh
+    cp -RT "${trellisdb}" database
+    cd libtrellis
+  '';
+
+  meta = {
+    description = "Documentation and tools for Lattice ECP5 FPGAs";
+    longDescription = ''
+      Project Trellis documents the Lattice ECP5 architecture
+      to enable development of open-source tools. Its goal is
+      to provide sufficient information to develop a free and
+      open Verilog to bitstream toolchain for these devices.
+    '';
+    homepage = https://github.com/SymbiFlow/prjtrellis;
+    license = stdenv.lib.licenses.isc;
+    maintainers = with stdenv.lib.maintainers; [ q3k ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 3aa9a1bb35c6..93e17b114880 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8624,6 +8624,8 @@ with pkgs;
 
   travis = callPackage ../development/tools/misc/travis { };
 
+  trellis = callPackage ../development/tools/trellis { };
+
   tweak = callPackage ../applications/editors/tweak { };
 
   uhd = callPackage ../development/tools/misc/uhd { };