diff --git a/pkgs/development/libraries/cpp-gsl/default.nix b/pkgs/development/libraries/cpp-gsl/default.nix new file mode 100644 index 000000000000..ecd86354ee82 --- /dev/null +++ b/pkgs/development/libraries/cpp-gsl/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchFromGitHub, cmake, catch }: + +stdenv.mkDerivation rec { + pname = "GSL-unstable"; + version = "2017-02-15"; + name = "${pname}-${version}"; + + src = fetchFromGitHub { + owner = "Microsoft"; + repo = "GSL"; + rev = "c87c123d1b3e64ae2cf725584f0c004da4d90f1c"; + sha256 = "0h8py468bvxnydkjs352d7a9s8hk0ihc7msjkcnzj2d7nzp5nsc1"; + }; + + nativeBuildInputs = [ cmake catch ]; + + meta = with stdenv.lib; { + homepage = https://github.com/Microsoft/GSL; + description = "C++ Core Guideline support library"; + longDescription = '' + The Guideline Support Library (GSL) contains functions and types that are suggested for + use by the C++ Core Guidelines maintained by the Standard C++ Foundation. + This package contains Microsoft's implementation of GSL. + ''; + platforms = stdenv.lib.platforms.unix; + license = licenses.mit; + maintainers = with maintainers; [ yuriaisaka ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 244d30033eb8..e9d43cd5abf2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5748,7 +5748,8 @@ with pkgs; compcert = callPackage ../development/compilers/compcert { }; - + cpp-gsl = callPackage ../development/libraries/cpp-gsl { }; + # Users installing via `nix-env` will likely be using the REPL, # which has a hard dependency on Z3, so make sure it is available. cryptol = haskellPackages.cryptol.overrideDerivation (oldAttrs: {