summary refs log tree commit diff
path: root/pkgs/development/tools/build-managers
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools/build-managers')
-rw-r--r--pkgs/development/tools/build-managers/bazel/0.4.nix2
-rw-r--r--pkgs/development/tools/build-managers/cmake/2.8.nix7
-rw-r--r--pkgs/development/tools/build-managers/conan/default.nix60
-rw-r--r--pkgs/development/tools/build-managers/doit/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/dub/default.nix14
-rw-r--r--pkgs/development/tools/build-managers/icmake/default.nix10
-rw-r--r--pkgs/development/tools/build-managers/meson/default.nix26
-rw-r--r--pkgs/development/tools/build-managers/meson/setup-hook.sh10
-rw-r--r--pkgs/development/tools/build-managers/redo-sh/default.nix4
9 files changed, 97 insertions, 40 deletions
diff --git a/pkgs/development/tools/build-managers/bazel/0.4.nix b/pkgs/development/tools/build-managers/bazel/0.4.nix
index d131232e96d9..7fa39ef21627 100644
--- a/pkgs/development/tools/build-managers/bazel/0.4.nix
+++ b/pkgs/development/tools/build-managers/bazel/0.4.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     description = "Build tool that builds code quickly and reliably";
     license = licenses.asl20;
     maintainers = with maintainers; [ cstrahan philandstuff ];
-    platforms = platforms.unix;
+    platforms = platforms.linux;
   };
 
   name = "bazel-${version}";
diff --git a/pkgs/development/tools/build-managers/cmake/2.8.nix b/pkgs/development/tools/build-managers/cmake/2.8.nix
index b4b2a4210d21..fcf06782e4dd 100644
--- a/pkgs/development/tools/build-managers/cmake/2.8.nix
+++ b/pkgs/development/tools/build-managers/cmake/2.8.nix
@@ -43,6 +43,11 @@ stdenv.mkDerivation rec {
       sha256 = "16acmdr27adma7gs9rs0dxdiqppm15vl3vv3agy7y8s94wyh4ybv";
     });
 
+  postPatch = ''
+    substituteInPlace Utilities/cmlibarchive/CMakeLists.txt \
+      --replace '"-framework CoreServices"' '""'
+  '';
+
   buildInputs = [ curl expat zlib bzip2 ]
     ++ optional useNcurses ncurses
     ++ optional useQt4 qt4;
@@ -76,7 +81,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = http://www.cmake.org/;
     description = "Cross-Platform Makefile Generator";
-    platforms = if useQt4 then qt4.meta.platforms else stdenv.lib.platforms.linux;
+    platforms = if useQt4 then qt4.meta.platforms else stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ ];
   };
 }
diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix
index 4a2afbeedfe6..04d7d93455e9 100644
--- a/pkgs/development/tools/build-managers/conan/default.nix
+++ b/pkgs/development/tools/build-managers/conan/default.nix
@@ -1,27 +1,59 @@
-{ lib, buildPythonApplication, fetchPypi
-, requests, fasteners, pyyaml, pyjwt, colorama, patch
-, bottle, pluginbase, six, distro, pylint, node-semver
-, future, pygments, mccabe
-}:
-
-buildPythonApplication rec {
-  version = "0.28.1";
+{ lib, fetchpatch, python }:
+
+let newPython = python.override {
+  packageOverrides = self: super: {
+    distro = super.distro.overridePythonAttrs (oldAttrs: rec {
+      version = "1.1.0";
+      src = oldAttrs.src.override {
+        inherit version;
+        sha256 = "1vn1db2akw98ybnpns92qi11v94hydwp130s8753k6ikby95883j";
+      };
+    });
+    node-semver = super.node-semver.overridePythonAttrs (oldAttrs: rec {
+      version = "0.2.0";
+      src = oldAttrs.src.override {
+        inherit version;
+        sha256 = "1080pdxrvnkr8i7b7bk0dfx6cwrkkzzfaranl7207q6rdybzqay3";
+      };
+    });
+  };
+};
+
+in newPython.pkgs.buildPythonApplication rec {
+  version = "1.1.1"; # remove patch below when updating
   pname = "conan";
 
-  src = fetchPypi {
+  src = newPython.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "0zf564iqh0099yd779f9fgk21qyp87d7cmgfj34hmncf8y3qh32a";
+    sha256 = "1k1r401bc9fgmhd5n5f29mjcn346r3zdrm7p28nwpr2r2p3fslrl";
   };
 
-  propagatedBuildInputs = [
+  checkInputs = with newPython.pkgs; [
+    nose
+    parameterized
+    mock
+    webtest
+    codecov
+  ];
+
+  propagatedBuildInputs = with newPython.pkgs; [
     requests fasteners pyyaml pyjwt colorama patch
     bottle pluginbase six distro pylint node-semver
     future pygments mccabe
   ];
 
-  # enable tests once all of these pythonPackages available:
-  # [ nose nose_parameterized mock webtest codecov ]
-  doCheck = false;
+  patches = [
+    # already merged, remove with the next package update
+    (fetchpatch {
+      url = "https://github.com/conan-io/conan/commit/51cc4cbd51ac8f9b9efa2bf678a2d7810e273ff3.patch";
+      sha256 = "0d93g4hjpfk8z870imwdswkw5qba2h5zhfgwwijiqhr2pv7fl1y7";
+    })
+  ];
+
+  preCheck = ''
+    export HOME="$TMP/conan-home"
+    mkdir -p "$HOME"
+  '';
 
   meta = with lib; {
     homepage = https://conan.io;
diff --git a/pkgs/development/tools/build-managers/doit/default.nix b/pkgs/development/tools/build-managers/doit/default.nix
index 200ec6429a79..aeeb4dbd7798 100644
--- a/pkgs/development/tools/build-managers/doit/default.nix
+++ b/pkgs/development/tools/build-managers/doit/default.nix
@@ -3,14 +3,14 @@
 let
 
   name = "doit";
-  version = "0.30.3";
+  version = "0.31.0";
 
 in python3Packages.buildPythonApplication {
   name = "${name}-${version}";
 
   src = fetchurl {
     url = "mirror://pypi/d/${name}/${name}-${version}.tar.gz";
-    sha256 = "1fcsslc3mc4bszq5xdqbxv37720s1s31d6pbfwc2iyxk1x2wi219";
+    sha256 = "0v1yr04bfqnz3sp261np3zhf0y1b3a1daxc83iq308lscf39fdgx";
   };
 
   buildInputs = with python3Packages; [ mock pytest ];
diff --git a/pkgs/development/tools/build-managers/dub/default.nix b/pkgs/development/tools/build-managers/dub/default.nix
index da404a63d85f..28894850bbd9 100644
--- a/pkgs/development/tools/build-managers/dub/default.nix
+++ b/pkgs/development/tools/build-managers/dub/default.nix
@@ -4,7 +4,7 @@ let
 
   dubBuild = stdenv.mkDerivation rec {
     name = "dubBuild-${version}";
-    version = "1.7.2";
+    version = "1.8.0";
 
     enableParallelBuilding = true;
 
@@ -12,21 +12,13 @@ let
       owner = "dlang";
       repo = "dub";
       rev = "v${version}";
-      sha256 = "073ibvgm1gphcqs1yjrav9ryp677nh3b194nxmvicwgvdc0sb6w9";
+      sha256 = "0788d375sc6xdak9x6xclkkz243lb7di68yxfvl4v0n178mi22bk";
     };
 
     postUnpack = ''
         patchShebangs .
     '';
 
-    patches = [
-      # TODO Remove with next release which contains https://github.com/dlang/dub/pull/1354
-      (fetchpatch {
-        url = "https://patch-diff.githubusercontent.com/raw/dlang/dub/pull/1354.patch";
-        sha256 = "01alky8a91qwjmlnfjbrn8kiivwr69f3j4c84cjlxrzfp1ph20ah";
-      })
-    ];
-
     # Can be removed with https://github.com/dlang/dub/pull/1368
     dubvar = "\\$DUB";
     postPatch = ''
@@ -71,8 +63,6 @@ let
 
     src = dubBuild.src;
     
-    patches = dubBuild.patches;
-
     postUnpack = dubBuild.postUnpack;
     postPatch = dubBuild.postPatch;
 
diff --git a/pkgs/development/tools/build-managers/icmake/default.nix b/pkgs/development/tools/build-managers/icmake/default.nix
index 5b455f267d82..2f4daa2edc86 100644
--- a/pkgs/development/tools/build-managers/icmake/default.nix
+++ b/pkgs/development/tools/build-managers/icmake/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchFromGitHub, gcc }:
+{ stdenv, fetchFromGitHub, makeWrapper, gcc, ncurses }:
 
 stdenv.mkDerivation rec {
   name = "icmake-${version}";
-  version = "9.02.06";
+  version = "9.02.07";
 
   src = fetchFromGitHub {
-    sha256 = "1hs7fhqpkhlrjvjhfarf5bmxl8dw3r0immzdib27gwh3sfzgpx0b";
+    sha256 = "1q3rwri5s1sqm4h75bahkjnlym4bk2ygg4fb75yrniwnj8rhdp12";
     rev = version;
     repo = "icmake";
     owner = "fbb-git";
@@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
     sourceRoot=$(echo */icmake)
   '';
 
+  nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ gcc ];
 
   preConfigure = ''
@@ -30,6 +31,9 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     ./icm_install all /
+
+    wrapProgram $out/bin/icmbuild \
+     --prefix PATH : ${ncurses}/bin
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix
index 5db0bce21f79..27aa38cfa7e1 100644
--- a/pkgs/development/tools/build-managers/meson/default.nix
+++ b/pkgs/development/tools/build-managers/meson/default.nix
@@ -1,5 +1,7 @@
-{ lib, python3Packages }:
-python3Packages.buildPythonApplication rec {
+{ lib, python3Packages, stdenv, targetPlatform, writeTextDir, m4 }: let
+  targetPrefix = lib.optionalString stdenv.isCross
+                   (targetPlatform.config + "-");
+in python3Packages.buildPythonApplication rec {
   version = "0.44.0";
   pname = "meson";
   name = "${pname}-${version}";
@@ -33,6 +35,26 @@ python3Packages.buildPythonApplication rec {
 
   setupHook = ./setup-hook.sh;
 
+  crossFile = writeTextDir "cross-file.conf" ''
+    [binaries]
+    c = '${targetPrefix}cc'
+    cpp = '${targetPrefix}c++'
+    ar = '${targetPrefix}ar'
+    strip = '${targetPrefix}strip'
+    pkgconfig = 'pkg-config'
+
+    [properties]
+    needs_exe_wrapper = true
+
+    [host_machine]
+    system = '${targetPlatform.parsed.kernel.name}'
+    cpu_family = '${targetPlatform.parsed.cpu.family}'
+    cpu = '${targetPlatform.parsed.cpu.name}'
+    endian = ${if targetPlatform.isLittleEndian then "'little'" else "'big'"}
+  '';
+
+  inherit (stdenv) cc isCross;
+
   meta = with lib; {
     homepage = http://mesonbuild.com;
     description = "SCons-like build system that use python as a front-end language and Ninja as a building backend";
diff --git a/pkgs/development/tools/build-managers/meson/setup-hook.sh b/pkgs/development/tools/build-managers/meson/setup-hook.sh
index 8f96e6146be0..341b1ff9e6eb 100644
--- a/pkgs/development/tools/build-managers/meson/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/meson/setup-hook.sh
@@ -6,11 +6,15 @@ mesonConfigurePhase() {
     fi
 
     # Build release by default.
-    mesonFlags="--buildtype=${mesonBuildType:-release} $mesonFlags"
+    if [ -n "@isCross@" ]; then
+      crossMesonFlags="--cross-file=@crossFile@/cross-file.conf"
+    fi
+
+    mesonFlags="${crossMesonFlags+$crossMesonFlags }--buildtype=${mesonBuildType:-release} $mesonFlags"
 
     echo "meson flags: $mesonFlags ${mesonFlagsArray[@]}"
 
-    meson build $mesonFlags "${mesonFlagsArray[@]}"
+    CC=@cc@/bin/cc CXX=@cc@/bin/c++ meson build $mesonFlags "${mesonFlagsArray[@]}"
     cd build
 
     if ! [[ -v enableParallelBuilding ]]; then
@@ -29,7 +33,7 @@ fi
 mesonCheckPhase() {
     runHook preCheck
 
-    meson test
+    meson test --print-errorlogs
 
     runHook postCheck
 }
diff --git a/pkgs/development/tools/build-managers/redo-sh/default.nix b/pkgs/development/tools/build-managers/redo-sh/default.nix
index c888627cfce3..3036ef235845 100644
--- a/pkgs/development/tools/build-managers/redo-sh/default.nix
+++ b/pkgs/development/tools/build-managers/redo-sh/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  version = "1.2.6";
+  version = "2.0.3";
   name = "redo-sh-${version}";
 
   src = fetchurl {
     url = "http://news.dieweltistgarnichtso.net/bin/archives/redo-sh.tar.gz";
-    sha256 = "1cwrk4v22rb9410rzyb4py4ncg01n6850l80s74bk3sflbw974wp";
+    sha256 = "1ycx3hik7vnlbwxacn1dzr48fwsn2ials0sg6k9l3gcyrha5wf1n";
   };
 
   buildInputs = [ makeWrapper ];