diff options
author | Guillaume Girol <symphorien@users.noreply.github.com> | 2021-09-22 18:35:38 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-22 18:35:38 +0000 |
commit | 4bc83aaffa715e2bc34842c9516b68debff03cd6 (patch) | |
tree | 9a8a5e36c7e483a018fe5884855f73c2e2d4965c /pkgs/development/nim-packages/build-nim-package/default.nix | |
parent | f9fc7ee26e42f4295ffb38e1749d53e3d317a5df (diff) | |
parent | bea75890b777e299a6b0709c33686bb69d21dbd4 (diff) | |
download | nixlib-4bc83aaffa715e2bc34842c9516b68debff03cd6.tar nixlib-4bc83aaffa715e2bc34842c9516b68debff03cd6.tar.gz nixlib-4bc83aaffa715e2bc34842c9516b68debff03cd6.tar.bz2 nixlib-4bc83aaffa715e2bc34842c9516b68debff03cd6.tar.lz nixlib-4bc83aaffa715e2bc34842c9516b68debff03cd6.tar.xz nixlib-4bc83aaffa715e2bc34842c9516b68debff03cd6.tar.zst nixlib-4bc83aaffa715e2bc34842c9516b68debff03cd6.zip |
Merge pull request #136489 from ehmry/nimPackages
nimpackages / buildNimPackage
Diffstat (limited to 'pkgs/development/nim-packages/build-nim-package/default.nix')
-rw-r--r-- | pkgs/development/nim-packages/build-nim-package/default.nix | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/pkgs/development/nim-packages/build-nim-package/default.nix b/pkgs/development/nim-packages/build-nim-package/default.nix new file mode 100644 index 000000000000..6c7aafd22c81 --- /dev/null +++ b/pkgs/development/nim-packages/build-nim-package/default.nix @@ -0,0 +1,43 @@ +{ lib, stdenv, nim, nim_builder }: + +{ strictDeps ? true, nativeBuildInputs ? [ ], configurePhase ? null +, buildPhase ? null, checkPhase ? null, installPhase ? null, meta ? { }, ... +}@attrs: + +stdenv.mkDerivation (attrs // { + inherit strictDeps; + nativeBuildInputs = [ nim nim_builder ] ++ nativeBuildInputs; + + configurePhase = if isNull configurePhase then '' + runHook preConfigure + find $NIX_BUILD_TOP -name .attrs.json + nim_builder --phase:configure + runHook postConfigure + '' else + buildPhase; + + buildPhase = if isNull buildPhase then '' + runHook preBuild + nim_builder --phase:build + runHook postBuild + '' else + buildPhase; + + checkPhase = if isNull checkPhase then '' + runHook preCheck + nim_builder --phase:check + runHook postCheck + '' else + checkPhase; + + installPhase = if isNull installPhase then '' + runHook preInstall + nim_builder --phase:install + runHook postInstall + '' else + installPhase; + + meta = meta // { + maintainers = (meta.maintainers or [ ]) ++ [ lib.maintainers.ehmry ]; + }; +}) |