diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/botan')
5 files changed, 95 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/botan/2.0.nix b/nixpkgs/pkgs/development/libraries/botan/2.0.nix new file mode 100644 index 000000000000..2346153e2a15 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/botan/2.0.nix @@ -0,0 +1,10 @@ +{ callPackage, ... } @ args: + +callPackage ./generic.nix (args // { + baseVersion = "2.17"; + revision = "2"; + sha256 = "0v0yiq0qxcrsn5b34j6bz8i6pds8dih2ds90ylmy1msm5gz7vqpb"; + postPatch = '' + sed -e 's@lang_flags "@&--std=c++11 @' -i src/build-data/cc/{gcc,clang}.txt + ''; +}) diff --git a/nixpkgs/pkgs/development/libraries/botan/2.0.upstream b/nixpkgs/pkgs/development/libraries/botan/2.0.upstream new file mode 100644 index 000000000000..74eb1a2ca83f --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/botan/2.0.upstream @@ -0,0 +1,10 @@ +url https://botan.randombit.net/ +version_link 'Botan-[0-9]+([.][0-9]+)*[.](tgz|tbz|tbz2|tar[.]bz2)$' +ensure_version +attribute_name botan2 +do_overwrite(){ + ensure_hash + set_var_value sha256 $CURRENT_HASH + set_var_value baseVersion ${CURRENT_VERSION%.*} + set_var_value revision ${CURRENT_VERSION##*.} +} diff --git a/nixpkgs/pkgs/development/libraries/botan/default.nix b/nixpkgs/pkgs/development/libraries/botan/default.nix new file mode 100644 index 000000000000..8bcc6aaa8efb --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/botan/default.nix @@ -0,0 +1,12 @@ +{ callPackage, ... } @ args: + +callPackage ./generic.nix (args // { + baseVersion = "1.10"; + revision = "17"; + sha256 = "04rnha712dd3sdb2q7k2yw45sf405jyigk7yrjfr6bwd9fvgyiv8"; + sourceExtension = "tgz"; + extraConfigureFlags = "--with-gnump"; + postPatch = '' + sed -e 's@lang_flags "@&--std=c++11 @' -i src/build-data/cc/{gcc,clang}.txt + ''; +}) diff --git a/nixpkgs/pkgs/development/libraries/botan/default.upstream b/nixpkgs/pkgs/development/libraries/botan/default.upstream new file mode 100644 index 000000000000..43f6a3b268ee --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/botan/default.upstream @@ -0,0 +1,9 @@ +url http://botan.randombit.net/download.html +version_link 'Botan-[0-9]+[.][0-9]*[02468]([.][0-9]+)?[.](tgz|tbz|tbz2|tar[.]bz2)$' +ensure_version +do_overwrite(){ + ensure_hash + set_var_value sha256 $CURRENT_HASH + set_var_value baseVersion ${CURRENT_VERSION%.*} + set_var_value revision ${CURRENT_VERSION##*.} +} diff --git a/nixpkgs/pkgs/development/libraries/botan/generic.nix b/nixpkgs/pkgs/development/libraries/botan/generic.nix new file mode 100644 index 000000000000..0369f603b8e1 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/botan/generic.nix @@ -0,0 +1,54 @@ +{ lib, stdenv, fetchurl, python, bzip2, zlib, gmp, openssl, boost +# Passed by version specific builders +, baseVersion, revision, sha256 +, sourceExtension ? "tar.xz" +, extraConfigureFlags ? "" +, postPatch ? null +, CoreServices +, Security +, ... +}: + +stdenv.mkDerivation rec { + pname = "botan"; + version = "${baseVersion}.${revision}"; + + src = fetchurl { + name = "Botan-${version}.${sourceExtension}"; + urls = [ + "http://files.randombit.net/botan/v${baseVersion}/Botan-${version}.${sourceExtension}" + "http://botan.randombit.net/releases/Botan-${version}.${sourceExtension}" + ]; + inherit sha256; + }; + inherit postPatch; + + buildInputs = [ python bzip2 zlib gmp openssl boost ] + ++ lib.optionals stdenv.isDarwin [ CoreServices Security ]; + + configurePhase = '' + python configure.py --prefix=$out --with-bzip2 --with-zlib ${if openssl != null then "--with-openssl" else ""} ${extraConfigureFlags}${if stdenv.cc.isClang then " --cc=clang" else "" } + ''; + + enableParallelBuilding = true; + + preInstall = '' + if [ -d src/scripts ]; then + patchShebangs src/scripts + fi + ''; + + postInstall = '' + cd "$out"/lib/pkgconfig + ln -s botan-*.pc botan.pc || true + ''; + + meta = with lib; { + inherit version; + description = "Cryptographic algorithms library"; + maintainers = with maintainers; [ raskin ]; + platforms = platforms.unix; + license = licenses.bsd2; + }; + passthru.updateInfo.downloadPage = "http://files.randombit.net/botan/"; +} |