diff options
Diffstat (limited to 'pkgs/development/tools/trellis/default.nix')
-rw-r--r-- | pkgs/development/tools/trellis/default.nix | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/pkgs/development/tools/trellis/default.nix b/pkgs/development/tools/trellis/default.nix new file mode 100644 index 00000000000..892552559aa --- /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; + }; +} |