diff options
Diffstat (limited to 'nixpkgs/pkgs/tools/networking/curl/default.nix')
-rw-r--r-- | nixpkgs/pkgs/tools/networking/curl/default.nix | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/nixpkgs/pkgs/tools/networking/curl/default.nix b/nixpkgs/pkgs/tools/networking/curl/default.nix index 652bcdba8748..051271e97884 100644 --- a/nixpkgs/pkgs/tools/networking/curl/default.nix +++ b/nixpkgs/pkgs/tools/networking/curl/default.nix @@ -5,6 +5,7 @@ , zlibSupport ? true, zlib ? null , sslSupport ? zlibSupport, openssl ? null , gnutlsSupport ? false, gnutls ? null +, wolfsslSupport ? false, wolfssl ? null , scpSupport ? zlibSupport && !stdenv.isSunOS && !stdenv.isCygwin, libssh2 ? null , gssSupport ? !stdenv.hostPlatform.isWindows, libkrb5 ? null , c-aresSupport ? false, c-ares ? null @@ -17,21 +18,24 @@ assert ldapSupport -> openldap != null; assert zlibSupport -> zlib != null; assert sslSupport -> openssl != null; assert !(gnutlsSupport && sslSupport); +assert !(gnutlsSupport && wolfsslSupport); +assert !(sslSupport && wolfsslSupport); assert gnutlsSupport -> gnutls != null; +assert wolfsslSupport -> wolfssl != null; assert scpSupport -> libssh2 != null; assert c-aresSupport -> c-ares != null; assert brotliSupport -> brotli != null; assert gssSupport -> libkrb5 != null; stdenv.mkDerivation rec { - name = "curl-7.65.3"; + name = "curl-7.67.0"; src = fetchurl { urls = [ "https://curl.haxx.se/download/${name}.tar.bz2" "https://github.com/curl/curl/releases/download/${lib.replaceStrings ["."] ["_"] name}/${name}.tar.bz2" ]; - sha256 = "02g5zj4rq5sr15jzjqk70xk4k92i2pdmpq00xb4pnba8ps1mx18a"; + sha256 = "0v2qb1c82m3qzkiyglsg1745qi791i9pl1jgnks8nm0sh9b6jpyx"; }; outputs = [ "bin" "dev" "out" "man" "devdoc" ]; @@ -53,6 +57,7 @@ stdenv.mkDerivation rec { optional c-aresSupport c-ares ++ optional sslSupport openssl ++ optional gnutlsSupport gnutls ++ + optional wolfsslSupport wolfssl ++ optional scpSupport libssh2 ++ optional brotliSupport brotli; @@ -67,7 +72,8 @@ stdenv.mkDerivation rec { # to nss-cacert from the default profile. "--without-ca-bundle" "--without-ca-path" - "--with-ca-fallback" + # The build fails when using wolfssl with --with-ca-fallback + ( if wolfsslSupport then "--without-ca-fallback" else "--with-ca-fallback") "--disable-manual" ( if sslSupport then "--with-ssl=${openssl.dev}" else "--without-ssl" ) ( if gnutlsSupport then "--with-gnutls=${gnutls.dev}" else "--without-gnutls" ) @@ -77,6 +83,7 @@ stdenv.mkDerivation rec { ( if idnSupport then "--with-libidn=${libidn.dev}" else "--without-libidn" ) ( if brotliSupport then "--with-brotli" else "--without-brotli" ) ] + ++ stdenv.lib.optional wolfsslSupport "--with-wolfssl=${wolfssl.dev}" ++ stdenv.lib.optional c-aresSupport "--enable-ares=${c-ares}" ++ stdenv.lib.optional gssSupport "--with-gssapi=${libkrb5.dev}" # For the 'urandom', maybe it should be a cross-system option @@ -94,6 +101,9 @@ stdenv.mkDerivation rec { postInstall = '' moveToOutput bin/curl-config "$dev" + + # Install completions + make -C scripts install '' + stdenv.lib.optionalString scpSupport '' sed '/^dependency_libs/s|${libssh2.dev}|${libssh2.out}|' -i "$out"/lib/*.la '' + stdenv.lib.optionalString gnutlsSupport '' |