diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/mbedtls/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/mbedtls/default.nix | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/mbedtls/default.nix b/nixpkgs/pkgs/development/libraries/mbedtls/default.nix new file mode 100644 index 000000000000..9193f0eba1d5 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/mbedtls/default.nix @@ -0,0 +1,39 @@ +{ stdenv +, fetchFromGitHub + +, cmake +, ninja +, perl # Project uses Perl for scripting and testing +, python + +, enableThreading ? true # Threading can be disabled to increase security https://tls.mbed.org/kb/development/thread-safety-and-multi-threading +}: + +stdenv.mkDerivation rec { + name = "mbedtls-${version}"; + version = "2.15.1"; + + src = fetchFromGitHub { + owner = "ARMmbed"; + repo = "mbedtls"; + rev = name; + sha256 = "0w6cm2f7d43wp8cx6r5h4icq8zcix1jnvivshypir1rbk1q83gx8"; + }; + + nativeBuildInputs = [ cmake ninja perl python ]; + + postConfigure = stdenv.lib.optionals enableThreading '' + perl scripts/config.pl set MBEDTLS_THREADING_C # Threading abstraction layer + perl scripts/config.pl set MBEDTLS_THREADING_PTHREAD # POSIX thread wrapper layer for the threading layer. + ''; + + cmakeFlags = [ "-DUSE_SHARED_MBEDTLS_LIBRARY=on" ]; + + meta = with stdenv.lib; { + homepage = https://tls.mbed.org/; + description = "Portable cryptographic and TLS library, formerly known as PolarSSL"; + license = licenses.asl20; + platforms = platforms.all; + maintainers = with maintainers; [ wkennington fpletz ]; + }; +} |