forked from mirrors/nixpkgs
3cd8ce3bce
Naive concatenation of $LD_LIBRARY_PATH can result in an empty colon-delimited segment; this tells glibc to load libraries from the current directory, which is definitely wrong, and may be a security vulnerability if the current directory is untrusted. (See #67234, for example.) Fix this throughout the tree. Signed-off-by: Anders Kaseorg <andersk@mit.edu>
50 lines
1.1 KiB
Nix
50 lines
1.1 KiB
Nix
{ stdenv, fetchFromGitHub, boxfort, cmake, libcsptr, pkg-config, gettext
|
|
, dyncall , nanomsg, python37Packages }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
version = "2.3.3";
|
|
pname = "criterion";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "Snaipe";
|
|
repo = "Criterion";
|
|
rev = "v${version}";
|
|
sha256 = "0y1ay8is54k3y82vagdy0jsa3nfkczpvnqfcjm5n9iarayaxaq8p";
|
|
fetchSubmodules = true;
|
|
};
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
nativeBuildInputs = [ cmake pkg-config ];
|
|
|
|
buildInputs = [
|
|
boxfort.dev
|
|
dyncall
|
|
gettext
|
|
libcsptr
|
|
nanomsg
|
|
];
|
|
|
|
checkInputs = with python37Packages; [ cram ];
|
|
|
|
cmakeFlags = [ "-DCTESTS=ON" ];
|
|
doCheck = true;
|
|
preCheck = ''
|
|
export LD_LIBRARY_PATH=`pwd`''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH
|
|
'';
|
|
checkTarget = "criterion_tests test";
|
|
|
|
outputs = [ "dev" "out" ];
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "A cross-platform C and C++ unit testing framework for the 21th century";
|
|
homepage = "https://github.com/Snaipe/Criterion";
|
|
license = licenses.mit;
|
|
maintainers = with maintainers; [
|
|
thesola10
|
|
Yumasi
|
|
];
|
|
platforms = platforms.unix;
|
|
};
|
|
}
|