Author: sandervanderburg Date: 2010-06-15 11:16:35 +0000 (Tue, 15 Jun 2010) New Revision: 22272
You can view the changes in this commit at: https://svn.nixos.org/viewvc/nix?rev=22272&view=rev Added: nixpkgs/trunk/pkgs/build-support/dotnetenv/ nixpkgs/trunk/pkgs/build-support/dotnetenv/buildSolution.nix nixpkgs/trunk/pkgs/build-support/dotnetenv/default.nix nixpkgs/trunk/pkgs/development/libraries/dotnetfx35/ nixpkgs/trunk/pkgs/development/libraries/dotnetfx35/default.nix Modified: nixpkgs/trunk/pkgs/top-level/all-packages.nix Log: Commited my experimental Visual C# build function. Currently, it should only be used by brave people Changes: Added: nixpkgs/trunk/pkgs/build-support/dotnetenv/buildSolution.nix =================================================================== --- nixpkgs/trunk/pkgs/build-support/dotnetenv/buildSolution.nix (rev 0) +++ nixpkgs/trunk/pkgs/build-support/dotnetenv/buildSolution.nix 2010-06-15 11:16:35 UTC (rev 22272) @@ -0,0 +1,61 @@ +{stdenv, dotnetfx}: +{ name +, src +, baseDir ? "." +, slnFile +, targets ? "ReBuild" +, verbosity ? "detailed" +, options ? "/p:Configuration=Debug;Platform=Win32" +, assemblyInputs ? [] +, runtimeAssemblies ? [] +, preBuild ? "" +}: + +stdenv.mkDerivation { + inherit name src preBuild; + + buildInputs = [ dotnetfx ]; + preConfigure = '' + cd ${baseDir} + ''; + + installPhase = '' + for i in ${toString assemblyInputs} + do + windowsPath=$(cygpath --windows $i) + echo "Using assembly path: $windowsPath" + + if [ "$assemblySearchPaths" = "" ] + then + assemblySearchPaths="$windowsPath" + else + assemblySearchPaths="$assemblySearchPaths;$windowsPath" + fi + done + + echo "Assembly search paths are: $assemblySearchPaths" + + if [ "$assemblySearchPaths" != "" ] + then + echo "Using assembly search paths args: $assemblySearchPathsArg" + export AssemblySearchPaths=$assemblySearchPaths + fi + + ensureDir $out + MSBuild.exe ${slnFile} /nologo /t:${targets} /p:IntermediateOutputPath=$(cygpath --windows $out)\\ /p:OutputPath=$(cygpath --windows $out)\\ /verbosity:${verbosity} ${options} + + # Create references to runtime dependencies + # !!! Should be more efficient (e.g. symlinking) + + for i in ${toString runtimeAssemblies} + do + cd $i + + for j in $(find . -type f) + do + mkdir -p $out/$(dirname $j) + cp $j $out/$(dirname $j) + done + done + ''; +} Added: nixpkgs/trunk/pkgs/build-support/dotnetenv/default.nix =================================================================== --- nixpkgs/trunk/pkgs/build-support/dotnetenv/default.nix (rev 0) +++ nixpkgs/trunk/pkgs/build-support/dotnetenv/default.nix 2010-06-15 11:16:35 UTC (rev 22272) @@ -0,0 +1,10 @@ +{stdenv, dotnetfx}: + +{ + buildSolution = import ./buildSolution.nix { + inherit stdenv; + dotnetfx = dotnetfx.pkg; + }; + + inherit (dotnetfx) assembly20Path wcfPath referenceAssembly30Path referenceAssembly35Path; +} Added: nixpkgs/trunk/pkgs/development/libraries/dotnetfx35/default.nix =================================================================== --- nixpkgs/trunk/pkgs/development/libraries/dotnetfx35/default.nix (rev 0) +++ nixpkgs/trunk/pkgs/development/libraries/dotnetfx35/default.nix 2010-06-15 11:16:35 UTC (rev 22272) @@ -0,0 +1,23 @@ +{stdenv}: + +let + windir = "/cygdrive/c/WINDOWS"; +in +{ + pkg = stdenv.mkDerivation { + name = "dotnetfx-3.5"; + src = "${windir}/Microsoft.NET/Framework/v3.5"; + buildCommand = '' + ensureDir $out/bin + ln -s $src/MSBuild.exe $out/bin + ''; + }; + + assembly20Path = "/cygdrive/c/WINDOWS/Microsoft.NET/Framework/v2.0.50727"; + + wcfPath = "/cygdrive/c/WINDOWS/Microsoft.NET/Framework/v3.0/WINDOW~1"; + + referenceAssembly30Path = "/cygdrive/c/PROGRA~1/REFERE~1/Microsoft/Framework/v3.0"; + + referenceAssembly35Path = "/cygdrive/c/PROGRA~1/REFERE~1/Microsoft/Framework/v3.5"; +} Modified: nixpkgs/trunk/pkgs/top-level/all-packages.nix =================================================================== --- nixpkgs/trunk/pkgs/top-level/all-packages.nix 2010-06-15 09:14:16 UTC (rev 22271) +++ nixpkgs/trunk/pkgs/top-level/all-packages.nix 2010-06-15 11:16:35 UTC (rev 22272) @@ -230,6 +230,11 @@ inherit fetchurl stdenv; }; + dotnetenv = import ../build-support/dotnetenv { + inherit stdenv; + dotnetfx = dotnetfx35; + }; + fetchbzr = import ../build-support/fetchbzr { inherit stdenv bazaar; }; @@ -653,6 +658,10 @@ inherit builderDefs; }; + dotnetfx35 = import ../development/libraries/dotnetfx35 { + inherit stdenv; + }; + dropbear = makeOverridable (import ../tools/networking/dropbear) { inherit fetchurl stdenv; enableStatic = true; _______________________________________________ nix-commits mailing list [email protected] http://mail.cs.uu.nl/mailman/listinfo/nix-commits
