#!/usr/bin/env -S nix-shell --keep miao # based on https://github.com/nix-community/nix-environments # git commit: 40d9d98bab7750bb5a1a9a3b5bcc1c91a652f3be { pkgs ? import <nixpkgs> {} }: let name = "xilinx-fhs"; h_content = builtins.toFile "h_content" '' # ${pkgs.lib.toUpper "${name} usage"} **Commands** * Show this help: `h` * Start Vitis HLS IDE: `vitis_hls` * Start Vitis HLS REPL: `vitis_hls -i` **Files** * Vitis HLS Doc: `2022.vitis_hls.ug1399.pdf` * Local command doc: `Xilinx/Vitis/2022.2/doc/eng/man/` * TODO: `ug871-vivado-high-level-synthesis-tutorial.pdf` * TODO: `ug902-vivado-high-level-synthesis.pdf` **Examples** * [Vitis HLS examples](https://github.com/Xilinx/Vitis-HLS-Introductory-Examples) * Run an example: `vitis_hls -f run_hls.tcl` ''; _h_ = pkgs.writeShellScriptBin "h" '' ${pkgs.glow}/bin/glow ${h_content} ''; in (pkgs.buildFHSUserEnv { inherit name; targetPkgs = pkgs: with pkgs; [ _h_ bash coreutils zlib lsb-release stdenv.cc.cc ncurses5 xorg.libXext xorg.libX11 xorg.libXrender xorg.libXtst xorg.libXi xorg.libXft xorg.libxcb xorg.libxcb # common requirements freetype fontconfig glib gtk2 gtk3 # vitis_hls gcc needs glibc.dev # to compile some xilinx examples opencl-clhpp ocl-icd opencl-headers # from installLibs.sh graphviz (lib.hiPrio gcc) unzip nettools ]; multiPkgs = null; profile = '' export LC_NUMERIC="en_US.UTF-8" source ~/Xilinx/Vitis_HLS/*/settings64.sh h ''; }).env