summaryrefslogtreecommitdiff
path: root/modules/lang/.nix/derivation.nix
diff options
context:
space:
mode:
authorClaudius 'keldu' Holeksa <mail@keldu.de>2024-09-12 17:30:21 +0200
committerClaudius 'keldu' Holeksa <mail@keldu.de>2024-09-12 17:30:21 +0200
commit18bf2f08ee86fd1ed0a663d256e1c7d3142827d7 (patch)
treea8c0aca4dc1439ccfc6b746cafbb087f84a3e9bd /modules/lang/.nix/derivation.nix
parent2e3efd182c00eb12305644d855a2f19594a0627d (diff)
lang module separating from tools
Diffstat (limited to 'modules/lang/.nix/derivation.nix')
-rw-r--r--modules/lang/.nix/derivation.nix45
1 files changed, 45 insertions, 0 deletions
diff --git a/modules/lang/.nix/derivation.nix b/modules/lang/.nix/derivation.nix
new file mode 100644
index 0000000..54ebb5e
--- /dev/null
+++ b/modules/lang/.nix/derivation.nix
@@ -0,0 +1,45 @@
+{ lib
+, stdenv
+, scons
+, clang-tools
+, version
+, build_examples ? false
+, forstio
+}:
+
+stdenv.mkDerivation {
+ pname = "forstio-tools";
+ inherit version;
+ src = ./..;
+
+ enableParallelBuilding = true;
+
+ nativeBuildInputs = [
+ scons
+ clang-tools
+ ];
+
+ buildInputs = [
+ forstio.core
+ forstio.async
+ forstio.io
+ forstio.codec
+ forstio.codec-json
+ ];
+
+ doCheck = true;
+ checkPhase = ''
+ scons test
+ ./bin/tests
+ '';
+
+ buildPhase = ''
+ scons build_examples=${build_examples}
+ '';
+
+ installPhase = ''
+ scons prefix=$out build_examples=${build_examples} install
+ '';
+
+ outputs = ["out" "dev"];
+}