summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/dotnetenv/build-solution.nix18
-rw-r--r--pkgs/build-support/dotnetenv/wrapper.nix15
2 files changed, 32 insertions, 1 deletions
diff --git a/pkgs/build-support/dotnetenv/build-solution.nix b/pkgs/build-support/dotnetenv/build-solution.nix
index 8640cf0014f..07f1f89c67c 100644
--- a/pkgs/build-support/dotnetenv/build-solution.nix
+++ b/pkgs/build-support/dotnetenv/build-solution.nix
@@ -33,7 +33,21 @@ stdenv.mkDerivation {
     ${preBuild}
   '';
   
-  installPhase = ''        
+  installPhase = ''
+    addDeps()
+    {
+	if [ -f $1/nix-support/dotnet-assemblies ]
+	then
+	    for i in $(cat $1/nix-support/dotnet-assemblies)
+	    do
+		windowsPath=$(cygpath --windows $i)
+		assemblySearchPaths="$assemblySearchPaths;$windowsPath"
+		
+		addDeps $i
+	    done
+	fi
+    }
+    
     for i in ${toString assemblyInputs}
     do
 	windowsPath=$(cygpath --windows $i) 
@@ -45,6 +59,8 @@ stdenv.mkDerivation {
 	else
 	    assemblySearchPaths="$assemblySearchPaths;$windowsPath"
 	fi
+	
+	addDeps $i
     done
       
     echo "Assembly search paths are: $assemblySearchPaths"
diff --git a/pkgs/build-support/dotnetenv/wrapper.nix b/pkgs/build-support/dotnetenv/wrapper.nix
index 660537e2fa8..4b07fc27dcb 100644
--- a/pkgs/build-support/dotnetenv/wrapper.nix
+++ b/pkgs/build-support/dotnetenv/wrapper.nix
@@ -28,12 +28,27 @@ dotnetenv.buildSolution {
   slnFile = "Wrapper.sln";
   assemblyInputs = [ application ];
   preBuild = ''
+    addRuntimeDeps()
+    {
+	if [ -f $1/nix-support/dotnet-assemblies ]
+	then
+	    for i in $(cat $1/nix-support/dotnet-assemblies)
+	    do
+		windowsPath=$(cygpath --windows $i | sed 's|\\|\\\\|g')
+		assemblySearchArray="$assemblySearchArray @\"$windowsPath\""
+		
+		addRuntimeDeps $i
+	    done
+	fi
+    }
+    
     export exePath=$(cygpath --windows $(find ${application} -name \*.exe) | sed 's|\\|\\\\|g')
     
     # Generate assemblySearchPaths string array contents
     for path in ${toString assemblyInputs}
     do
         assemblySearchArray="$assemblySearchArray @\"$(cygpath --windows $path | sed 's|\\|\\\\|g')\", "
+	addRuntimeDeps $path
     done
     
     sed -e "s|@ROOTNAMESPACE@|${namespace}Wrapper|" \