From 1c1a6dfd239f519fdc25a3178464befb70a3b5f1 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Sat, 24 Feb 2018 22:51:22 -0500 Subject: libgcrypt: Fix cross-compilation --- pkgs/development/libraries/libgcrypt/default.nix | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'pkgs/development/libraries/libgcrypt/default.nix') diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix index 45564d64861..a02aefb0a74 100644 --- a/pkgs/development/libraries/libgcrypt/default.nix +++ b/pkgs/development/libraries/libgcrypt/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchurl, gettext, libgpgerror, enableCapabilities ? false, libcap }: +{ stdenv, fetchurl, gettext, libgpgerror, enableCapabilities ? false, libcap +, buildPackages +}: assert enableCapabilities -> stdenv.isLinux; @@ -19,10 +21,19 @@ stdenv.mkDerivation rec { # The build enables -O2 by default for everything else. hardeningDisable = stdenv.lib.optional stdenv.cc.isClang "fortify"; + depsBuildBuild = stdenv.lib.optional stdenv.isCross buildPackages.stdenv.cc; + buildInputs = [ libgpgerror ] ++ stdenv.lib.optional stdenv.isDarwin gettext ++ stdenv.lib.optional enableCapabilities libcap; + preConfigure = if stdenv.isCross then '' + # This is intentional: gpg-error-config is a shell script that will work during the build + mkdir -p "$NIX_BUILD_TOP"/bin + ln -s ${libgpgerror.dev}/bin/gpg-error-config "$NIX_BUILD_TOP/bin" + export PATH="$NIX_BUILD_TOP/bin:$PATH" + '' else null; + # Make sure libraries are correct for .pc and .la files # Also make sure includes are fixed for callers who don't use libgpgcrypt-config postFixup = '' -- cgit 1.4.1