about summary refs log tree commit diff
path: root/pkgs/misc/gxemul/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/misc/gxemul/default.nix')
-rw-r--r--pkgs/misc/gxemul/default.nix34
1 files changed, 34 insertions, 0 deletions
diff --git a/pkgs/misc/gxemul/default.nix b/pkgs/misc/gxemul/default.nix
new file mode 100644
index 000000000000..e7fdc96d32ed
--- /dev/null
+++ b/pkgs/misc/gxemul/default.nix
@@ -0,0 +1,34 @@
+args: with args.lib; with args;
+let
+  name="gxemul-0.4.6";
+  co = chooseOptionsByFlags {
+    inherit args;
+    flagDescr = {
+      mandatory = { install = "ensureDir \$out/bin; cp gxemul \$out/bin;"; };
+      doc   = { install = "ensureDir \$out/share/${name}; cp -r doc \$out/share/${name};"; implies = "man"; };
+      demos = { install = "ensureDir \$out/share/${name}; cp -r demos \$out/share/${name};"; };
+      man   = { install = "cp -r ./man \$out/;";};
+    };
+    optionals = ["libX11"];
+    defaultFlags = [ "demos" "doc" ];
+  };
+in args.stdenv.mkDerivation {
+
+  inherit name;
+  inherit (co) /* flags */ buildInputs configureFlags;
+
+  src = fetchurl {
+    url = http://gavare.se/gxemul/src/gxemul-0.4.6.tar.gz;
+    sha256 = "0hf3gi6hfd2qr5090zimfiddcjgank2q6m7dfsr81wwpxfbhb2z3";
+  };
+
+  configurePhase="./configure";
+
+  installPhase = concatStrings ( catAttrs "install" co.flatOptions );
+
+  meta = {
+    license = "BSD";
+    description = "A Machine Emulator, Mainly emulates MIPS, but supports other CPU type";
+    homepage = http://gavare.se/gxemul/;
+  };
+}