diff options
author | Dmitry Kalinkin <dmitry.kalinkin@gmail.com> | 2021-01-11 18:49:31 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-11 18:49:31 -0500 |
commit | 02828f91f15668ce6a757b6ef1d2d8430a403194 (patch) | |
tree | d04657639266456654323155ab07ec9d13c9a86b /pkgs/data | |
parent | f0a7fce6ee72e574c2406bf1cfd1741c8d2cd07e (diff) | |
parent | ccdf7431bb07bf9affb14b70b4fd59421ba83715 (diff) |
Merge pull request #105709 from CajuM/symbiflow
Add Symbiflow + prjxray for OSS Xilinx FPGA development
Diffstat (limited to 'pkgs/data')
-rw-r--r-- | pkgs/data/misc/prjxray-db/default.nix | 43 | ||||
-rw-r--r-- | pkgs/data/misc/symbiflow-arch-defs/default.nix | 47 |
2 files changed, 90 insertions, 0 deletions
diff --git a/pkgs/data/misc/prjxray-db/default.nix b/pkgs/data/misc/prjxray-db/default.nix new file mode 100644 index 000000000000..d498fdb1cc8b --- /dev/null +++ b/pkgs/data/misc/prjxray-db/default.nix @@ -0,0 +1,43 @@ +{ stdenv +, fetchFromGitHub +}: + +stdenv.mkDerivation rec { + pname = "prjxray-db"; + version = "0.0-0232-g303a61d"; + + src = fetchFromGitHub { + owner = "SymbiFlow"; + repo = "prjxray-db"; + rev = "303a61d8bc552f7a533b91b17448c59e908aa391"; + sha256 = "0r75xig16dbgh3nfygggir0a160x52y766h7hd9xcib9m88jixb2"; + }; + + enableParallelBuilding = true; + + installPhase = '' + runHook preInstall + + DBDIR="$out/share/symbiflow/prjxray-db/" + DB_CONFIG="$out/bin/prjxray-config" + + mkdir -p $DBDIR $out/bin + + for device in artix7 kintex7 zynq7; do + cp -r $src/$device $DBDIR + done + + echo -e "#!/bin/sh\n\necho $DBDIR" > $DB_CONFIG + chmod +x $DB_CONFIG + + runHook postInstall + ''; + + meta = with stdenv.lib; { + description = "Project X-Ray - Xilinx Series 7 Bitstream Documentation"; + homepage = "https://github.com/SymbiFlow/prjxray-db"; + license = licenses.cc0; + maintainers = with maintainers; [ mcaju ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/data/misc/symbiflow-arch-defs/default.nix b/pkgs/data/misc/symbiflow-arch-defs/default.nix new file mode 100644 index 000000000000..89549da85dcb --- /dev/null +++ b/pkgs/data/misc/symbiflow-arch-defs/default.nix @@ -0,0 +1,47 @@ +{ stdenv +, fetchurl +, autoPatchelfHook +, python3Packages +, archs ? [ "xc7a100t" "xc7a50t" "xc7z010" "xc7z020" ] +}: + +stdenv.mkDerivation rec { + pname = "symbiflow-arch-defs"; + version = "20200914-111752-g05d68df0"; + + src = fetchurl { + url = "https://storage.googleapis.com/symbiflow-arch-defs/artifacts/prod/foss-fpga-tools/symbiflow-arch-defs/continuous/install/66/20200914-111752/symbiflow-arch-defs-install-05d68df0.tar.xz"; + sha256 = "1gmynybh8n33ag521w17c2kd16n834hqc6d8hi2pfs5kg1jl1a74"; + }; + + sourceRoot = "."; + + propagatedBuildInputs = [ + python3Packages.lxml + python3Packages.python-constraint + ]; + + installPhase = '' + mkdir -p $out/bin + cp -r bin/{symbiflow_*,vpr_common,python} $out/bin + for script in $out/bin/symbiflow_*; do + substituteInPlace $script --replace '/env' '/symbiflow_env' + done + cp bin/env $out/bin/symbiflow_env + + mkdir -p $out/share/symbiflow/arch + cp -r share/symbiflow/{scripts,techmaps} $out/share/symbiflow/ + + for arch in ${builtins.concatStringsSep " " archs}; do + cp -r share/symbiflow/arch/"$arch"_test* $out/share/symbiflow/arch/ + done + ''; + + meta = with stdenv.lib; { + description = "Project X-Ray - Xilinx Series 7 Bitstream Documentation"; + homepage = "https://github.com/SymbiFlow/symbiflow-arch-defs"; + hydraPlatforms = []; + license = licenses.isc; + platforms = platforms.all; + }; +} |