From 63428868afb950044173fdfb70e3f56888a95f3f Mon Sep 17 00:00:00 2001 From: Austin Seipp Date: Mon, 27 Nov 2017 01:39:29 -0600 Subject: [PATCH] microsoft_gsl: fix crossSystem build support cmake needs to be part of nativeBuildInputs, otherwise you get a very unhelpful debugging trace. Signed-off-by: Austin Seipp --- .../libraries/microsoft_gsl/default.nix | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/microsoft_gsl/default.nix b/pkgs/development/libraries/microsoft_gsl/default.nix index b419eccfe794..1c10bd6f8fcd 100644 --- a/pkgs/development/libraries/microsoft_gsl/default.nix +++ b/pkgs/development/libraries/microsoft_gsl/default.nix @@ -1,5 +1,10 @@ -{ stdenv, fetchgit, cmake }: +{ stdenv, fetchgit, cmake +, hostPlatform, buildPlatform +}: +let + nativeBuild = hostPlatform == buildPlatform; +in stdenv.mkDerivation rec { name = "microsoft_gsl-${version}"; version = "2017-02-13"; @@ -10,8 +15,11 @@ stdenv.mkDerivation rec { sha256 = "03d17mnx6n175aakin313308q14wzvaa9pd0m1yfk6ckhha4qf35"; }; - # build phase just runs the unit tests - buildInputs = [ cmake ]; + + # build phase just runs the unit tests, so skip it if + # we're doing a cross build + nativeBuildInputs = [ cmake ]; + buildPhase = if nativeBuild then "make" else "true"; installPhase = '' mkdir -p $out/include @@ -20,9 +28,9 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "Functions and types that are suggested for use by the C++ Core Guidelines"; - homepage = https://github.com/Microsoft/GSL; - license = licenses.mit; - platforms = platforms.all; - maintainers = with maintainers; [ xwvvvvwx ]; + homepage = https://github.com/Microsoft/GSL; + license = licenses.mit; + platforms = platforms.all; + maintainers = with maintainers; [ thoughtpolice xwvvvvwx ]; }; }