summary refs log tree commit diff
path: root/pkgs/misc/emulators/gxemul/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/misc/emulators/gxemul/default.nix')
-rw-r--r--pkgs/misc/emulators/gxemul/default.nix49
1 files changed, 49 insertions, 0 deletions
diff --git a/pkgs/misc/emulators/gxemul/default.nix b/pkgs/misc/emulators/gxemul/default.nix
new file mode 100644
index 00000000000..1e4827942b9
--- /dev/null
+++ b/pkgs/misc/emulators/gxemul/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, composableDerivation, fetchurl }:
+
+let edf = composableDerivation.edf;
+    version = "0.6.0.1";
+    name = "gxemul-${version}";
+in
+
+composableDerivation.composableDerivation {} {
+  inherit name;
+
+  src = fetchurl {
+    url = "http://gavare.se/gxemul/src/${name}.tar.gz";
+    sha256 = "1afd9l0igyv7qgc0pn3rkdgrl5d0ywlyib0qhg4li23zilyq5407";
+  };
+
+  configurePhase = "./configure";
+
+  installPhase = "mkdir -p \$out/bin; cp gxemul \$out/bin;";
+
+  mergeAttrBy = { installPhase = a : b : "${a}\n${b}"; };
+
+  flags = {
+    doc   = { installPhase = "mkdir -p \$out/share/${name}; cp -r doc \$out/share/${name};"; implies = "man"; };
+    demos = { installPhase = "mkdir -p \$out/share/${name}; cp -r demos \$out/share/${name};"; };
+    man   = { installPhase = "cp -r ./man \$out/;";};
+  };
+
+  cfg = {
+    docSupport = true;
+    demosSupport = true;
+    manSupport = true;
+  };
+
+  meta = {
+    license = stdenv.lib.licenses.bsd3;
+    description = "Gavare's experimental emulator";
+    longDescription = ''
+      GXemul is a framework for full-system computer architecture
+      emulation. Several real machines have been implemented within the
+      framework, consisting of processors (ARM, MIPS, Motorola 88K,
+      PowerPC, and SuperH) and surrounding hardware components such as
+      framebuffers, interrupt controllers, busses, disk controllers,
+      and serial controllers. The emulation is working well enough to
+      allow several unmodified "guest" operating systems to run.
+    '';
+    homepage = http://gxemul.sourceforge.net/;
+  };
+
+}