nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 cmake,
6 gbenchmark,
7 gtest,
8}:
9
10stdenv.mkDerivation rec {
11 pname = "ethash";
12 version = "1.1.0";
13
14 src = fetchFromGitHub {
15 owner = "chfast";
16 repo = "ethash";
17 rev = "v${version}";
18 sha256 = "sha256-sLa+lXC+UvqFEoC/ZfoRlotkNhUaqhLtDKHtbH2xa/k=";
19 };
20
21 nativeBuildInputs = [
22 cmake
23 ];
24
25 nativeCheckInputs = [
26 gbenchmark
27 gtest
28 ];
29
30 #preConfigure = ''
31 # sed -i 's/GTest::main//' test/unittests/CMakeLists.txt
32 # cat test/unittests/CMakeLists.txt
33 # ln -sfv ${gtest.src}/googletest gtest
34 #'';
35
36 # NOTE: disabling tests due to gtest issue
37 cmakeFlags = [
38 "-DHUNTER_ENABLED=OFF"
39 "-DETHASH_BUILD_TESTS=OFF"
40 #"-Dbenchmark_DIR=${gbenchmark}/lib/cmake/benchmark"
41 #"-DGTest_DIR=${gtest.dev}/lib/cmake/GTest"
42 #"-DGTest_DIR=${gtest.src}/googletest"
43 #"-DCMAKE_PREFIX_PATH=${gtest.dev}/lib/cmake"
44 ];
45
46 meta = with lib; {
47 description = "PoW algorithm for Ethereum 1.0 based on Dagger-Hashimoto";
48 homepage = "https://github.com/ethereum/ethash";
49 platforms = platforms.unix;
50 maintainers = [ ];
51 license = licenses.asl20;
52 };
53}