summary refs log tree commit diff
path: root/pkgs/build-support/vm/test.nix
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2008-04-29 12:32:17 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2008-04-29 12:32:17 +0000
commit03f51200c2c7dec532e892e1d64f8b1d10c543cc (patch)
tree4b03032493ad8aa658f72452ce09ca79782f888f /pkgs/build-support/vm/test.nix
parent1d06f6f78e11bf99c469583751aa425df2accb7d (diff)
downloadnixpkgs-03f51200c2c7dec532e892e1d64f8b1d10c543cc.tar
nixpkgs-03f51200c2c7dec532e892e1d64f8b1d10c543cc.tar.gz
nixpkgs-03f51200c2c7dec532e892e1d64f8b1d10c543cc.tar.bz2
nixpkgs-03f51200c2c7dec532e892e1d64f8b1d10c543cc.tar.lz
nixpkgs-03f51200c2c7dec532e892e1d64f8b1d10c543cc.tar.xz
nixpkgs-03f51200c2c7dec532e892e1d64f8b1d10c543cc.tar.zst
nixpkgs-03f51200c2c7dec532e892e1d64f8b1d10c543cc.zip
* A function `runInGenericVM' that performs a build in an arbitrary VM
  image (i.e., it can contain any OS that obeys the interface
  documented in the comment).  See `testFreeBSD' for an example that
  performs a build of the ATerm library on FreeBSD 7.0.  This will be
  used in the build farm to perform builds for platforms for which we
  cannot synthesize VM images automatically.

svn path=/nixpkgs/trunk/; revision=11753
Diffstat (limited to 'pkgs/build-support/vm/test.nix')
-rw-r--r--pkgs/build-support/vm/test.nix35
1 files changed, 34 insertions, 1 deletions
diff --git a/pkgs/build-support/vm/test.nix b/pkgs/build-support/vm/test.nix
index b6c3d85d92a..2dce01195b7 100644
--- a/pkgs/build-support/vm/test.nix
+++ b/pkgs/build-support/vm/test.nix
@@ -31,7 +31,40 @@ rec {
       dpkg-query --list
     '';
   });
-  
 
+
+  testFreeBSD = runInGenericVM {
+    name = "aterm-freebsd";
+    src = aterm242fixes.src;
+    diskImage = "/tmp/freebsd-7.0.qcow";
+
+    postPreVM = ''
+      cp $src aterm.tar.bz2
+    '';
+
+    buildCommand = ''
+      set > /tmp/my-env
+      . /mnt/saved-env
+      . /tmp/my-env
+      unset TEMP
+      unset TEMPDIR
+      unset TMP
+      unset TMPDIR
+
+      set -x
+
+      echo "Hello World!!!"
+      mkdir /mnt/out
+      echo "bar" > /mnt/out/foo
+
+      cd /tmp
+      tar xvf /mnt/aterm.tar.bz2
+      cd aterm-*
+      ./configure --prefix=/mnt/out
+      make
+      make install
+    '';
+  };
   
+
 }
\ No newline at end of file