summaryrefslogtreecommitdiffstats
path: root/derivation.nix
diff options
context:
space:
mode:
authorMinijackson <minijackson@riseup.net>2020-01-12 13:23:58 +0100
committerMinijackson <minijackson@riseup.net>2020-01-12 13:23:58 +0100
commit19a0d9c2724695c9e05fe0b85bbbdf03ebeeec5b (patch)
treef030067e06c4565f7110011acc823ef25a6f89bf /derivation.nix
parenta2776c015b6069e2795cc896bdb918be811296a7 (diff)
downloadposeidoc-19a0d9c2724695c9e05fe0b85bbbdf03ebeeec5b.tar.gz
poseidoc-19a0d9c2724695c9e05fe0b85bbbdf03ebeeec5b.zip
nix: add proper derivation
Diffstat (limited to 'derivation.nix')
-rw-r--r--derivation.nix27
1 files changed, 27 insertions, 0 deletions
diff --git a/derivation.nix b/derivation.nix
new file mode 100644
index 0000000..e877c04
--- /dev/null
+++ b/derivation.nix
@@ -0,0 +1,27 @@
1{ stdenv, rustPlatform, llvm, libclang, clang, runtimeShell }:
2
3rustPlatform.buildRustPackage {
4 pname = "poseidoc";
5 version = "0.1";
6
7 src = ./.;
8
9 buildInputs = [ llvm libclang ];
10 LIBCLANG_PATH = "${libclang}/lib";
11
12 cargoSha256 = "0hrqzfzirq8xx32l969367xznlr6wf606xnwkqzknxdc2lxs7k40";
13
14 postFixup = ''
15 shell=${runtimeShell}
16 wrapped='.poseidoc-wrapped'
17 libc_includes='-idirafter "${clang.libc_dev}/include"'
18 cxx_stdlib_flags='$(echo -n "${clang.default_cxx_stdlib_compile}")'
19 resource_dir_flags='-resource-dir=${clang}/resource-root'
20
21 export shell wrapped libc_includes cxx_stdlib_flags resource_dir_flags
22
23 mv $out/bin/poseidoc $out/bin/$wrapped
24 substituteAll ${./nix-wrapper.sh} $out/bin/poseidoc
25 chmod --reference=$out/bin/$wrapped $out/bin/poseidoc
26 '';
27}