summary refs log tree commit diff
path: root/pkgs/development/compilers/coreclr
diff options
context:
space:
mode:
authorJoerg Thalheim <joerg@thalheim.io>2017-10-06 14:52:08 +0100
committerRoman Kuznetsov <roman@kuznero.com>2017-10-25 07:55:32 +0200
commite7fc83f1a6259adc4728cb5d487b8265af42380d (patch)
tree73f9236313d88b291233b01c7924c5be7ce96001 /pkgs/development/compilers/coreclr
parent856995d8cacd687f3dcf952d8f12107ca87d8155 (diff)
downloadnixlib-e7fc83f1a6259adc4728cb5d487b8265af42380d.tar
nixlib-e7fc83f1a6259adc4728cb5d487b8265af42380d.tar.gz
nixlib-e7fc83f1a6259adc4728cb5d487b8265af42380d.tar.bz2
nixlib-e7fc83f1a6259adc4728cb5d487b8265af42380d.tar.lz
nixlib-e7fc83f1a6259adc4728cb5d487b8265af42380d.tar.xz
nixlib-e7fc83f1a6259adc4728cb5d487b8265af42380d.tar.zst
nixlib-e7fc83f1a6259adc4728cb5d487b8265af42380d.zip
coreclr: cleanup build
Diffstat (limited to 'pkgs/development/compilers/coreclr')
-rw-r--r--pkgs/development/compilers/coreclr/default.nix47
1 files changed, 18 insertions, 29 deletions
diff --git a/pkgs/development/compilers/coreclr/default.nix b/pkgs/development/compilers/coreclr/default.nix
index 6429a51ed4dd..b4ea20460854 100644
--- a/pkgs/development/compilers/coreclr/default.nix
+++ b/pkgs/development/compilers/coreclr/default.nix
@@ -13,7 +13,6 @@
 , liburcu
 , libuuid
 , libkrb5
-, ed
 , debug ? false
 }:
 
@@ -43,52 +42,42 @@ stdenv.mkDerivation rec {
     liburcu
     libuuid
     libkrb5
-    ed
   ];
 
   configurePhase = ''
-    patchShebangs build.sh
-    patchShebangs src/pal/tools/gen-buildsys-clang.sh
+    # override to avoid cmake running
+    patchShebangs .
   '';
 
   BuildArch = if stdenv.is64bit then "x64" else "x86";
   BuildType = if debug then "Debug" else "Release";
 
-  hardeningDisable = [ "strictoverflow" "format" ];
-  NIX_CFLAGS_COMPILE = [
-    "-Wno-error=unused-result" "-Wno-error=delete-non-virtual-dtor"
-    "-Wno-error=null-dereference"
+  hardeningDisable = [
+    "strictoverflow"
+    "format"
   ];
 
   buildPhase = ''
-    ./build.sh $BuildArch $BuildType
-
-    # Try to make some sensible hierarchy out of the output
-    pushd bin/Product/Linux.$BuildArch.$BuildType
-    mkdir lib2
-    mv *.so *.so.dbg lib2
-    mv bin lib3
-    mkdir lib4
-    mv Loader lib4
-    mv inc include
-    mv gcinfo include
-    mkdir bin
-    mkdir -p share/doc
-    mv sosdocsunix.txt share/doc
-    for f in * ; do test -f $f && mv -v $f bin; done
-    popd
+    runHook preBuild
+    ./build.sh $BuildArch Release
+    runHook postBuild
   '';
 
   installPhase = ''
-    mkdir -p $out
-    cp -rv bin/Product/Linux.$BuildArch.$BuildType/* $out
+    runHook preInstall
+    mkdir -p $out/share/dotnet $out/bin
+    cp -r bin/Product/Linux.$BuildArch.$BuildType/* $out/share/dotnet
+    for cmd in coreconsole corerun createdump crossgen ilasm ildasm mcs superpmi; do
+      ln -s $out/share/dotnet/$cmd $out/bin/$cmd
+    done
+    runHook postInstall
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://dotnet.github.io/core/;
     description = ".NET is a general purpose development platform";
     platforms = [ "x86_64-linux" ];
-    maintainers = with stdenv.lib.maintainers; [ obadz ];
-    license = stdenv.lib.licenses.mit;
+    maintainers = with maintainers; [ obadz ];
+    license = licenses.mit;
   };
 }