default.nix (913B)
1 { lib, stdenv, fetchFromGitHub, cmake, gtest }: 2 3 stdenv.mkDerivation (finalAttrs: { 4 pname = "microjson"; 5 version = "0.1.0"; 6 7 src = fetchFromGitHub { 8 owner = "semlanik"; 9 repo = "microjson"; 10 rev = "v${finalAttrs.version}"; 11 hash = "sha256-6kGshpy0CDg/8z3unZvGs0Uh1gglZ7yrIGc9/X+M0i8="; 12 }; 13 14 postPatch = '' 15 substituteInPlace CMakeLists.txt \ 16 --replace-fail 'CMAKE_CXX_STANDARD 11' 'CMAKE_CXX_STANDARD 17' 17 substituteInPlace tests/CMakeLists.txt \ 18 --replace-fail "find_package(microjson CONFIG REQUIRED)" "" 19 ''; 20 21 nativeBuildInputs = [ cmake gtest ]; 22 23 cmakeFlags = [ 24 (lib.cmakeBool "MICROJSON_MAKE_TESTS" true) 25 ]; 26 27 doCheck = true; 28 29 meta = with lib; { 30 description = "Tiny streaming json deserializer"; 31 inherit (finalAttrs.src.meta) homepage; 32 license = licenses.mit; 33 maintainers = [ maintainers.sikmir ]; 34 platforms = platforms.unix; 35 }; 36 })