summary refs log tree commit diff
diff options
context:
space:
mode:
authorJörg Thalheim <Mic92@users.noreply.github.com>2017-08-26 08:16:30 +0100
committerGitHub <noreply@github.com>2017-08-26 08:16:30 +0100
commit9ece4aad1072d47221e017fd6eab35f1f174d713 (patch)
tree1c12383a0532bfb9977f512defcf80ac2862a6e5
parenta400480f8fce03c4968f9fcd5d293903366c60af (diff)
parent58ed023bc63a30d758116113891cf3fb3d1946a9 (diff)
downloadnixpkgs-9ece4aad1072d47221e017fd6eab35f1f174d713.tar
nixpkgs-9ece4aad1072d47221e017fd6eab35f1f174d713.tar.gz
nixpkgs-9ece4aad1072d47221e017fd6eab35f1f174d713.tar.bz2
nixpkgs-9ece4aad1072d47221e017fd6eab35f1f174d713.tar.lz
nixpkgs-9ece4aad1072d47221e017fd6eab35f1f174d713.tar.xz
nixpkgs-9ece4aad1072d47221e017fd6eab35f1f174d713.tar.zst
nixpkgs-9ece4aad1072d47221e017fd6eab35f1f174d713.zip
Merge pull request #28407 from ThomasMader/dtools
dtools: rdmd -> dtools
-rw-r--r--pkgs/development/compilers/rdmd/default.nix28
-rw-r--r--pkgs/development/tools/dtools/default.nix54
-rw-r--r--pkgs/top-level/aliases.nix1
-rw-r--r--pkgs/top-level/all-packages.nix4
4 files changed, 57 insertions, 30 deletions
diff --git a/pkgs/development/compilers/rdmd/default.nix b/pkgs/development/compilers/rdmd/default.nix
deleted file mode 100644
index 38473897698..00000000000
--- a/pkgs/development/compilers/rdmd/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{stdenv, lib, fetchurl, dmd}:
-
-stdenv.mkDerivation {
-  name = "rdmd-2.067.0";
-
-  buildInputs = [ dmd ];
-
-  src = fetchurl {
-    url = "https://github.com/D-Programming-Language/tools/archive/v2.067.0.tar.gz";
-    sha256 = "2702ecda0427c675084d9b688449bc8c8392fd73e30257d79e2488640d5a9982";
-  };
-
-  buildPhase = ''
-    dmd rdmd.d
-  '';
-
-  installPhase = ''
-    mkdir -p $out/bin
-    cp rdmd $out/bin/
-	'';
-
-  meta = {
-    description = "Wrapper for D language compiler";
-    homepage = http://dlang.org/rdmd.html;
-    license = lib.licenses.boost;
-    platforms = stdenv.lib.platforms.unix;
-  };
-}
diff --git a/pkgs/development/tools/dtools/default.nix b/pkgs/development/tools/dtools/default.nix
new file mode 100644
index 00000000000..28d0c57f2e3
--- /dev/null
+++ b/pkgs/development/tools/dtools/default.nix
@@ -0,0 +1,54 @@
+{stdenv, lib, fetchFromGitHub, dmd, curl}:
+
+stdenv.mkDerivation rec {
+  name = "dtools-${version}";
+  version = "2.075.1";
+
+  src = fetchFromGitHub {
+    owner = "dlang";
+    repo = "tools";
+    rev = "v${version}";
+    sha256 = "0lxn400s9las9hq6h9vj4mis2jr662k2yw0zcrvqcm1yg9pd245d";
+  };
+
+  postPatch = ''
+      substituteInPlace posix.mak \
+          --replace "../dmd/generated/\$(OS)/release/\$(MODEL)/dmd" ${dmd.out}/bin/dmd
+
+      substituteInPlace posix.mak \
+          --replace gcc $CC
+  '';
+
+  nativeBuildInputs = [ dmd ];
+  buildInputs = [ curl ];
+
+  buildPhase = ''
+    make -f posix.mak DMD=${dmd.out}/bin/dmd INSTALL_DIR=$out
+  '';
+
+  doCheck = true;
+
+  checkPhase = ''
+      export BITS=${builtins.toString stdenv.hostPlatform.parsed.cpu.bits}
+      export OSNAME=${if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name}
+      ./generated/$OSNAME/$BITS/rdmd -main -unittest rdmd.d
+      ${dmd.out}/bin/dmd rdmd_test.d
+      ./rdmd_test
+    '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    ${
+      let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits;
+      osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; in
+      "find $PWD/generated/${osname}/${bits} -perm /a+x -type f -exec cp {} $out/bin \\;"
+    }
+	'';
+
+  meta = {
+    description = "Ancillary tools for the D programming language compiler";
+    homepage = https://github.com/dlang/tools;
+    license = lib.licenses.boost;
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 5c9ae26c77b..daada3f416e 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -119,6 +119,7 @@ mapAliases (rec {
   quake3game = ioquake3; # added 2016-01-14
   qwt6 = libsForQt5.qwt;  # added 2015-12-19
   rdiff_backup = rdiff-backup;  # added 2014-11-23
+  rdmd = dtools;  # added 2017-08-19
   rssglx = rss-glx; #added 2015-03-25
   rubygems = throw "deprecated 2016-03-02: rubygems is now bundled with ruby";
   rustUnstable = rustNightly; # added 2016-11-29
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c63c0e3d0fe..60a0f9415b1 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -973,6 +973,8 @@ with pkgs;
     gtk = gtk3;
   };
 
+  dtools = callPackage ../development/tools/dtools { };
+
   dtrx = callPackage ../tools/compression/dtrx { };
 
   duperemove = callPackage ../tools/filesystems/duperemove { };
@@ -4062,8 +4064,6 @@ with pkgs;
 
   rdfind = callPackage ../tools/filesystems/rdfind { };
 
-  rdmd = callPackage ../development/compilers/rdmd { };
-
   rhash = callPackage ../tools/security/rhash { };
 
   riemann_c_client = callPackage ../tools/misc/riemann-c-client { };