nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 70 lines 1.7 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 fetchpatch2, 6 cmake, 7 gmp, 8 flint, 9 mpfr, 10 libmpc, 11 withShared ? !stdenv.hostPlatform.isStatic, 12}: 13 14stdenv.mkDerivation (finalAttrs: { 15 pname = "symengine"; 16 version = "0.14.0"; 17 18 src = fetchFromGitHub { 19 owner = "symengine"; 20 repo = "symengine"; 21 rev = "v${finalAttrs.version}"; 22 hash = "sha256-WriVcYt3fkObR2U4J6a4KGGc2HgyyFyFpdrwxBD+AHA="; 23 }; 24 25 outputs = [ 26 "out" 27 "dev" 28 ]; 29 30 # upgrade supported cmake version in SymEngineConfig.cmake 31 patches = [ 32 (fetchpatch2 { 33 url = "https://github.com/symengine/symengine/commit/c149b874b8ff947e51e8e58670a0d37daf588f86.patch?full_index=1"; 34 hash = "sha256-LqkJRPdsbE8OE8G6AkpWX9B+GqnOQjUNPHpKKIcCL3Q="; 35 }) 36 (fetchpatch2 { 37 url = "https://github.com/symengine/symengine/commit/186f72e208220efd12362c336a49378076f63f30.patch?full_index=1"; 38 hash = "sha256-CuQra9K3MTxm8M0bt3LooJz9HgW0/Jy6ydRBCvEgkO4="; 39 }) 40 ]; 41 42 nativeBuildInputs = [ cmake ]; 43 44 buildInputs = [ 45 gmp 46 flint 47 mpfr 48 libmpc 49 ]; 50 51 cmakeFlags = [ 52 (lib.cmakeBool "WITH_FLINT" true) 53 (lib.cmakeFeature "INTEGER_CLASS" "flint") 54 (lib.cmakeBool "WITH_SYMENGINE_THREAD_SAFE" true) 55 (lib.cmakeBool "WITH_MPC" true) 56 (lib.cmakeBool "BUILD_FOR_DISTRIBUTION" true) 57 (lib.cmakeBool "BUILD_TESTS" finalAttrs.finalPackage.doCheck) 58 (lib.cmakeBool "BUILD_SHARED_LIBS" withShared) 59 ]; 60 61 doCheck = true; 62 63 meta = { 64 description = "Fast symbolic manipulation library"; 65 homepage = "https://github.com/symengine/symengine"; 66 platforms = with lib.platforms; unix ++ windows; 67 license = lib.licenses.bsd3; 68 maintainers = with lib.maintainers; [ costrouc ]; 69 }; 70})