From 65ef7b3f80ab432dfdd0abee727e2986a2f4a350 Mon Sep 17 00:00:00 2001 From: SharzyL Date: Mon, 6 Feb 2023 01:31:54 +0800 Subject: [PATCH 1/2] maintainers: add sharzy --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 82916749f9a4..e5e020de80fe 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -13338,6 +13338,12 @@ githubId = 16765155; name = "Shardul Baral"; }; + sharzy = { + email = "me@sharzy.in"; + github = "SharzyL"; + githubId = 46294732; + name = "Sharzy"; + }; shawndellysse = { email = "sdellysse@gmail.com"; github = "sdellysse"; From 64f21e162080aac06a69e7fe4c123329927ac2fe Mon Sep 17 00:00:00 2001 From: SharzyL Date: Mon, 6 Feb 2023 01:32:18 +0800 Subject: [PATCH 2/2] circt: init at 1.29.0 --- pkgs/development/compilers/circt/default.nix | 63 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 65 insertions(+) create mode 100644 pkgs/development/compilers/circt/default.nix diff --git a/pkgs/development/compilers/circt/default.nix b/pkgs/development/compilers/circt/default.nix new file mode 100644 index 000000000000..7c986ebfca4a --- /dev/null +++ b/pkgs/development/compilers/circt/default.nix @@ -0,0 +1,63 @@ +{ stdenv +, lib +, cmake +, coreutils +, python3 +, git +, fetchFromGitHub +, ninja +}: + +let + pythonEnv = python3.withPackages (ps: [ ps.psutil ]); +in +stdenv.mkDerivation rec { + pname = "circt"; + version = "1.29.0"; + src = fetchFromGitHub { + owner = "llvm"; + repo = "circt"; + rev = "firtool-${version}"; + sha256 = "sha256-HsXwh98RZuXvK/KkZ2NAGwWNLxUAQVj+WKzZXd4C4Is="; + fetchSubmodules = true; + }; + + requiredSystemFeatures = [ "big-parallel" ]; + + nativeBuildInputs = [ cmake ninja git pythonEnv ]; + + cmakeDir = "../llvm/llvm"; + cmakeFlags = [ + "-DLLVM_ENABLE_BINDINGS=OFF" + "-DLLVM_ENABLE_OCAMLDOC=OFF" + "-DLLVM_BUILD_EXAMPLES=OFF" + "-DLLVM_OPTIMIZED_TABLEGEN=ON" + "-DLLVM_ENABLE_PROJECTS=mlir" + "-DLLVM_EXTERNAL_PROJECTS=circt" + "-DLLVM_EXTERNAL_CIRCT_SOURCE_DIR=.." + "-DCIRCT_LLHD_SIM_ENABLED=OFF" + ]; + + preConfigure = '' + substituteInPlace test/circt-reduce/test/annotation-remover.mlir --replace "/usr/bin/env" "${coreutils}/bin/env" + ''; + + installPhase = '' + runHook preInstall + mkdir -p $out/bin + mv bin/{{fir,hls}tool,circt-{as,dis,lsp-server,opt,reduce,translate}} $out/bin + runHook postInstall + ''; + + doCheck = true; + checkTarget = "check-circt check-circt-integration"; + + meta = { + description = "Circuit IR compilers and tools"; + homepage = "https://circt.org/"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ sharzy ]; + platforms = lib.platforms.all; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 29b02a714f17..75a20360920c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -390,6 +390,8 @@ with pkgs; chrysalis = callPackage ../applications/misc/chrysalis { }; + circt = callPackage ../development/compilers/circt { }; + classicube = callPackage ../games/classicube { }; clj-kondo = callPackage ../development/tools/clj-kondo { };